summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gnu/packages/base.scm41
-rw-r--r--gnu/packages/gnupg.scm4
-rw-r--r--gnu/packages/guile.scm6
-rw-r--r--gnu/packages/make-bootstrap.scm5
-rw-r--r--guix/build/gnu-build-system.scm5
5 files changed, 40 insertions, 21 deletions
diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
index e17933b36f..606ca8325f 100644
--- a/gnu/packages/base.scm
+++ b/gnu/packages/base.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 2013 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
;;;
;;; This file is part of GNU Guix.
@@ -31,6 +31,8 @@
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages perl)
#:use-module (gnu packages linux)
+ #:use-module (gnu packages texinfo)
+ #:use-module (gnu packages pkg-config)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system gnu)
@@ -284,6 +286,7 @@ functionality beyond that which is outlined in the POSIX standard.")
"1nyvn8mknw0mf7727lprva3lisl1y0n03lvar342rrpdmz3qc1p6"))
(patches (list (search-patch "make-impure-dirs.patch")))))
(build-system gnu-build-system)
+ (native-inputs `(("pkg-config", pkg-config))) ; to detect Guile
(inputs `(("guile" ,guile-2.0)))
(outputs '("out" "debug"))
(arguments
@@ -473,6 +476,11 @@ library for working with executable and object formats is also included.")
%standard-phases))))
(inputs `(("static-bash" ,(static-package bash-light))))
+
+ ;; To build the manual, we need Texinfo and Perl.
+ (native-inputs `(("texinfo" ,texinfo)
+ ("perl" ,perl)))
+
(synopsis "The GNU C Library")
(description
"Any Unix-like operating system needs a C library: the library which
@@ -583,6 +591,7 @@ and daylight-saving rules.")
(copy-file "make"
(string-append bin "/make"))))
,phases))))))
+ (native-inputs '()) ; no need for 'pkg-config'
(inputs %bootstrap-inputs))))
(define diffutils-boot0
@@ -735,6 +744,13 @@ identifier SYSTEM."
(native-inputs (alist-delete "texinfo"
(package-native-inputs gcc-4.8))))))
+(define perl-boot0
+ (package-with-bootstrap-guile
+ (package-with-explicit-inputs perl
+ %boot0-inputs
+ (current-source-location)
+ #:guile %bootstrap-guile)))
+
(define (linux-libre-headers-boot0)
"Return Linux-Libre header files for the bootstrap environment."
;; Note: this is wrapped in a thunk to nicely handle circular dependencies
@@ -745,12 +761,20 @@ identifier SYSTEM."
#:implicit-inputs? #f
,@(package-arguments linux-libre-headers)))
(native-inputs
- (let ((perl (package-with-explicit-inputs perl
- %boot0-inputs
- (current-source-location)
- #:guile %bootstrap-guile)))
- `(("perl" ,perl)
- ,@%boot0-inputs))))))
+ `(("perl" ,perl-boot0)
+ ,@%boot0-inputs)))))
+
+(define texinfo-boot0
+ ;; Texinfo used to build libc's manual.
+ ;; We build without ncurses because it fails to build at this stage, and
+ ;; because we don't need the stand-alone Info reader.
+ ;; Also, use %BOOT0-INPUTS to avoid building Perl once more.
+ (let ((texinfo (package (inherit texinfo)
+ (inputs (alist-delete "ncurses" (package-inputs texinfo))))))
+ (package-with-bootstrap-guile
+ (package-with-explicit-inputs texinfo %boot0-inputs
+ (current-source-location)
+ #:guile %bootstrap-guile))))
(define %boot1-inputs
;; 2nd stage inputs.
@@ -784,6 +808,9 @@ identifier SYSTEM."
"--enable-obsolete-rpc")
,flags)))))
(propagated-inputs `(("linux-headers" ,(linux-libre-headers-boot0))))
+ (native-inputs
+ `(("texinfo" ,texinfo-boot0)
+ ("perl" ,perl-boot0)))
(inputs
`( ;; A native GCC is needed to build `cross-rpcgen'.
("native-gcc" ,@(assoc-ref %boot0-inputs "gcc"))
diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm
index ad666cc365..c3f717e60e 100644
--- a/gnu/packages/gnupg.scm
+++ b/gnu/packages/gnupg.scm
@@ -44,10 +44,6 @@
(base32
"0pz58vr12qihq2f0bypjxsb6cf6ajq5258fmfm8s6lvwm3b9xz6a"))))
(build-system gnu-build-system)
- (arguments
- (if (%current-target-system)
- '(#:configure-flags '("CC_FOR_BUILD=gcc"))
- '()))
(home-page "http://gnupg.org")
(synopsis
"Libgpg-error, a small library that defines common error values for all GnuPG components")
diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm
index 40d9ae7df8..3dbb5d8429 100644
--- a/gnu/packages/guile.scm
+++ b/gnu/packages/guile.scm
@@ -150,11 +150,7 @@ without requiring the source code to be rewritten.")
(substitute* "module/ice-9/popen.scm"
(("/bin/sh")
(string-append bash "/bin/bash")))))
- %standard-phases)
-
- ,@(if (%current-target-system)
- '(#:configure-flags '("CC_FOR_BUILD=gcc"))
- '())))
+ %standard-phases)))
(native-search-paths
(list (search-path-specification
diff --git a/gnu/packages/make-bootstrap.scm b/gnu/packages/make-bootstrap.scm
index d621a634a3..97a13b4b74 100644
--- a/gnu/packages/make-bootstrap.scm
+++ b/gnu/packages/make-bootstrap.scm
@@ -502,10 +502,7 @@ for `sh' in $PATH, and without nscd, and with static NSS modules."
`(;; When `configure' checks for ltdl availability, it
;; doesn't try to link using libtool, and thus fails
;; because of a missing -ldl. Work around that.
- #:configure-flags '("LDFLAGS=-ldl"
- ,@(if (%current-target-system)
- '("CC_FOR_BUILD=gcc")
- '()))
+ #:configure-flags '("LDFLAGS=-ldl")
#:phases (alist-cons-before
'configure 'static-guile
diff --git a/guix/build/gnu-build-system.scm b/guix/build/gnu-build-system.scm
index 65c9fcd1bd..6d26392c8f 100644
--- a/guix/build/gnu-build-system.scm
+++ b/guix/build/gnu-build-system.scm
@@ -136,7 +136,10 @@ makefiles."
(bash (or (and=> (assoc-ref (or native-inputs inputs) "bash")
(cut string-append <> "/bin/bash"))
"/bin/sh"))
- (flags `(,(string-append "CONFIG_SHELL=" bash)
+ (flags `(,@(if target ; cross building
+ '("CC_FOR_BUILD=gcc")
+ '())
+ ,(string-append "CONFIG_SHELL=" bash)
,(string-append "SHELL=" bash)
,(string-append "--prefix=" prefix)
"--enable-fast-install" ; when using Libtool