Remove javaGen; part of trac #2243
[ghc-hetmet.git] / darcs-all
index 59e29e1..046e589 100644 (file)
--- a/darcs-all
+++ b/darcs-all
@@ -14,11 +14,16 @@ my $defaultrepo_lib;
 if ($defaultrepo =~ /:/) {
     # HTTP or SSH
     $defaultrepo_base = $defaultrepo;
-    $defaultrepo_base =~ s#/ghc$##;
+    $defaultrepo_base =~ s#/[^/]+/?$##;
     $defaultrepo_lib = "$defaultrepo_base/packages";
 }
 elsif ($defaultrepo =~ /^\//) {
-    # Local filesystem (assumes a checked-out tree):
+    # Local filesystem, absolute path (assumes a checked-out tree):
+    $defaultrepo_base = $defaultrepo;
+    $defaultrepo_lib = "$defaultrepo/libraries";
+}
+elsif ($defaultrepo =~ /^..\//) {
+    # Local filesystem, relative path (assumes a checked-out tree):
     $defaultrepo_base = $defaultrepo;
     $defaultrepo_lib = "$defaultrepo/libraries";
 }
@@ -26,27 +31,27 @@ else {
     die "Couldn't work out defaultrepo";
 }
 
-my $verbose = 1;
+my $verbose = 2;
 my $ignore_failure = 0;
 
 # --extra says we grab the extra libs with 'get'.  It has no effect on
 # the other commands.
 my $extra = 0;
-# --complete gets passed onto darcs get
-my $complete = 0;
 # --nofib/--testsuite tell get to also grab the respective repos.
 # They have no effect on the other commands.
 my $nofib = 0;
 my $testsuite = 0;
 
 sub message {
-    if ($verbose) {
+    if ($verbose >= 2) {
         print "@_\n";
     }
 }
 
 sub warning {
-    print "warning: @_\n";
+    if ($verbose >= 1) {
+        print "warning: @_\n";
+    }
 }
 
 sub darcs {
@@ -57,6 +62,7 @@ sub darcs {
 }
 
 sub darcsall {
+    my @packages;
     darcs @_;
     for my $dir (@top_dirs) {
         if (-d $dir && -d "$dir/_darcs") {
@@ -66,12 +72,25 @@ sub darcsall {
             message "== $dir not present or not a repository; skipping";
         }
     }
-    for my $pkg (`cat libraries/core-packages libraries/extra-packages`) {
-        chomp $pkg;
-        if (-d "libraries/$pkg") {
-            darcs (@_, "--repodir", "libraries/$pkg");
+    for my $path (<libraries/*/_darcs>) {
+        chomp $path;
+        if ($path =~ m#/(.*)/#) {
+            my $pkg = $1;
+            # bootstrapping.* are just copies of other repos; we don't
+            # update them directly.
+            if ($pkg !~ /bootstrapping/) {
+                darcs (@_, "--repodir", "libraries/$pkg");
+            }
         }
         else {
+            die "that pattern can't fail!";
+        }
+    }
+    @packages = `cat libraries/boot-packages`;
+    # @packages = `cat libraries/boot-packages libraries/extra-packages`;
+    for my $pkg (@packages) {
+        chomp $pkg;
+        if (! -d "libraries/$pkg") {
             warning("$pkg doesn't exist, use 'darcs-all get' to get it");
         }
     }
@@ -92,7 +111,7 @@ sub darcsgetpackage {
 
 sub darcsget {
     my $r_flags;
-    if (! $complete && ! grep /(?:--complete|--partial)/, @_) {
+    if (! grep /(?:--complete|--partial)/, @_) {
         warning("adding --partial, to override use --complete");
         $r_flags = [@_, "--partial"];
     }
@@ -107,10 +126,10 @@ sub darcsget {
 
     my @packages;
     if ($extra) {
-        @packages = `cat core-packages extra-packages`;
+        @packages = `cat boot-packages extra-packages`;
     }
     else {
-        @packages = `cat core-packages`;
+        @packages = `cat boot-packages`;
     }
 
     for my $pkg (@packages) {
@@ -129,10 +148,10 @@ sub main {
         # We handle -q here as well as lower down as we need to skip over it
         # if it comes before the darcs command
         if ($arg eq "-q") {
-            $verbose = 0;
+            $verbose = 1;
         }
-        elsif ($arg eq "--complete") {
-            $complete = 1;
+        elsif ($arg eq "-s") {
+            $verbose = 0;
         }
         elsif ($arg eq "--extra") {
             $extra = 1;
@@ -146,7 +165,7 @@ sub main {
         else {
             unshift @_, $arg;
             if (grep /^-q$/, @_) {
-                $verbose = 0;
+                $verbose = 1;
             }
             last;
         }