| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
The re-added ([1]) patch missed to remove two lines of the original
unconditional code.
[1] https://git.buildroot.net/buildroot/commit/?id=5c939246a802c0ad9704dac1505105037542a1d3
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently, package/meson/meson.mk generates a single global
cross-compilation.conf file, with the path to the compiler, cflags,
ldflags, and various other details. This file is then used when
building all meson-based packages.
This causes two problems:
- It is not compatible with per-package directories, because with
per-package folders, we need to use a different compiler, and
possibly CFLAGS/LDFLAGS for each package.
- It is not possible to define per package CFLAGS. Indeed, when
cross-compiling, meson doesn't support passing CFLAGS through the
environment, only the CFLAGS from cross-compilation.conf are taken
into account.
For this reason, this commit:
- Introduces a per-package cross-compilation.conf, which is generated
by the pkg-meson infrastructure in the "configure" step right
before calling meson. The file is generated in $(@D)/build/, and
because it is generated within a given package "configure" step,
the compiler path is the one of this package.
- Keeps the global cross-compilation.conf in $(HOST_DIR)/etc/meson/,
for the SDK use-case of Buildroot. Since we want the final and
global values of the compiler path, CFLAGS and LDFLAGS, generating
this global cross-compilation.conf is moved to a
TARGET_FINALIZE_HOOKS. If we were keeping this as a
HOST_MESON_POST_INSTALL_HOOKS, it would contain values specific to
the host-meson package.
For now, we don't yet support per-package CFLAGS/LDFLAGS, but having
such per-package cross-compilation.conf is a necessary preparation to
achieve this goal.
This commit has been tested by building all Buildroot packages that
use meson: json-glib, systemd, enlightenment, at-spi2-core, ncmpc,
libmpdclient and ncmpc.
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
[Thomas:
- add extended commit log
- in pkg-meson.mk, re-use variables defined in meson.mk to do the
replacement of CFLAGS/LDFLAGS/CXXFLAGS
- move the generation of the global cross-compilation.conf to a
TARGET_FINALIZE_HOOKS
- testing with per-package folders]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Tested-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
|
|
|
|
|
|
|
|
|
| |
This version requires host-python3-setuptools, because meson no longer
falls back to distutils for its installation if setuptools cannot be
found: setuptools *must* be available.
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
As explained in [0], meson recognises a certain set of CPU famillies,
whose names slightly differ from those we know them as.
If we don't pass the proper cpu_familly, meson whines:
WARNING: Unknown CPU family 'i686', please report this at [...]
Subsequently, packages that use that to decide on what they should build
and how they should build it, fail to build. That is the case for the
upcoming systemd-boot, for example.
Fix that by using the list propvided by the meson documentation [0].
[0] https://mesonbuild.com/Reference-tables.html#cpu-families
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
[yann.morin.1998@free.fr:
- split in its own patch
- imnprove commit log
]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
As explained in [0], meson will try on its own to decide whether it can
run what it builds. If it happens that the host and target CPUs are
"compatible", that test may fail and meson may believe it can run what
it builds.
Override that test by using needs_exe_wrapper=true, and not defining an
actual exe_wrapper.
[0] https://mesonbuild.com/Cross-compilation.html
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
[yann.morin.1998@free.fr:
- split in its own patch
- improve commit log
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Note, that there is already a patch [1] to bump the version to 0.48.1.
However, the bump to version 0.48.x has some unresolved issues.
In the meantime, until the issue with 0.48 is resolved, bump to latest
version of the 0.47 branch.
[1] http://patchwork.ozlabs.org/patch/986260/
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The patch to skip RPATH fixing performed by Meson was removed in commit
a03f46ca6e9f43028003aedc92f1a1204ae7480f, as the script
support/scripts/check-host-rpath was not complaining anymore.
But without it, the problem still occurs for host packages [1].
So, restore this patch to fix build of host packages with Meson.
[1] http://lists.busybox.net/pipermail/buildroot/2018-October/232956.html
Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The BR2_GCC_TARGET_* configuration variables are copied to
corresponding GCC_TARGET_* variables which may then be optionally
modified or overwritten by architecture specific makefiles.
All makefiles must use the new GCC_TARGET_* variables instead
of the BR2_GCC_TARGET_* versions.
Signed-off-by: Mark Corbin <mark.corbin@embecosm.com>
[Thomas: simplify include of arch/arch.mk]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
|
|
|
|
|
|
|
|
|
| |
- delete legacy patch 0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch
(no complains from support/scripts/check-host-rpath even without the patch)
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Acked-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Tested-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
|
|
|
|
| |
Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
By default, Meson strips RPATH from the executable it builds [1,2],
unless explicitly set via install_rpath.
This will make support/scripts/check-host-rpath fail when building the
host variant of a Meson-based package.
So add a patch to prevent RPATH from being stripped if install_rpath is
not set and notify user about it.
[1] https://github.com/mesonbuild/meson/issues/2567
[2] https://github.com/mesonbuild/meson/issues/314#issuecomment-157658562
Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
|
|
|
|
|
|
| |
Bump version and drop obsolete patch.
Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
host-meson is used by some packages such as libmpdclient.
If selinuxenabled is installed on host but restorecon is unavailable
(for an "unknwown" reason), install will crash.
Fixes:
- http://autobuild.buildroot.net/results/d5dcdfdfab3503fdc387f99e68267972a38c417d
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
|
|
|
|
| |
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently, meson will set the c_link_args and the cpp_link_args to the
value of TARGET_LDFLAGS, even when it's not defined.
This creates a malformed array ["",] which will break any package
building using meson/ninja.
We fix that by using an empty replacement when the corresponding values
are empty.
Reported-by: Adam Duskett <Adamduskett@outlook.com>
Signed-off-by: Adam Duskett <Adamduskett@outlook.com>
[yann.morin.1998@free.fr: alternate implementation, suggested by Thomas]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tested-by: Adam Duskett aduskett@gmail.com
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
|
|
|
|
|
|
| |
Also add a hash for the license file.
Signed-off-by: Adam Duskett <Adamduskett@outlook.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
|
This new package provides the host variant of the Meson Build System, an
open source build system meant to be both extremely fast, and as user
friendly as possible.
More precisely, Meson creates configuration files for the Ninja build
system.
Besides building Meson, it generates a configuration file
("$(HOST_DIR)/etc/meson/cross-compilation.conf") to be used when
cross-compiling a Meson-based project.
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Tested-by: Yegor Yefremov <yegorslists@googlemail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|