summaryrefslogtreecommitdiff
path: root/mk/build.mk.sample
Commit message (Collapse)AuthorAgeFilesLines
* Update `make` based build systemSylvain Henry2020-06-171-2/+2
| | | | * replace integer-* package selection with ghc-bignum backend selection
* Update Wiki URLs to point to GitLabTakenobu Tani2019-03-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | 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.
* Remove BUILD_DPH, not usedKrzysztof Gogolewski2018-07-061-3/+0
|
* Adds *-cross-ncg flavour.Moritz Angermann2018-03-021-4/+13
| | | | | | | | | | | | | | | Our *-cross flavours force -fllvm, this adds flavours for cross compilation to x86_64, where we can use our native code generator. Test Plan: ./validate Reviewers: bgamari Reviewed By: bgamari Subscribers: rwbarton, thomie, carter Differential Revision: https://phabricator.haskell.org/D4443
* Bump haddock submodulealexbiehl2017-11-021-1/+1
| | | | | | | | Reviewers: austin, bgamari Subscribers: rwbarton, thomie Differential Revision: https://phabricator.haskell.org/D4144
* build.mk: Add option for debug symbolsBen Gamari2017-02-201-0/+7
|
* Turn libraries/integer-gmp/gmp/tarball into a submoduleReid Barton2017-01-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | The submodule repository contains the latest version of the GMP source distribution (6.1.2) with the doc/ subdirectory removed, as described in gmp/ghc.mk. Rather than applying the old patch from gmp/tarball/patch I moved its contents into gmp/gmpsrc.patch, canceling a patch related to memory management there. Experimentally, the PIC-related patch for OS X is still necessary. The upgrade to GMP 6.1.2 fixes #7655. Test Plan: Built on OS X with in-tree gmp and tested that the command `ghc -e 'length (show (2^(5*10^6) :: Integer))'` no longer segfaults. Reviewers: mpickering, hvr, austin, bgamari Reviewed By: bgamari Subscribers: mpickering, thomie Differential Revision: https://phabricator.haskell.org/D3044 GHC Trac Issues: #7655
* Adds llvm-prof flavourMoritz Angermann2016-12-151-0/+3
| | | | | | | | | | Reviewers: austin, bgamari, RyanGlScott Reviewed By: bgamari, RyanGlScott Subscribers: RyanGlScott, thomie Differential Revision: https://phabricator.haskell.org/D2824
* Note Trac #12141 in mk/build.mk.sampleRyan Scott2016-12-021-1/+2
| | | | | Mention that many GHC testsuite tests will fail with a compiler built with the quickest profile. See Trac #12141.
* Make it easy to get hyperlinked sourcesBartosz Nitka2016-04-181-0/+4
| | | | | | | | | | | | | | | | | | | | | The version of `haddock` that ghc has as a submodule has an option for generating linkified sources. I don't think it hurts to have this and they are great for exploring the codebase. I'd be nice if harbormaster or travis published them somewhere, but I don't know how to do that yet. Test Plan: uncomment, run `make` and look at the nicely linkified sources in `compiler/stage2/doc/html/ghc/` Reviewers: hvr, austin, bgamari Reviewed By: bgamari Subscribers: thomie, simonmar Differential Revision: https://phabricator.haskell.org/D2119
* build.mk.sample: Document meaning of WERRORBen Gamari2015-11-231-1/+2
| | | | | | | | | 31bcf9b62ceaed98bdd3b7605e68d315bcff0c8a changed the behavior of WERROR such that it would only apply to the stage 2 build. The reason for this was to avoid silly redundant imports and such breaking validation on different bootstrap compiler versions. Document the fact that WERROR now only applies to the stage 2 build.
* Build system: put each BuildFlavour in a separate file (#10223)Thomas Miedema2015-09-071-255/+11
| | | | | | | | | This allows easier diffing of different BuildFlavours, including `mk/flavours/validate.mk`. Reviewed By: bgamari, austin Differential Revision: https://phabricator.haskell.org/D1050
* Build system: do not build stm and parallel by defaultThomas Miedema2015-07-141-0/+4
| | | | | | | | | | | | | | | | | stm and parallel have an 'extra' tag in the ./packages file, so would get added to PACKAGES_STAGE2 by default, and subsequently build by the stage2 compiler. With this patch, this happens only when you set BUILD_EXTRA_PKGS=YES in build.mk. A normal validate still builds (and tests) the 'extra' packages, but they are skipped for `validate --fast`. Maybe this brings us closer to finishing within the 50 minute Travis limit as well. We can later try to give random, primitive and vector an 'extra' tag as well (now they have a 'dph' tag), but some tests will probably fail at first. Differential Revision: https://phabricator.haskell.org/D1065
* Build system: don't set GhcLibWays explicitly in build.mk.sample (#10536)Thomas Miedema2015-07-071-21/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | We used to have the following in mk/build.mk.sample: GhcLibWays = $(if $(filter $(DYNAMIC_GHC_PROGRAMS),YES),v dyn,v) This commit removes that statement for the following reasons: 1) It depends on the variable DYNAMIC_GHC_PROGRAMS, which is set later in the file for some BuildFlavours. Although this works because `make` does multiple passes when reading Makefiles, it is confusing to users [1]. Instead, test for DYNAMIC_GHC_PROGRAMS in mk/config.mk.in. 2) Although it looks like that line is about compiling the `dyn` way, its purpose is really to not build the `prof` way. This commit introduces the variable BUILD_PROF_LIBS, to make this more explicit. This simplifies mk/build.mk.sample and mk/validate-settings.mk. Note that setting GhcLibWays explicitly still works, and DYNAMIC_GHC_PROGRAMS=NO in build.mk does not build the `dyn` way. [1] https://mail.haskell.org/pipermail/ghc-devs/2014-December/007725.html Differential Revision: https://phabricator.haskell.org/D1021
* Build system: prevent "warning: overriding commands for target..."Thomas Miedema2015-06-301-0/+1
| | | | | This happened because the dyn way was listed twice in GhcLibWays for BuildFlavour=perf.
* Disable same warnings for normal builds as for validate (#10223)Thomas Miedema2015-04-021-0/+3
| | | | | | | | | | | | | | | | | | | | | | The default validate settings currently disable some warnings in the libraries. This patch moves those settings to a new file called `mk/warnings.mk`, and applies them also to normal builds. Through uncommenting a line in build.mk, developers can now build with -Werror. -Werror is not the default, because: * We can not guarantee that the build is warning free on platforms we don't run regularly run validate (as part of continuous integration systems), and we still want the build to go through on those platforms. * quoting rwbarton on irc > "I think -Werror by default has come up in the past and the argument was that it is too annoying when you are doing nontrivial development" Reviewed By: austin Differential Revision: https://phabricator.haskell.org/D785
* Do not set -fasm explicitly in build.mk.sample (#10223)Thomas Miedema2015-04-021-27/+24
| | | | | | | | | On platforms that support -fasm, it is already the default, so we don't have to set it. Reviewed By: austin, erikd (tested on powerpc and armhf) Differential Revision: https://phabricator.haskell.org/D784
* Filter out `-Rghc-timing` for V=0 builds (#10223)Thomas Miedema2015-04-011-7/+4
| | | | | | Reviewed By: austin Differential Revision: https://phabricator.haskell.org/D783
* Reformat build flavours in build.mk.sample (#10223)Thomas Miedema2015-04-011-20/+33
| | | | | | | | | Use same format for each build flavour, to make it easier to compare them. Refactoring only. Reviewed By: austin Differential Revision: https://phabricator.haskell.org/D782
* Add `integer-gmp` specific hint to build.mk.sampleHerbert Valerio Riedel2015-03-311-0/+4
| | | | [skip ci]
* Only use -fasm on platforms with an NCG (Closes: #9884).Erik de Castro Lopo2014-12-141-24/+27
| | | | | | | | | | | | | | Summary: Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com> Reviewers: austin, carter Reviewed By: carter Subscribers: carter, thomie Differential Revision: https://phabricator.haskell.org/D570 GHC Trac Issues: #9884
* build.mk.sample: Stage1 needn't be built with -fllvmBen Gamari2014-09-091-2/+2
| | | | | | | | | | | | | | Summary: We can use the native codegen for stage 1 as it is to run on the host platform. Test Plan: Reviewers: Subscribers: GHC Trac Issues:
* Don't build or test dph by defaultAustin Seipp2014-08-101-2/+2
| | | | Signed-off-by: Austin Seipp <austin@well-typed.com>
* Add BUILD_DPH variable to GHC build-systemHerbert Valerio Riedel2014-06-291-0/+3
| | | | | | | | | | | | | | | | | | | Now that the `libraries/dph` submodule is checked out always we need a different way to disable building DPH to save compile-time while developing GHC. This commit adds a new YES/NO Make variable `BUILD_DPH` that can be used inside mk/build.mk to control whether to build libraries/dph or not. The default setting is `BUILD_DPH=YES` (via `mk/config.mk.in`). This also changes `validate`'s flag `--no-dph` to explicitly disable DPH for the current validation run. Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org> Test Plan: successful validates with `--fast --no-dph` Differential Revision: https://phabricator.haskell.org/D31
* Fix copy-paste error in build system commentJohan Tibell2014-03-101-2/+2
|
* Add "bench" build flavour to build systemJohan Tibell2014-03-101-0/+64
| | | | | | | This build generates the same code as the "perf" build and is thus good for compiling benchmarks and inspecting the generated code. However, it compiles the stage2 compiler faster at the expense of compiler user programs more slowly.
* Add a perf-cross build setting.Luke Iannini2014-01-301-0/+26
| | | | | | | This is for building performance-optimized cross compilers (e.g. the iOS target.) Signed-off-by: Austin Seipp <austin@well-typed.com>
* build.mk.sample: Don't disable dynamic linking for LLVM flavoursBen Gamari2014-01-271-6/+0
| | | | Signed-off-by: Austin Seipp <austin@well-typed.com>
* Add build.mk.sample entry for Cross CompilationAustin Seipp2013-10-251-0/+24
| | | | | | | This is suitable e.g. for iOS. Authored-by: Authored-by: Luke Iannini <lukexi@me.com> Signed-off-by: Austin Seipp <austin@well-typed.com>
* Do not build dynamic libraries with the perf-llvm BuildFlavour.Geoffrey Mainland2013-07-021-4/+0
|
* Build statically when using LLVM.Geoffrey Mainland2013-05-311-0/+6
| | | | The LLVM back end does not yet work when building dynamically.
* Reorganize mk/build.mk.sample a little.Austin Seipp2013-05-041-21/+23
| | | | | | | People are probably more likely to notice some useful variables if they're located closer to the top (like V=0 and stage=2.) Signed-off-by: Austin Seipp <aseipp@pobox.com>
* In build.mk.sample, include v in GhcLibWays even if DYNAMIC_GHC_PROGRAMS is setIan Lynagh2013-04-031-1/+1
| | | | | Although it's not technically needed, it's less confusing if the vanilla way works when people use the sample build.mk.
* By default, use the dynamic way for programs in the GHC treeIan Lynagh2013-03-151-1/+1
| | | | | In particular, this means that GHCi will use DLLs, rather than loading object files itself.
* Add a 'quick-llvm' build mode to mk/build.mk.Austin Seipp2013-01-161-0/+19
| | | | | | Closes Trac #7572. Signed-off-by: Austin Seipp <mad.one@gmail.com>
* Tweak build.mk.sampleIan Lynagh2012-10-251-2/+1
| | | | | Now that we can build dyn-only, we don't need to force DYNAMIC_BY_DEFAULT to NO. We just set GhcLibWays appropriately.
* Set V = 1 by default, and add info about turning it off to build.mk.sampleIan Lynagh2012-10-211-0/+4
| | | | | This will hopefully make it less likely that we will get bug reports with the pretty output, such as in trac ticket 7225.
* Turn DYNAMIC_BY_DEFAULT off in mk/build.mk.sampleIan Lynagh2012-10-181-0/+1
| | | | | It sets GhcLibWays=v, which doesn't work with DYNAMIC_BY_DEFAULT on as the dynamic libs aren't built.
* Add "Unregisterised" as a field in the settings fileIan Lynagh2012-08-071-27/+0
| | | | | | To explicitly choose whether you want an unregisterised build you now need to use the "--enable-unregisterised"/"--disable-unregisterised" configure flags.
* Add some llvm build options to build.mk.sampleDavid Terei2012-01-131-1/+26
|
* Turn off lax dependencies by defaultIan Lynagh2011-08-301-0/+2
|
* comment wibbleSimon Marlow2011-08-081-1/+1
|
* comment about using "stage = 2" in build.mkSimon Marlow2011-08-051-0/+9
|
* Add an unregisterised config to build.mkDavid Terei2011-07-201-0/+23
|
* Do not enable -XGenerics when building the optimized libs.Jose Pedro Magalhaes2011-05-051-1/+1
|
* remove some old commented-out settings that no longer workSimon Marlow2011-05-041-9/+0
|
* commentsSimon Marlow2011-02-011-5/+7
|
* Rename some variables from FOO to FOO_CMDIan Lynagh2010-06-161-1/+1
| | | | | | | | This fixes a problem with commands like gzip, where if $GZIP is exported in the environment, then when make runs a command it'll put the Makefile variable's value in the environment. But gzip treats $GZIP as arguments for itself, so when we run gzip it thinks we're giving it "gzip" as an argument.
* Fix up logic to decide whether shared libs are being built or notSimon Marlow2009-09-091-0/+4
| | | | | | Now, adding dyn to $(GhcLibWays) is how shared libs are enabled. Everything else keys off that, rather than testing $(BuildSharedLibs).