... | ... | @@ -60,5 +60,71 @@ else |
|
|
```
|
|
|
|
|
|
|
|
|
That should get to the point of having a ghc-inplace built. Next I will figure out how to
|
|
|
using the ghc-inplace to build ghc without the .hc files. |
|
|
That should get to the point of having a ghc-inplace built.
|
|
|
|
|
|
|
|
|
NOTE: if you try to move the directory to a new location or name,
|
|
|
the inplace compiler will stop working because it has absolute paths
|
|
|
hard coded to the current location.
|
|
|
|
|
|
## Build ghc using ghc-inplace
|
|
|
|
|
|
|
|
|
(1) unroll the ghc source tarball into a new directory.
|
|
|
|
|
|
|
|
|
(2) ./configure --srcdir=. --with-ghc=/abs/path/to/ghc-inplace
|
|
|
|
|
|
|
|
|
(3) create a mk/build.mk with these two lines:
|
|
|
|
|
|
```wiki
|
|
|
GhcUnregisterised = YES
|
|
|
GhcWithNativeCodeGen = NO
|
|
|
```
|
|
|
|
|
|
|
|
|
(4) make
|
|
|
|
|
|
|
|
|
(5) make install
|
|
|
|
|
|
|
|
|
I think there may have been one other step in there somewhere...
|
|
|
|
|
|
|
|
|
This should build and install ghc. Unfortunately, the floating point
|
|
|
code will be broken.
|
|
|
|
|
|
## Run the test suite
|
|
|
|
|
|
|
|
|
(1) get the testsuite that corresponds to your release, for example:
|
|
|
|
|
|
[ http://haskell.org/ghc/dist/ghc-testsuite-6.4.2.tar.gz](http://haskell.org/ghc/dist/ghc-testsuite-6.4.2.tar.gz)
|
|
|
|
|
|
|
|
|
(2) untar it in the ghc-6.4.2 directory.
|
|
|
|
|
|
|
|
|
(3) edit mk/test.mk and change the -e config.time_prog line to:
|
|
|
|
|
|
```wiki
|
|
|
-e config.timeout_prog=\"\" \
|
|
|
```
|
|
|
|
|
|
|
|
|
I had to do this because the timeout program interacted badly with
|
|
|
the scratchbox shell causing all the tests to timeout and fail.
|
|
|
|
|
|
|
|
|
(4) cd to test/ghc-regress
|
|
|
|
|
|
|
|
|
(5) make TEST_HC=ghc fast
|
|
|
|
|
|
|
|
|
or
|
|
|
|
|
|
|
|
|
(5) make TEST_HC=ghc \# for a longer test |