summary refs log tree commit diff
diff options
context:
space:
mode:
authorMark H Weaver <mhw@netris.org>2015-07-13 18:54:40 -0400
committerMark H Weaver <mhw@netris.org>2015-07-13 18:54:40 -0400
commit3c7d023d6458669c6bfa23bc85e098c91f699892 (patch)
tree6c5ed721c9bb2705ae6b2e54befdbe04fae3d806
parentf727ec5bc8a6f97ae1083026e508b917235dfd2d (diff)
downloadguix-3c7d023d6458669c6bfa23bc85e098c91f699892.tar.gz
build-system/gnu: Pass --build=<triplet> to configure by default.
* guix/build-system/gnu.scm (gnu-build, gnu-cross-build): Accept #:build
  keyword argument.  Pass it to 'gnu-build' on the build side.
* guix/build/gnu-build-system.scm (configure): Accept #:build keyword
  argument.  Unless it is false, pass --build to configure.
-rw-r--r--guix/build-system/gnu.scm4
-rw-r--r--guix/build/gnu-build-system.scm5
2 files changed, 8 insertions, 1 deletions
diff --git a/guix/build-system/gnu.scm b/guix/build-system/gnu.scm
index 8702c6c915..1f302447c2 100644
--- a/guix/build-system/gnu.scm
+++ b/guix/build-system/gnu.scm
@@ -289,6 +289,7 @@ standard packages used as implicit inputs of the GNU build system."
                     (phases '%standard-phases)
                     (locale "en_US.UTF-8")
                     (system (%current-system))
+                    (build (nix-system->gnu-triplet system))
                     (imported-modules %gnu-build-system-modules)
                     (modules %default-modules)
                     (substitutable? #t)
@@ -333,6 +334,7 @@ are allowed to refer to."
                               (source
                                source))
                   #:system ,system
+                  #:build ,build
                   #:outputs %outputs
                   #:inputs %build-inputs
                   #:search-paths ',(map search-path-specification->sexp
@@ -422,6 +424,7 @@ is one of `host' or `target'."
                           (phases '%standard-phases)
                           (locale "en_US.UTF-8")
                           (system (%current-system))
+                          (build (nix-system->gnu-triplet system))
                           (imported-modules %gnu-build-system-modules)
                           (modules %default-modules)
                           (substitutable? #t)
@@ -472,6 +475,7 @@ platform."
                                 (source
                                  source))
                     #:system ,system
+                    #:build ,build
                     #:target ,target
                     #:outputs %outputs
                     #:inputs %build-target-inputs
diff --git a/guix/build/gnu-build-system.scm b/guix/build/gnu-build-system.scm
index 5062479360..102207b022 100644
--- a/guix/build/gnu-build-system.scm
+++ b/guix/build/gnu-build-system.scm
@@ -184,7 +184,7 @@ makefiles."
   ;; Patch `SHELL' in generated makefiles.
   (for-each patch-makefile-SHELL (find-files "." "^(GNU)?[mM]akefile$")))
 
-(define* (configure #:key target native-inputs inputs outputs
+(define* (configure #:key build target native-inputs inputs outputs
                     (configure-flags '()) out-of-source?
                     #:allow-other-keys)
   (define (package-name)
@@ -234,6 +234,9 @@ makefiles."
                              (list (string-append "--docdir=" docdir
                                                   "/share/doc/" (package-name)))
                              '())
+                       ,@(if build
+                             (list (string-append "--build=" build))
+                             '())
                        ,@(if target               ; cross building
                              (list (string-append "--host=" target))
                              '())