summaryrefslogtreecommitdiffstats
path: root/scripts/feeds
diff options
context:
space:
mode:
authorflorian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73>2008-08-08 21:30:08 +0000
committerflorian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73>2008-08-08 21:30:08 +0000
commit822443a35ae092fdacd70843eba89ffa5145855a (patch)
tree4b22b94f76c013c9cb9347197b13f9683ae8392e /scripts/feeds
parent098b7bcc01b0f1ea14607222e104950d26fcd899 (diff)
scripts/feeds calls 'make' irrespective of the platform it is
running on. The attached patch changes the code to use gmake if available (which should cover non-linux platforms, and is the same logic used to adapt other programs in include/host.mk) (#3867) Signed-off-by: Luigi Rizzo <rizzo@iet.unipi.it> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@12246 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'scripts/feeds')
-rwxr-xr-xscripts/feeds14
1 files changed, 9 insertions, 5 deletions
diff --git a/scripts/feeds b/scripts/feeds
index b5abfc8ce..6b09f7ee4 100755
--- a/scripts/feeds
+++ b/scripts/feeds
@@ -11,6 +11,10 @@ use Cwd 'abs_path';
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;
@@ -48,8 +52,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;
- 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;
@@ -117,7 +121,7 @@ sub get_feed($) {
}
sub get_installed() {
- system("make -s prepare-tmpinfo");
+ system("$mk -s prepare-tmpinfo");
clear_packages();
parse_package_metadata("./tmp/.packageinfo");
%installed = %package;
@@ -299,9 +303,9 @@ sub refresh_config {
# 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 {
- system("make defconfig Config.in >/dev/null 2>/dev/null");
+ system("$mk defconfig Config.in >/dev/null 2>/dev/null");
}
}