summary refs log tree commit diff
diff options
context:
space:
mode:
authorMark H Weaver <mhw@netris.org>2014-08-20 12:13:44 -0400
committerMark H Weaver <mhw@netris.org>2014-08-20 12:16:13 -0400
commitc3114b756760ddb73054a4bc3d5eff0bfe47c4de (patch)
treec0d849ae59187a2c4ff9daf0e8f515ffa4161ce4
parent06a70dbec116efaf70ee29341921197496b06139 (diff)
downloadguix-c3114b756760ddb73054a4bc3d5eff0bfe47c4de.tar.gz
gnu: Add 'file' as a native-input on MIPS for some packages.
* gnu/packages/admin.scm (sudo):
  gnu/packages/gawk.scm (gawk): Add 'file' as a native input on MIPS.
  Remove earlier workaround on MIPS.

* gnu/packages/libffi.scm (libffi):
  gnu/packages/bdw-gc.scm (libatomic-ops, libgc): Add 'file' as a
  native input on MIPS.
-rw-r--r--gnu/packages/admin.scm20
-rw-r--r--gnu/packages/bdw-gc.scm15
-rw-r--r--gnu/packages/gawk.scm19
-rw-r--r--gnu/packages/libffi.scm8
4 files changed, 37 insertions, 25 deletions
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index c2599746d8..83b01808cd 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -29,6 +29,7 @@
   #:use-module (guix build-system trivial)
   #:use-module (gnu packages)
   #:use-module (gnu packages base)
+  #:use-module (gnu packages file)
   #:use-module (gnu packages ncurses)
   #:use-module (gnu packages readline)
   #:use-module (gnu packages linux)
@@ -648,18 +649,7 @@ system administrator.")
                       "")
                      (("^install: (.*)install-sudoers(.*)" _ before after)
                       ;; Don't try to create /etc/sudoers.
-                      (string-append "install: " before after "\n")))
-
-                   ;; XXX FIXME sudo 1.8.10p3 was bootstrapped with a
-                   ;; prerelease libtool, which fails on MIPS in the absence
-                   ;; of /usr/bin/file.  As a temporary workaround, we patch
-                   ;; the configure script to hardcode use of the little
-                   ;; endian N32 ABI on MIPS.
-                   ,@(if (equal? "mips64el-linux" (or (%current-target-system)
-                                                      (%current-system)))
-                         '((substitute* "configure"
-                             (("\\$emul") "elf32ltsmipn32")))
-                         '()))
+                      (string-append "install: " before after "\n"))))
                  %standard-phases)
 
        ;; XXX: The 'testsudoers' test series expects user 'root' to exist, but
