~ruther/guix-local

9cfc93be30c516fd6fa32915c61c06e03f23a011 — Ricardo Wurmus 6 years ago 40f14e3
build-system/gnu: Allow overriding of bootstrap scripts.

* guix/build-system/gnu.scm (gnu-build, gnu-cross-build): Accept
bootstrap-scripts keyword argument and pass it to gnu-build.
(%bootstrap-scripts): New variable.
* guix/build/gnu-build-system.scm (%bootstrap-scripts): Remove variable.
(bootstrap): Remove default value for bootstrap-scripts argument.
2 files changed, 9 insertions(+), 5 deletions(-)

M guix/build-system/gnu.scm
M guix/build/gnu-build-system.scm
M guix/build-system/gnu.scm => guix/build-system/gnu.scm +8 -0
@@ 324,10 324,15 @@ standard packages used as implicit inputs of the GNU build system."
  ;; Regexp matching license files.
  "^(COPYING.*|LICEN[CS]E.*|[Ll]icen[cs]e.*|Copy[Rr]ight(\\.(txt|md))?)$")

(define %bootstrap-scripts
  ;; Typical names of Autotools "bootstrap" scripts.
  '("bootstrap" "bootstrap.sh" "autogen.sh"))

(define* (gnu-build store name input-drvs
                    #:key (guile #f)
                    (outputs '("out"))
                    (search-paths '())
                    (bootstrap-scripts %bootstrap-scripts)
                    (configure-flags ''())
                    (make-flags ''())
                    (out-of-source? #f)


@@ 401,6 406,7 @@ packages that must not be referenced."
                                        search-paths)
                  #:phases ,phases
                  #:locale ,locale
                  #:bootstrap-scripts ,bootstrap-scripts
                  #:configure-flags ,configure-flags
                  #:make-flags ,make-flags
                  #:out-of-source? ,out-of-source?


@@ 486,6 492,7 @@ is one of `host' or `target'."
                          (search-paths '())
                          (native-search-paths '())

                          (bootstrap-scripts %bootstrap-scripts)
                          (configure-flags ''())
                          (make-flags ''())
                          (out-of-source? #f)


@@ 570,6 577,7 @@ platform."
                                             native-search-paths)
                    #:phases ,phases
                    #:locale ,locale
                    #:bootstrap-scripts ,bootstrap-scripts
                    #:configure-flags ,configure-flags
                    #:make-flags ,make-flags
                    #:out-of-source? ,out-of-source?

M guix/build/gnu-build-system.scm => guix/build/gnu-build-system.scm +1 -5
@@ 160,11 160,7 @@ working directory."
            (invoke "tar" "xvf" source))
        (chdir (first-subdirectory ".")))))

(define %bootstrap-scripts
  ;; Typical names of Autotools "bootstrap" scripts.
  '("bootstrap" "bootstrap.sh" "autogen.sh"))

(define* (bootstrap #:key (bootstrap-scripts %bootstrap-scripts)
(define* (bootstrap #:key bootstrap-scripts
                    #:allow-other-keys)
  "If the code uses Autotools and \"configure\" is missing, run
\"autoreconf\".  Otherwise do nothing."