Make TcGenDeriv warning-free
[ghc-hetmet.git] / push-all
index 014c4b0..3f3515e 100644 (file)
--- a/push-all
+++ b/push-all
@@ -11,8 +11,10 @@ my $ignore_failure = 0;
 
 # --checked-out says we are pushing to a checked out tree
 my $checked_out = 0;
-# --core-only says we only want to push corelibs, not extralibs
-my $core_only = 0;
+# --boot-only says we only want to push bootlibs, not extralibs
+my $boot_only = 0;
+# --push or --pull?
+my $push_pull = "push";
 
 sub message {
     if ($verbose) {
@@ -32,7 +34,7 @@ sub darcs {
 }
 
 sub darcs_push {
-    darcs ("push", "--no-set-default", @_);
+    darcs ($push_pull, "--no-set-default", @_);
 }
 
 sub pushall {
@@ -47,9 +49,9 @@ sub pushall {
             message "== $dir not present or not a repository; skipping";
         }
     }
-    my $library_lists = $core_only
-                      ? "libraries/core-packages"
-                      : "libraries/core-packages libraries/extra-packages";
+    my $library_lists = $boot_only
+                      ? "libraries/boot-packages"
+                      : "libraries/boot-packages libraries/extra-packages";
     for my $pkg (`cat $library_lists`) {
         chomp $pkg;
         $dir = "libraries/$pkg";
@@ -75,11 +77,20 @@ sub main {
             if ($arg eq "-q") {
                 $verbose = 0;
             }
+            elsif ($arg eq "--ignore-failure") {
+                $ignore_failure = 1;
+            }
             elsif ($arg eq "--checked-out") {
                 $checked_out = 1;
             }
-            elsif ($arg eq "--core-only") {
-                $core_only = 1;
+            elsif ($arg eq "--boot-only") {
+                $boot_only = 1;
+            }
+            elsif ($arg eq "--push") {
+                $push_pull = "push";
+            }
+            elsif ($arg eq "--pull") {
+                $push_pull = "pull";
             }
             else {
                 $reporoot = $arg;