diff options
Diffstat (limited to 'pkgs/development/tools/build-managers/meson/default.nix')
-rw-r--r-- | pkgs/development/tools/build-managers/meson/default.nix | 50 |
1 files changed, 12 insertions, 38 deletions
diff --git a/pkgs/development/tools/build-managers/meson/default.nix b/pkgs/development/tools/build-managers/meson/default.nix index 3ac8e641eb6..a2dc1424d65 100644 --- a/pkgs/development/tools/build-managers/meson/default.nix +++ b/pkgs/development/tools/build-managers/meson/default.nix @@ -3,27 +3,16 @@ , stdenv , writeTextDir , substituteAll -, targetPackages +, pkgsHostHost }: -let - # See https://mesonbuild.com/Reference-tables.html#cpu-families - cpuFamilies = { - aarch64 = "aarch64"; - armv5tel = "arm"; - armv6l = "arm"; - armv7l = "arm"; - i686 = "x86"; - x86_64 = "x86_64"; - }; -in python3Packages.buildPythonApplication rec { pname = "meson"; - version = "0.53.2"; + version = "0.54.1"; src = python3Packages.fetchPypi { inherit pname version; - sha256 = "Po+DDzMYQ5fC6wtlHsUCrbY97LKJeL3ISzVY1xKEwh8="; + sha256 = "L3b7RXJ2K+E+5HkpJhAJG0UJr1eIvM6zkf4iK80Cltw="; }; postFixup = '' @@ -45,6 +34,11 @@ python3Packages.buildPythonApplication rec { # We remove the check so multiple outputs can work sanely. ./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 # about the path library will be installed to to g-ir-scanner, # breaking the GIR when path other than ${!outputLib}/lib is used. @@ -65,40 +59,20 @@ python3Packages.buildPythonApplication rec { setupHook = ./setup-hook.sh; - crossFile = writeTextDir "cross-file.conf" '' - [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' - ld = '${targetPackages.stdenv.cc.targetPrefix}ld' - objcopy = '${targetPackages.stdenv.cc.targetPrefix}objcopy' - - [properties] - needs_exe_wrapper = true - - [host_machine] - system = '${targetPackages.stdenv.targetPlatform.parsed.kernel.name}' - cpu_family = '${cpuFamilies.${targetPackages.stdenv.targetPlatform.parsed.cpu.name}}' - cpu = '${targetPackages.stdenv.targetPlatform.parsed.cpu.name}' - endian = ${if targetPackages.stdenv.targetPlatform.isLittleEndian then "'little'" else "'big'"} - ''; + # Ensure there will always be a native C compiler when meson is used, as a + # workaround until https://github.com/mesonbuild/meson/pull/6512 lands. + depsHostHostPropagated = [ pkgsHostHost.stdenv.cc ]; # 0.45 update enabled tests but they are failing doCheck = false; # checkInputs = [ ninja pkgconfig ]; # checkPhase = "python ./run_project_tests.py"; - inherit (stdenv) cc; - - isCross = stdenv.targetPlatform != stdenv.hostPlatform; - meta = with lib; { homepage = "https://mesonbuild.com"; description = "SCons-like build system that use python as a front-end language and Ninja as a building backend"; license = licenses.asl20; - maintainers = with maintainers; [ jtojnar mbe rasendubi ]; + maintainers = with maintainers; [ jtojnar mbe ]; platforms = platforms.all; }; } |