meson: Patch to ingest env vars like autoconf
See comment in code and the PR it references, https://github.com/mesonbuild/meson/pull/6827, for details. We can remove entries from the cross file because they will be gotten from env vars now.
This commit is contained in:
parent
3c00ca03a2
commit
128b93e061
@ -45,6 +45,11 @@ python3Packages.buildPythonApplication rec {
|
|||||||
# We remove the check so multiple outputs can work sanely.
|
# We remove the check so multiple outputs can work sanely.
|
||||||
./allow-dirs-outside-of-prefix.patch
|
./allow-dirs-outside-of-prefix.patch
|
||||||
|
|
||||||
|
# Meson is currently inspecting fewer variables than autoconf does, which
|
||||||
|
# makes it harder for us to use setup hooks, etc. Taken from
|
||||||
|
# https://github.com/mesonbuild/meson/pull/6827
|
||||||
|
./more-env-vars.patch
|
||||||
|
|
||||||
# Unlike libtool, vanilla Meson does not pass any information
|
# Unlike libtool, vanilla Meson does not pass any information
|
||||||
# about the path library will be installed to to g-ir-scanner,
|
# about the path library will be installed to to g-ir-scanner,
|
||||||
# breaking the GIR when path other than ${!outputLib}/lib is used.
|
# breaking the GIR when path other than ${!outputLib}/lib is used.
|
||||||
@ -67,13 +72,7 @@ python3Packages.buildPythonApplication rec {
|
|||||||
|
|
||||||
crossFile = writeTextDir "cross-file.conf" ''
|
crossFile = writeTextDir "cross-file.conf" ''
|
||||||
[binaries]
|
[binaries]
|
||||||
c = '${targetPackages.stdenv.cc.targetPrefix}cc'
|
|
||||||
cpp = '${targetPackages.stdenv.cc.targetPrefix}c++'
|
|
||||||
ar = '${targetPackages.stdenv.cc.bintools.targetPrefix}ar'
|
|
||||||
strip = '${targetPackages.stdenv.cc.bintools.targetPrefix}strip'
|
|
||||||
pkgconfig = 'pkg-config'
|
pkgconfig = 'pkg-config'
|
||||||
ld = '${targetPackages.stdenv.cc.targetPrefix}ld'
|
|
||||||
objcopy = '${targetPackages.stdenv.cc.targetPrefix}objcopy'
|
|
||||||
|
|
||||||
[properties]
|
[properties]
|
||||||
needs_exe_wrapper = true
|
needs_exe_wrapper = true
|
||||||
|
@ -0,0 +1,16 @@
|
|||||||
|
diff --git a/mesonbuild/envconfig.py b/mesonbuild/envconfig.py
|
||||||
|
index ac13a710..e0d07c51 100644
|
||||||
|
--- a/mesonbuild/envconfig.py
|
||||||
|
+++ b/mesonbuild/envconfig.py
|
||||||
|
@@ -119,9 +119,9 @@ def get_env_var_pair(for_machine: MachineChoice,
|
||||||
|
# compiling we fall back on the unprefixed host version. This
|
||||||
|
# allows native builds to never need to worry about the 'BUILD_*'
|
||||||
|
# ones.
|
||||||
|
- ([var_name + '_FOR_BUILD'] if is_cross else [var_name]),
|
||||||
|
+ [var_name + '_FOR_BUILD'] + ([] if is_cross else [var_name]),
|
||||||
|
# Always just the unprefixed host verions
|
||||||
|
- ([] if is_cross else [var_name]),
|
||||||
|
+ [var_name],
|
||||||
|
)[for_machine]
|
||||||
|
for var in candidates:
|
||||||
|
value = os.environ.get(var)
|
Loading…
x
Reference in New Issue
Block a user