X-Git-Url: https://git.enpas.org/?a=blobdiff_plain;f=rules.mk;h=b69769aa407ecb92fcc0898a13bc5b424d7dac4d;hb=ab6c99e0b3bd1a9e082d9be6146b7bf9f411ab60;hp=49044c8cfbf4b87a8468742d4cb8abe51d62d4d9;hpb=60004bec44cf9fc351d4fcee9063e8f64e2d03e2;p=openwrt.git diff --git a/rules.mk b/rules.mk index 49044c8cfb..b69769aa40 100644 --- 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) @@ -108,6 +117,9 @@ TARGET_CFLAGS:=$(TARGET_OPTIMIZATION)$(if $(CONFIG_DEBUG), -g3) TARGET_CPPFLAGS:=-I$(STAGING_DIR)/usr/include -I$(STAGING_DIR)/include TARGET_LDFLAGS:=-L$(STAGING_DIR)/usr/lib -L$(STAGING_DIR)/lib LIBGCC_S=$(if $(wildcard $(TOOLCHAIN_DIR)/lib/libgcc_s.so),-L$(TOOLCHAIN_DIR)/lib -lgcc_s,$(wildcard $(TOOLCHAIN_DIR)/lib/gcc/*/*/libgcc.a)) +ifdef CONFIG_USE_UCLIBC +LIBRPC=-lrpc +endif ifndef DUMP ifeq ($(CONFIG_EXTERNAL_TOOLCHAIN),) @@ -222,12 +234,6 @@ else DISABLE_IPV6:=--disable-ipv6 endif -ifeq ($(CONFIG_LARGEFILE),y) - DISABLE_LARGEFILE:= -else - DISABLE_LARGEFILE:=--disable-largefile -endif - ifeq ($(CONFIG_TAR_VERBOSITY),y) TAR_OPTIONS:=-xvf - else @@ -247,6 +253,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 +270,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