~ruther/guix-local

dab666cd8d91bf2c4aacc920e3ea2ec01221123f — Peter Mikkelsen 8 years ago 67f8ba1
gnu: Add meson-for-build.

* gnu/packages/build-tools.scm (meson-for-build): New variable.
* gnu/packages/patches/meson-for-build-rpath.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
3 files changed, 43 insertions(+), 0 deletions(-)

M gnu/local.mk
M gnu/packages/build-tools.scm
A gnu/packages/patches/meson-for-build-rpath.patch
M gnu/local.mk => gnu/local.mk +1 -0
@@ 856,6 856,7 @@ dist_patch_DATA =						\
  %D%/packages/patches/mcrypt-CVE-2012-4527.patch			\
  %D%/packages/patches/mesa-skip-disk-cache-test.patch		\
  %D%/packages/patches/mesa-wayland-egl-symbols-check-mips.patch	\
  %D%/packages/patches/meson-for-build-rpath.patch		\
  %D%/packages/patches/metabat-fix-compilation.patch		\
  %D%/packages/patches/mhash-keygen-test-segfault.patch		\
  %D%/packages/patches/mingw-w64-5.0rc2-gcc-4.9.3.patch		\

M gnu/packages/build-tools.scm => gnu/packages/build-tools.scm +18 -0
@@ 93,6 93,24 @@ files}, are written in a custom domain-specific language (DSL) that resembles
Python.")
    (license license:asl2.0)))

(define-public meson-for-build
  (package
    (inherit meson)
    (name "meson-for-build")
    (version "0.42.0")
    (source (origin
              (method url-fetch)
              (uri (string-append "https://github.com/mesonbuild/meson/"
                                  "archive/" version ".tar.gz"))
              (file-name (string-append name "-" version ".tar.gz"))
              (sha256
               (base32
                "0vyp9rkymzzzilhnf04ryszslyp9a0y0wf4agyijd4w5lcnqlcbc"))
              (patches (search-patches "meson-for-build-rpath.patch"))))

    ;; People should probably install "meson", not "meson-for-build".
    (properties `((hidden? . #t)))))

(define-public premake4
  (package
    (name "premake")

A gnu/packages/patches/meson-for-build-rpath.patch => gnu/packages/patches/meson-for-build-rpath.patch +24 -0
@@ 0,0 1,24 @@
This patch removes a part of meson that clears the rpath upon installation.
This will only be applied to a special version of meson, used for the
meson-build-system.

Patch by Peter Mikkelsen <petermikkelsen10@gmail.com>

--- meson-0.42.0/mesonbuild/scripts/meson_install.py.orig	2017-09-09 01:49:39.147374148 +0200
+++ meson-0.42.0/mesonbuild/scripts/meson_install.py	2017-09-09 01:51:01.209134717 +0200
@@ -345,15 +345,6 @@
                     print("Symlink creation does not work on this platform. "
                           "Skipping all symlinking.")
                     printed_symlink_error = True
-        if is_elf_platform() and os.path.isfile(outname):
-            try:
-                e = depfixer.Elf(outname, False)
-                e.fix_rpath(install_rpath)
-            except SystemExit as e:
-                if isinstance(e.code, int) and e.code == 0:
-                    pass
-                else:
-                    raise

 def run(args):
     global install_log_file