[vlc-devel] [PATCH] contrib: Unexport env variables when cross-compiling
robux4 at ycbcr.xyz
Thu Jun 6 14:31:29 CEST 2019
On 2019-06-06 13:47, Marvin Scholz wrote:
> Meson always interprets these env variables for the build compiler,
This does not seem like a bug. The ones found in the cross compile file
are for the target and the environment ones are assumed to be for the
current host to compile native tools. I suppose that's the intention.
This is not how autotools does it though. There are CC_FOR_BUILD (and
other variants) to achieve that. And I think CMake has its own probe to
find a native compiler on the system.
Is there a way to set the native compiler in the meson crossfile ?
> even when cross-compiling, therefore we need to unset them,
> they are anyway included in HOSTVARS already for other build systems.
> contrib/src/main.mak | 22 +++++++++++++++++++---
> 1 file changed, 19 insertions(+), 3 deletions(-)
> diff --git a/contrib/src/main.mak b/contrib/src/main.mak
> index 8944a5a1d7..c7a45964cb 100644
> --- a/contrib/src/main.mak
> +++ b/contrib/src/main.mak
> @@ -329,9 +329,25 @@ HOSTVARS_PIC := $(HOSTTOOLS) \
> CXXFLAGS="$(CXXFLAGS) $(PIC)" \
> -# Keep a version of HOSTVARS without the tools, since meson requires the
> -# tools variables to point to the native ones
> -HOSTVARS_MESON := $(HOSTVARS)
> +# For cross-compilation with meson, we need to unset compiler and flags
> +# env variables as meson will always use them for the BUILD machine compiler!
> +ifdef HAVE_CROSS_COMPILE
> +HOSTVARS_MESON := PATH="$(PREFIX)/bin:$(PATH)"
> +unexport CC
> +unexport CXX
> +unexport LD
> +unexport AR
> +unexport CCAS
> +unexport RANLIB
> +unexport STRIP
> +unexport CPPFLAGS
> +unexport CFLAGS
> +unexport CXXFLAGS
> +unexport LDFLAGS
> +HOSTVARS_MESON := $(HOSTTOOLS) $(HOSTVARS)
> HOSTVARS := $(HOSTTOOLS) $(HOSTVARS)
> download_git = \
> 2.20.1 (Apple Git-117)
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
More information about the vlc-devel