summaryrefslogtreecommitdiff
path: root/Makefile
Commit message (Collapse)AuthorAgeFilesLines
* winio: Various fixes related to rebase and testdriverTamar Christina2020-07-151-3/+3
|
* 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
* Update Trac ticket URLs to point to GitLabRyan Scott2019-03-151-1/+1
| | | | | This moves all URL references to Trac tickets to their corresponding GitLab counterparts.
* Improve diagnostic when using `make fast` in top directoryVictor Nawothnig2018-10-281-0/+6
| | | | | | | | | | Reviewers: bgamari Reviewed By: bgamari Subscribers: rwbarton, carter Differential Revision: https://phabricator.haskell.org/D5113
* Revert "Move check-ppr and check-api-annotations to testsuite/utils"Ben Gamari2017-11-021-7/+3
| | | | | | | | Unfortunately this (ironically) ended up breaking bindist testing since we didn't have a package-data.mk. Unfortunately there is no easy way to fix this. This reverts commit 1e9f90af7311c33de0f7f5b7dba594725596d675.
* Move check-ppr and check-api-annotations to testsuite/utilsBen Gamari2017-09-271-3/+7
| | | | | | | | | | | | | | | | | These are needed by the testsuite and consequently must be shipped in the testsuite tarball to ensure that we can test binary distributions. See #13897. Test Plan: Validate Reviewers: austin Subscribers: snowleopard, rwbarton, thomie GHC Trac Issues: #13897 Differential Revision: https://phabricator.haskell.org/D4039
* Add “BINARY_DIST_DIR” to MakefileMoritz Angermann2017-07-281-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | This allows to customize the location where binary distributions are placed with `make binary-dist`. E.g. using: ``` BINARY_DIST_DIR=/path/to/bindists make binary-dist ``` will place binary dists outside of the source tree into the given folder. This change falls back to ".", which is the old behaviour. Test Plan: build binary-dist Reviewers: bgamari, austin Reviewed By: bgamari Subscribers: rwbarton, thomie Differential Revision: https://phabricator.haskell.org/D3798
* configure.ac: Remove checks for bug 9439Erik de Castro Lopo2016-08-071-7/+0
| | | | | | | | | | | | | | | Bug #9439 only affects some ghc 7.8 versions of the compiler and since git HEAD no longer builds with ghc-7.8 we can drop this check. Test Plan: Works here! Reviewers: hvr, austin, bgamari Reviewed By: bgamari Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2427
* Unset GREP_OPTIONS in build systemBen Gamari2016-02-091-0/+7
| | | | | | | | | | | | Test Plan: GREP_OPTIONS=--blah ./validate Reviewers: austin, thomie Reviewed By: thomie Differential Revision: https://phabricator.haskell.org/D1887 GHC Trac Issues: #11530
* Build system: fix 'make install-strip' in bindistThomas Miedema2015-12-121-12/+13
| | | | | | | | | | | | | | | | The INSTALL_PROGRAM variable is set in mk/config.mk, so we have to include that file before using it. Running 'make install' before './configure' in a bindist will now also display a nice message. Reviewers: hvr, austin, bgamari Reviewed By: bgamari Differential Revision: https://phabricator.haskell.org/D1604 GHC Trac Issues: #1851
* Always run explicitly requested ways (extra_ways) for fast runs.Edward Z. Yang2015-09-201-2/+5
| | | | | | | | | | | | | | | | | | | | | | | To keep validates fast, we only one run one way. But I think that it's important for some tests to run them a few ways, just to make sure functionality, e.g. the profiler, is working. This commit changes the logic so that any way specified in extra_ways is always run for fast. The big changes is now profiling tests are run on validate. I also made it so the G1 garbage collector tests only run on slow. Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu> Test Plan: validate Reviewers: austin, thomie, bgamari Reviewed By: austin, thomie, bgamari Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D1251
* Build system: simplify *-llvm BuildFlavours (#10223)Thomas Miedema2015-09-071-1/+1
| | | | | | | | | | | | | Note that SRC_HC_OPTS are added to every Haskell compilation. So there isn't any need to also add `-fllvm` to GhcStage1HcOpts, GhcStage2HcOpts and GhcLibHcOpts. Small bug fix: make sure we test for -fllvm in SRC_HC_OPTS, to check whether the bootstrap compiler is affected by bug #9439. Reviewed by: austin Differential Revision: https://phabricator.haskell.org/D1188
* Build system: implement `make install-strip` (#1851)Thomas Miedema2015-09-041-0/+22
| | | | | | Reviewed by: bgamari Differential Revision: https://phabricator.haskell.org/D1209
* Testsuite: by default run all tests for a single wayThomas Miedema2015-09-021-2/+29
| | | | | | | | | | | | | | `make test` now runs all tests for a single way only. Use `make slowtest` to get the previous behaviour (i.e. run all tests for all ways). The intention is to use this new `make test` setting for Phabricator, as a reasonable compromise between `make fasttest` (what it previously used) and a fullblown `make slowtest` (which runs all tests for all ways). See Note [validate and testsuite speed] in toplevel Makefile. Differential Revision: https://phabricator.haskell.org/D1178
* Build system: add `make show!` command (#7810)Thomas Miedema2015-07-131-0/+5
| | | | | | | | A normal `make show` starts a build of the ghc-stage1 compiler, to create package-data.mk files. This version doesn't read those, so it will work right after ./configure. Differential Revision: https://phabricator.haskell.org/D1064
* Build system: rename bindist to bindist-list...Thomas Miedema2015-07-021-1/+1
| | | | | ...to prevent accidental use of `make bindist`, when `make binary-dist` is called for.
* Make validate more quietThomas Miedema2015-06-041-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * By default use V=0, and call the testsuite with VERBOSE=2, which we did before only with validate --quiet. This disables printing the test commands it runs. * When --quiet is used, call the testsuite with VERBOSE=1. This disables printing the '====> Scanning' lines, and doesn't print which test is being run. So it only prints something when a test accidentally prints to stdout or when it fails. Don't set this option on Travis, as Travis will cancel a build if it doesn't see any output for more than 10 minutes. * When --quiet is used, set the new test option NO_PRINT_SUMMARY, which skips printing the test summary. Only the list of unexpected failures is printed, if there are any. Note that the full summary can still be found in testsuite_summary.txt * When --quiet is used, don't pass the `-v` flag to `ghc-pkg check` * When --quiet is used, don't print the Oops! header. It shoud be clear from the list of failing tests that something is wrong. This is all done to get the most out of 30 lines of logfile. These changes can be disabled later by simply not passing the --quiet flag to validate. Differential Revision: https://phabricator.haskell.org/D942
* Build: ./boot && ./configure && make sdist (#8723)Thomas Miedema2015-06-041-1/+29
| | | | | | | | | | | | | | | | | Make it possible to run `make sdist` right after configure, without completing a complete build first. Test Plan: I compared the contents of the created `.tar.bz2` files in the `sdistprep` directory, after running `make sdist` both before and after completing a full build, using `diff -r`. There weren't any differences (after applying the patches from D914). Note that the `.tar.bz2` files were not exactly the same size, but they aren't either when tarring and bzipping the same directory twice. It seems tarring and bzipping is not deterministic (on my system). Differential Revision: https://phabricator.haskell.org/D917
* Build system: always use `make -r`Thomas Miedema2015-05-301-10/+18
| | | | | | | | | | | | | | | | | Do what this comment was suggesting: "Ideally we'd like to have 'make -r' turned on by default, because that disables all the implicit rules, but there doesn't seem to be a good way to do that." This change doesn't seem to have much effect on the time it takes to run make. Apparently clearing .SUFFIXES was enough for that. But it does make the output of `make -d` quite a bit shorter, which is nice. Note: ghc.mk is always called indirectly, so no need to set .SUFFIXES or MAKEFLAGS there again. Differential Revision: https://phabricator.haskell.org/D915
* Build system: allow missing config.mk for target clean_%Thomas Miedema2015-05-301-1/+1
| | | | [skip ci]
* Build system: remove toplevel target `fast`Thomas Miedema2015-05-301-3/+3
| | | | | | | Remove the recently introduced `fast` synonym for `fasttest`, because in the subdirectories `make fast` already means `make all FAST=YES`. [skip ci]
* Build system: make more targets PHONYThomas Miedema2015-05-301-0/+6
| | | | [skip ci]
* build: fix 'make help'Austin Seipp2015-03-071-1/+1
| | | | | | | | | | | | | | | | | Summary: This fixes the usage of `make help` in the top-level and subdirectories. Signed-off-by: Austin Seipp <austin@well-typed.com> Test Plan: It worked now and didn't before. Reviewers: hvr Reviewed By: hvr Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D692
* `make test` in root directory now runs fulltestThomas Miedema2015-03-021-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: Currently, running `make test` in: / runs fast testsuite /testsuite doesn't work /testsuite/tests runs slow testsuite This commit: * changes `make test` in the ghc root directory to run the slow testsuite, just like it already does in `testsuite/tests` * adds some simple targets to `/testsuite`, that all delegate to `/testsuite/tests` * adds a new target `fasttest` to the toplevel Makefile, with a shorthand name `fast` (for consistency with /testsuite and /testsuite/tests) * declares some more targets PHONY for safety Wiki pages that need updating: * Building/StandardTargets * Buliding/RunningTests Reviewers: austin Reviewed By: austin Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D685
* Bug #9439: Ensure that stage 0 compiler isn't affectedBen Gamari2014-08-181-0/+7
| | | | | | | | | | | | | | | | Summary: Bug #9439 will cause miscompilation of GHC's LLVM backend. Here we ensure that an affected compiler isn't used to bootstrap. Test Plan: Attempt to bootstrap GHC with an affected stage 0 compiler. Reviewers: rwbarton, austin Reviewed By: austin Subscribers: simonmar, relrod, ezyang, carter Differential Revision: https://phabricator.haskell.org/D159
* Don't require mk/config.mk for all cleanup targetsHerbert Valerio Riedel2014-04-271-1/+1
| | | | | | | | `make clean` did already ignore a missing mk/config.mk, but `make distclean` and `make maintainer-clean` didn't. This commit rectifies this oversight. Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
* Fix `make help`Kyle J. Van Berendonck2014-04-211-2/+2
| | | | Signed-off-by: Austin Seipp <austin@well-typed.com>
* Fix binary-dist target with xz/gzipAustin Seipp2014-02-281-1/+1
| | | | | | | This was harmless but annoying: we forgot to take the compression extention into account when copying the binary dist out of bindistprep Signed-off-by: Austin Seipp <austin@well-typed.com>
* Fix Windows binary-dist targetAustin Seipp2014-01-141-3/+0
| | | | | | | | I'm not entirely sure what the intention of this code was, but it was quite old, and the binary distribution for Windows seems to work OK nonetheless. Signed-off-by: Austin Seipp <austin@well-typed.com>
* Globally replace "hackage.haskell.org" with "ghc.haskell.org"Simon Marlow2013-10-011-2/+2
|
* Add an echo target to the build systemIan Lynagh2013-05-251-2/+2
|
* Don't try to make windows-installerIan Lynagh2013-05-181-1/+0
| | | | It was removed in 9e4e2c24d1895ae81c92e4432b91026505827c96.
* Fix 'make test' command for new testsuite locationDavid Terei2011-07-201-2/+2
|
* Update some files for new testsuite tests locationDavid Terei2011-07-201-2/+2
|
* Remove depreciated install-docs commandDavid Terei2011-05-041-7/+1
|
* Call the final build system phase "final" rather than ""Ian Lynagh2011-02-071-1/+1
|
* Fix "make 1" etc following the build system changesIan Lynagh2011-01-271-0/+2
| | | | | The logic is now in mk/compiler-ghc.mk rather than being duplicated in ghc/Makefile and compiler/Makefile.
* Simplify the build system, and remove 2 phasesIan Lynagh2011-01-221-10/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | From http://hackage.haskell.org/trac/ghc/wiki/Building/Architecture/Idiom/PhaseOrdering Phase 0: Includes: package-data.mk files for things built by the bootstrapping compiler. Builds: the dependency files for hsc2hs and genprimopcode. We need to do this now, as hsc2hs needs to be buildable in phase 1's includes (so that we can make the hpc library's .hs source files, which in turn is necessary for making its dependency files), and genprimopcode needs to be buildable in phase 1's includes (so that we can make the primop-*.hs-incl files, which are sources for the stage1 compiler library, and thus necessary for making its dependency files). Phase 1: Includes: dependency files for things built by the bootstrapping compiler. Builds: package-data.mk files for everything else. Note that this requires configuring the packages, which means telling cabal which ghc to use, and thus the stage1 compiler gets built during this phase. Phase "": Includes: dependency files for everything else. Builds: Everything else.
* Remove an unnecessary phase, and some unnecessary depsIan Lynagh2011-01-161-4/+0
| | | | now that cross-package deps are tracked correctly.
* Build system improvementsIan Lynagh2011-01-151-9/+13
| | | | | | | | | We no longer use dummy-ghc; instead we don't configure most packages until the stage1 compiler is available. We also now use Cabal for building the ghc-bin package. There are a couple more sanity checks too.
* make test and fulltest targets in the main Makefile; fixes #4297Ian Lynagh2010-09-301-1/+10
| | | | | | You can now run "make test" in the root, and the fast testsuite will be run with cleaning enabled. It will also put the summary in testsuite_summary.txt.
* Second test from Simon's laptopsimonpj@microsoft.com2010-07-291-1/+1
|
* Test commit from Simon's laptopsimonpj@microsoft.com2010-07-291-1/+1
|
* Add an install-docs target that emits a helpful diagnostic (#3662)Simon Marlow2009-11-161-1/+7
|
* Change where bindists are madeIan Lynagh2009-09-271-4/+10
| | | | | | We now do all the hard work in a bindistprep subdirectory, and just move the result to the root directory. This way we can delete anything in bindistprep/ without worrying about deleting anything important.
* Fix "make show" in a bindistIan Lynagh2009-08-011-7/+3
|
* avoid (benign) error about overriding rules for binary-distSimon Marlow2009-07-271-1/+1
|
* remove Solaris-specific hacks, now unnecessarySimon Marlow2009-07-131-6/+1
|
* Simplify timestamp restorationMatthias Kilian2009-07-111-25/+5
|
* Use /usr/bin/test if it exists, and fix test syntax.Simon Marlow2009-07-091-2/+7
| | | | Should fix Solaris build failures