summaryrefslogtreecommitdiff
path: root/push-all
diff options
context:
space:
mode:
authorIan Lynagh <igloo@earth.li>2007-06-19 20:05:46 +0000
committerIan Lynagh <igloo@earth.li>2007-06-19 20:05:46 +0000
commitf4ab409231b5b904b9a25c07ac4e849c4a9be887 (patch)
tree84c720ebbae03f97975bd15cae734a87546c33b5 /push-all
parent8434073f08470b4447436e865e25f5fe31852c23 (diff)
downloadhaskell-f4ab409231b5b904b9a25c07ac4e849c4a9be887.tar.gz
Add --core-only flag to push-all
Diffstat (limited to 'push-all')
-rw-r--r--push-all10
1 files changed, 9 insertions, 1 deletions
diff --git a/push-all b/push-all
index 9ade0d4330..014c4b0cb0 100644
--- a/push-all
+++ b/push-all
@@ -11,6 +11,8 @@ 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;
sub message {
if ($verbose) {
@@ -45,7 +47,10 @@ sub pushall {
message "== $dir not present or not a repository; skipping";
}
}
- for my $pkg (`cat libraries/core-packages libraries/extra-packages`) {
+ my $library_lists = $core_only
+ ? "libraries/core-packages"
+ : "libraries/core-packages libraries/extra-packages";
+ for my $pkg (`cat $library_lists`) {
chomp $pkg;
$dir = "libraries/$pkg";
if (-d "$dir") {
@@ -73,6 +78,9 @@ sub main {
elsif ($arg eq "--checked-out") {
$checked_out = 1;
}
+ elsif ($arg eq "--core-only") {
+ $core_only = 1;
+ }
else {
$reporoot = $arg;
if (grep /^-q$/, @_) {