diff options
author | Simon Marlow <marlowsd@gmail.com> | 2009-05-14 10:57:04 +0000 |
---|---|---|
committer | Simon Marlow <marlowsd@gmail.com> | 2009-05-14 10:57:04 +0000 |
commit | 11e3da87d34465406147927fd89fb64b147cfaca (patch) | |
tree | 2bb4d5c952077562eec73d3fba7e48c0439f7d05 /boot-pkgs | |
parent | cd12c32de77ac18a69ed1733a558095567ec5ba8 (diff) | |
download | haskell-11e3da87d34465406147927fd89fb64b147cfaca.tar.gz |
main repeated 'make maintainer-clean' not fail
Diffstat (limited to 'boot-pkgs')
-rw-r--r-- | boot-pkgs | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/boot-pkgs b/boot-pkgs new file mode 100644 index 0000000000..4892b52054 --- /dev/null +++ b/boot-pkgs @@ -0,0 +1,39 @@ +#! /bin/sh +set -e + +libraries= + +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=`echo "$cabals" | sed -e 's#.*/##' -e 's#\.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}_dist-install_GROUP = libraries" >> $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 + echo "TOP = ${top}" >> $f/GNUmakefile + echo "include \$(TOP)/mk/sub-makefile.mk" >> $f/GNUmakefile + fi +done |