aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/download.pl
diff options
context:
space:
mode:
authorTim Yardley <lst@openwrt.org>2007-01-24 22:38:02 +0000
committerTim Yardley <lst@openwrt.org>2007-01-24 22:38:02 +0000
commit52d3bc0ccfd851f615305def34bb99bf27e37fdc (patch)
treeb75a9ff5ea24abd417a271b1ebda653838d0cb40 /scripts/download.pl
parentf3e292ce1bf840a9492240ae697f6df6c3d65b89 (diff)
downloadmaster-187ad058-52d3bc0ccfd851f615305def34bb99bf27e37fdc.tar.gz
master-187ad058-52d3bc0ccfd851f615305def34bb99bf27e37fdc.tar.bz2
master-187ad058-52d3bc0ccfd851f615305def34bb99bf27e37fdc.zip
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 859e6c8ba6..51340097d8 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