From aecf4a5f96d0d3ffcf4cb2c67a20a610d7c64486 Mon Sep 17 00:00:00 2001
From: Thomas Miedema <thomasmiedema@gmail.com>
Date: Sat, 3 Oct 2015 21:42:52 +0200
Subject: [PATCH] Build system: don't create mk/are-validating.mk

A `make` build after running `./validate` earlier should use the normal
mk/build.mk settings, without having to manually delete the leftover
file mk/are-validating or run `make clean` first.

Reviewed by: austin

Differential Revision: https://phabricator.haskell.org/D1307
---
 .gitignore            |  1 -
 ghc.mk                |  3 ---
 mk/custom-settings.mk |  3 ---
 validate              | 18 +++++++-----------
 4 files changed, 7 insertions(+), 18 deletions(-)

diff --git a/.gitignore b/.gitignore
index 48ab1943eb5..e61c47eb795 100644
--- a/.gitignore
+++ b/.gitignore
@@ -130,7 +130,6 @@ _darcs/
 /libraries/plus.gif
 /libraries/synopsis.png
 /libraries/stamp/
-/mk/are-validating.mk
 /mk/build.mk
 /mk/config.h
 /mk/config.h.in
diff --git a/ghc.mk b/ghc.mk
index 966021580a3..6a294ac4b32 100644
--- a/ghc.mk
+++ b/ghc.mk
@@ -1324,9 +1324,6 @@ clean_bindistprep:
 	$(call removeTrees,bindistprep/)
 
 distclean : clean
-# Clean the files that ./validate creates.
-	$(call removeFiles,mk/are-validating.mk)
-
 # Clean the files that we ask ./configure to create.
 	$(call removeFiles,mk/config.mk)
 	$(call removeFiles,mk/install.mk)
diff --git a/mk/custom-settings.mk b/mk/custom-settings.mk
index 2b4b1271023..5f9814b2520 100644
--- a/mk/custom-settings.mk
+++ b/mk/custom-settings.mk
@@ -1,6 +1,3 @@
-
--include mk/are-validating.mk
-
 ifeq "$(Validating)" "YES"
 include mk/flavours/validate.mk
 -include mk/validate.mk
diff --git a/validate b/validate
index 4c123fe8446..827815fa206 100755
--- a/validate
+++ b/validate
@@ -174,9 +174,7 @@ fi
 
 thisdir=`utils/ghc-pwd/dist-boot/ghc-pwd`
 
-echo "Validating=YES"       >  mk/are-validating.mk
-echo "ValidateSpeed=$speed" >> mk/are-validating.mk
-echo "ValidateHpc=$hpc"     >> mk/are-validating.mk
+make_settings="Validating=YES ValidateSpeed=$speed ValidateHpc=$hpc"
 
 # Note [Default build system verbosity].
 #
@@ -190,16 +188,14 @@ echo "ValidateHpc=$hpc"     >> mk/are-validating.mk
 # `make -s`, when user explicitly asks for it with `./validate --quiet`.
 if [ $be_quiet -eq 1 ]; then
     # See Note [Default build system verbosity].
-    echo "V=0"                  >> mk/are-validating.mk # Less gunk
+    make_settings="$make_settings V=0"
 fi
 
 if [ $use_dph -eq 1 ]; then
-    echo "BUILD_DPH=YES"    >> mk/are-validating.mk
-else
-    echo "BUILD_DPH=NO"     >> mk/are-validating.mk
+    make_settings="$make_settings BUILD_DPH=YES"
 fi
 
-$make -j$threads
+$make -j$threads $make_settings
 # For a "debug make", add "--debug=b --debug=m"
 
 check_packages post-build
@@ -209,8 +205,8 @@ check_packages post-build
 
 if [ $speed != "FAST" ]; then
 
-    $make binary-dist-prep
-    $make test_bindist TEST_PREP=YES
+    $make binary-dist-prep $make_settings
+    $make test_bindist TEST_PREP=YES $make_settings
 
     #
     # Install the xhtml package into the bindist.
@@ -221,7 +217,7 @@ if [ $speed != "FAST" ]; then
 
     check_packages post-install
 
-    $make validate_build_xhtml BINDIST_PREFIX="$thisdir/$bindistdir"
+    $make validate_build_xhtml BINDIST_PREFIX="$thisdir/$bindistdir" $make_settings
 
     check_packages post-xhtml
 fi
-- 
GitLab