guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

01/02: build-system/gnu: Give #:bootstrap-scripts a valid default.


From: guix-commits
Subject: 01/02: build-system/gnu: Give #:bootstrap-scripts a valid default.
Date: Fri, 9 Apr 2021 08:20:01 -0400 (EDT)

civodul pushed a commit to branch core-updates
in repository guix.

commit 4863c4304e7d4d5945474e771d242878f8339d44
Author: Ludovic Courtès <ludo@gnu.org>
AuthorDate: Thu Apr 8 22:43:00 2021 +0200

    build-system/gnu: Give #:bootstrap-scripts a valid default.
    
    Commit 9cfc93be30c516fd6fa32915c61c06e03f23a011 changed the default
    value of #:bootstrap-scripts to #f, which is invalid (it must be a list
    of strings).  That default value was used by build systems that inherit
    phases from 'gnu-build-system', such as 'qt-build-system', which would
    lead to wrong-type-arg errors in the 'boostrap' phase.
    
    Reported by Raghav Gururajan <rg@raghavgururajan.name>.
    
    * guix/build/gnu-build-system.scm (%bootstrap-scripts): New variable.
    (bootstrap): Change #:bootstrap-scripts to default to it.
    * guix/build-system/gnu.scm (%bootstrap-scripts): Change value.
    (gnu-build): #:bootstrap-scripts defaults to %bootstrap-scripts.  Remove
    call to 'sexp->gexp'.
    (gnu-cross-build): Likewise.
---
 guix/build-system/gnu.scm       | 10 +++++-----
 guix/build/gnu-build-system.scm |  9 +++++++--
 2 files changed, 12 insertions(+), 7 deletions(-)

diff --git a/guix/build-system/gnu.scm b/guix/build-system/gnu.scm
index a1b2b65..c74acb51 100644
--- a/guix/build-system/gnu.scm
+++ b/guix/build-system/gnu.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic 
Courtès <ludo@gnu.org>
+;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 
Ludovic Courtès <ludo@gnu.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -328,7 +328,7 @@ standard packages used as implicit inputs of the GNU build 
system."
 
 (define %bootstrap-scripts
   ;; Typical names of Autotools "bootstrap" scripts.
-  '("bootstrap" "bootstrap.sh" "autogen.sh"))
+  #~%bootstrap-scripts)
 
 (define %strip-flags
   #~'("--strip-unneeded" "--enable-deterministic-archives"))
@@ -341,7 +341,7 @@ standard packages used as implicit inputs of the GNU build 
system."
                     guile source
                     (outputs '("out"))
                     (search-paths '())
-                    (bootstrap-scripts (list 'quote %bootstrap-scripts))
+                    (bootstrap-scripts %bootstrap-scripts)
                     (configure-flags ''())
                     (make-flags ''())
                     (out-of-source? #f)
@@ -400,7 +400,7 @@ are allowed to refer to."
                                           (sexp->gexp phases)
                                           phases)
                            #:locale #$locale
-                           #:bootstrap-scripts #$(sexp->gexp bootstrap-scripts)
+                           #:bootstrap-scripts #$bootstrap-scripts
                            #:configure-flags #$(if (pair? configure-flags)
                                                    (sexp->gexp configure-flags)
                                                    configure-flags)
@@ -474,7 +474,7 @@ is one of `host' or `target'."
                           (search-paths '())
                           (native-search-paths '())
 
-                          (bootstrap-scripts (list 'quote %bootstrap-scripts))
+                          (bootstrap-scripts %bootstrap-scripts)
                           (configure-flags ''())
                           (make-flags ''())
                           (out-of-source? #f)
diff --git a/guix/build/gnu-build-system.scm b/guix/build/gnu-build-system.scm
index af64b3b..28c719d 100644
--- a/guix/build/gnu-build-system.scm
+++ b/guix/build/gnu-build-system.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic 
Courtès <ludo@gnu.org>
+;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 
Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2018 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2020 Brendan Tildesley <mail@brendan.scot>
 ;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
@@ -36,6 +36,7 @@
   #:use-module (rnrs io ports)
   #:export (%standard-phases
             %license-file-regexp
+            %bootstrap-scripts
             dump-file-contents
             gnu-build))
 
@@ -176,7 +177,11 @@ working directory."
         ;; Attempt to change into child directory.
         (and=> (first-subdirectory ".") chdir))))
 
-(define* (bootstrap #:key bootstrap-scripts
+(define %bootstrap-scripts
+  ;; Typical names of Autotools "bootstrap" scripts.
+  '("bootstrap" "bootstrap.sh" "autogen.sh"))
+
+(define* (bootstrap #:key (bootstrap-scripts %bootstrap-scripts)
                     #:allow-other-keys)
   "If the code uses Autotools and \"configure\" is missing, run
 \"autoreconf\".  Otherwise do nothing."



reply via email to

[Prev in Thread] Current Thread [Next in Thread]