X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=darcs-all;h=9defa0cc503dffadbc00329274db71bf628b7a71;hp=69445d04d38f80d33753f14915f4ae109b400343;hb=d1487e87d786983dbdcdb389b665df58265e34d0;hpb=5dd95594637dbb6b03bc675c032a1bf430c4b0bf diff --git a/darcs-all b/darcs-all index 69445d0..9defa0c 100644 --- a/darcs-all +++ b/darcs-all @@ -112,14 +112,6 @@ sub warning { } } -sub download { - my ($from, $to) = @_; - - my @cmd = ("wget", $from, "-O", $to); - message "== running @cmd"; - system @cmd; -} - sub darcs { message "== running darcs @_"; system ("darcs", @_) == 0 @@ -172,10 +164,6 @@ sub darcsall { die "Bad line: $_"; } } - - if ($_[0] eq "pull" || $_[0] eq "pul") { - &sync_tarballs(); - } } sub darcsget { @@ -227,63 +215,6 @@ sub darcsget { die "Bad line: $_"; } } - - &sync_tarballs(); -} - -sub sync_tarballs { - my $localpath; - my $localdirectory; - my $localfilename; - my $actualpath; - my $actualfilename; - my $remotepath; - my $path; - my @tarballs; - my %localtarballs; - my ($repo_base, $checked_out_tree) = getrepo(); - - message "== Syncing tarballs"; - - open IN, "< tarballs" or die "Can't open packages file"; - @tarballs = ; - close IN; - - foreach (@tarballs) { - chomp; - if (m@^([^# ]+)/([^#/ ]+) +([^ ]+)$@) { - $localdirectory = $1; - $localfilename = $2; - $remotepath = $3; - $localpath = "$localdirectory/$localfilename"; - - $localtarballs{$localdirectory}{$localfilename} = 1; - - if (! -e $localpath) { - if ($checked_out_tree) { - $path = "$repo_base/$localpath"; - } - else { - $path = "$repo_base/$remotepath"; - } - &download($path, $localpath); - } - } - elsif (! /^(#.*)?$/) { - die "Bad line: $_"; - } - } - - foreach $localdirectory (keys %localtarballs) { - FILE: foreach $actualpath (glob "$localdirectory/*.tar.gz $localdirectory/*.tar.bz2") { - $actualfilename = $actualpath; - $actualfilename =~ s#.*/##; - if (! defined($localtarballs{$localdirectory}{$actualfilename})) { - message "== Deleting $actualpath"; - unlink $actualpath; - } - } - } } sub main { @@ -364,6 +295,21 @@ version of bytestring will be used from a tarball instead. EOF } } + + message "== Checking for unpulled tarball patches"; + if ((system "darcs annotate --match 'hash 20090930200358-3fd76-cab3bf4a0a9e3902eb6dd41f71712ad3a6a9bcd1' > /dev/null 2> /dev/null") == 0) { + print <