gnu: ncurses: Do not use "install -s" when cross-compiling.
authorLudovic Courtès <ludo@gnu.org>
Sun, 22 Apr 2018 20:37:52 +0000 (22:37 +0200)
committerLudovic Courtès <ludo@gnu.org>
Sun, 22 Apr 2018 20:40:48 +0000 (22:40 +0200)
Reported by Marius Bakke <mbakke@fastmail.com>
at <https://lists.gnu.org/archive/html/guix-devel/2018-04/msg00157.html>.

* gnu/packages/ncurses.scm (ncurses)[arguments]: Add
"--disable-stripping" to #:configure-flags when cross-compiling.

gnu/packages/ncurses.scm

index daa146b..2f628a6 100644 (file)
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 2013, 2014, 2015, 2017 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2012, 2013, 2014, 2015, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2014, 2016 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2015, 2017 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
               ;; correct RUNPATH.
               ,(list 'unquote '(string-append "LDFLAGS=-Wl,-rpath=" (assoc-ref %outputs "out")
                                               "/lib"))
+
+              ;; Starting from ncurses 6.1, "make install" runs "install -s"
+              ;; by default, which doesn't work for cross-compiled binaries
+              ;; because it invokes 'strip' instead of 'TRIPLET-strip'.  Work
+              ;; around this.
+              ,@(if (%current-target-system) '("--disable-stripping") '())
+
               ;; MinGW: Use term-driver created for the MinGW port.
               ,@(if (target-mingw?) '("--enable-term-driver") '()))))
          #:tests? #f                  ; no "check" target