... | @@ -45,8 +45,9 @@ Alternatively if you want to understand a bit more about what's going on (recomm |
... | @@ -45,8 +45,9 @@ Alternatively if you want to understand a bit more about what's going on (recomm |
|
A good `mk/build.mk` to start hacking on GHC is:
|
|
A good `mk/build.mk` to start hacking on GHC is:
|
|
|
|
|
|
```wiki
|
|
```wiki
|
|
|
|
# My build settings for hacking on stage 1
|
|
SRC_HC_OPTS = -H32m -O -fasm -Rghc-timing
|
|
SRC_HC_OPTS = -H32m -O -fasm -Rghc-timing
|
|
GhcStage1HcOpts = -O0 -DDEBUG
|
|
GhcStage1HcOpts = -O0 -DDEBUG -W
|
|
GhcLibHcOpts = -O -fgenerics
|
|
GhcLibHcOpts = -O -fgenerics
|
|
GhcLibWays =
|
|
GhcLibWays =
|
|
SplitObjs = NO
|
|
SplitObjs = NO
|
... | @@ -61,7 +62,9 @@ These options are added to the command line for all Haskell |
... | @@ -61,7 +62,9 @@ These options are added to the command line for all Haskell |
|
compilations. We turn on `-fasm`, because that halves compilation
|
|
compilations. We turn on `-fasm`, because that halves compilation
|
|
time at the expense of a few percent performance. `-Rghc-timing`
|
|
time at the expense of a few percent performance. `-Rghc-timing`
|
|
prints out a line of timing info about each compilation. It's handy
|
|
prints out a line of timing info about each compilation. It's handy
|
|
to keep an eye on.
|
|
to keep an eye on. `-W` turns on some warnings; you probably want
|
|
|
|
to tweak exactly which warnings are turned on, since GHC isn't
|
|
|
|
very warning-clean with `-W`.
|
|
</td></tr></table>
|
|
</td></tr></table>
|
|
|
|
|
|
<table><tr><th>`GhcStage1HcOpts = -O0 -DDEBUG`</th>
|
|
<table><tr><th>`GhcStage1HcOpts = -O0 -DDEBUG`</th>
|
... | | ... | |