multilib.eclass: populate READELF
authorSergei Trofimovich <slyfox@gentoo.org>
Mon, 25 May 2020 12:59:54 +0000 (13:59 +0100)
committerSergei Trofimovich <slyfox@gentoo.org>
Mon, 25 May 2020 20:47:07 +0000 (21:47 +0100)
For both multilib and non-multilib profiles binutils provides
tools with native CHOST prefix only. For example on amd64 there
is only 'x86_64-pc-linux-gnu-readelf' and 'readelf'.

meson build system uses 'readelf' or $READELF binaries
and relies on meson.eclass to populate READELF.

The change overrides READELF and friends to 'x86_64-pc-linux-gnu-readelf'
for multilib setup similar to other environment variables.

Tested on net-libs/gssdp package.

Closes: https://bugs.gentoo.org/725304
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
eclass/multilib.eclass

index b79718bb193e1f9c657b0823e6d82e5b2b7e9352..ed54568aa2d9c2e3dc601aeb70c7b1ada7338cb8 100644 (file)
@@ -468,6 +468,7 @@ multilib_toolchain_setup() {
                NM
                OBJDUMP
                RANLIB
+               READELF
                STRIP
                PKG_CONFIG_LIBDIR
                PKG_CONFIG_PATH
@@ -510,6 +511,7 @@ multilib_toolchain_setup() {
                export NM="$(tc-getNM)" # Avoid 'nm', use '${CHOST}-nm'
                export OBJDUMP="$(tc-getOBJDUMP)" # Avoid 'objdump', use '${CHOST}-objdump'
                export RANLIB="$(tc-getRANLIB)" # Avoid 'ranlib', use '${CHOST}-ranlib'
+               export READELF="$(tc-getREADELF)" # Avoid 'readelf', use '${CHOST}-readelf'
                export STRIP="$(tc-getSTRIP)" # Avoid 'strip', use '${CHOST}-strip'
                export CHOST=$(get_abi_CHOST $1)
                export PKG_CONFIG_LIBDIR=${EPREFIX}/usr/$(get_libdir)/pkgconfig