projects
/
openwrt.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
parse the a/g mode setting in /etc/config/wireless when setting up hostapd (instead...
[openwrt.git]
/
scripts
/
feeds
diff --git
a/scripts/feeds
b/scripts/feeds
index
b5abfc8
..
099468a
100755
(executable)
--- a/
scripts/feeds
+++ b/
scripts/feeds
@@
-11,6
+11,10
@@
use Cwd 'abs_path';
chdir "$FindBin::Bin/..";
$ENV{TOPDIR}=getcwd();
chdir "$FindBin::Bin/..";
$ENV{TOPDIR}=getcwd();
+my $mk=`which gmake`; # select the right 'make' program
+chomp($mk); # trim trailing newline
+$mk or $mk = "make"; # default to 'make'
+
my @feeds;
my %build_packages;
my %installed;
my @feeds;
my %build_packages;
my %installed;
@@
-19,7
+23,9
@@
sub parse_config() {
my $line = 0;
my %name;
my $line = 0;
my %name;
- open FEEDS, "feeds.conf";
+ open FEEDS, "feeds.conf" or
+ open FEEDS, "feeds.conf.default" or
+ die "Unable to open feeds configuration";
while (<FEEDS>) {
chomp;
s/#.+$//;
while (<FEEDS>) {
chomp;
s/#.+$//;
@@
-48,8
+54,8
@@
sub update_index($)
-d "./feeds/$name.tmp" or mkdir "./feeds/$name.tmp" or return 1;
-d "./feeds/$name.tmp/info" or mkdir "./feeds/$name.tmp/info" or return 1;
-d "./feeds/$name.tmp" or mkdir "./feeds/$name.tmp" or return 1;
-d "./feeds/$name.tmp/info" or mkdir "./feeds/$name.tmp/info" or return 1;
- system("
make
-s prepare-mk TMP_DIR=\"$ENV{TOPDIR}/feeds/$name.tmp\"");
- system("
make
-s -f include/scan.mk IS_TTY=1 SCAN_TARGET=\"packageinfo\" SCAN_DIR=\"feeds/$name\" SCAN_NAME=\"package\" SCAN_DEPS=\"$ENV{TOPDIR}/include/package*.mk\" SCAN_DEPTH=4 SCAN_EXTRA=\"\" TMP_DIR=\"$ENV{TOPDIR}/feeds/$name.tmp\"");
+ system("
$mk
-s prepare-mk TMP_DIR=\"$ENV{TOPDIR}/feeds/$name.tmp\"");
+ system("
$mk
-s -f include/scan.mk IS_TTY=1 SCAN_TARGET=\"packageinfo\" SCAN_DIR=\"feeds/$name\" SCAN_NAME=\"package\" SCAN_DEPS=\"$ENV{TOPDIR}/include/package*.mk\" SCAN_DEPTH=4 SCAN_EXTRA=\"\" TMP_DIR=\"$ENV{TOPDIR}/feeds/$name.tmp\"");
system("ln -sf $name.tmp/.packageinfo ./feeds/$name.index");
return 0;
system("ln -sf $name.tmp/.packageinfo ./feeds/$name.index");
return 0;
@@
-96,7
+102,7
@@
sub update_git($$) {
system("GIT_DIR=./feeds/$name/.git git pull") == 0 or return 1;
} else {
system("rm -rf \"./feeds/$name\"");
system("GIT_DIR=./feeds/$name/.git git pull") == 0 or return 1;
} else {
system("rm -rf \"./feeds/$name\"");
- system("git
-
clone --depth 1 $src ./feeds/$name") == 0 or return 1;
+ system("git
clone --depth 1 $src ./feeds/$name") == 0 or return 1;
}
return 0;
}
return 0;
@@
-117,7
+123,7
@@
sub get_feed($) {
}
sub get_installed() {
}
sub get_installed() {
- system("
make
-s prepare-tmpinfo");
+ system("
$mk
-s prepare-tmpinfo");
clear_packages();
parse_package_metadata("./tmp/.packageinfo");
%installed = %package;
clear_packages();
parse_package_metadata("./tmp/.packageinfo");
%installed = %package;
@@
-280,7
+286,7
@@
sub install_package {
};
# install all dependencies
};
# install all dependencies
- foreach my $vpkg (@{$srcpackage{$src}}) {
+ foreach my $vpkg (@{$srcpackage{$src}}
, $pkg
) {
foreach my $dep (@{$vpkg->{depends}}, @{$vpkg->{builddepends}}) {
next if $dep =~ /@/;
$dep =~ s/^\+//;
foreach my $dep (@{$vpkg->{depends}}, @{$vpkg->{builddepends}}) {
next if $dep =~ /@/;
$dep =~ s/^\+//;
@@
-299,9
+305,9
@@
sub refresh_config {
# refresh the config
if ($default) {
# refresh the config
if ($default) {
- system("
make
oldconfig CONFDEFAULT=\"$default\" Config.in >/dev/null 2>/dev/null");
+ system("
$mk
oldconfig CONFDEFAULT=\"$default\" Config.in >/dev/null 2>/dev/null");
} else {
} else {
- system("
make
defconfig Config.in >/dev/null 2>/dev/null");
+ system("
$mk
defconfig Config.in >/dev/null 2>/dev/null");
}
}
}
}
This page took
0.023964 seconds
and
4
git commands to generate.