summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2012-03-23 14:10:28 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2012-03-23 14:10:28 +0000
commitbdd85a2ede796789cc19239466d5e3b06f329dc7 (patch)
treebb0b4730e39e373ffab15b1f8e1f2ed181a7486d /tools
parent322039038fc82e8a03abc7bb6d4af1c64f279f57 (diff)
tools: fix GNU stat detection to prevent it from picking up other things named "gstat" (see #4571)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31059 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'tools')
-rw-r--r--tools/Makefile11
1 files changed, 10 insertions, 1 deletions
diff --git a/tools/Makefile b/tools/Makefile
index 4fe91f665..48cfbbcc5 100644
--- a/tools/Makefile
+++ b/tools/Makefile
@@ -101,10 +101,19 @@ $(STAGING_DIR_HOST)/bin/$(1): $(STAGING_DIR)/.prepared
endef
endif
+$(STAGING_DIR_HOST)/bin/stat: $(STAGING_DIR)/.prepared
+ @if stat --version > /dev/null 2>&1; then \
+ ln -s `which stat` $@; \
+ elif gstat --version > /dev/null 2>&1; then \
+ ln -s `which gstat` $@; \
+ else \
+ echo "GNU stat not found"; \
+ false; \
+ fi
+
$(eval $(call PrepareCommand,find,gfind find))
$(eval $(call PrepareCommand,md5sum,md5sum $(SCRIPT_DIR)/md5sum))
$(eval $(call PrepareCommand,cp,gcp cp))
-$(eval $(call PrepareCommand,stat,gstat stat))
$(eval $(call PrepareCommand,seq,gseq seq))
$(curdir)/cmddeps = $(patsubst %,$(STAGING_DIR_HOST)/bin/%,find md5sum cp stat seq)