summaryrefslogtreecommitdiffstats
path: root/scripts/download.pl
diff options
context:
space:
mode:
authorpavlov <pavlov@3c298f89-4303-0410-b956-a3cf2f4a3e73>2007-01-24 22:38:02 +0000
committerpavlov <pavlov@3c298f89-4303-0410-b956-a3cf2f4a3e73>2007-01-24 22:38:02 +0000
commit347bed4dabce6d686b7dd9ee3a5bd3b6a9d8c9e1 (patch)
treeb75a9ff5ea24abd417a271b1ebda653838d0cb40 /scripts/download.pl
parentc198a6ed9e5b14137e98f5fce031ab78227b381b (diff)
add functionality to provide local mirrors for development purposes.
* any URLs in scripts/localmirrors will be prepended to the mirror list * this facilitates local builds and recompilations * will also be useful for the buildbot and auto-build of images git-svn-id: svn://svn.openwrt.org/openwrt/trunk@6192 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'scripts/download.pl')
-rwxr-xr-xscripts/download.pl16
1 files changed, 16 insertions, 0 deletions
diff --git a/scripts/download.pl b/scripts/download.pl
index 859e6c8ba..51340097d 100755
--- a/scripts/download.pl
+++ b/scripts/download.pl
@@ -8,16 +8,30 @@
use strict;
use warnings;
+use File::Basename;
my $target = shift @ARGV;
my $filename = shift @ARGV;
my $md5sum = shift @ARGV;
+my $scriptdir = dirname($0);
my @mirrors;
my $ok;
@ARGV > 0 or die "Syntax: $0 <target dir> <filename> <md5sum> <mirror> [<mirror> ...]\n";
+sub localmirrors {
+
+ my @mlist;
+ open LM, "$scriptdir/localmirrors" or return "";
+ while (<LM>) {
+ chomp $_;
+ push @mlist, $_;
+ }
+
+ return @mlist;
+}
+
sub which($) {
my $prog = shift;
my $res = `which $prog`;
@@ -78,6 +92,8 @@ sub cleanup
unlink "$target/$filename.md5sum";
}
+@mirrors = localmirrors();
+
foreach my $mirror (@ARGV) {
if ($mirror =~ /^\@SF\/(.+)$/) {
# give sourceforge a few more tries, because it redirects to different mirrors