summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2023-03-09 22:20:47 +0100
committerLudovic Courtès <ludo@gnu.org>2023-03-09 22:24:10 +0100
commitef893df92ae40b9572a2be093c75762fa752fbbb (patch)
tree439c77fd01e3a4a0563c9233b467161a6bb6868f /gnu
parent0c425b8d18046bac67687d2f9269da2c5f35fd75 (diff)
downloadguix-ef893df92ae40b9572a2be093c75762fa752fbbb.tar.gz
gnu: libxslt: Allow cross-compilation.
* gnu/packages/xml.scm (libxslt)[arguments]: Rewrite using gexps.
Add #:configure-flags.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/xml.scm40
1 files changed, 26 insertions, 14 deletions
diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm
index e0de8d52cf..a132f58097 100644
--- a/gnu/packages/xml.scm
+++ b/gnu/packages/xml.scm
@@ -335,20 +335,32 @@ formulas and hyperlinks to multiple worksheets in an Excel 2007+ XLSX file.")
              (patches (search-patches "libxslt-generated-ids.patch"))))
     (build-system gnu-build-system)
     (arguments
-     `(#:phases (modify-phases %standard-phases
-                  (add-before 'check 'disable-fuzz-tests
-                    (lambda _
-                      ;; Disable libFuzzer tests, because they require
-                      ;; instrumentation builds of libxml2 and libxslt.
-                      (substitute* "tests/Makefile"
-                        (("exslt plugins fuzz")
-                         "exslt plugins"))
-                      ;; Also disable Python tests since they require
-                      ;; python-libxml2 which would introduce a
-                      ;; circular dependency.
-                      (substitute* "python/Makefile"
-                        (("cd tests && \\$\\(MAKE\\) tests")
-                         "$(info Python tests are disabled by Guix.)")))))))
+     (list #:phases
+           #~(modify-phases %standard-phases
+               (add-before 'check 'disable-fuzz-tests
+                 (lambda _
+                   ;; Disable libFuzzer tests, because they require
+                   ;; instrumentation builds of libxml2 and libxslt.
+                   (substitute* "tests/Makefile"
+                     (("exslt plugins fuzz")
+                      "exslt plugins"))
+                   ;; Also disable Python tests since they require
+                   ;; python-libxml2 which would introduce a
+                   ;; circular dependency.
+                   (substitute* "python/Makefile"
+                     (("cd tests && \\$\\(MAKE\\) tests")
+                      "$(info Python tests are disabled by Guix.)")))))
+           #:configure-flags
+           (if (%current-target-system)
+               ;; 'configure.ac' uses 'AM_PATH_PYTHON', which looks for
+               ;; 'python' in $PATH, even though it's only used in the shebang
+               ;; of examples.  Thus, when cross-compiling, set 'PYTHON' so
+               ;; that 'configure' doesn't search $PATH.
+               #~(list (string-append "PYTHON="
+                                      #$(this-package-input
+                                         "python-minimal-wrapper")
+                                      "/bin/python"))
+               #~'())))
     (home-page "http://xmlsoft.org/XSLT/index.html")
     (synopsis "C library for applying XSLT stylesheets to XML documents")
     (inputs