| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
We now generate a platformConstants file that we can read at runtime.
|
|
|
|
| |
-sf'?)
|
| |
|
| |
|
|
|
|
| |
Patchset from Stephen Blackheath <stephen.blackheath@ipwnstudios.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
| |
|
|
|
|
|
| |
Fixes an unreg build failure. I've also now made these sorts of
dependencies order-only.
|
| |
|
| |
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
Now that we used cabal to configure the ghc-bin package they are no
longer needed.
|
| |
|
| |
|
|
|
|
| |
In particular, this means ghc gets built with -rtsopt, -threaded, etc again.
|
|
|
|
|
| |
We can now rely on cross-package deps working properly, as we require
GHC 6.12.
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
The new Makefile logic was enabling the stage 1 rules when stage=2,
so "make 2" was rebuilding stage 1.
|
|
|
|
| |
In particular, this fixes a problem where stage3 bits weren't being cleaned
|
|
|
|
| |
We now just call gcc to get the dependencies directly
|
| |
|
|
|
|
| |
This means that we get the right program name in error messages etc.
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
| |
I've also added some missing $s to some makefiles. These aren't
technically necessary, but it's nice to be consistent.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
We link stage1 using the bootstrapping compiler and there's
no guarantee that it has working support for threaded
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
# -----------------------------------------------------------------------------
#
# (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
#
# -----------------------------------------------------------------------------
|
|
|