Add output specific config file
This commit is contained in:
parent
33fbd3be36
commit
9028a412ea
2 changed files with 16 additions and 21 deletions
|
@ -56,9 +56,17 @@ ifeq ($(PLATFORM),CHIBIOS)
|
||||||
OPT_OS = chibios
|
OPT_OS = chibios
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
CONFIG_H = $(KEYBOARD_PATH)/config.h
|
||||||
|
ifneq ($(SUBPROJECT),)
|
||||||
|
ifneq ("$(wildcard $(SUBPROJECT_C))","")
|
||||||
|
CONFIG_H = $(SUBPROJECT_PATH)/config.h
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
# Save the defines and includes here, so we don't include any keymap specific ones
|
# Save the defines and includes here, so we don't include any keymap specific ones
|
||||||
PROJECT_DEFS := $(OPT_DEFS)
|
PROJECT_DEFS := $(OPT_DEFS)
|
||||||
PROJECT_INC := $(VPATH) $(EXTRAINCDIRS) $(SUBPROJECT_PATH) $(KEYBOARD_PATH)
|
PROJECT_INC := $(VPATH) $(EXTRAINCDIRS) $(SUBPROJECT_PATH) $(KEYBOARD_PATH)
|
||||||
|
PROJECT_CONFIG := $(CONFIG_H)
|
||||||
|
|
||||||
MAIN_KEYMAP_PATH := $(KEYBOARD_PATH)/keymaps/$(KEYMAP)
|
MAIN_KEYMAP_PATH := $(KEYBOARD_PATH)/keymaps/$(KEYMAP)
|
||||||
MAIN_KEYMAP_C := $(MAIN_KEYMAP_PATH)/keymap.c
|
MAIN_KEYMAP_C := $(MAIN_KEYMAP_PATH)/keymap.c
|
||||||
|
@ -94,13 +102,6 @@ KEYMAP_OUTPUT := $(BUILD_DIR)/obj_$(TARGET)
|
||||||
|
|
||||||
ifneq ("$(wildcard $(KEYMAP_PATH)/config.h)","")
|
ifneq ("$(wildcard $(KEYMAP_PATH)/config.h)","")
|
||||||
CONFIG_H = $(KEYMAP_PATH)/config.h
|
CONFIG_H = $(KEYMAP_PATH)/config.h
|
||||||
else
|
|
||||||
CONFIG_H = $(KEYBOARD_PATH)/config.h
|
|
||||||
ifneq ($(SUBPROJECT),)
|
|
||||||
ifneq ("$(wildcard $(SUBPROJECT_C))","")
|
|
||||||
CONFIG_H = $(SUBPROJECT_PATH)/config.h
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# # project specific files
|
# # project specific files
|
||||||
|
@ -192,9 +193,11 @@ OUTPUTS := $(KEYMAP_OUTPUT) $(KEYBOARD_OUTPUT)
|
||||||
$(KEYMAP_OUTPUT)_SRC := $(SRC)
|
$(KEYMAP_OUTPUT)_SRC := $(SRC)
|
||||||
$(KEYMAP_OUTPUT)_DEFS := $(OPT_DEFS) -DQMK_KEYBOARD=\"$(KEYBOARD)\" -DQMK_KEYMAP=\"$(KEYMAP)\"
|
$(KEYMAP_OUTPUT)_DEFS := $(OPT_DEFS) -DQMK_KEYBOARD=\"$(KEYBOARD)\" -DQMK_KEYMAP=\"$(KEYMAP)\"
|
||||||
$(KEYMAP_OUTPUT)_INC := $(EXTRAINCDIRS) $(VPATH)
|
$(KEYMAP_OUTPUT)_INC := $(EXTRAINCDIRS) $(VPATH)
|
||||||
|
$(KEYMAP_OUTPUT)_CONFIG := $(CONFIG_H)
|
||||||
$(KEYBOARD_OUTPUT)_SRC := $(CHIBISRC)
|
$(KEYBOARD_OUTPUT)_SRC := $(CHIBISRC)
|
||||||
$(KEYBOARD_OUTPUT)_DEFS := $(PROJECT_DEFS)
|
$(KEYBOARD_OUTPUT)_DEFS := $(PROJECT_DEFS)
|
||||||
$(KEYBOARD_OUTPUT)_INC := $(PROJECT_INC)
|
$(KEYBOARD_OUTPUT)_INC := $(PROJECT_INC)
|
||||||
|
$(KEYBOARD_OUTPUT)_CONFIG := $(PROJECT_CONFIG)
|
||||||
|
|
||||||
|
|
||||||
include $(TMK_PATH)/rules.mk
|
include $(TMK_PATH)/rules.mk
|
||||||
|
|
|
@ -98,9 +98,6 @@ CFLAGS += -Wstrict-prototypes
|
||||||
#CFLAGS += -Wsign-compare
|
#CFLAGS += -Wsign-compare
|
||||||
CFLAGS += -Wa,-adhlns=$(@:%.o=%.lst)
|
CFLAGS += -Wa,-adhlns=$(@:%.o=%.lst)
|
||||||
CFLAGS += $(CSTANDARD)
|
CFLAGS += $(CSTANDARD)
|
||||||
ifdef CONFIG_H
|
|
||||||
CFLAGS += -include $(CONFIG_H)
|
|
||||||
endif
|
|
||||||
|
|
||||||
|
|
||||||
#---------------- Compiler Options C++ ----------------
|
#---------------- Compiler Options C++ ----------------
|
||||||
|
@ -124,10 +121,6 @@ CPPFLAGS += -Wundef
|
||||||
#CPPFLAGS += -Wsign-compare
|
#CPPFLAGS += -Wsign-compare
|
||||||
CPPFLAGS += -Wa,-adhlns=$(@:%.o=%.lst)
|
CPPFLAGS += -Wa,-adhlns=$(@:%.o=%.lst)
|
||||||
#CPPFLAGS += $(CSTANDARD)
|
#CPPFLAGS += $(CSTANDARD)
|
||||||
ifdef CONFIG_H
|
|
||||||
CPPFLAGS += -include $(CONFIG_H)
|
|
||||||
endif
|
|
||||||
|
|
||||||
|
|
||||||
#---------------- Assembler Options ----------------
|
#---------------- Assembler Options ----------------
|
||||||
# -Wa,...: tell GCC to pass this to the assembler.
|
# -Wa,...: tell GCC to pass this to the assembler.
|
||||||
|
@ -140,9 +133,6 @@ endif
|
||||||
# dump that will be displayed for a given single line of source input.
|
# dump that will be displayed for a given single line of source input.
|
||||||
ASFLAGS += $(ADEFS)
|
ASFLAGS += $(ADEFS)
|
||||||
ASFLAGS += -Wa,-adhlns=$(@:%.o=%.lst),-gstabs,--listing-cont-lines=100
|
ASFLAGS += -Wa,-adhlns=$(@:%.o=%.lst),-gstabs,--listing-cont-lines=100
|
||||||
ifdef CONFIG_H
|
|
||||||
ASFLAGS += -include $(CONFIG_H)
|
|
||||||
endif
|
|
||||||
|
|
||||||
#---------------- Library Options ----------------
|
#---------------- Library Options ----------------
|
||||||
# Minimalistic printf version
|
# Minimalistic printf version
|
||||||
|
@ -296,10 +286,12 @@ BEGIN = gccversion sizebefore
|
||||||
|
|
||||||
define GEN_OBJRULE
|
define GEN_OBJRULE
|
||||||
$1_INCFLAGS := $$(patsubst %,-I%,$$($1_INC))
|
$1_INCFLAGS := $$(patsubst %,-I%,$$($1_INC))
|
||||||
$1_CFLAGS = $$(ALL_CFLAGS) $$($1_DEFS) $$($1_INCFLAGS)
|
ifdef $1_CONFIG
|
||||||
$1_CPPFLAGS= $$(ALL_CPPFLAGS) $$($1_DEFS) $$($1_INCFLAGS)
|
$1_CONFIG_FLAGS += -include $$($1_CONFIG)
|
||||||
$1_ASFLAGS= $$(ALL_ASFLAGS) $$($1_DEFS) $$($1_INCFLAGS)
|
endif
|
||||||
$$(info $$($1_INCFLAGS))
|
$1_CFLAGS = $$(ALL_CFLAGS) $$($1_DEFS) $$($1_INCFLAGS) $$($1_CONFIG_FLAGS)
|
||||||
|
$1_CPPFLAGS= $$(ALL_CPPFLAGS) $$($1_DEFS) $$($1_INCFLAGS) $$($1_CONFIG_FLAGS)
|
||||||
|
$1_ASFLAGS= $$(ALL_ASFLAGS) $$($1_DEFS) $$($1_INCFLAGS) $$($1_CONFIG_FLAGS)
|
||||||
|
|
||||||
# Compile: create object files from C source files.
|
# Compile: create object files from C source files.
|
||||||
$1/%.o : %.c $1/%.d $1/cflags.txt $1/compiler.txt | $(BEGIN)
|
$1/%.o : %.c $1/%.d $1/cflags.txt $1/compiler.txt | $(BEGIN)
|
||||||
|
|
Loading…
Reference in a new issue