4e0bc29993
meson is able to distinguish between host (= native) and target (= cross) compilation. It will explicitly pass different options to pkg-config to distinguish them. Therefore, we don't need to use the pkg-config wrapper when using meson, and can instead pass the pkg-config settings through the cross-compilation.conf. This is important because in some situations (e.g. for the Python configuration), meson sets the PKG_CONFIG_LIBDIR variable to a different value before calling pkg-config. Relying on our wrapper script doesn't work in that case (except if the script would unconditionally set PKG_CONFIG_LIBDIR, which it doesn't do at the moment). Add the sys_root and pkg_config_lib settings to cross-compilation.conf and use pkgconf directly instead of the wrapper. Note that this requires us to substitute STAGING_DIR as well, with an absolute path. This is not a big deal since cross-compilation.conf is regenerated for every package. Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
27 lines
733 B
Plaintext
27 lines
733 B
Plaintext
# Note: Buildroot's and Meson's terminologies differ about the meaning
|
|
# of 'build', 'host' and 'target':
|
|
# - Buildroot's 'host' is Meson's 'build'
|
|
# - Buildroot's 'target' is Meson's 'host'
|
|
|
|
[binaries]
|
|
c = '@TARGET_CROSS@gcc'
|
|
cpp = '@TARGET_CROSS@g++'
|
|
ar = '@TARGET_CROSS@ar'
|
|
strip = '@TARGET_CROSS@strip'
|
|
pkgconfig = '@HOST_DIR@/bin/pkgconf'
|
|
|
|
[properties]
|
|
needs_exe_wrapper = true
|
|
c_args = [@TARGET_CFLAGS@]
|
|
c_link_args = [@TARGET_LDFLAGS@]
|
|
cpp_args = [@TARGET_CXXFLAGS@]
|
|
cpp_link_args = [@TARGET_LDFLAGS@]
|
|
sys_root = '@STAGING_DIR@'
|
|
pkg_config_libdir = '@STAGING_DIR@/usr/lib/pkgconfig:@STAGING_DIR@/usr/share/pkgconfig'
|
|
|
|
[host_machine]
|
|
system = 'linux'
|
|
cpu_family ='@TARGET_ARCH@'
|
|
cpu = '@TARGET_CPU@'
|
|
endian = '@TARGET_ENDIAN@'
|