summaryrefslogtreecommitdiff
path: root/ghc/ghc.mk
Commit message (Collapse)AuthorAgeFilesLines
* Add more modes to mkDerivedConstantsIan Lynagh2012-09-131-3/+10
| | | | We now generate a platformConstants file that we can read at runtime.
* make sure to remove the right link before calling 'ln -s' (could we use 'ln ↵Gabor Greif2012-08-301-2/+2
| | | | -sf'?)
* Fix building with devel snapshotsIan Lynagh2012-03-171-0/+9
|
* tyopsGabor Greif2012-02-271-1/+1
|
* Improve support for cross-compilationSimon Marlow2012-01-301-2/+6
| | | | Patchset from Stephen Blackheath <stephen.blackheath@ipwnstudios.com>
* Time handling overhaulSimon Marlow2011-11-251-2/+5
| | | | | | | | | | | | | | | | | | | | | Terminology cleanup: the type "Ticks" has been renamed "Time", which is an StgWord64 in units of TIME_RESOLUTION (currently nanoseconds). The terminology "tick" is now used consistently to mean the interval between timer signals. The ticker now always ticks in realtime (actually CLOCK_MONOTONIC if we have it). Before it used CPU time in the non-threaded RTS and realtime in the threaded RTS, but I've discovered that the CPU timer has terrible resolution (at least on Linux) and isn't much use for profiling. So now we always use realtime. This should also fix The default tick interval is now 10ms, except when profiling where we drop it to 1ms. This gives more accurate profiles without affecting runtime too much (<1%). Lots of cleanups - the resolution of Time is now in one place only (Rts.h) rather than having calculations that depend on the resolution scattered all over the RTS. I hope I found them all.
* Improve the way we call "rm" in the build system; fixes trac #4916Ian Lynagh2011-11-191-2/+2
| | | | | | | | | | 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.
* Remove an old "ToDo" commentIan Lynagh2011-09-131-1/+0
|
* sanitise naming of package listsSimon Marlow2011-08-051-1/+1
| | | | | | | | | | | | | | | 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
* Follow Cabal reorganisation, and improve build system a littleIan Lynagh2011-06-231-0/+1
|
* Rename "extra-gcc-opts" to "settings", and start generalising itIan Lynagh2011-04-211-5/+5
|
* Make the compiler depend on unlit existingIan Lynagh2011-04-201-11/+13
| | | | | Fixes an unreg build failure. I've also now made these sorts of dependencies order-only.
* Remove dead code, now that -fvia-c is a no-opIan Lynagh2011-04-041-3/+3
|
* Fix ghci in stage3Ian Lynagh2011-01-231-5/+1
|
* Manually control more of the Cabal flags for the compiler and ghc packagesIan Lynagh2011-01-211-0/+8
| | | | | | For some reason the Windows HEAD builder has started thinking the ghci flag should be on in stage 1. This should fix it, and generally make things a little more resilient.
* Remove some hardcoded makefile settingsIan Lynagh2011-01-211-19/+0
| | | | | Now that we used cabal to configure the ghc-bin package they are no longer needed.
* Handle dependencies of programs on libraries correctlyIan Lynagh2011-01-161-5/+0
|
* Remove some flags that are redundant now GHC gets configured by CabalIan Lynagh2011-01-161-10/+0
|
* Change some HC_OPTS var handlingIan Lynagh2011-01-161-19/+21
| | | | In particular, this means ghc gets built with -rtsopt, -threaded, etc again.
* Remove some unnecessary workaroundsIan Lynagh2011-01-161-9/+0
| | | | | We can now rely on cross-package deps working properly, as we require GHC 6.12.
* Build system improvementsIan Lynagh2011-01-151-2/+2
| | | | | | | | | 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.
* the 'stage=0' trick to disable all compiler builds stopped working; fix itSimon Marlow2010-05-201-8/+7
|
* add the proper library dependencies for GhcProfiled=YESSimon Marlow2010-05-061-0/+5
|
* Add $(GhcDynamic) knob, set to YES to get stage2 linked with -dynamicSimon Marlow2010-04-281-0/+5
| | | | | | | | | | Default currently NO. Validate passed with GhcDynamic=YES on x86/Linux here. The compiler is currently slower on x86 when linked -dynamic, because the GC inner loop has been adversely affected by -fPIC, I'm looking into how to fix it.
* Fix "make 2"Ian Lynagh2010-04-271-0/+7
| | | | | The new Makefile logic was enabling the stage 1 rules when stage=2, so "make 2" was rebuilding stage 1.
* Make sure all the clean rules are always includedIan Lynagh2010-04-241-11/+6
| | | | In particular, this fixes a problem where stage3 bits weren't being cleaned
* Eliminate mkdependCIan Lynagh2009-12-091-3/+11
| | | | We now just call gcc to get the dependencies directly
* Tweak how shell wrappers are builtIan Lynagh2009-11-071-1/+1
|
* ghc-stage2 is now renamed to ghc when it is installedIan Lynagh2009-11-071-0/+6
| | | | This means that we get the right program name in error messages etc.
* Make installation on *nix work for paths with spaces in their nameIan Lynagh2009-11-051-2/+2
| | | | | | This means we can remove some conditional stuff from the Makefiles, and means the testsuite doesn't have to work out whether or not it's on Windows.
* Make a mingw tree from mingw tarballsIan Lynagh2009-10-231-3/+3
|
* move hschooks.c to ghc/, and enable itSimon Marlow2009-09-111-0/+4
|
* Fix some makefile logic, and remove the now unused *_USE_BOOT_LIBS varsIan Lynagh2009-09-111-1/+0
|
* make GhcProfiled work, and add a "prof" flavour to build.mkSimon Marlow2009-07-011-2/+3
| | | | | | | | | | Building a profiled GHC is as simple as adding GhcLibWays += p GhcProfiled = YES to your build.mk and saying 'make'. Then you have a profiled inplace/bin/ghc-stage2.
* Unquote a $(LN_S) in ghc/ghc.mkIan Lynagh2009-05-301-1/+1
|
* Quote commands that we run, so they work if there are space in their pathsIan Lynagh2009-05-301-5/+5
| | | | | I've also added some missing $s to some makefiles. These aren't technically necessary, but it's nice to be consistent.
* Bootstrapping fixesIan Lynagh2009-05-171-1/+2
|
* Bootstrapping fixesIan Lynagh2009-05-161-3/+13
|
* Fix building without GHCiIan Lynagh2009-05-031-1/+4
|
* FIX build: add dependencies on ghc_boot_platform.hSimon Marlow2009-04-301-0/+5
|
* Don't actually build ghc itself with -dynamicDuncan Coutts2009-04-291-4/+0
| | | | | | | For now, with --enable-shared we'll build the libs shared, but ghc itself will still be statically linked. In any case, we would want to be able to build it both ways so it's easy to test both.
* Do not link ghc stage1 using -threaded, only for stage2 or 3Duncan Coutts2009-04-281-1/+2
| | | | | We link stage1 using the bootstrapping compiler and there's no guarantee that it has working support for threaded
* Use haskeline, rather than editline, for line editing in ghciIan Lynagh2009-04-291-6/+14
|
* Add a header to all build system files:Simon Marlow2009-04-281-0/+12
| | | | | | | | | | | | | | # ----------------------------------------------------------------------------- # # (c) 2009 The University of Glasgow # # This file is part of the GHC build system. # # To understand how the build system works and how to modify it, see # http://hackage.haskell.org/trac/ghc/wiki/Building/Architecture # http://hackage.haskell.org/trac/ghc/wiki/Building/Modifying # # -----------------------------------------------------------------------------
* GHC new build system megapatchIan Lynagh2009-04-261-0/+127