summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/host.mk4
-rw-r--r--include/prereq-build.mk9
-rw-r--r--rules.mk1
-rwxr-xr-xscripts/make-ipkg-dir.sh2
4 files changed, 15 insertions, 1 deletions
diff --git a/include/host.mk b/include/host.mk
index abcf045d0..3a5fd9683 100644
--- a/include/host.mk
+++ b/include/host.mk
@@ -7,6 +7,8 @@
include $(TOPDIR)/.host.mk
+export TAR
+
$(TOPDIR)/.host.mk: $(INCLUDE_DIR)/host.mk
@( \
HOST_OS=`uname`; \
@@ -23,5 +25,7 @@ $(TOPDIR)/.host.mk: $(INCLUDE_DIR)/host.mk
if tar --version 2>&1 | grep 'GNU' >/dev/null; then \
echo "TAR_WILDCARDS:=--wildcards" >> $@; \
fi; \
+ TAR=`which gtar tar | head -n 1`; \
+ echo "TAR:=$$TAR" >> $@; \
)
diff --git a/include/prereq-build.mk b/include/prereq-build.mk
index a2e5469fa..d6396af8e 100644
--- a/include/prereq-build.mk
+++ b/include/prereq-build.mk
@@ -8,6 +8,7 @@
include $(TOPDIR)/rules.mk
TMP_DIR:=$(TOPDIR)/tmp
include $(INCLUDE_DIR)/prereq.mk
+include $(INCLUDE_DIR)/host.mk
define Require/non-root
[ "$$(shell whoami)" != "root" ]
@@ -94,3 +95,11 @@ $(eval $(call RequireCommand,patch, \
$(eval $(call RequireCommand,perl, \
Please install perl. \
))
+
+define Require/gnutar
+ $(TAR) --version 2>&1 | grep GNU > /dev/null
+endef
+
+$(eval $(call Require,gnutar, \
+ Please install GNU tar. \
+))
diff --git a/rules.mk b/rules.mk
index b9859dbd3..73611029a 100644
--- a/rules.mk
+++ b/rules.mk
@@ -6,6 +6,7 @@
#
-include $(TOPDIR)/.config
+include $(TOPDIR)/include/host.mk
include $(TOPDIR)/include/verbose.mk
export SHELL=/usr/bin/env bash -c '. $(TOPDIR)/include/shell.sh; eval "$$2"' --
diff --git a/scripts/make-ipkg-dir.sh b/scripts/make-ipkg-dir.sh
index 236cb6feb..902a4b526 100755
--- a/scripts/make-ipkg-dir.sh
+++ b/scripts/make-ipkg-dir.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/bin/sh
BASE=http://svn.openwrt.org/openwrt/trunk/openwrt
TARGET=$1
CONTROL=$2