summary refs log tree commit diff
diff options
context:
space:
mode:
authorLeo Prikler <leo.prikler@student.tugraz.at>2020-09-10 20:26:10 +0200
committerLeo Famulari <leo@famulari.name>2020-10-31 12:55:51 -0400
commit9c69fec08e286f7486e64c2aa3110fa34974d15d (patch)
treef3752a42987dc687e172fabdc575f032b0d4bdb2
parentd7e033b9a153a9e60f52ff64f4eb355c1c3d0a6e (diff)
downloadguix-9c69fec08e286f7486e64c2aa3110fa34974d15d.tar.gz
gnu: gnome-builder: Fix the build.
As reported in #43296, gnome-builder tries to be linked against the static
version of libselinux (propagated through glib/gio), failing to do so, as it
also wants to be a PIE.  To keep the PIE, link it against the dynamic library.

Fixes <https://bugs.gnu.org/43296>.

* gnu/packages/gnome.scm (gnome-builder)[arguments]: Add 'fix-ninja' phase.

Signed-off-by: Leo Famulari <leo@famulari.name>
-rw-r--r--gnu/packages/gnome.scm7
1 files changed, 7 insertions, 0 deletions
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index b8a2c38a5f..cd7bc0ceba 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -11797,6 +11797,13 @@ libraries.  Applications do not need to be recompiled--or even restarted.")
                 (string-append (assoc-ref inputs "python-pygobject")
                                "/lib")))
              #t))
+         (add-after 'configure 'fix-ninja
+           (lambda _
+             ;; #43296: meson(?) incorrectly assumes we want to link
+             ;;         this PIE against a static libselinux.
+             (substitute* "build.ninja"
+               (("libselinux\\.a") "libselinux.so"))
+             #t))
          (add-before 'check 'pre-check
            (lambda _
              (system "Xvfb :1 &")