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.
This commit is contained in:
Mark H Weaver 2014-08-20 12:13:44 -04:00
parent 06a70dbec1
commit c3114b7567
4 changed files with 37 additions and 25 deletions

View file

@ -29,6 +29,7 @@ (define-module (gnu packages admin)
#:use-module (guix build-system trivial) #:use-module (guix build-system trivial)
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (gnu packages base) #:use-module (gnu packages base)
#:use-module (gnu packages file)
#:use-module (gnu packages ncurses) #:use-module (gnu packages ncurses)
#:use-module (gnu packages readline) #:use-module (gnu packages readline)
#:use-module (gnu packages linux) #:use-module (gnu packages linux)
@ -648,18 +649,7 @@ (define-public sudo
"") "")
(("^install: (.*)install-sudoers(.*)" _ before after) (("^install: (.*)install-sudoers(.*)" _ before after)
;; Don't try to create /etc/sudoers. ;; Don't try to create /etc/sudoers.
(string-append "install: " before after "\n"))) (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")))
'()))
%standard-phases) %standard-phases)
;; XXX: The 'testsudoers' test series expects user 'root' to exist, but ;; XXX: The 'testsudoers' test series expects user 'root' to exist, but
@ -669,6 +659,12 @@ (define-public sudo
`(("groff" ,groff) `(("groff" ,groff)
("linux-pam" ,linux-pam) ("linux-pam" ,linux-pam)
("coreutils" ,coreutils))) ("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/") (home-page "http://www.sudo.ws/")
(synopsis "Run commands as root") (synopsis "Run commands as root")
(description (description

View file

@ -22,6 +22,7 @@ (define-module (gnu packages bdw-gc)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (gnu packages file)
#:use-module (gnu packages pkg-config)) #:use-module (gnu packages pkg-config))
(define-public libgc-7.2 (define-public libgc-7.2
@ -75,6 +76,12 @@ (define-public libatomic-ops
(base32 (base32
"1pdm0h1y7bgkczr8byg20r6bq15m5072cqm5pny4f9crc9gn3yh4")))) "1pdm0h1y7bgkczr8byg20r6bq15m5072cqm5pny4f9crc9gn3yh4"))))
(build-system gnu-build-system) (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")) (outputs '("out" "debug"))
(synopsis "Accessing hardware atomic memory update operations") (synopsis "Accessing hardware atomic memory update operations")
(description (description
@ -99,7 +106,13 @@ (define-public libgc
"18mg28rr6kwr5clc65k4l4hkyy4kd16amx831sjf8q2lqkbhlck3")))) "18mg28rr6kwr5clc65k4l4hkyy4kd16amx831sjf8q2lqkbhlck3"))))
;; New dependencies. ;; 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))) (inputs `(("libatomic-ops" ,libatomic-ops)))
;; 'USE_LIBC_PRIVATES' is now the default. ;; 'USE_LIBC_PRIVATES' is now the default.

View file

@ -20,6 +20,7 @@
(define-module (gnu packages gawk) (define-module (gnu packages gawk)
#:use-module (guix licenses) #:use-module (guix licenses)
#:use-module (gnu packages bash) #:use-module (gnu packages bash)
#:use-module (gnu packages file)
#:use-module (gnu packages libsigsegv) #:use-module (gnu packages libsigsegv)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix download) #:use-module (guix download)
@ -55,17 +56,6 @@ (define-public gawk
'((substitute* "extension/Makefile.in" '((substitute* "extension/Makefile.in"
(("^.*: check-for-shared-lib-support" match) (("^.*: check-for-shared-lib-support" match)
(string-append "### " 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))) %standard-phases)))
(inputs `(("libsigsegv" ,libsigsegv) (inputs `(("libsigsegv" ,libsigsegv)
@ -73,7 +63,12 @@ (define-public gawk
,@(if (%current-target-system) ,@(if (%current-target-system)
`(("bash" ,bash)) `(("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/") (home-page "http://www.gnu.org/software/gawk/")
(synopsis "A text scanning and processing language") (synopsis "A text scanning and processing language")
(description (description

View file

@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org> ;;; 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. ;;; This file is part of GNU Guix.
;;; ;;;
@ -18,6 +19,7 @@
(define-module (gnu packages libffi) (define-module (gnu packages libffi)
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (gnu packages file)
#:use-module (guix licenses) #:use-module (guix licenses)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix download) #:use-module (guix download)
@ -43,6 +45,12 @@ (define out (assoc-ref outputs "out"))
(base32 (base32
"1sznmrhcswwbyqla9y2ximlkzbxks59wjfs3lh7qf8ayranyxzlp")))) "1sznmrhcswwbyqla9y2ximlkzbxks59wjfs3lh7qf8ayranyxzlp"))))
(build-system gnu-build-system) (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 (arguments `(#:phases (alist-cons-after 'install 'post-install
,post-install-phase ,post-install-phase
%standard-phases))) %standard-phases)))