From 6b16111d35e8e4c2a32cf9a3c7c855efb32d5b1b Mon Sep 17 00:00:00 2001 From: Simon Marlow Date: Fri, 13 Jan 2006 16:32:07 +0000 Subject: [PATCH] improvements to darcs-all - get from the same repo as the main GHC repo, if that was a local filesystem - allow darcs whatsnew - use --repodir if possible --- darcs-all | 35 ++++++++++++++++++----------- libraries/default-packages | 52 ++++++++++++++++++++++---------------------- 2 files changed, 48 insertions(+), 39 deletions(-) diff --git a/darcs-all b/darcs-all index 9906495..544d9cc 100644 --- a/darcs-all +++ b/darcs-all @@ -2,22 +2,25 @@ top_dirs="nofib testsuite" +default_repo_root="http://darcs.haskell.org/" +default_lib_repo_root=$default_repo_root/packages + function darcsall() { + echo == running darcs $* at the top level + darcs $* for dir in $top_dirs; do if test -d $dir -a -d $dir/_darcs; then echo "== running darcs $* in $dir" - (cd $dir && darcs $*) + darcs $* --repodir $dir else echo "== $dir not present or not a repository; skipping" fi done - cd libraries - for repo in `cat default-packages`; do - dir=`basename $repo` - if test -d $dir; then - echo "== running darcs $* in libraries/$dir" - (cd $dir && darcs $*) + for pkg in `cat libraries/default-packages`; do + if test -d libraries/$pkg; then + echo "== 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" fi @@ -31,11 +34,18 @@ function darcsget() *) echo "warning: adding --partial, to override use --complete" esac + repo_root=`cat _darcs/prefs/defaultrepo` + case $repo_root in + /*) lib_repos=$repo_root/libraries;; + *) lib_repos=$default_lib_repo_root;; + esac + cd libraries - for repo in `cat default-packages`; do - if test -d `basename $repo`; then - echo "warning: `basename $repo` already present; omitting" + for pkg in `cat default-packages`; do + if test -d $pkg; then + echo "warning: $pkg already present; omitting" else + repo=$lib_repos/$pkg echo "== running darcs get --partial $* $repo" darcs get --partial $* $repo fi @@ -48,8 +58,7 @@ if test ! -d _darcs -o ! -d ghc; then fi case $1 in - push) darcsall $*;; - pull) darcsall $*;; + push|pull|wh*) darcsall $*;; get) shift; darcsget $*;; - *) echo "syntax: ./darcs-all push|pull"; exit 1;; + *) echo "syntax: ./darcs-all push|pull|whatsnew|get"; exit 1;; esac diff --git a/libraries/default-packages b/libraries/default-packages index 1dbefe1..fb3a61a 100644 --- a/libraries/default-packages +++ b/libraries/default-packages @@ -1,26 +1,26 @@ -http://darcs.haskell.org/packages/Cabal -http://darcs.haskell.org/packages/ALUT -http://darcs.haskell.org/packages/GLUT -http://darcs.haskell.org/packages/HGL -http://darcs.haskell.org/packages/HUnit -http://darcs.haskell.org/packages/HaXml -http://darcs.haskell.org/packages/Japi -http://darcs.haskell.org/packages/ObjectIO -http://darcs.haskell.org/packages/OpenAL -http://darcs.haskell.org/packages/OpenGL -http://darcs.haskell.org/packages/QuickCheck -http://darcs.haskell.org/packages/Win32 -http://darcs.haskell.org/packages/X11 -http://darcs.haskell.org/packages/arrows -http://darcs.haskell.org/packages/base -http://darcs.haskell.org/packages/fgl -http://darcs.haskell.org/packages/haskell-src -http://darcs.haskell.org/packages/haskell98 -http://darcs.haskell.org/packages/monads -http://darcs.haskell.org/packages/mtl -http://darcs.haskell.org/packages/network -http://darcs.haskell.org/packages/parsec -http://darcs.haskell.org/packages/readline -http://darcs.haskell.org/packages/stm -http://darcs.haskell.org/packages/template-haskell -http://darcs.haskell.org/packages/unix +Cabal +ALUT +GLUT +HGL +HUnit +HaXml +Japi +ObjectIO +OpenAL +OpenGL +QuickCheck +Win32 +X11 +arrows +base +fgl +haskell-src +haskell98 +monads +mtl +network +parsec +readline +stm +template-haskell +unix -- 1.7.10.4