build: introduce PKG_BUILD_FLAGS and move PKG_IREMAP to it
PKG_BUILD_FLAGS is a new variable for package Makefiles similar to PKG_FLAGS. It's a whitespace separated list of flags to control various aspects of how a package is build. The build system and/or .config defines the default for each, but every package has the means to override it. Using $flagname enables a flag, no-$flagname disables it. Start with PKG_IREMAP as "iremap". That's easy as no package here nor in any package feed uses it. The default is unchanged: enabled. Packages can opt-out via: PKG_BUILD_FLAGS:=no-iremap (Not that any should, just to illustrate how to use it) Signed-off-by: Andre Heider <a.heider@gmail.com>
This commit is contained in:
parent
eb564690c9
commit
0a44c579a1
@ -12,7 +12,6 @@ PKG_BUILD_DIR ?= $(BUILD_DIR)/$(if $(BUILD_VARIANT),$(PKG_NAME)-$(BUILD_VARIANT)
|
|||||||
PKG_INSTALL_DIR ?= $(PKG_BUILD_DIR)/ipkg-install
|
PKG_INSTALL_DIR ?= $(PKG_BUILD_DIR)/ipkg-install
|
||||||
PKG_BUILD_PARALLEL ?=
|
PKG_BUILD_PARALLEL ?=
|
||||||
PKG_USE_MIPS16 ?= 1
|
PKG_USE_MIPS16 ?= 1
|
||||||
PKG_IREMAP ?= 1
|
|
||||||
PKG_SKIP_DOWNLOAD=$(USE_SOURCE_DIR)$(USE_GIT_TREE)$(USE_GIT_SRC_CHECKOUT)
|
PKG_SKIP_DOWNLOAD=$(USE_SOURCE_DIR)$(USE_GIT_TREE)$(USE_GIT_SRC_CHECKOUT)
|
||||||
|
|
||||||
MAKE_J:=$(if $(MAKE_JOBSERVER),$(MAKE_JOBSERVER) $(if $(filter 3.% 4.0 4.1,$(MAKE_VERSION)),-j))
|
MAKE_J:=$(if $(MAKE_JOBSERVER),$(MAKE_JOBSERVER) $(if $(filter 3.% 4.0 4.1,$(MAKE_VERSION)),-j))
|
||||||
@ -30,7 +29,20 @@ ifdef CONFIG_USE_MIPS16
|
|||||||
TARGET_CFLAGS += -mips16 -minterlink-mips16
|
TARGET_CFLAGS += -mips16 -minterlink-mips16
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
ifeq ($(strip $(PKG_IREMAP)),1)
|
|
||||||
|
PKG_BUILD_FLAGS?=
|
||||||
|
|
||||||
|
__unknown_flags=$(filter-out no-iremap,$(PKG_BUILD_FLAGS))
|
||||||
|
ifneq ($(__unknown_flags),)
|
||||||
|
$(error unknown PKG_BUILD_FLAGS: $(__unknown_flags))
|
||||||
|
endif
|
||||||
|
|
||||||
|
# $1=flagname, $2=default (0/1)
|
||||||
|
define pkg_build_flag
|
||||||
|
$(if $(filter no-$(1),$(PKG_BUILD_FLAGS)),0,$(if $(filter $(1),$(PKG_BUILD_FLAGS)),1,$(2)))
|
||||||
|
endef
|
||||||
|
|
||||||
|
ifeq ($(call pkg_build_flag,iremap,1),1)
|
||||||
IREMAP_CFLAGS = $(call iremap,$(PKG_BUILD_DIR),$(notdir $(PKG_BUILD_DIR)))
|
IREMAP_CFLAGS = $(call iremap,$(PKG_BUILD_DIR),$(notdir $(PKG_BUILD_DIR)))
|
||||||
TARGET_CFLAGS += $(IREMAP_CFLAGS)
|
TARGET_CFLAGS += $(IREMAP_CFLAGS)
|
||||||
endif
|
endif
|
||||||
|
Loading…
x
Reference in New Issue
Block a user