summaryrefslogtreecommitdiff
path: root/ghc.mk
Commit message (Collapse)AuthorAgeFilesLines
* Follow cabal->Cabal rename, and fix haddock index generationIan Lynagh2011-10-231-2/+2
| | | | We now make use of the ghc-packages file when making the haddock index.
* Don't hide the binary packageIan Lynagh2011-10-141-8/+0
| | | | | | Cabal will use it regardless, and if people are going to use binary then it's a lot better if they use the one that we ship, rather than installing a second version.
* Simplify the libffi buildIan Lynagh2011-10-141-12/+3
| | | | | | | We now put the libffi objects into the RTS library, rather than trying to mangle libffi into being a ghc package itself. It would be nicer to make it a separate library (but not a ghc package), but for now hopefully this will get the build going through on Windows again.
* Add deepseq as a core package; part of #5468Ian Lynagh2011-09-081-1/+1
|
* Add deepseq as a core packageIan Lynagh2011-09-081-0/+1
|
* By default, be lax about dependencies on GHCIan Lynagh2011-08-281-0/+19
| | | | | | | | | | | | There are a number of things which technically depend on GHC (e.g. if ghc changes then Haskell files may be compiled differently, or Cabal packages may be configured differently). However, in practice, having a real dependency on GHC is just a pain: We normally don't want to spend time recompiling other things while we're working on the compiler, and even if we did, GHC will normally decide compilation isn't needed anyway. So by default we use order-only dependencies on GHC, i.e. GHC must exist, but if it's newer than other targets then rebuilding is not necessary.
* sanitise naming of package listsSimon Marlow2011-08-051-44/+49
| | | | | | | | | | | | | | | The *predicates* all start with "PKGS_THAT_...", e.g.: PKGS_THAT_BUILD_WITH_STAGE0 (previously "PACKAGES_STAGE0") PKGS_THAT_BUILD_WITH_STAGE2 (previously "STAGE2_PACKAGES") PKGS_THAT_USE_TH (previously "TH_PACKAGES) etc. (there are a few more) the lists of packages to build are now consistently named: PACKAGES_STAGE0 PACKAGES_STAGE1 (previously just "PACKAGES") PACKAGES_STAGE2
* Don't duplicate files in bindists; trac #5356Ian Lynagh2011-08-041-3/+0
| | | | | | | | We were putting includes/ghcautoconf.h includes/ghcconfig.h includes/ghcplatform.h into bindists twice.
* Fix the permissions of all the package.conf.d files when installingIan Lynagh2011-07-281-3/+5
| | | | Fixes trac #5311.
* fix bug in sdist-prep rule (hpc/dist is now hpc/dist-install)Simon Marlow2011-07-181-1/+1
|
* Fix permissions of package.cache when installing; fixes trac #5311Ian Lynagh2011-07-171-0/+4
| | | | | | When we install the packages, ghc-pkg obeys umask when creating package.cache, but for everything else we specify the permissions. We therefore fix the permissions of package.cache afterwards.
* make sure libraries/dph/ghc.mk is included after the other DPH ghc.mkSimon Marlow2011-07-121-1/+4
| | | | | files, so that it can refer to variables defined there. (necessary, but perhaps not sufficient, to fix the DPH build bugs)
* Random is now only needed to build dphIan Lynagh2011-07-081-3/+2
|
* Rename STAGE0_PACKAGES to PACKAGES_STAGE0Ian Lynagh2011-06-251-10/+10
| | | | It now matches PACKAGES_STAGE2
* Follow Cabal reorganisation, and improve build system a littleIan Lynagh2011-06-231-13/+10
|
* Make builds that use stage1 use "dist-install" consistently. ThisSimon Marlow2011-05-281-4/+4
| | | | | makes it easier to remove everything built with stage1 in cases where the build system or GHC wrongly thinks everything is up to date.
* Rename "extra-gcc-opts" to "settings", and start generalising itIan Lynagh2011-04-211-6/+6
|
* Refactor how dependencies are included; fixes #5109Ian Lynagh2011-04-141-0/+1
| | | | This avoids duplicating some logic around the build system.
* Remove dead code, now that -fvia-c is a no-opIan Lynagh2011-04-041-1/+0
|
* Don't put includes/rts/Config.h in bindists twiceIan Lynagh2011-03-161-1/+0
|
* Call the final build system phase "final" rather than ""Ian Lynagh2011-02-071-2/+6
|
* Merge in new code generator branch.Simon Marlow2011-01-241-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | This changes the new code generator to make use of the Hoopl package for dataflow analysis. Hoopl is a new boot package, and is maintained in a separate upstream git repository (as usual, GHC has its own lagging darcs mirror in http://darcs.haskell.org/packages/hoopl). During this merge I squashed recent history into one patch. I tried to rebase, but the history had some internal conflicts of its own which made rebase extremely confusing, so I gave up. The history I squashed was: - Update new codegen to work with latest Hoopl - Add some notes on new code gen to cmm-notes - Enable Hoopl lag package. - Add SPJ note to cmm-notes - Improve GC calls on new code generator. Work in this branch was done by: - Milan Straka <fox@ucw.cz> - John Dias <dias@cs.tufts.edu> - David Terei <davidterei@gmail.com> Edward Z. Yang <ezyang@mit.edu> merged in further changes from GHC HEAD and fixed a few bugs.
* Add build system profiling to build systemIan Lynagh2011-01-231-0/+1
|
* Fix ghci in stage3Ian Lynagh2011-01-231-0/+1
|
* Simplify the build system, and remove 2 phasesIan Lynagh2011-01-221-65/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Fix libraries/index.html's haddock dependency on WindowsIan Lynagh2011-01-191-1/+1
|
* Add configure phases for the stage 3 compilerIan Lynagh2011-01-191-0/+2
|
* Tidy up gmp cleaningIan Lynagh2011-01-171-11/+2
|
* Simplify a bit of makefileIan Lynagh2011-01-161-4/+2
|
* Tweak Windows phase orderingIan Lynagh2011-01-161-1/+1
|
* Add some Windows-only CONFIGURE_PHASEsIan Lynagh2011-01-161-0/+4
|
* Simplify, and future-proof, a dependency in the build systemIan Lynagh2011-01-161-5/+1
|
* Remove an unnecessary phase, and some unnecessary depsIan Lynagh2011-01-161-45/+19
| | | | now that cross-package deps are tracked correctly.
* Tidy up a bitIan Lynagh2011-01-161-178/+67
|
* Build system improvementsIan Lynagh2011-01-151-3/+115
| | | | | | | | | 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.
* On Cygwin, use a Cygwin-style path for /bin/install's destinationIan Lynagh2011-01-061-28/+28
| | | | | | | | | | | | | | | | | cygwin's /bin/install doesn't set file modes correctly if the destination path is a C: style path: $ /bin/install -c -m 644 foo /cygdrive/c/cygwin/home/ian/foo2 $ /bin/install -c -m 644 foo c:/cygwin/home/ian/foo3 $ ls -l foo* -rw-r--r-- 1 ian None 0 2011-01-06 18:28 foo -rw-r--r-- 1 ian None 0 2011-01-06 18:29 foo2 -rwxrwxrwx 1 ian None 0 2011-01-06 18:29 foo3 This causes problems for bindisttest/checkBinaries.sh which then thinks that e.g. the userguide HTML files are binaries. We therefore use a /cygdrive path if we are on cygwin
* Build a copy of ghc-cabal with the in-tree compiler, for the bindistIan Lynagh2010-12-101-2/+6
|
* Tweak the cleaning of inplace/; fixes trac #4320Ian Lynagh2010-12-051-1/+2
|
* For bindists, build ghc-pwd with stage 1Ian Lynagh2010-11-211-9/+7
| | | | | | rather then the bootstrapping compiler. This fixes problems where the bootstrapping compiler dynamically links against libraries not on the target machine.
* Makefile tweakIan Lynagh2010-11-211-1/+1
|
* Build random with the stage2 compilerIan Lynagh2010-11-171-1/+1
|
* Fix paths used for doc publishing in the nightly buildsIan Lynagh2010-11-141-1/+7
|
* Avoid scary message from tar if dph isn't in the treeIan Lynagh2010-11-031-4/+4
|
* Whitespace onlyIan Lynagh2010-11-031-22/+22
|
* Remove duplicate PrimopWrappers generationSimon Marlow2010-10-281-7/+1
| | | | | | | | | | | | | | We were generating PrimopWrappers.hs twice in two different places, one for the normal build and one for Haddock (I think). Unfortunately one of these was causing extra rebuilding, because the file dropped into the dist-install/build/autogen directory, where it was picked up by the automatic HS_SRCS detection in subsequent make runs. This was exposed by a recent change to HS_SRCS: Wed Oct 20 11:47:59 BST 2010 Ian Lynagh <igloo@earth.li> * Look for sources in Cabal's autogen directory too This should fix the stage3 failures in the build bots.
* fix stage1_libs pseudo-targetSimon Marlow2010-10-261-3/+5
|
* Don't build packages that need TH if we are making a profiling compilerIan Lynagh2010-10-231-4/+11
| | | | You can't use TH with a profiling compiler.
* Build haskell98 and haskell2010 with stage2Ian Lynagh2010-10-131-1/+1
| | | | Stops us accidentally depending on them
* Follow Cabal changes: Cabal no longer has a docbook userguideIan Lynagh2010-10-121-1/+0
| | | | | For now we don't build the Cabal userguide, but we should add markdown support so that we can do so.
* Fix build following haskell98 and -fglasgow-exts changesIan Lynagh2010-10-061-0/+1
|