X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=darcs-all;h=186771ee41a24cbf2152990d8203bd7f26811bd6;hb=e291c4cef087ba1afa6d0ff026fb37b55b209e74;hp=c711c77c4b4f3ac893c384030a5b716bcf879044;hpb=abd6576d1b73060cf9d02122e926c10b3b36ae73;p=ghc-hetmet.git diff --git a/darcs-all b/darcs-all index c711c77..186771e 100644 --- a/darcs-all +++ b/darcs-all @@ -4,19 +4,22 @@ set -e top_dirs="nofib testsuite" -default_repo_root="http://darcs.haskell.org/" +default_repo_root="http://darcs.haskell.org/ghc-6.6/" default_lib_repo_root=$default_repo_root/packages +default_extra_repo_root="http://darcs.haskell.org/" +default_extra_lib_repo_root=$default_extra_repo_root/packages + quiet=NO -function message() +message() { if [ "$quiet" = "NO" ]; then echo $* fi } -function darcsall() +darcsall() { message "== running darcs $* at the top level" darcs $* @@ -28,17 +31,17 @@ function darcsall() message "== $dir not present or not a repository; skipping" fi done - for pkg in `cat libraries/default-packages`; do + for pkg in `cat libraries/core-packages libraries/extra-packages`; do if test -d libraries/$pkg; then - echo "== running darcs $* in libraries/$pkg" + message "== running darcs $* in libraries/$pkg" darcs $* --repodir libraries/$pkg else - echo "warning: $dir doesn't seem to exist, use 'darcs-all get' to get it" + echo "warning: $pkg doesn't seem to exist, use 'darcs-all get' to get it" fi done } -function darcsget() +darcsget() { case $* in *--partial*) ;; @@ -52,7 +55,8 @@ function darcsget() esac cd libraries - for pkg in `cat default-packages`; do + + for pkg in `cat core-packages`; do if test -d $pkg; then echo "warning: $pkg already present; omitting" else @@ -61,9 +65,21 @@ function darcsget() darcs get --partial $* $repo fi done + + if test "$extra" = "YES"; then + for pkg in `cat extra-packages`; do + if test -d $pkg; then + echo "warning: $pkg already present; omitting" + else + repo=$default_extra_lib_repo_root/$pkg + message "== running darcs get --partial $* $repo" + darcs get --partial $* $repo + fi + done + fi } -if test ! -d _darcs -o ! -d ghc; then +if test ! -d _darcs -o ! -d compiler; then echo "error: darcs-all must be run from the top level of the ghc tree." exit 1; fi @@ -72,6 +88,13 @@ case $* in *-q*) quiet=YES;; esac +# --extra says we grab the extra libs with 'get'. It has no effect on +# the other commands. +extra=NO; +case $1 in + --extra) shift; extra=YES; +esac + case $1 in get) shift; darcsget $*;; # Hack around whatsnew failing if there are no changes