diff options
Diffstat (limited to 'gnu/packages/hurd.scm')
-rw-r--r-- | gnu/packages/hurd.scm | 87 |
1 files changed, 48 insertions, 39 deletions
diff --git a/gnu/packages/hurd.scm b/gnu/packages/hurd.scm index a4c0296b04..2b2e162107 100644 --- a/gnu/packages/hurd.scm +++ b/gnu/packages/hurd.scm @@ -21,12 +21,12 @@ #:use-module (guix download) #:use-module (guix packages) #:use-module (gnu packages) - #:use-module (guix utils) #:use-module (guix build-system gnu) #:use-module (guix build-system trivial) #:use-module (gnu packages flex) #:use-module (gnu packages bison) #:use-module (gnu packages perl) + #:use-module (gnu packages autotools) #:use-module (gnu packages base) #:use-module (guix git-download)) @@ -55,11 +55,7 @@ ;; GNU Mach supports only IA32 currently, so cheat so that we can at ;; least install its headers. - ,@(if (%current-target-system) - '() - ;; See <http://lists.gnu.org/archive/html/bug-hurd/2015-06/msg00042.html> - ;; <http://lists.gnu.org/archive/html/guix-devel/2015-06/msg00716.html> - '(#:configure-flags '("--build=i586-pc-gnu"))) + #:configure-flags '("--build=i686-pc-gnu") #:tests? #f)) (home-page "https://www.gnu.org/software/hurd/microkernel/mach/gnumach.html") @@ -112,7 +108,11 @@ communication.") "1pbc4aqgzxvkgivw80ghp3w755cl0fwxmg357vq7chimj64jk78d")))) (build-system gnu-build-system) (native-inputs - `(("mig" ,mig))) + `(;; Autoconf shouldn't be necessary but there seems to be a bug in the + ;; build system triggering its use. + ("autoconf" ,autoconf) + + ("mig" ,mig))) (arguments `(#:phases (alist-replace 'install @@ -122,19 +122,10 @@ communication.") #:configure-flags '(;; Pretend we're on GNU/Hurd; 'configure' wants ;; that. - ,@(if (%current-target-system) - '() - '("--host=i586-pc-gnu")) + "--build=i686-pc-gnu" ;; Reduce set of dependencies. - "--without-parted" - "--disable-ncursesw" - "--disable-test" - "--without-libbz2" - "--without-libz" - ;; Skip the clnt_create check because it expects - ;; a working glibc causing a circular dependency. - "ac_cv_search_clnt_create=no") + "--without-parted") #:tests? #f)) (home-page "http://www.gnu.org/software/hurd/hurd.html") @@ -149,28 +140,46 @@ Library and other user programs.") (name "hurd-minimal") (inputs `(("glibc-hurd-headers" ,glibc/hurd-headers))) (native-inputs - `(("mig" ,mig))) + `(("autoconf" ,(autoconf-wrapper)) + ("mig" ,mig))) + (arguments - (substitute-keyword-arguments (package-arguments hurd-headers) - ((#:phases _) - '(alist-replace - 'install - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - ;; We need to copy libihash.a to the output directory manually, - ;; since there is no target for that in the makefile. - (mkdir-p (string-append out "/include")) - (copy-file "libihash/ihash.h" - (string-append out "/include/ihash.h")) - (mkdir-p (string-append out "/lib")) - (copy-file "libihash/libihash.a" - (string-append out "/lib/libihash.a")) - #t)) - (alist-replace - 'build - (lambda _ - (zero? (system* "make" "-Clibihash" "libihash.a"))) - %standard-phases))))) + `(#:phases (alist-replace + 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + ;; We need to copy libihash.a to the output directory manually, + ;; since there is no target for that in the makefile. + (mkdir-p (string-append out "/include")) + (copy-file "libihash/ihash.h" + (string-append out "/include/ihash.h")) + (mkdir-p (string-append out "/lib")) + (copy-file "libihash/libihash.a" + (string-append out "/lib/libihash.a")) + #t)) + (alist-replace + 'build + (lambda _ + (zero? (system* "make" "-Clibihash" "libihash.a"))) + (alist-cons-before + 'configure 'bootstrap + (lambda _ + (zero? (system* "autoreconf" "-vfi"))) + %standard-phases))) + #:configure-flags '(;; Pretend we're on GNU/Hurd; 'configure' wants + ;; that. + "--host=i686-pc-gnu" + + ;; Reduce set of dependencies. + "--disable-ncursesw" + "--disable-test" + "--without-libbz2" + "--without-libz" + "--without-parted" + ;; Skip the clnt_create check because it expects + ;; a working glibc causing a circular dependency. + "ac_cv_search_clnt_create=no") + #:tests? #f)) (home-page "http://www.gnu.org/software/hurd/hurd.html") (synopsis "GNU Hurd libraries") (description |