[make] put all of the global and local build switches in config.h files
-now if you change any interesting build flags, the appropriate sources will be rebuilt
This commit is contained in:
@@ -7,6 +7,10 @@ MKDIR = if [ ! -d $(dir $@) ]; then mkdir -p $(dir $@); fi
|
|||||||
# prepends the BUILD_DIR var to each item in the list
|
# prepends the BUILD_DIR var to each item in the list
|
||||||
TOBUILDDIR = $(addprefix $(BUILDDIR)/,$(1))
|
TOBUILDDIR = $(addprefix $(BUILDDIR)/,$(1))
|
||||||
|
|
||||||
|
COMMA := ,
|
||||||
|
SPACE :=
|
||||||
|
SPACE +=
|
||||||
|
|
||||||
# generate a header file at $1 with an expanded variable in $2
|
# generate a header file at $1 with an expanded variable in $2
|
||||||
define MAKECONFIGHEADER
|
define MAKECONFIGHEADER
|
||||||
@$(MKDIR)
|
@$(MKDIR)
|
||||||
|
|||||||
@@ -47,6 +47,15 @@ MODULES += $(MODULE_DEPS)
|
|||||||
#$(info MODULE_DEPS $(MODULE_DEPS))
|
#$(info MODULE_DEPS $(MODULE_DEPS))
|
||||||
#$(info MODULE_SRCS $(MODULE_SRCS))
|
#$(info MODULE_SRCS $(MODULE_SRCS))
|
||||||
|
|
||||||
|
MODULE_DEFINES += MODULE_COMPILEFLAGS=\"$(subst $(SPACE),_,$(MODULE_COMPILEFLAGS))\"
|
||||||
|
MODULE_DEFINES += MODULE_CFLAGS=\"$(subst $(SPACE),_,$(MODULE_CFLAGS))\"
|
||||||
|
MODULE_DEFINES += MODULE_CPPFLAGS=\"$(subst $(SPACE),_,$(MODULE_CPPFLAGS))\"
|
||||||
|
MODULE_DEFINES += MODULE_ASMFLAGS=\"$(subst $(SPACE),_,$(MODULE_ASMFLAGS))\"
|
||||||
|
MODULE_DEFINES += MODULE_LDFLAGS=\"$(subst $(SPACE),_,$(MODULE_LDFLAGS))\"
|
||||||
|
MODULE_DEFINES += MODULE_OPTFLAGS=\"$(subst $(SPACE),_,$(MODULE_OPTFLAGS))\"
|
||||||
|
MODULE_DEFINES += MODULE_INCLUDES=\"$(subst $(SPACE),_,$(MODULE_INCLUDES))\"
|
||||||
|
MODULE_DEFINES += MODULE_DEPS=\"$(subst $(SPACE),_,$(MODULE_DEPS))\"
|
||||||
|
|
||||||
# generate a per-module config.h file
|
# generate a per-module config.h file
|
||||||
MODULE_CONFIG := $(MODULE_BUILDDIR)/module_config.h
|
MODULE_CONFIG := $(MODULE_BUILDDIR)/module_config.h
|
||||||
|
|
||||||
|
|||||||
9
makefile
9
makefile
@@ -141,6 +141,15 @@ CPPFILT := $(TOOLCHAIN_PREFIX)c++filt
|
|||||||
SIZE := $(TOOLCHAIN_PREFIX)size
|
SIZE := $(TOOLCHAIN_PREFIX)size
|
||||||
NM := $(TOOLCHAIN_PREFIX)nm
|
NM := $(TOOLCHAIN_PREFIX)nm
|
||||||
|
|
||||||
|
# put all of the global build flags in config.h to force a rebuild if any change
|
||||||
|
DEFINES += INCLUDES=\"$(subst $(SPACE),_,$(INCLUDES))\"
|
||||||
|
DEFINES += GLOBAL_COMPILEFLAGS=\"$(subst $(SPACE),_,$(GLOBAL_COMPILEFLAGS))\"
|
||||||
|
DEFINES += GLOBAL_OPTFLAGS=\"$(subst $(SPACE),_,$(GLOBAL_OPTFLAGS))\"
|
||||||
|
DEFINES += GLOBAL_CFLAGS=\"$(subst $(SPACE),_,$(GLOBAL_CFLAGS))\"
|
||||||
|
DEFINES += GLOBAL_CPPFLAGS=\"$(subst $(SPACE),_,$(GLOBAL_CPPFLAGS))\"
|
||||||
|
DEFINES += GLOBAL_ASMFLAGS=\"$(subst $(SPACE),_,$(GLOBAL_ASMFLAGS))\"
|
||||||
|
DEFINES += GLOBAL_LDFLAGS=\"$(subst $(SPACE),_,$(GLOBAL_LDFLAGS))\"
|
||||||
|
|
||||||
# comment out or override if you want to see the full output of each command
|
# comment out or override if you want to see the full output of each command
|
||||||
NOECHO ?= @
|
NOECHO ?= @
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user