Add dph to build system; patch from Roman Leshchinskiy
authorIan Lynagh <igloo@earth.li>
Sun, 3 May 2009 10:40:05 +0000 (10:40 +0000)
committerIan Lynagh <igloo@earth.li>
Sun, 3 May 2009 10:40:05 +0000 (10:40 +0000)
boot
ghc.mk

diff --git a/boot b/boot
index d586348..2c2d88b 100644 (file)
--- a/boot
+++ b/boot
@@ -31,19 +31,38 @@ do
     fi
 done
 
     fi
 done
 
+libraries=
+
 for f in libraries/*; do
 for f in libraries/*; do
+  pkgs=$f/ghc-packages
+  if test -f $pkgs; then
+    for p in `cat $pkgs`; do
+      libraries="$libraries $f/$p"
+    done
+  else
+    libraries="$libraries $f"
+  fi
+done
+
+for f in $libraries; do
    dir=`basename $f`
    cabals=`echo $f/*.cabal`
    if test -f $cabals; then
        echo "Creating $f/ghc.mk"
        rm -f $f/ghc.mk
        pkg=`basename ${cabals%.cabal}`
    dir=`basename $f`
    cabals=`echo $f/*.cabal`
    if test -f $cabals; then
        echo "Creating $f/ghc.mk"
        rm -f $f/ghc.mk
        pkg=`basename ${cabals%.cabal}`
+       if test -f $f/ghc-stage; then
+           stage=`cat $f/ghc-stage`
+       else
+           stage=1
+       fi
+       top=`echo $f | sed "s/[^/]*/../g"`
        echo "${f}_PACKAGE = ${pkg}" >> $f/ghc.mk
        echo "${f}_PACKAGE = ${pkg}" >> $f/ghc.mk
-       echo "\$(eval \$(call build-package,${f},dist-install,1))" >> $f/ghc.mk
+       echo "\$(eval \$(call build-package,${f},dist-install,${stage}))" >> $f/ghc.mk
        rm -f $f/GNUmakefile
        echo "Creating $f/GNUmakefile"
        echo "dir = ${f}" >> $f/GNUmakefile
        rm -f $f/GNUmakefile
        echo "Creating $f/GNUmakefile"
        echo "dir = ${f}" >> $f/GNUmakefile
-       echo "TOP = ../.." >> $f/GNUmakefile
+       echo "TOP = ${top}" >> $f/GNUmakefile
        echo "include \$(TOP)/mk/sub-makefile.mk" >> $f/GNUmakefile
    fi
 done
        echo "include \$(TOP)/mk/sub-makefile.mk" >> $f/GNUmakefile
    fi
 done
diff --git a/ghc.mk b/ghc.mk
index 0bfca27..1c86407 100644 (file)
--- a/ghc.mk
+++ b/ghc.mk
@@ -316,6 +316,16 @@ endif
 
 PACKAGES += haskeline
 
 
 PACKAGES += haskeline
 
+ifneq "$(wildcard libraries/dph)" ""
+PACKAGES += \
+       dph/dph-base \
+       dph/dph-prim-interface \
+       dph/dph-prim-seq \
+       dph/dph-prim-par \
+       dph/dph-seq \
+       dph/dph-par
+endif
+
 BOOT_PKGS = Cabal hpc extensible-exceptions
 
 # The actual .a and .so/.dll files: needed for dependencies.
 BOOT_PKGS = Cabal hpc extensible-exceptions
 
 # The actual .a and .so/.dll files: needed for dependencies.
@@ -515,6 +525,9 @@ $(foreach lib,$(PACKAGES),$(eval \
   libraries/$(lib)_dist-install_DISABLE = YES))
 endif
 
   libraries/$(lib)_dist-install_DISABLE = YES))
 endif
 
+ifneq "$(wildcard libraries/dph)" ""
+include libraries/dph/ghc.mk
+endif
 include $(patsubst %, %/ghc.mk, $(BUILD_DIRS))
 
 # We need -fno-warn-deprecated-flags to avoid failure with -Werror
 include $(patsubst %, %/ghc.mk, $(BUILD_DIRS))
 
 # We need -fno-warn-deprecated-flags to avoid failure with -Werror