This factorizes what has become a widespread idiom.
* guix/build/gnu-build-system.scm (%bootstrap-scripts): New variable.
(bootstrap): New procedure.
(%standard-phases): Add it after 'unpack'.
* guix/build/ant-build-system.scm (%standard-phases): Delete 'bootstrap.
* guix/build/asdf-build-system.scm (%standard-phases/source)
(%standard-phases): Likewise.
* guix/build/cargo-build-system.scm (%standard-phases): Likewise.
* guix/build/cmake-build-system.scm (%standard-phases): Likewise.
* guix/build/dub-build-system.scm (%standard-phases): Likewise.
* guix/build/emacs-build-system.scm (%standard-phases): Likewise.
* guix/build/font-build-system.scm (%standard-phases): Likewise.
* guix/build/go-build-system.scm (%standard-phases): Likewise.
* guix/build/haskell-build-system.scm (%standard-phases): Likewise.
* guix/build/minify-build-system.scm (%standard-phases): Likewise.
* guix/build/ocaml-build-system.scm (%standard-phases): Likewise.
* guix/build/perl-build-system.scm (%standard-phases): Likewise.
* guix/build/python-build-system.scm (%standard-phases): Likewise.
* guix/build/r-build-system.scm (%standard-phases): Likewise.
* guix/build/ruby-build-system.scm (%standard-phases): Likewise.
* guix/build/scons-build-system.scm (%standard-phases): Likewise.
* guix/build/texlive-build-system.scm (%standard-phases): Likewise.
* guix/build/waf-build-system.scm (%standard-phases): Likewise.
* gnu/packages/audio.scm (faad2)[arguments]: Replace 'bootstrap.
(soundtouch, cuetools, bluez-alsa): Remove 'arguments'.
(cava)[arguments]: Replace 'bootstrap.
* gnu/packages/backup.scm (rdup): Remove 'bootstrap.
* gnu/packages/bioinformatics.scm (seek)[arguments]: Replace
'bootstrap.
* gnu/packages/bioinformatics.scm (htslib-for-sambamba): Remove
'arguments'.
* gnu/packages/ci.scm (hydra, cuirass): Remove 'bootstrap'.
* gnu/packages/crypto.scm (libb2): Remove #:phases.
* gnu/packages/databases.scm (guile-wiredtiger): Likewise.
* gnu/packages/debug.scm (stress-make): Remove 'bootstrap'.
* gnu/packages/documentation.scm (asciidoc): Likewise.
* gnu/packages/fontutils.scm (libuninameslist): Remove 'arguments'.
* gnu/packages/ftp.scm (weex): Remove 'arguments'.
* gnu/packages/game-development.scm (ois): Remove 'arguments'.
* gnu/packages/games.scm (pioneer): Remove 'bootstrap.
* gnu/packages/gnome.scm (vte-ng, byzanz): Replace 'bootstrap.
(arc-theme): Remove 'arguments'.
(faba-icon-theme): Remove 'bootstrap.
(arc-icon-theme): Remove 'arguments'.
* gnu/packages/gnunet.scm (guile-gnunet): Likewise.
* gnu/packages/gtk.scm (guile-rsvg): Likewise.
* gnu/packages/guile.scm (mcron2): Remove 'bootstrap.
(guile-bash): Remove #:phases.
(guile-git): Remove 'bootstrap.
(guile-syntax-highlight): Remove 'arguments'.
(guile-sjson): Likewise.
* gnu/packages/java.scm (classpath-devel): Remove 'bootstrap.
* gnu/packages/kodi.scm (libdvdnav/kodi)
(libdvdread/kodi, libdvdcss/kodi): Likewise.
* gnu/packages/libreoffice.scm (hunspell): Remove 'arguments'.
* gnu/packages/libusb.scm (hidapi): Likewise.
* gnu/packages/linux.scm (bridge-utils): Rename 'bootstrap' to
'patch-stuff'; move it before 'bootstrap', without autoreconf
invocation.
(eudev): Rename 'bootstrap' to 'patch-file-names', without 'autogen.sh'
invocation; move it before 'bootstrap.
(gpm): Replace 'bootstrap'.
(f2fs-tools): Remove 'arguments'.
(rng-tools): Remove #:phases.
* gnu/packages/messaging.scm (hexchat): Rename 'bootstrap' to
'copy-intltool-makefile'; remove "autoreconf" invocation and move before
'bootstrap'.
(libmesode): Remove 'arguments'.
(libstrophe): Likewise.
* gnu/packages/microcom.scm (microcom): Likewise.
* gnu/packages/networking.scm (libnet): Remove 'bootstrap.
* gnu/packages/onc-rpc.scm (libnsl): Remove 'arguments'.
* gnu/packages/package-management.scm (guix): Replace 'bootstrap.
* gnu/packages/sawfish.scm (librep): Remove 'arguments'.
* gnu/packages/version-control.scm (findnewest): Likewise.
* gnu/packages/video.scm (liba52, handbrake, motion): Replace
'bootstrap.
* gnu/packages/web.scm (fcgiwrap): Remove #:phases.
(tidy): Replace 'bootstrap.
(gumbo-parser): Remove #:phases.
* gnu/packages/wget.scm (wget2): Replace 'bootstrap.
* gnu/packages/wm.scm (i3lock-color): Remove #:phases.
* gnu/packages/xdisorg.scm (xclip): Likewise.
* gnu/packages/xml.scm (libxls): Replace 'bootstrap'.
* gnu/packages/xorg.scm (xf86-video-freedreno)
(xf86-video-intel): Remove #:phases.
* gnu/packages/zile.scm (zile-on-guile): Replace 'bootstrap.
---
gnu/packages/audio.scm | 22 ++------------------
gnu/packages/backup.scm | 3 ---
gnu/packages/bioinformatics.scm | 11 ++--------
gnu/packages/ci.scm | 5 -----
gnu/packages/crypto.scm | 7 +------
gnu/packages/databases.scm | 9 ++-------
gnu/packages/debug.scm | 5 +----
gnu/packages/documentation.scm | 5 +----
gnu/packages/fontutils.scm | 5 -----
gnu/packages/ftp.scm | 7 +------
gnu/packages/game-development.scm | 7 +------
gnu/packages/games.scm | 4 +---
gnu/packages/gnome.scm | 21 +++----------------
gnu/packages/gnunet.scm | 7 +------
gnu/packages/gtk.scm | 7 +------
gnu/packages/guile.scm | 26 ++----------------------
gnu/packages/java.scm | 3 ---
gnu/packages/kodi.scm | 6 ------
gnu/packages/libreoffice.scm | 8 +-------
gnu/packages/libusb.scm | 6 ------
gnu/packages/linux.scm | 26 +++++++-----------------
gnu/packages/messaging.scm | 16 ++-------------
gnu/packages/microcom.scm | 6 ------
gnu/packages/networking.scm | 2 --
gnu/packages/onc-rpc.scm | 8 +-------
gnu/packages/package-management.scm | 2 +-
gnu/packages/sawfish.scm | 7 -------
gnu/packages/version-control.scm | 7 +------
gnu/packages/video.scm | 7 +++----
gnu/packages/web.scm | 17 ++++------------
gnu/packages/wget.scm | 4 ++--
gnu/packages/wm.scm | 9 ++-------
gnu/packages/xdisorg.scm | 9 ++-------
gnu/packages/xml.scm | 2 +-
gnu/packages/xorg.scm | 14 +++----------
gnu/packages/zile.scm | 4 ++--
guix/build/ant-build-system.scm | 1 +
guix/build/asdf-build-system.scm | 2 ++
guix/build/cargo-build-system.scm | 1 +
guix/build/cmake-build-system.scm | 3 ++-
guix/build/dub-build-system.scm | 1 +
guix/build/emacs-build-system.scm | 1 +
guix/build/font-build-system.scm | 1 +
guix/build/gnu-build-system.scm | 40 ++++++++++++++++++++++++++++++++++++-
guix/build/go-build-system.scm | 1 +
guix/build/haskell-build-system.scm | 1 +
guix/build/minify-build-system.scm | 1 +
guix/build/ocaml-build-system.scm | 1 +
guix/build/perl-build-system.scm | 3 ++-
guix/build/python-build-system.scm | 3 ++-
guix/build/r-build-system.scm | 1 +
guix/build/ruby-build-system.scm | 1 +
guix/build/scons-build-system.scm | 1 +
guix/build/texlive-build-system.scm | 1 +
guix/build/waf-build-system.scm | 1 +
55 files changed, 112 insertions(+), 267 deletions(-)
Toggle diff (287 lines)
diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index b1a15ed34..d5c45e947 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -1090,7 +1090,7 @@ also play midifiles using a Soundfont.")
(arguments
'(#:phases
(modify-phases %standard-phases
- (add-after 'unpack 'bootstrap
+ (replace 'bootstrap
(lambda _
(substitute* "bootstrap" (("\r\n") "\n"))
(zero? (system* "sh" "bootstrap")))))))
@@ -2476,12 +2476,6 @@ Tracker 3 S3M and Impulse Tracker IT files.")
("automake" ,automake)
("libtool" ,libtool)
("file" ,file)))
- (arguments
- '(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'bootstrap
- (lambda _
- (zero? (system* "sh" "bootstrap")))))))
(home-page "http://www.surina.net/soundtouch/")
(synopsis
"Audio processing library for changing tempo, pitch and playback rate")
@@ -2884,12 +2878,6 @@ point audio data.")
"01xi3rvdmil9nawsha04iagjylqr1l9v9vlzk99scs8c207l58i4"))))
(build-system gnu-build-system)
;; The source tarball is not bootstrapped.
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'bootstrap
- (lambda _ (zero? (system* "autoreconf" "-vfi")))))))
- ;; Bootstrapping tools
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
@@ -3102,12 +3090,6 @@ mixers.")
(base32
"1qinf41wl2ihx54zmmhanycihwjkn7dn1cicq6pp4rqbiv79b95x"))))
(build-system gnu-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'bootstrap
- (lambda _
- (zero? (system* "autoreconf" "-vif")))))))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
@@ -3327,7 +3309,7 @@ representations.")
(list (string-append "cava_LDFLAGS = -L" lib " -Wl,-rpath " lib)))
#:phases
(modify-phases %standard-phases
- (add-after 'unpack 'bootstrap
+ (replace 'bootstrap
(lambda* (#:key outputs #:allow-other-keys)
(setenv "HOME" (getcwd))
(invoke "sh" "autogen.sh")))
diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm
index 48d4b08af..6e7bcc147 100644
--- a/gnu/packages/backup.scm
+++ b/gnu/packages/backup.scm
@@ -278,9 +278,6 @@ random access nor for in-place modification.")
`(#:parallel-build? #f ;race conditions
#:phases
(modify-phases %standard-phases
- (add-after 'unpack 'bootstrap
- (lambda _
- (invoke "autoreconf")))
(add-before 'build 'qualify-inputs
(lambda* (#:key inputs #:allow-other-keys)
;; This script is full of pitfalls. Fix some that particularly
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index c427a6d03..b758c72de 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -4645,9 +4645,9 @@ distribution, coverage uniformity, strand specificity, etc.")
"Data2DB"
"PCL2Bin")))
(modify-phases %standard-phases
- (add-before 'configure 'bootstrap
+ (replace 'bootstrap
(lambda _
- (zero? (system* "bash" "gen_auto"))))
+ (invoke "bash" "gen_auto")))
(add-after 'build 'build-additional-tools
(lambda* (#:key make-flags #:allow-other-keys)
(every (lambda (dir)
@@ -10704,13 +10704,6 @@ droplet sequencing. It has been particularly tailored for Drop-seq.")
(sha256
(base32
"0g38g8s3npr0gjm9fahlbhiskyfws9l5i0x1ml3rakzj7az5l9c9"))))
- (arguments
- (substitute-keyword-arguments (package-arguments htslib)
- ((#:phases phases)
- `(modify-phases ,phases
- (add-after 'unpack 'bootstrap
- (lambda _
- (zero? (system* "autoreconf" "-vif"))))))))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
diff --git a/gnu/packages/ci.scm b/gnu/packages/ci.scm
index b5cfa7f1a..c9048ccb8 100644
--- a/gnu/packages/ci.scm
+++ b/gnu/packages/ci.scm
@@ -147,9 +147,6 @@
(string-append "--docdir=" %output
"/doc/hydra-" ,version)))
#:phases (modify-phases %standard-phases
- (add-after
- 'unpack 'bootstrap
- (lambda _ (zero? (system* "autoreconf" "-vfi"))))
(add-before
'check 'check-setup
(lambda _ (setenv "LOGNAME" "test.log")))
@@ -221,8 +218,6 @@ their dependencies.")
(substitute* "build-aux/git-version-gen"
(("#!/bin/sh") (string-append "#!" (which "sh"))))
#t))
- (add-after 'patch-/bin/sh 'bootstrap
- (lambda _ (zero? (system* "sh" "bootstrap"))))
(add-after 'install 'wrap-program
(lambda* (#:key inputs outputs #:allow-other-keys)
;; Wrap the 'cuirass' command to refer to the right modules.
diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm
index 695f6ca08..4922c5875 100644
--- a/gnu/packages/crypto.scm
+++ b/gnu/packages/crypto.scm
@@ -645,12 +645,7 @@ data on your platform, so the seed itself will be as random as possible.
;; fat only checks for Intel optimisations
'("--enable-fat")
'())
- "--disable-native") ; don't optimise at build time.
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'bootstrap
- (lambda _
- (invoke "sh" "autogen.sh"))))))
+ "--disable-native"))) ;don't optimise at build time
(home-page "https://blake2.net/")
(synopsis "Library implementing the BLAKE2 family of hash functions")
(description
diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index 51e18d4a6..e289a604f 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012, 2013, 2014, 2015, 2016 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2013, 2017 Cyril Roelandt <tipecaml@gmail.com>
;;; Copyright © 2014, 2016 David Thompson <davet@gnu.org>
@@ -1613,12 +1613,7 @@ trees (LSM), for sustained throughput under random insert workloads.")
#:configure-flags
(list (string-append "--with-libwiredtiger-prefix="
(assoc-ref %build-inputs "wiredtiger")))
- #:make-flags '("GUILE_AUTO_COMPILE=0")
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'bootstrap
- (lambda _
- (invoke "sh" "bootstrap"))))))
+ #:make-flags '("GUILE_AUTO_COMPILE=0")))
;; TODO: Remove microkanren.scm when we have a separate package
;; for it.
(native-inputs
diff --git a/gnu/packages/debug.scm b/gnu/packages/debug.scm
index 2354f0fbb..777018bfb 100644
--- a/gnu/packages/debug.scm
+++ b/gnu/packages/debug.scm
@@ -299,10 +299,7 @@ down the road.")
(which "sh"))))))
(add-before 'configure 'repack-make
(lambda _
- (zero? (system* "tar" "cJf" "./make.tar.xz" ,make-dir))))
- (add-after 'unpack 'bootstrap
- (lambda _
- (zero? (system* "autoreconf" "-vfi"))))))))
+ (zero? (system* "tar" "cJf" "./make.tar.xz" ,make-dir))))))))
(home-page "https://github.com/losalamos/stress-make")
(synopsis "Expose race conditions in Makefiles")
(description
diff --git a/gnu/packages/documentation.scm b/gnu/packages/documentation.scm
index eebd38243..cde689c63 100644
--- a/gnu/packages/documentation.scm
+++ b/gnu/packages/documentation.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2014, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2016 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
@@ -59,9 +59,6 @@
`(#:tests? #f ; no 'check' target
#:phases
(modify-phases %standard-phases
- (add-after 'unpack 'bootstrap
- (lambda _
- (invoke "autoconf")))
;; Some XML-related binaries are required for asciidoc's proper usage.
;; Without these, asciidoc fails when parsing XML documents, either
;; reporting a missing "xmllint" binary or, when passed the
diff --git a/gnu/packages/fontutils.scm b/gnu/packages/fontutils.scm
index 74e6a716f..383243b13 100644
--- a/gnu/packages/fontutils.scm
+++ b/gnu/packages/fontutils.scm
@@ -494,11 +494,6 @@ smooth contours with constant curvature at the spline joins.")
(native-inputs `(("autoconf" ,autoconf)
("automake" ,automake)
("libtool" ,libtool)))
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'bootstrap
- (lambda _ (zero? (system* "autoreconf" "-vi")))))))
(synopsis "Unicode names and annotation list")
(description
"LibUniNamesList holds www.unicode.org Nameslist.txt data which can be
diff --git a/gnu/packages/ftp.scm b/gnu/packages/ftp.scm
index a70398f67..395e38d3a 100644
--- a/gnu/packages/ftp.scm
+++ b/gnu/packages/ftp.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2014, 2015 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2014, 2015, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
@@ -156,11 +156,6 @@ FTP browser, as well as non-interactive commands such as 'ncftpput' and
`(("automake" ,automake)
("autoconf" ,autoconf)
("gettext" ,gettext-minimal)))
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'bootstrap
- (lambda _ (zero? (system* "autoreconf" "-vfi")))))))
(home-page "http://weex.sourceforge.net/")
(synopsis "Non-interactive client for FTP synchronization")
(description
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index ffc352291..2a5bc6329 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014 Tomáš Čech <sleep_walker@suse.cz>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
-;;; Copyright © 2015 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2015, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Alex Kost <alezost@gmail.com>
;;; Copyright © 2015, 2016, 2017 David Thompson <davet@gnu.org>
;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
@@ -950,11 +950,6 @@ painted with a mouse.")
(base32
"0w0pamjc3vj0jr718hysrw8x076fq6n9rd6wcb36sn2jd0lqvi98"))))
(build-system gnu-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'bootstrap
- (lambda _ (zero? (system* "sh" "bootstrap")))))))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 272e9bce9..eb98197a0 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -5,7 +5,7 @@
;;; Copyright © 2014, 2015, 2016, 2017 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2014 Cyrill Schenkel <cyrill.schenkel@gmail.com>
;;; Copyright © 2014 Sylvain Beucler <beuc@beuc.net>
-;;; Copyright © 2014, 2015 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2014, 2015, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015, 2016 Sou Bunnbu <iyzsong@gmail.com>
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015, 2016 Andreas Enge <andreas@enge.fr>
@@ -4633,8 +4633,6 @@ elements to achieve a simple goal in the most complex way possible.")
(string-append "P