diff --git a/firmware/Makefile b/firmware/Makefile index b147b0d7..684f223a 100644 --- a/firmware/Makefile +++ b/firmware/Makefile @@ -59,11 +59,6 @@ OUTPUT = $(BOARD)-$(APP) BIN = bin OBJ = obj/$(BOARD) -# Disable stack protector for code in small ROM regions (OS#5081) -ifeq ($(BOARD)-$(APP), qmod-dfu) -CFLAGS_EXTRA ?= -fno-stack-protector -endif - #------------------------------------------------------------------------------- # Tools #------------------------------------------------------------------------------- @@ -183,7 +178,14 @@ CFLAGS += -ffunction-sections -g $(OPTIMIZATION) $(INCLUDES) -D$(CHIP) -DTRACE_L CFLAGS += -DGIT_VERSION=\"$(GIT_VERSION)\" CFLAGS += -DBOARD=\"$(BOARD)\" -DBOARD_$(BOARD) CFLAGS += -DAPPLICATION=\"$(APP)\" -DAPPLICATION_$(APP) -CFLAGS += $(CFLAGS_EXTRA) + +# Disable stack protector by default (OS#5081) +ifeq ($(STACK_PROTECTOR), 1) +CFLAGS += -fstack-protector +else +CFLAGS += -fno-stack-protector +endif + ASFLAGS = -mcpu=cortex-m3 -mthumb -Wall -g $(OPTIMIZATION) $(INCLUDES) -D$(CHIP) -D__ASSEMBLY__ LDFLAGS = -mcpu=cortex-m3 -mthumb -Wl,--cref -Wl,--check-sections -Wl,--gc-sections -Wl,--entry=ResetException -Wl,--unresolved-symbols=report-all -Wl,--warn-common -Wl,--warn-section-align -Wl,--print-memory-usage -Wl,--no-undefined $(LIB) #LD_OPTIONAL=-Wl,--print-gc-sections -Wl,--stats