summaryrefslogtreecommitdiff
path: root/validate
Commit message (Collapse)AuthorAgeFilesLines
* boot: cleanup legacy argsCheng Shao2022-08-261-1/+1
| | | | | Cleanup legacy boot script args, following removal of the legacy make build system.
* Drop mk/{build,install,config}.mk.inBen Gamari2022-08-251-2/+1
|
* Drop make build systemBen Gamari2022-08-251-0/+36
| | | | | | | | | | | 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
* validate: Drop --legacy flagBen Gamari2022-08-251-196/+101
| | | | In preparation for removal of the legacy `make`-based build system.
* validate: Ensure that $make variable is setBen Gamari2022-06-141-11/+11
| | | | | | | | Currently the `$make` variable is used without being set in `validate`'s Hadrian path, which uses make to install the binary distribution. Fix this. Fixes #21687.
* validate: Use $make rather than makeMatthew Pickering2022-05-201-1/+1
| | | | | | | | In the validate script we are careful to use the $make variable as this stores whether we are using gmake, make, quiet mode etc. There was just this one place where we failed to use it. Fixes #21598
* Avoid using removed utils/checkUniques in validateGreg Steuck2022-02-071-1/+0
| | | | | Asked the question: https://gitlab.haskell.org/ghc/ghc/-/merge_requests/7460/diffs#4061f4d17546e239dd10d78c6b48668c2a288e02_1_0
* Fix a few Note inconsistenciesBen Gamari2022-02-011-2/+2
|
* Permit multiple values in config_args for validateGreg Steuck2021-11-251-1/+1
| | | | | The whitespace expansion should be permitted to pass multiple arguments to configure.
* validate: Look for python3 executable in python detectionBen Gamari2021-08-021-4/+6
| | | | | Previously we would only look for a `python` executable, but in general we should prefer `python3` and sometimes `python` doesn't exist.
* validate: Add note for BINDIST variable, GitLab validation; clean up commentsAlina Banerjee2021-07-271-3/+15
|
* validate: check both stage1, stage2 test failures for deciding success of ↵Alina Banerjee2021-07-271-1/+15
| | | | entire test run
* validate: run stage1 tests using stage1 compiler when BINSTIST is falseAlina Banerjee2021-07-271-2/+13
|
* validate: change test ghc based on BINDIST value (YES/NO)Alina Banerjee2021-07-271-1/+7
|
* validate: update quick-validate flavour for validation with --fastAlina Banerjee2021-07-271-8/+10
|
* validate: add a debug flag (in both Hadrian and legacy Make) for running testsAlina Banerjee2021-07-271-1/+12
|
* validate: add flags using Hadrian's user settings for ignoring changes in ↵Alina Banerjee2021-07-271-29/+90
| | | | performance tests
* validate: fix #18477, improve syntax & add if-else checks for test ↵Alina Banerjee2021-07-271-123/+142
| | | | | | | outcomes/validation paths ShellCheck(https://github.com/koalaman/shellcheck/wiki) has been used to check the script.
* validate: Fix copy-pastaBen Gamari2021-02-141-2/+2
| | | | | | | Previously the Hadrian codepath of `validate` inverted the logic which decides whether the test build of `xhtml` should be built with `--enable-shared`. This resulted in validate failures on Windows, which does not support dynamic linkage of Haskell code.
* validate: Enable tarball autodownload by default.Andreas Klebinger2021-02-051-1/+1
| | | | Fixes #19307
* Remove legacy comment in validate scriptCheng Shao2021-01-221-3/+0
| | | | | The validate flavour is already defined and used in hadrian, so this legacy comment should be removed.
* Validate script: fix configure command when using stackSylvain Henry2020-12-111-1/+4
|
* Find hadrian location more reliably in cabal-install outputGreg Steuck2020-11-201-1/+1
| | | | Fix #18944
* Rename ghci.sh and build.sh to ghci and build respectivelyXavier Denis2020-02-291-2/+2
| | | | | | Convert hadrian buildscripts to unsuffixed, dashed form final cleanups
* Re-layout validate scriptBen Gamari2019-12-101-144/+142
| | | | This script was previously a whitespace nightmare.
* Use Hadrian by default in validate script (#17527)Sylvain Henry2019-11-301-7/+9
|
* validate: Use Hadrian's validate flavourBen Gamari2019-10-081-3/+9
|
* Allow validation with Hadrian built with Stack [skip ci]Sylvain Henry2019-09-161-3/+18
|
* add an --hadrian mode to ./validateAlp Mestanogullari2019-05-231-57/+144
| | | | | | | | | | | | | | When the '--hadrian' flag is passed to the validate script, we use hadrian to build GHC, package it up in a binary distribution and later on run GHC's testsuite against the said bindist, which gets installed locally in the process. Along the way, this commit fixes a typo, an omission (build iserv binaries before producing the bindist archive) and moves the Makefile that enables 'make install' on those bindists from being a list of strings in the code to an actual file (it was becoming increasingly annoying to work with). Finally, the Settings.Builders.Ghc part of this patch is necessary for being able to use the installed binary distribution, in 'validate'.
* Update Wiki URLs to point to GitLabTakenobu Tani2019-03-251-2/+2
| | | | | | | | | | | | | | | | | | | | | | | This moves all URL references to Trac Wiki to their corresponding GitLab counterparts. This substitution is classified as follows: 1. Automated substitution using sed with Ben's mapping rule [1] Old: ghc.haskell.org/trac/ghc/wiki/XxxYyy... New: gitlab.haskell.org/ghc/ghc/wikis/xxx-yyy... 2. Manual substitution for URLs containing `#` index Old: ghc.haskell.org/trac/ghc/wiki/XxxYyy...#Zzz New: gitlab.haskell.org/ghc/ghc/wikis/xxx-yyy...#zzz 3. Manual substitution for strings starting with `Commentary` Old: Commentary/XxxYyy... New: commentary/xxx-yyy... See also !539 [1]: https://gitlab.haskell.org/bgamari/gitlab-migration/blob/master/wiki-mapping.json
* Cleanup boot and validateKrzysztof Gogolewski2018-10-151-13/+1
| | | | | | | | | | | | | | | | | - Remove dph from validate; dph was removed - The required-tag argument to boot was used only for dph, remove - check_boot_packages() was not called at all, and didn't work. I fixed it based on previous Perl version. Test Plan: Harbormaster Reviewers: bgamari, thomie Reviewed By: bgamari Subscribers: rwbarton, carter Differential Revision: https://phabricator.haskell.org/D5129
* circleci: Detect core countBen Gamari2018-07-061-23/+1
| | | | | | | | | | | | | | | Test Plan: Try `./validate`, CircleCI build; make sure core count detection works in both cases. Reviewers: alpmestan Reviewed By: alpmestan Subscribers: rwbarton, thomie, carter GHC Trac Issues: #14470 Differential Revision: https://phabricator.haskell.org/D4897
* vectorise: Put it out of its miseryBen Gamari2018-06-021-6/+0
| | | | | | | | | | | | | | | | | | | | | Poor DPH and its vectoriser have long been languishing; sadly it seems there is little chance that the effort will be rekindled. Every few years we discuss what to do with this mass of code and at least once we have agreed that it should be archived on a branch and removed from `master`. Here we do just that, eliminating heaps of dead code in the process. Here we drop the ParallelArrays extension, the vectoriser, and the `vector` and `primitive` submodules. Test Plan: Validate Reviewers: simonpj, simonmar, hvr, goldfire, alanz Reviewed By: simonmar Subscribers: goldfire, rwbarton, thomie, mpickering, carter Differential Revision: https://phabricator.haskell.org/D4761
* Rewrite boot in PythonBen Gamari2017-10-021-2/+2
| | | | | | | | | | | | | | | | | | One step closer to being able to drop the Windows Perl tarball. We previously attempted to do this in D3567 but were forced to revert due to Windows problems. Acknowledgements: * @Phyx kindly contributed the codepath allowing this to work on Windows. Test Plan: Validate Reviewers: hvr, austin, Phyx Subscribers: erikd, thomie, rwbarton Differential Revision: https://phabricator.haskell.org/D3918
* testsuite: Produce JUnit outputBen Gamari2017-07-281-0/+2
| | | | | | | | | | | | Test Plan: Validate, try ingesting into Jenkins. Reviewers: austin Subscribers: rwbarton, thomie GHC Trac Issues: #13716 Differential Revision: https://phabricator.haskell.org/D3796
* Revert "Rewrite boot in Python"Ben Gamari2017-05-261-2/+2
| | | | | | This reverts commit 0440af6abe592c2366d302d603664fe763ad0828. Unfortunately this breaks on Windows for tiresome reasons. I'll need to reevaluate this.
* Rewrite boot in PythonBen Gamari2017-05-221-2/+2
| | | | | | | | | | Test Plan: Validate Reviewers: hvr, austin Subscribers: rwbarton, thomie, erikd Differential Revision: https://phabricator.haskell.org/D3567
* validate: Clean GMP treesBen Gamari2017-04-041-1/+1
| | | | | | | | | | | | | | | For reasons unknown `validate` passed `NO_CLEAN_GMP=YES` to `maintainer-clean`, leaving a stale `gmp.h` which causes the build to fail in the event that the uses a tree for validating for two different target platforms. This is quite unexpected, don't do it. Reviewers: hvr, austin, rwbarton, dfeuer Reviewed By: dfeuer Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D3409
* validate: Allow user to override Python interpreterBen Gamari2016-10-171-2/+8
| | | | | | | | | | | | | | | Due to #12554 and #12661 we must be quite picky about our choice of Python interpreter on Windows. Allow the user to override it. Test Plan: `PYTHON=/usr/bin/python2 ./validate` on Windows Reviewers: austin, Phyx Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2603 GHC Trac Issues: #12554, #12661
* validate: Add --build-onlyBen Gamari2016-10-011-0/+15
| | | | | | | | | | | This will allow us to split up Harbormaster output for the build and test stages of validation. Test Plan: `./validate --build-only && ./validate --testsuite-only` Reviewers: thomie, hvr, austin Differential Revision: https://phabricator.haskell.org/D2553
* Validate: use `rm -f` instead of `rm`Thomas Miedema2016-06-181-1/+1
|
* Testsuite: validate the tests/stage1 directory with the stage1 compilerThomas Miedema2016-06-181-3/+28
| | | | | | | | | | | * See `Note [Why is there no stage1 setup function?]`. * Move T2632 to the tests/stage1 directory (#10382). Reviewed by: ezyang, nomeata, bgamari Differential Revision: https://phabricator.haskell.org/D2341 GHC Trac Issues: #12197
* Testsuite: run tests in <testdir>.run instead of /tmpThomas Miedema2016-06-181-1/+2
| | | | | | | | | | | | | | | | | | | | As discussed in Phab:D1187, this approach makes it a bit easier to inspect the test directory while working on a new test. The only tests that needed changes are the ones that refer to files in ancestor directories. Those files are now copied directly into the test directory. validate still runs the tests in a temporary directory in /tmp, see `Note [Running tests in /tmp]` in testsuite/driver/runtests.py. Update submodule hpc. Reviewed by: simonmar Differential Revision: https://phabricator.haskell.org/D2333 GHC Trac Issues: #11980
* validate: Note existence of config_args variableBen Gamari2016-04-171-0/+3
|
* validate: Use gz compression during bindist checkBen Gamari2016-01-181-2/+6
| | | | | | | | | | | | Test Plan: validate, check that gz is used Reviewers: hvr, austin, thomie Reviewed By: thomie Differential Revision: https://phabricator.haskell.org/D1788 GHC Trac Issues: #11434
* Build system: delete ghc-pwdThomas Miedema2016-01-041-3/+3
| | | | | | | | | | | | | | | | On Windows, with msys2, `pwd` works (as can be seen by the use of `pwd` that slipped into the validate script), so there is really no need for `ghc-pwd` anymore. Test Plan: try it Reviewers: austin, bgamari, Phyx Reviewed By: Phyx Subscribers: Phyx, erikd Differential Revision: https://phabricator.haskell.org/D1731
* Rewrite checkUniques and incorporate into validateBen Gamari2015-11-241-0/+2
| | | | | | | | | | | | | | | This should catch duplicate uniques in the future before Bad Things happen. Test Plan: Introduce a duplicate unique and validate Reviewers: austin, hvr, thomie Reviewed By: hvr, thomie Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D1521
* Revert "Build system: don't create mk/are-validating.mk"Thomas Miedema2015-10-291-7/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: This reverts commit aecf4a5f96d0d3ffcf4cb2c67a20a610d7c64486. It turns out the Simons are relying on 'mk/are-validating.mk', see D1307. The workflow they are using is: * run ./validate * find a bug in the compiler * try to fix the bug, running 'make 1' (or 'make 2') repeatedly. Because of 'mk/are-validating.mk', this uses the same build settings as validate. * continue ./validate (--no-clean) I suggested two alternatives: A. run 'make 1 Validating=YES' instead of 'make 1' Problem: when running `./validate --fast` or `./validate --hpc` instead of a normal `./validate`, validate sets ValidateSpeed and ValdateHpc in mk/are-validating.mk. You would for example have to run 'make 1 Validating=YES ValidateSpeed=FAST' instead of 'make 1' to get the same build settings as `./validate --fast`, which is entirely too long and error prone. B. uncomment `#BuildFlavour=validate` in mk/build.mk, and include 'mk/validate.mk'. Problems: * any other settings you have in build.mk will also get used. * the distinction between 'mk/validate.mk' and 'mk/build.mk' becomes less clear. * it is easy to forget to include 'mk/validate.mk'. * the build system again doesn't have access to the ValidateSpeed and ValdateHpc settings set by validate. Neither of these two options is entirely satisfactory. Reviewers: austin, bgamari Differential Revision: https://phabricator.haskell.org/D1383
* Build system: don't create mk/are-validating.mkThomas Miedema2015-10-041-11/+7
| | | | | | | | | | 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
* Build system: delete the InstallExtraPackages variableThomas Miedema2015-09-081-5/+0
| | | | | | | | | | | | | | Just install all packages that are built. Don't make an exception for the dph and extra packages. You can control whether the dph and extra packages should be build using the variables BUILD_DPH and BUILD_EXTRA_PKGS. These variables didn't exist before. But now that they do, InstallExtraPackages isn't really needed anymore. Reviewed by: austin Differential Revision: https://phabricator.haskell.org/D1227