GNU bug report logs - #35244
[PATCH 0/6] Fix some cross-compilation issues.

Previous Next

Package: guix-patches;

Reported by: Mathieu Othacehe <m.othacehe <at> gmail.com>

Date: Fri, 12 Apr 2019 13:14:02 UTC

Severity: normal

Tags: patch

Done: Mathieu Othacehe <m.othacehe <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


Message #11 received at 35244 <at> debbugs.gnu.org (full text, mbox):

From: Mathieu Othacehe <m.othacehe <at> gmail.com>
To: 35244 <at> debbugs.gnu.org
Cc: Mathieu Othacehe <m.othacehe <at> gmail.com>
Subject: [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 <mhw <at> netris.org>
 ;;; Copyright © 2016 Ricardo Wurmus <rekado <at> elephly.net>
 ;;; Copyright © 2017 Ludovic Courtès <ludo <at> gnu.org>
+;;; Copyright © 2019 Mathieu Othacehe <m.othacehe <at> gmail.com>
 ;;;
 ;;; 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/bug-groff <at> gnu.org/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





This bug report was last modified 5 years and 322 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.