summaryrefslogtreecommitdiff
path: root/ghc.mk
Commit message (Collapse)AuthorAgeFilesLines
* two typosGabor Greif2012-02-271-1/+1
|
* Update dependenciesIan Lynagh2012-02-221-1/+1
|
* GHC trees no longer include the extensible-exceptions packageIan Lynagh2012-02-211-3/+2
|
* Remove the old ext-core docsIan Lynagh2012-02-141-2/+0
| | | | They've now been merged into the user guide.
* Improve support for cross-compilationSimon Marlow2012-01-301-9/+34
| | | | Patchset from Stephen Blackheath <stephen.blackheath@ipwnstudios.com>
* Rename the testsuite tarballIan Lynagh2012-01-181-4/+4
| | | | | | | | It's now ghc-<version>-testsuite.tar.bz2 rather than testsuite-ghc-<version>-src.tar.bz2 which (a) makes more sense, and (b) sorts better in directory listings.
* Make "make sdist" generate a testsuite tarball as well as the src tarballIan Lynagh2012-01-131-41/+66
|
* Clean more files in "make clean"Ian Lynagh2012-01-111-4/+3
| | | | | | | The libraries get configured during "make", so plain old "make clean" should clean up the configure droppings. Also fixed another wildcard/patsubst problem.
* Fix cleaning buildinfo filesIan Lynagh2012-01-111-1/+1
| | | | | We were applying $(wildcard ...) to the literal string libraries/%/*.buildinfo, which of course had no matches.
* RefactoringIan Lynagh2012-01-081-2/+4
| | | | | This is working towards being able to put ghcautoconf.h and ghcplatform.h in includes/dist
* Generate the haddock contents/index pages in a dist-haddock subdirectoryIan Lynagh2012-01-081-8/+8
| | | | This is tidier, and makes it easier to clean and install them correctly
* Fix typo in MakefileIan Lynagh2012-01-021-1/+1
| | | | | sdist output was being redirected to $src_log, which presumably evaluated to rc_log.
* Resurrect UseLibFFIForAdjustors from bitrot.PHO2011-12-081-3/+5
| | | | | | * Pass -Irts/dist/build to the C preprocessor to expose libffi headers (ffi.h and ffitarget.h) to foreign import wrappers during the building process of GHC itself. * Install libffi headers into $(ghcheaderdir) just like any other C headers. Otherwise an installed GHC can't find them when it wants to compile foreign import wrappers. * Include libffi headers in the bindist for the same reason.
* Clean includes/GHCConstants.h includes/DerivedConstants.hIan Lynagh2011-12-041-0/+5
| | | | | We no longer generate them, but they may be in existing GHC trees, so we'll keep cleaning them for a while.
* Remove unused install_headers and INSTALL_HEADERSIan Lynagh2011-12-021-8/+1
|
* Fix header installationIan Lynagh2011-12-021-0/+2
|
* MAKE_RESTARTS should never be higher than 1Ian Lynagh2011-12-021-1/+0
|
* Use touchy rather than touch when building on WindowsIan Lynagh2011-12-021-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With Windows 7 in a vitrual box VM on OS X, some very odd things happen with dates and time stamps when SSHing into cygwin. e.g. here the "Change" time is in the past: $ date; touch foo; stat foo Fri Dec 2 16:58:07 GMTST 2011 File: `foo' Size: 0 Blocks: 0 IO Block: 65536 regular empty file Device: 540aba0bh/1409989131d Inode: 562949953592977 Links: 1 Access: (0644/-rw-r--r--) Uid: ( 1000/ ian) Gid: ( 513/ None) Access: 2011-12-02 16:58:07.414457900 +0000 Modify: 2011-12-02 16:58:07.414457900 +0000 Change: 2011-12-02 16:58:03.495141800 +0000 Birth: 2011-12-02 16:57:57.731469900 +0000 And if we copy such a file, then the copy is older (as determined by the "Modify" time) than the original: $ date; touch foo; stat foo; cp foo bar; stat bar Fri Dec 2 16:59:10 GMTST 2011 File: `foo' Size: 0 Blocks: 0 IO Block: 65536 regular empty file Device: 540aba0bh/1409989131d Inode: 1407374883725128 Links: 1 Access: (0644/-rw-r--r--) Uid: ( 1000/ ian) Gid: ( 513/ None) Access: 2011-12-02 16:59:10.118457900 +0000 Modify: 2011-12-02 16:59:10.118457900 +0000 Change: 2011-12-02 16:59:06.189477700 +0000 Birth: 2011-12-02 16:57:57.731469900 +0000 File: `bar' Size: 0 Blocks: 0 IO Block: 65536 regular empty file Device: 540aba0bh/1409989131d Inode: 281474976882512 Links: 1 Access: (0644/-rw-r--r--) Uid: ( 1000/ ian) Gid: ( 513/ None) Access: 2011-12-02 16:59:06.394555800 +0000 Modify: 2011-12-02 16:59:06.394555800 +0000 Change: 2011-12-02 16:59:06.395532400 +0000 Birth: 2011-12-02 16:58:40.921899600 +0000 This means that make thinks that things are out of date when it shouldn't, so reinvokes itself repeatedly until the MAKE_RESTARTS infinite-recursion test triggers. The touchy program, like most other programs, creates files with both Modify and Change in the past, which is still a little odd, but is consistent, so doesn't break make.
* Update the sdist VCS exclusionsIan Lynagh2011-11-241-1/+1
| | | | In particular, we now ignore .git directories
* Fix sdist creationIan Lynagh2011-11-241-1/+1
|
* Replace a couple of "rm -rf" invocations with $(call removeTrees,...)Ian Lynagh2011-11-241-2/+2
|
* Improve the way we call "rm" in the build system; fixes trac #4916Ian Lynagh2011-11-191-44/+47
| | | | | | | | | | We avoid calling "rm -rf" with no file arguments; this fixes cleaning on Solaris, where that fails. We also check for suspicious arguments: anything containing "..", starting "/", or containing a "*" (you need to call $(wildcard ...) yourself now if you really want globbing). This should make things a little safer.
* build system: set dph-lifted-base to be a dph packageBen Lippmeier2011-11-121-0/+1
|
* Build system wibbles for new dph-lifted-vseg libraryBen Lippmeier2011-11-121-5/+5
| | | | The old dph-par and dph-seq CPP libraries are gone. The DPH front end libraries are now dph-lifted-*, and are only built in one way.
* 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
|