summary refs log tree commit diff
path: root/gnu/packages/zile.scm
diff options
context:
space:
mode:
authorMarius Bakke <mbakke@fastmail.com>2020-03-11 18:58:48 +0100
committerMarius Bakke <mbakke@fastmail.com>2020-03-11 18:58:48 +0100
commit805ac43c94da049284bdc9981a897a89770cf86b (patch)
tree37ca5f78deb8ee5b637e82eddf7372e7229c3e47 /gnu/packages/zile.scm
parent1ed3b845f7cc7ead43332b61c750b8ec0dee6960 (diff)
downloadguix-805ac43c94da049284bdc9981a897a89770cf86b.tar.gz
gnu: zile: Fix cross-compilation.
* gnu/packages/zile.scm (zile)[native-inputs]: Add THIS-PACKAGE when
cross-compiling.
[arguments]: Add phase when cross-compiling.
Diffstat (limited to 'gnu/packages/zile.scm')
-rw-r--r--gnu/packages/zile.scm21
1 files changed, 19 insertions, 2 deletions
diff --git a/gnu/packages/zile.scm b/gnu/packages/zile.scm
index eea0dba272..2718232e27 100644
--- a/gnu/packages/zile.scm
+++ b/gnu/packages/zile.scm
@@ -3,6 +3,7 @@
 ;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -51,7 +52,7 @@
                "0x3byaddms8l3g7igx6njycqsq98wgapysdb5c7lhcnajlkp8y3s"))))
     (build-system gnu-build-system)
     (arguments
-     '(#:phases
+     `(#:phases
        (modify-phases %standard-phases
          (add-before 'configure 'patch-/bin/sh
            (lambda* (#:key inputs #:allow-other-keys)
@@ -60,7 +61,18 @@
                (substitute* '("lib/spawni.c" "src/funcs.c")
                  (("/bin/sh")
                   (string-append bash "/bin/sh")))
-               #t))))))
+               #t)))
+         ;; Zile generates its manual pages by calling the built Zile
+         ;; with the --help argument.  That does not work when cross-
+         ;; compiling; use the native Zile added below in that case.
+         ,@(if (%current-target-system)
+               '((add-before 'build 'use-native-zile-for-documentation
+                   (lambda _
+                     (substitute* "build-aux/zile-help2man-wrapper"
+                       (("src/zile")
+                        (which "zile")))
+                     #t)))
+               '()))))
     (inputs
      `(("boehm-gc" ,libgc)
        ("ncurses" ,ncurses)
@@ -68,6 +80,11 @@
     (native-inputs
      `(("perl" ,perl)
        ("help2man" ,help2man)
+       ;; When cross-compiling, Zile needs a native version of itself to
+       ;; generate the manual pages (see the related phase above).
+       ,@(if (%current-target-system)
+             `(("self" ,this-package))
+             '())
        ("pkg-config" ,pkg-config)))
     (home-page "https://www.gnu.org/software/zile/")
     (synopsis "Lightweight Emacs clone")