summaryrefslogtreecommitdiff
path: root/validate
diff options
context:
space:
mode:
authorBen Gamari <ben@smart-cactus.org>2022-08-05 22:29:57 -0400
committerMarge Bot <ben+marge-bot@smart-cactus.org>2022-08-25 20:05:31 -0400
commit6fd9b0a1c6b076ef1977db1a2ce8b9505b9a3254 (patch)
tree862b1a0b8ac78ebddea1cbc4eee597ca4acbb241 /validate
parent822b0302f3406bb5e916d72c36566322ba900e76 (diff)
downloadhaskell-6fd9b0a1c6b076ef1977db1a2ce8b9505b9a3254.tar.gz
Drop make build system
Here we at long last remove the `make`-based build system, it having been replaced with the Shake-based Hadrian build system. Users are encouraged to refer to the documentation in `hadrian/doc` and this [1] blog post for details on using Hadrian. Closes #17527. [1] https://www.haskell.org/ghc/blog/20220805-make-to-hadrian.html
Diffstat (limited to 'validate')
-rwxr-xr-xvalidate36
1 files changed, 36 insertions, 0 deletions
diff --git a/validate b/validate
index 6031b7d5ca..6850096349 100755
--- a/validate
+++ b/validate
@@ -65,6 +65,42 @@ Flags:
EOF
}
+# Note [validate and testsuite speed]
+# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+# There are 3 different validate and testsuite speed settings:
+# fast, normal and slow.
+#
+# how how used
+# cd tests config. many many by
+# validate && make speed= tests ways whom
+# =============================================================================
+# --fast fast 2 some 1+exs Travis (to stay within time limit)
+# --normal test 1 all 1+exs Phabricator (slow takes too long?)
+# --slow slow 0 all all Nightly (slow is ok)
+#
+# accept 1 all 1
+#
+# `--fast` and `--normal` run one default way, as well as any other ways which
+# are explicitly requested by the test using extra_ways().
+#
+# `make accept` should run all tests exactly once. There is no point in
+# accepting a test for multiple ways, since it should produce the same output
+# for all ways.
+#
+# To make sure all .stderr and .stdout files in the testsuite are never
+# out-of-date, it is useful if CI runs each test at least once.
+
+# Note [Default build system verbosity]
+# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+# From https://gitlab.haskell.org/ghc/ghc/wikis/design/build-system:
+#
+# "The build system should clearly report what it's doing (and sometimes
+# why), without being too verbose. It should emit actual command lines as
+# much as possible, so that they can be inspected and cut & pasted."
+#
+# That should be the default. Only suppress commands, by setting V=0 and using
+# `make -s`, when user explicitly asks for it with `./validate --quiet`.
+
no_clean=0
testsuite_only=0
build_only=0