]> gitweb @ CieloNegro.org - pkgsrc-ghc.git/blobdiff - TODO
Update the building guide for ghc-7.4.1
[pkgsrc-ghc.git] / TODO
diff --git a/TODO b/TODO
index 1bdf6bfec78e9199c110c2ca3e2b8b2734bcb264..d4c5fdbd6c71d3f3838ea3f71d06cfa7791f8cd4 100644 (file)
--- a/TODO
+++ b/TODO
@@ -25,7 +25,6 @@ Extract the source archive and duplicate the source tree, one for
 Build some configuration files::
 
     $ cd ghc-{VERSION}-target
-    $ ln -s /bin/pwd utils/ghc-pwd/ghc-pwd
     $ ./configure --enable-hc-boot
     $ echo "INTEGER_LIBRARY = integer-simple" > mk/build.mk
     $ gmake bootstrapping-files
@@ -34,7 +33,9 @@ Build some configuration files::
 Run ``./configure`` on the host tree::
 
     $ cd ghc-{VERSION}-host
-    $ ./configure
+    $ ./configure \
+          --with-iconv-includes=/usr/pkg/include \
+          --with-iconv-libraries=/usr/pkg/lib
 
 Then create ``ghc-{VERSION}-host/mk/build.mk`` with the following
 contents::
@@ -55,6 +56,14 @@ contents::
     utils/ghc-pkg_dist-install_v_HC_OPTS += -keep-hc-files
     
     INTEGER_LIBRARY = integer-simple
+    libraries/terminfo_CONFIGURE_OPTS += \
+        --configure-option=--with-curses-includes=/usr/pkg/include \
+        --configure-option=--with-curses-libraries=/usr/pkg/lib
+
+Copy some configuration files from the ``-target`` tree::
+
+    $ cp -r ../ghc-{VERSION}-target/includes/dist-{ghcconstants,derivedconstants} includes/
+    $ cp ../ghc-{VERSION}-target/includes/ghcautoconf.h includes/
 
 Build it::
 
@@ -70,7 +79,7 @@ Create an intermediate tarball::
     $ find . -name package-data.mk >> list
     $ find . -name package.conf.d >> list
     $ find . -name package.conf.inplace >> list
-    $ echo compiler/main/Config.hs >> list
+    $ ls compiler/stage?/build/Config.hs >> list
     $ echo compiler/prelude/primops.txt >> list
     $ ls compiler/primop-*.hs-incl >> list
     $ find . -name .depend | sed -e 's/^/mkdir -p `dirname /' -e 's/$/`/' >> mkfiles
@@ -87,11 +96,13 @@ Then extract it again, in a different directory::
 Modify hard-coded paths in inplace ``.conf`` files, and then
 re-archive the HC tree::
 
-    $ sed -i.bak -e 's#'`dirname \`pwd\``'#[[GHC_SOURCE_PATH]]#g' \
+    $ gsed -i.bak \
+          -e 's#/usr/pkg#[[PREFIX]]#g' \
+          -e 's#'`dirname \`pwd\``'#[[GHC_SOURCE_PATH]]#g' \
           inplace/lib/package.conf.d/*.conf \
           */*/package-data.mk \
           */*/*/package-data.mk
     $ cd ..
-    $ tar jcf ghc-{VERSION}-boot-{PLATFORM}.tar.bz2
+    $ tar jcf ghc-{VERSION}-boot-{PLATFORM}.tar.bz2 ghc-{VERSION}
 
 Done. Upload the archive to some host and add it to the ``Makefile``.