detect whether the find command supports -L or -follow
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@8002 3c298f89-4303-0410-b956-a3cf2f4a3e73
--- a/include/host.mk
+++ b/include/host.mk
@@ -5,7 +5,7 @@
# See /LICENSE for more information.
#
-include $(TMP_DIR)/.host.mk
+-include $(TMP_DIR)/.host.mk
export TAR
@@ -29,6 +29,11 @@
[ -n "$$TAR" -a -x "$$TAR" ] || TAR=`which tar 2>/dev/null`; \
echo "TAR:=$$TAR" >> $@; \
echo "BASH:=$(shell which bash)" >> $@; \
+ if find -L /tmp -maxdepth 0 >/dev/null 2>/dev/null; then \
+ echo 'FIND_L=find -L $$(1)' >>$@; \
+ else \
+ echo 'FIND_L=find $$(1) -follow' >> $@; \
+ fi; \
)
endif
--- a/include/scan.mk
+++ b/include/scan.mk
@@ -1,6 +1,9 @@
include $(TOPDIR)/include/verbose.mk
+TMP_DIR:=$(TOPDIR)/tmp
all: tmp/.$(SCAN_TARGET)
+
+include $(TOPDIR)/include/host.mk
SCAN_TARGET ?= packageinfo
SCAN_NAME ?= package
@@ -31,7 +34,7 @@
$(FILELIST):
rm -f tmp/info/.files-$(SCAN_TARGET)-*
- find -follow $(SCAN_DIR) $(SCAN_EXTRA) -mindepth 1 $(if $(SCAN_DEPTH),-maxdepth $(SCAN_DEPTH)) -name Makefile | xargs grep -HE 'call (Build/DefaultTargets|KernelPackage|Build(Package|Kernel))' | sed -e 's#^$(SCAN_DIR)/##' -e 's#/Makefile:.*##' | uniq > $@
+ $(call FIND_L, $(SCAN_DIR)) $(SCAN_EXTRA) -mindepth 1 $(if $(SCAN_DEPTH),-maxdepth $(SCAN_DEPTH)) -name Makefile | xargs grep -HE 'call (Build/DefaultTargets|KernelPackage|Build(Package|Kernel))' | sed -e 's#^$(SCAN_DIR)/##' -e 's#/Makefile:.*##' | uniq > $@
tmp/info/.files-$(SCAN_TARGET).mk: $(FILELIST)
( \