summary refs log tree commit diff
path: root/gnu/packages/bootstrap.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2019-06-14 21:26:22 +0200
committerLudovic Courtès <ludo@gnu.org>2019-06-14 21:57:39 +0200
commit03d76577b96ba81c9921eb3a297d42db8644280b (patch)
tree8814bcef3f082a98f853ca7bacf02a552a76a1d2 /gnu/packages/bootstrap.scm
parent11b4a8716c65e8fe21e5975e764b3e14dbd8dcc4 (diff)
downloadguix-03d76577b96ba81c9921eb3a297d42db8644280b.tar.gz
tests: Make builds less expensive.
The switch to the reduced bootstrap broke build time assumptions made by
tests, notably the assumption that GNU-MAKE-BOOT0 was cheap to build.
This commit adjusts this to make these tests cheaper.

* gnu/packages/bootstrap.scm (%bootstrap-inputs-for-tests): New variable.
* guix/tests.scm (gnu-make-for-tests): New variable.
* tests/guix-environment.sh: Use GNU-MAKE-FOR-TESTS instead of
GNU-MAKE-BOOT0.  Remove test with FINDUTILS-BOOT0.
* tests/guix-package-net.sh (boot_make): Use GNU-MAKE-FOR-TESTS.
* tests/packages.scm ("GNU Make, bootstrap"): Likewise.
* tests/profiles.scm ("profile-derivation relative symlinks, two entries"):
Likewise.
* tests/union.scm (%bootstrap-inputs): Remove.
("union-build"): Use %BOOTSTRAP-INPUTS-FOR-TESTS instead of
%BOOTSTRAP-INPUTS.
Diffstat (limited to 'gnu/packages/bootstrap.scm')
-rw-r--r--gnu/packages/bootstrap.scm14
1 files changed, 13 insertions, 1 deletions
diff --git a/gnu/packages/bootstrap.scm b/gnu/packages/bootstrap.scm
index 255141ae87..c78aaa33d0 100644
--- a/gnu/packages/bootstrap.scm
+++ b/gnu/packages/bootstrap.scm
@@ -53,7 +53,9 @@
             %bootstrap-glibc
             %bootstrap-inputs
             %bootstrap-mescc-tools
-            %bootstrap-mes))
+            %bootstrap-mes
+
+            %bootstrap-inputs-for-tests))
 
 ;;; Commentary:
 ;;;
@@ -809,4 +811,14 @@ exec ~a/bin/.gcc-wrapped -B~a/lib \
     ;; In gnu-build-system.scm, we rely on the availability of Bash.
     ("bash" ,%bootstrap-coreutils&co)))
 
+(define %bootstrap-inputs-for-tests
+  ;; These are bootstrap inputs that are cheap to produce (no compilation
+  ;; needed) and that are meant to be used for testing.  (These are those we
+  ;; used before the Mes-based reduced bootstrap.)
+  `(("libc" ,%bootstrap-glibc)
+    ("gcc" ,%bootstrap-gcc)
+    ("binutils" ,%bootstrap-binutils)
+    ("coreutils&co" ,%bootstrap-coreutils&co)
+    ("bash" ,%bootstrap-coreutils&co)))
+
 ;;; bootstrap.scm ends here