[brcm63xx] give some credits to Tanguy Bouzeloc in the spi driver
[openwrt/svn-archive/archive.git] / rules.mk
index c0004d808832ae3a2c85a7c94efe44a5affac1c9..2e66bea4cfeba80e2b01bca636a2b6732c13b9d4 100644 (file)
--- a/rules.mk
+++ b/rules.mk
@@ -28,6 +28,10 @@ merge=$(subst $(space),,$(1))
 confvar=$(call merge,$(foreach v,$(1),$(if $($(v)),y,n)))
 strip_last=$(patsubst %.$(lastword $(subst .,$(space),$(1))),%,$(1))
 
+define sep
+
+endef
+
 _SINGLE=export MAKEFLAGS=$(space);
 CFLAGS:=
 ARCH:=$(subst i486,i386,$(subst i586,i386,$(subst i686,i386,$(call qstrip,$(CONFIG_ARCH)))))
@@ -47,6 +51,8 @@ else
   FPIC:=-fpic
 endif
 
+HOST_FPIC:=-fPIC
+
 ARCH_SUFFIX:=
 ifneq ($(findstring -mips32r2,$(TARGET_OPTIMIZATION)),)
   ARCH_SUFFIX:=_r2
@@ -63,6 +69,9 @@ endif
 ifneq ($(findstring -march=armv5te,$(TARGET_OPTIMIZATION)),)
   ARCH_SUFFIX:=_v5te
 endif
+ifdef CONFIG_HAS_SPE_FPU
+  TARGET_SUFFIX:=$(TARGET_SUFFIX)spe
+endif
 
 DL_DIR:=$(if $(call qstrip,$(CONFIG_DOWNLOAD_FOLDER)),$(call qstrip,$(CONFIG_DOWNLOAD_FOLDER)),$(TOPDIR)/dl)
 BIN_DIR:=$(TOPDIR)/bin/$(BOARD)
@@ -160,7 +169,7 @@ HOST_LDFLAGS:=-L$(STAGING_DIR_HOST)/lib
 
 TARGET_CC:=$(TARGET_CROSS)gcc
 TARGET_CXX:=$(if $(CONFIG_INSTALL_LIBSTDCPP),$(TARGET_CROSS)g++,no)
-PATCH:=$(SCRIPT_DIR)/patch-kernel.sh
+KPATCH:=$(SCRIPT_DIR)/patch-kernel.sh
 SED:=$(STAGING_DIR_HOST)/bin/sed -i -e
 CP:=cp -fpR
 LN:=ln -sf
@@ -247,6 +256,16 @@ define include_mk
 $(eval -include $(if $(DUMP),,$(STAGING_DIR)/mk/$(strip $(1))))
 endef
 
+# Execute commands under flock
+# $(1) => The shell expression.
+# $(2) => The lock name. If not given, the global lock will be used.
+define locked
+       SHELL= \
+       $(STAGING_DIR_HOST)/bin/flock \
+               $(TMP_DIR)/.$(if $(2),$(strip $(2)),global).flock \
+               -c '$(subst ','\'',$(1))'
+endef
+
 # file extension
 ext=$(word $(words $(subst ., ,$(1))),$(subst ., ,$(1)))
 
@@ -254,4 +273,16 @@ all:
 FORCE: ;
 .PHONY: FORCE
 
+val.%:
+       @$(if $(filter undefined,$(origin $*)),\
+               echo "$* undefined" >&2, \
+               echo '$(subst ','"'"',$($*))' \
+       )
+
+var.%:
+       @$(if $(filter undefined,$(origin $*)),\
+               echo "$* undefined" >&2, \
+               echo "$*='"'$(subst ','"'\"'\"'"',$($*))'"'" \
+       )
+
 endif #__rules_inc