guix-devel
[Top][All Lists]
Advanced

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

[PATCH] Fix gettext linkage to expat


From: Andy Wingo
Subject: [PATCH] Fix gettext linkage to expat
Date: Sun, 05 Apr 2015 17:40:25 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.4 (gnu/linux)

Gettext wants to dlopen expat on "linux" platforms.  Guix used to fix
this, but the fix was removed for some reason in the past, resulting in
an xgettext that can't find expat and thus can't handle Glade files.
GTK+ 3.16.0 requires xgettext to support Glade files.  This patch fixes
the issue.  Thanks to Ludovic for the tip.

>From 8e2db815693ef8a300e860fd2601ad1996f90cf9 Mon Sep 17 00:00:00 2001
From: Andy Wingo <address@hidden>
Date: Sun, 5 Apr 2015 10:22:28 +0200
Subject: [PATCH 1/3] gnu: gettext: Link explicitly to libexpat, again.

* gnu/packages/gettext.scm (gnu-gettext): Re-enable patch from
  0e4e4b1329bcf881620f230fda60b6b63d1f8356 to explictly link to
  libexpat.  Otherwise libexpat was searched at runtime via dlopen,
  which obviously doesn't work in a Guix context.
---
 gnu/packages/gettext.scm | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/gettext.scm b/gnu/packages/gettext.scm
index 27b5fb5..3a96cd6 100644
--- a/gnu/packages/gettext.scm
+++ b/gnu/packages/gettext.scm
@@ -70,7 +70,15 @@
                        (substitute* "gettext-tools/src/project-id"
                          (("/bin/pwd")
                           "pwd")))))
-                 %standard-phases)
+                 (alist-cons-before
+                  'configure 'link-expat
+                  (lambda _
+                    ;; Gettext defaults to opening expat via dlopen on
+                    ;; "Linux".  Change to link directly.
+                    (substitute* "gettext-tools/configure"
+                      (("LIBEXPAT=\"-ldl\"") "LIBEXPAT=\"-ldl -lexpat\"")
+                      (("LTLIBEXPAT=\"-ldl\"") "LTLIBEXPAT=\"-ldl -lexpat\"")))
+                  %standard-phases))
 
        ;; When tests fail, we want to know the details.
        #:make-flags '("VERBOSE=yes")))
-- 
2.2.1

-- 
http://wingolog.org/

reply via email to

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