@@ -669,6 +659,12 @@ system administrator.")
      `(("groff" ,groff)
        ("linux-pam" ,linux-pam)
        ("coreutils" ,coreutils)))
+    (native-inputs
+     `(;; 'file' is needed by the pre-release libtool on MIPS.
+       ,@(if (equal? "mips64el-linux" (or (%current-target-system)
+                                          (%current-system)))
+             `(("file" ,file))
+             '())))
     (home-page "http://www.sudo.ws/")
     (synopsis "Run commands as root")
     (description
diff --git a/gnu/packages/bdw-gc.scm b/gnu/packages/bdw-gc.scm
index df7cd1b489..e68ca50b5e 100644
--- a/gnu/packages/bdw-gc.scm
+++ b/gnu/packages/bdw-gc.scm
@@ -22,6 +22,7 @@
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix build-system gnu)
+  #:use-module (gnu packages file)
   #:use-module (gnu packages pkg-config))
 
 (define-public libgc-7.2
@@ -75,6 +76,12 @@ C or C++ programs, though that is not its primary goal.")
                (base32
                 "1pdm0h1y7bgkczr8byg20r6bq15m5072cqm5pny4f9crc9gn3yh4"))))
     (build-system gnu-build-system)
+    (native-inputs
+     `(;; 'file' is needed by the pre-release libtool on MIPS.
+       ,@(if (equal? "mips64el-linux" (or (%current-target-system)
+                                          (%current-system)))
+             `(("file" ,file))
+             '())))
     (outputs '("out" "debug"))
     (synopsis "Accessing hardware atomic memory update operations")
     (description
@@ -99,7 +106,13 @@ lock-free code, experiment with thread programming paradigms, etc.")
                 "18mg28rr6kwr5clc65k4l4hkyy4kd16amx831sjf8q2lqkbhlck3"))))
 
     ;; New dependencies.
-    (native-inputs `(("pkg-config" ,pkg-config)))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)
+       ;; 'file' is needed by the pre-release libtool on MIPS.
+       ,@(if (equal? "mips64el-linux" (or (%current-target-system)
+                                          (%current-system)))
+             `(("file" ,file))
+             '())))
     (inputs `(("libatomic-ops" ,libatomic-ops)))
 
     ;; 'USE_LIBC_PRIVATES' is now the default.
diff --git a/gnu/packages/gawk.scm b/gnu/packages/gawk.scm
index 6185409fb7..737e610ae5 100644
--- a/gnu/packages/gawk.scm
+++ b/gnu/packages/gawk.scm
@@ -20,6 +20,7 @@
 (define-module (gnu packages gawk)
   #:use-module (guix licenses)
   #:use-module (gnu packages bash)
+  #:use-module (gnu packages file)
   #:use-module (gnu packages libsigsegv)
   #:use-module (guix packages)
   #:use-module (guix download)
@@ -55,17 +56,6 @@
                           '((substitute* "extension/Makefile.in"
                               (("^.*: check-for-shared-lib-support" match)
                                (string-append "### " match))))
-                          '())
-
-                    ;; XXX FIXME gawk 4.1.1 was bootstrapped with a prerelease
-                    ;; libtool, which fails on MIPS in the absence of
-                    ;; /usr/bin/file.  As a temporary workaround, we patch
-                    ;; the configure script to hardcode use of the little
-                    ;; endian N32 ABI on MIPS.
-                    ,@(if (equal? "mips64el-linux" (or (%current-target-system)
-                                                       (%current-system)))
-                          '((substitute* "extension/configure"
-                              (("\\$emul") "elf32ltsmipn32")))
                           '())))
                 %standard-phases)))
    (inputs `(("libsigsegv" ,libsigsegv)
@@ -73,7 +63,12 @@
              ,@(if (%current-target-system)
                    `(("bash" ,bash))
                    '())))
-
+   (native-inputs
+    `(;; 'file' is needed by the pre-release libtool on MIPS.
+      ,@(if (equal? "mips64el-linux" (or (%current-target-system)
+                                         (%current-system)))
+            `(("file" ,file))
+            '())))
    (home-page "http://www.gnu.org/software/gawk/")
    (synopsis "A text scanning and processing language")
    (description
diff --git a/gnu/packages/libffi.scm b/gnu/packages/libffi.scm
index 33e10d6fc2..067838f8e2 100644
--- a/gnu/packages/libffi.scm
+++ b/gnu/packages/libffi.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -18,6 +19,7 @@
 
 (define-module (gnu packages libffi)
   #:use-module (gnu packages)
+  #:use-module (gnu packages file)
   #:use-module (guix licenses)
   #:use-module (guix packages)
   #:use-module (guix download)
@@ -43,6 +45,12 @@
               (base32
                "1sznmrhcswwbyqla9y2ximlkzbxks59wjfs3lh7qf8ayranyxzlp"))))
     (build-system gnu-build-system)
+    (native-inputs
+     `(;; 'file' is needed by the pre-release libtool on MIPS.
+       ,@(if (equal? "mips64el-linux" (or (%current-target-system)
+                                          (%current-system)))
+             `(("file" ,file))
+             '())))
     (arguments `(#:phases (alist-cons-after 'install 'post-install
                                             ,post-install-phase
                                             %standard-phases)))