guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

102/136: gnu: meson: Patch to allow installing to independent prefixes.


From: guix-commits
Subject: 102/136: gnu: meson: Patch to allow installing to independent prefixes.
Date: Sun, 17 Oct 2021 05:16:16 -0400 (EDT)

apteryx pushed a commit to branch core-updates-frozen-batched-changes
in repository guix.

commit 0e3f0f9328d800964490846d62b1bbb15c37023b
Author: Maxim Cournoyer <maxim.cournoyer@gmail.com>
AuthorDate: Thu Oct 7 14:54:08 2021 -0400

    gnu: meson: Patch to allow installing to independent prefixes.
    
    Meson goes to lengths at preventing installation to directories outside of 
the
    main installation prefix.  This isn't convenient or desirable in Guix; patch
    it out using a patch maintained by Nix.
    
    * gnu/packages/patches/meson-allow-dirs-outside-of-prefix.patch: Add patch.
    * gnu/local.mk (dist_patch_DATA): Register it.
    * gnu/packages/build-tools.scm (meson): Use it.
---
 gnu/local.mk                                         |  1 +
 gnu/packages/build-tools.scm                         |  4 +++-
 .../patches/meson-allow-dirs-outside-of-prefix.patch | 20 ++++++++++++++++++++
 3 files changed, 24 insertions(+), 1 deletion(-)

diff --git a/gnu/local.mk b/gnu/local.mk
index caeb6f9..8db93c6 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1455,6 +1455,7 @@ dist_patch_DATA =                                         
\
   %D%/packages/patches/mesa-opencl-all-targets.patch           \
   %D%/packages/patches/mesa-skip-tests.patch                   \
   %D%/packages/patches/mescc-tools-boot.patch                  \
+  %D%/packages/patches/meson-allow-dirs-outside-of-prefix.patch        \
   %D%/packages/patches/metabat-fix-compilation.patch           \
   %D%/packages/patches/mhash-keygen-test-segfault.patch                \
   %D%/packages/patches/minetest-add-MINETEST_MOD_PATH.patch    \
diff --git a/gnu/packages/build-tools.scm b/gnu/packages/build-tools.scm
index c92fe0b..a02d1a7 100644
--- a/gnu/packages/build-tools.scm
+++ b/gnu/packages/build-tools.scm
@@ -272,7 +272,9 @@ files and generates build instructions for the Ninja build 
system.")
                                   version ".tar.gz"))
               (sha256
                (base32
-                "0v9m0bazhj48kwc8x3gkxg5c3kcvknvqfjlq22z6pm2h2r2nln6v"))))
+                "0v9m0bazhj48kwc8x3gkxg5c3kcvknvqfjlq22z6pm2h2r2nln6v"))
+              (patches (search-patches
+                        "meson-allow-dirs-outside-of-prefix.patch"))))
     (build-system python-build-system)
     (arguments
      `(;; FIXME: Tests require many additional inputs and patching many
diff --git a/gnu/packages/patches/meson-allow-dirs-outside-of-prefix.patch 
b/gnu/packages/patches/meson-allow-dirs-outside-of-prefix.patch
new file mode 100644
index 0000000..f16daa8
--- /dev/null
+++ b/gnu/packages/patches/meson-allow-dirs-outside-of-prefix.patch
@@ -0,0 +1,20 @@
+Source: 
https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/development/tools/build-managers/meson/allow-dirs-outside-of-prefix.patch
+--- a/mesonbuild/coredata.py
++++ b/mesonbuild/coredata.py
+@@ -506,7 +506,6 @@ class CoreData:
+             return value
+         if option.name.endswith('dir') and value.is_absolute() and \
+            option not in BULITIN_DIR_NOPREFIX_OPTIONS:
+-            # Value must be a subdir of the prefix
+             # commonpath will always return a path in the native format, so we
+             # must use pathlib.PurePath to do the same conversion before
+             # comparing.
+@@ -518,7 +517,7 @@ class CoreData:
+             try:
+                 value = value.relative_to(prefix)
+             except ValueError:
+-                raise MesonException(msg.format(option, value, prefix))
++                pass
+             if '..' in str(value):
+                 raise MesonException(msg.format(option, value, prefix))
+         return value.as_posix()



reply via email to

[Prev in Thread] Current Thread [Next in Thread]