X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=darcs-all;h=106eb8f5ccbff273959b72aedea9b9fd3ced1e0a;hp=4ad146a4680a378c5f9c7e9a4b14d7f3eaf85b8f;hb=b3bc4006fef38476d2e66d99879d5adc71d5aa6a;hpb=8c90ee687f0751a86601415b54b61e120529b1ad diff --git a/darcs-all b/darcs-all index 4ad146a..106eb8f 100644 --- a/darcs-all +++ b/darcs-all @@ -257,7 +257,7 @@ sub darcsget { $path = "$repo_base/$remotepath"; } - if (($tag eq "-") || defined($tags{$tag})) { + if ($tags{$tag} eq 1) { if (-d $localpath) { warning("$localpath already present; omitting"); } @@ -290,6 +290,12 @@ sub main { die "error: darcs-all must be run from the top level of the ghc tree." } + $tags{"-"} = 1; + $tags{"dph"} = 1; + $tags{"nofib"} = 0; + $tags{"testsuite"} = 0; + $tags{"extra"} = 0; + while ($#_ ne -1) { my $arg = shift; # We handle -q here as well as lower down as we need to skip over it @@ -311,16 +317,35 @@ sub main { elsif ($arg eq "--nofib") { $tags{"nofib"} = 1; } + elsif ($arg eq "--no-nofib") { + $tags{"nofib"} = 0; + } # --testsuite tells get to also grab the testsuite repo. # It has no effect on the other commands. elsif ($arg eq "--testsuite") { $tags{"testsuite"} = 1; } + elsif ($arg eq "--no-testsuite") { + $tags{"testsuite"} = 0; + } + # --dph tells get to also grab the dph repo. + # It has no effect on the other commands. + elsif ($arg eq "--dph") { + $tags{"dph"} = 1; + } + elsif ($arg eq "--no-dph") { + $tags{"dph"} = 0; + } # --extralibs tells get to also grab the extra repos. # It has no effect on the other commands. elsif ($arg eq "--extra") { $tags{"extra"} = 1; } + elsif ($arg eq "--no-extra") { + $tags{"extra"} = 0; + } + # Use --checked-out if the remote repos are a checked-out tree, + # rather than the master trees. elsif ($arg eq "--checked-out") { $checked_out_flag = 1; } @@ -341,7 +366,7 @@ sub main { if ($command eq "get") { darcsget @_; } - if ($command eq "upstreampull") { + elsif ($command eq "upstreampull") { shift; darcsupstreampull @_; }