summaryrefslogtreecommitdiff
path: root/guix
diff options
context:
space:
mode:
authorMark H Weaver <mhw@netris.org>2018-03-20 14:22:06 -0400
committerMark H Weaver <mhw@netris.org>2018-03-20 14:22:06 -0400
commitac21be848ac420d2106d4441e9e48ea6a60c5c8c (patch)
treebbd383d300a2142389dfcd90263d8f99adbd0d7a /guix
parentd3da21d222665de607f65d475dff1d2d55247753 (diff)
parent4a78fd4617908546be15d2c101f5cab512c71f8e (diff)
Merge branch 'master' into core-updates
Diffstat (limited to 'guix')
-rw-r--r--guix/build-system/meson.scm18
-rw-r--r--guix/build/meson-build-system.scm9
-rw-r--r--guix/import/hackage.scm2
-rw-r--r--guix/licenses.scm2
4 files changed, 26 insertions, 5 deletions
diff --git a/guix/build-system/meson.scm b/guix/build-system/meson.scm
index d7754e460a..529a2b8b0f 100644
--- a/guix/build-system/meson.scm
+++ b/guix/build-system/meson.scm
@@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017 Peter Mikkelsen <petermikkelsen10@gmail.com>
+;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -80,8 +81,15 @@
(system system)
(build-inputs `(("meson" ,meson)
("ninja" ,ninja)
- ;; Add patchelf for (guix build rpath) to work.
- ("patchelf" ,(default-patchelf))
+ ;; XXX PatchELF fails to build on armhf, so we skip
+ ;; the 'fix-runpath' phase there for now. It is used
+ ;; to avoid superfluous entries in RUNPATH as described
+ ;; in <https://bugs.gnu.org/28444#46>, so armhf may now
+ ;; have different runtime dependencies from other arches.
+ ,@(if (not (string-prefix? "arm" (or (%current-target-system)
+ (%current-system))))
+ `(("patchelf" ,(default-patchelf)))
+ '())
,@native-inputs))
(host-inputs `(,@(if source
`(("source" ,source))
@@ -139,7 +147,11 @@ has a 'meson.build' file."
#:inputs %build-inputs
#:search-paths ',(map search-path-specification->sexp
search-paths)
- #:phases build-phases
+ #:phases
+ (if (string-prefix? "arm" ,(or (%current-target-system)
+ (%current-system)))
+ (modify-phases build-phases (delete 'fix-runpath))
+ build-phases)
#:configure-flags ,configure-flags
#:build-type ,build-type
#:tests? ,tests?
diff --git a/guix/build/meson-build-system.scm b/guix/build/meson-build-system.scm
index 2b92240c52..e8cb5440eb 100644
--- a/guix/build/meson-build-system.scm
+++ b/guix/build/meson-build-system.scm
@@ -46,6 +46,15 @@
,(string-append "--buildtype=" build-type)
,@configure-flags
,source-dir)))
+
+ ;; Meson lacks good facilities for dealing with RUNPATH, so we
+ ;; add the output "lib" directory here to avoid doing that in
+ ;; many users. Related issues:
+ ;; * <https://github.com/mesonbuild/meson/issues/314>
+ ;; * <https://github.com/mesonbuild/meson/issues/3038>
+ ;; * <https://github.com/NixOS/nixpkgs/issues/31222>
+ (setenv "LDFLAGS" (string-append "-Wl,-rpath=" out "/lib"))
+
(mkdir build-dir)
(chdir build-dir)
(zero? (apply system* "meson" args))))
diff --git a/guix/import/hackage.scm b/guix/import/hackage.scm
index 4fb00af404..eb9e1d7d82 100644
--- a/guix/import/hackage.scm
+++ b/guix/import/hackage.scm
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch>
;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
-;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
+;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
;;;
;;; This file is part of GNU Guix.
;;;
diff --git a/guix/licenses.scm b/guix/licenses.scm
index 700fa7f03a..4ef18fb326 100644
--- a/guix/licenses.scm
+++ b/guix/licenses.scm
@@ -8,7 +8,7 @@
;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016 Fabian Harfert <fhmgufs@web.de>
;;; Copyright © 2016 Rene Saavedra <rennes@openmailbox.org>
-;;; Copyright © 2016, 2017 ng0 <ng0@libertad.pw>
+;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2017 Petter <petter@mykolab.ch>
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>