[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#35244] [PATCH 2/6] gnu: groff: Fix cross compilation.
From: |
Mathieu Othacehe |
Subject: |
[bug#35244] [PATCH 2/6] gnu: groff: Fix cross compilation. |
Date: |
Fri, 12 Apr 2019 15:15:52 +0200 |
* gnu/packages/groff.scm (groff)[arguments]: Replace build phase to pass
GROFF_BIN_PATH and GROFFBIN variables when cross-compiling.
Also add native groff as an input.
---
gnu/packages/groff.scm | 31 +++++++++++++++++++++++++++++--
1 file changed, 29 insertions(+), 2 deletions(-)
diff --git a/gnu/packages/groff.scm b/gnu/packages/groff.scm
index cf392f5468..6f01395691 100644
--- a/gnu/packages/groff.scm
+++ b/gnu/packages/groff.scm
@@ -3,6 +3,7 @@
;;; Copyright © 2014 Mark H Weaver <address@hidden>
;;; Copyright © 2016 Ricardo Wurmus <address@hidden>
;;; Copyright © 2017 Ludovic Courtès <address@hidden>
+;;; Copyright © 2019 Mathieu Othacehe <address@hidden>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -53,6 +54,7 @@
;; own HTML doc, nor does it change its capabilities, so we removed netpbm
;; from 'inputs'.
+ (self-native-input? #t)
(inputs `(("ghostscript" ,ghostscript)))
(native-inputs `(("bison" ,bison)
("perl" ,perl)
@@ -65,7 +67,31 @@
(add-after 'unpack 'setenv
(lambda _
(setenv "GS_GENERATE_UUIDS" "0")
- #t)))))
+ #t))
+ (replace 'build
+ (lambda* (#:key
+ make-flags parallel-build?
+ native-inputs target #:allow-other-keys)
+ ;; When cross-compiling, native groff is needed, see:
+ ;; http://www.mail-archive.com/address@hidden/msg01335.html
+ (let ((parallel
+ (if parallel-build?
+ `("-j" ,(number->string (parallel-job-count)))
+ '()))
+ (flags
+ (if target
+ (let ((groff (or
+ (assoc-ref native-inputs "groff")
+ (assoc-ref native-inputs "self"))))
+ (append
+ make-flags
+ (list
+ (string-append "GROFF_BIN_PATH=" groff)
+ (string-append "GROFFBIN=" groff
+ "/bin/groff"))))
+ make-flags)))
+ (apply invoke `("make" ,@parallel ,@flags)))
+ #t)))))
(synopsis "Typesetting from plain text mixed with formatting commands")
(description
"Groff is a typesetting package that reads plain text and produces
@@ -86,7 +112,8 @@ is usually the formatter of \"man\" documentation pages.")
;; Omit the DVI, PS, PDF, and HTML backends.
(inputs '())
(native-inputs `(("bison" ,bison)
- ("perl" ,perl)))
+ ("perl" ,perl)
+ ("groff" ,groff)))
(arguments
`(#:disallowed-references (,perl)
--
2.17.1
- [bug#35244] [PATCH 0/6] Fix some cross-compilation issues., Mathieu Othacehe, 2019/04/12
- [bug#35244] [PATCH 1/6] gnu: bash-completion: Fix cross-compilation., Mathieu Othacehe, 2019/04/12
- [bug#35244] [PATCH 2/6] gnu: groff: Fix cross compilation.,
Mathieu Othacehe <=
- [bug#35244] [PATCH 3/6] gnu: glibc-utf8-locales: Always use native package., Mathieu Othacehe, 2019/04/12
- [bug#35244] [PATCH 4/6] gnu: firmware: Fix cross compilation., Mathieu Othacehe, 2019/04/12
- [bug#35244] [PATCH 6/6] gnu: python: Fix cross compilation., Mathieu Othacehe, 2019/04/12
- [bug#35244] [PATCH 5/6] linux-initrd: Fix cross compilation., Mathieu Othacehe, 2019/04/12
- [bug#35244] [PATCH 1/6] gnu: bash-completion: Fix cross-compilation., Ludovic Courtès, 2019/04/14