slightly update rule.mk for IAR
This commit is contained in:
@@ -48,15 +48,17 @@ CFLAGS += $(addprefix -I,$(INC))
|
|||||||
|
|
||||||
ifdef USE_IAR
|
ifdef USE_IAR
|
||||||
|
|
||||||
IAR_CFLAGS += $(CFLAGS) -e --debug --silent
|
|
||||||
IAR_LDFLAGS += --config $(TOP)/$(IAR_LD_FILE)
|
|
||||||
IAR_ASFLAGS += $(CFLAGS) -S
|
|
||||||
|
|
||||||
SRC_S += $(IAR_SRC_S)
|
SRC_S += $(IAR_SRC_S)
|
||||||
|
|
||||||
|
ASFLAGS := $(CFLAGS) $(IAR_ASFLAGS) $(ASFLAGS) -S
|
||||||
|
IAR_LDFLAGS += --config $(TOP)/$(IAR_LD_FILE)
|
||||||
|
CFLAGS += $(IAR_CFLAGS) -e --debug --silent
|
||||||
|
|
||||||
else
|
else
|
||||||
|
|
||||||
CFLAGS += $(GCC_CFLAGS)
|
SRC_S += $(GCC_SRC_S)
|
||||||
|
|
||||||
|
CFLAGS += $(GCC_CFLAGS) -MD
|
||||||
|
|
||||||
# LTO makes it difficult to analyze map file for optimizing size purpose
|
# LTO makes it difficult to analyze map file for optimizing size purpose
|
||||||
# We will run this option in ci
|
# We will run this option in ci
|
||||||
@@ -76,8 +78,6 @@ endif
|
|||||||
|
|
||||||
ASFLAGS += $(CFLAGS)
|
ASFLAGS += $(CFLAGS)
|
||||||
|
|
||||||
SRC_S += $(GCC_SRC_S)
|
|
||||||
|
|
||||||
endif # USE_IAR
|
endif # USE_IAR
|
||||||
|
|
||||||
# Verbose mode
|
# Verbose mode
|
||||||
@@ -120,9 +120,23 @@ vpath %.c . $(TOP)
|
|||||||
vpath %.s . $(TOP)
|
vpath %.s . $(TOP)
|
||||||
vpath %.S . $(TOP)
|
vpath %.S . $(TOP)
|
||||||
|
|
||||||
|
# Compile .c file
|
||||||
|
$(BUILD)/obj/%.o: %.c
|
||||||
|
@echo CC $(notdir $@)
|
||||||
|
@$(CC) $(CFLAGS) -c -o $@ $<
|
||||||
|
|
||||||
|
# ASM sources lower case .s
|
||||||
|
$(BUILD)/obj/%_asm.o: %.s
|
||||||
|
@echo AS $(notdir $@)
|
||||||
|
@$(AS) $(ASFLAGS) -c -o $@ $<
|
||||||
|
|
||||||
|
# ASM sources upper case .S
|
||||||
|
$(BUILD)/obj/%_asm.o: %.S
|
||||||
|
@echo AS $(notdir $@)
|
||||||
|
@$(AS) $(ASFLAGS) -c -o $@ $<
|
||||||
|
|
||||||
ifndef USE_IAR
|
ifndef USE_IAR
|
||||||
# GCC based compiler
|
# GCC based compiler
|
||||||
|
|
||||||
$(BUILD)/$(PROJECT).bin: $(BUILD)/$(PROJECT).elf
|
$(BUILD)/$(PROJECT).bin: $(BUILD)/$(PROJECT).elf
|
||||||
@echo CREATE $@
|
@echo CREATE $@
|
||||||
@$(OBJCOPY) -O binary $^ $@
|
@$(OBJCOPY) -O binary $^ $@
|
||||||
@@ -135,24 +149,9 @@ $(BUILD)/$(PROJECT).elf: $(OBJ)
|
|||||||
@echo LINK $@
|
@echo LINK $@
|
||||||
@$(LD) -o $@ $(LDFLAGS) $^ -Wl,--start-group $(LIBS) -Wl,--end-group
|
@$(LD) -o $@ $(LDFLAGS) $^ -Wl,--start-group $(LIBS) -Wl,--end-group
|
||||||
|
|
||||||
$(BUILD)/obj/%.o: %.c
|
|
||||||
@echo CC $(notdir $@)
|
|
||||||
@$(CC) $(CFLAGS) -c -MD -o $@ $<
|
|
||||||
|
|
||||||
# ASM sources lower case .s
|
|
||||||
$(BUILD)/obj/%_asm.o: %.s
|
|
||||||
@echo AS $(notdir $@)
|
|
||||||
@$(AS) $(ASFLAGS) -c -o $@ $<
|
|
||||||
|
|
||||||
# ASM sources upper case .S
|
|
||||||
$(BUILD)/obj/%_asm.o: %.S
|
|
||||||
@echo AS $(notdir $@)
|
|
||||||
@$(AS) $(ASFLAGS) -c -o $@ $<
|
|
||||||
|
|
||||||
else
|
else
|
||||||
|
|
||||||
# IAR Compiler
|
# IAR Compiler
|
||||||
|
|
||||||
$(BUILD)/$(PROJECT).bin: $(BUILD)/$(PROJECT).elf
|
$(BUILD)/$(PROJECT).bin: $(BUILD)/$(PROJECT).elf
|
||||||
@echo CREATE $@
|
@echo CREATE $@
|
||||||
@$(OBJCOPY) --silent --bin $^ $@
|
@$(OBJCOPY) --silent --bin $^ $@
|
||||||
@@ -163,22 +162,7 @@ $(BUILD)/$(PROJECT).hex: $(BUILD)/$(PROJECT).elf
|
|||||||
|
|
||||||
$(BUILD)/$(PROJECT).elf: $(OBJ)
|
$(BUILD)/$(PROJECT).elf: $(OBJ)
|
||||||
@echo LINK $@
|
@echo LINK $@
|
||||||
@$(LD) $(IAR_LDFLAGS) $^ -o $@
|
@$(LD) -o $@ $(IAR_LDFLAGS) $^
|
||||||
|
|
||||||
$(BUILD)/obj/%.o: %.c
|
|
||||||
@echo CC $(notdir $@)
|
|
||||||
@$(CC) $(IAR_CFLAGS) -c -o $@ $<
|
|
||||||
|
|
||||||
# ASM sources lower case .s
|
|
||||||
$(BUILD)/obj/%_asm.o: %.s
|
|
||||||
@echo AS $(notdir $@)
|
|
||||||
@$(AS) $(IAR_ASFLAGS) -c -o $@ $<
|
|
||||||
|
|
||||||
# ASM sources upper case .S
|
|
||||||
$(BUILD)/obj/%_asm.o: %.S
|
|
||||||
@echo AS $(notdir $@)
|
|
||||||
@$(AS) $(IAR_ASFLAGS) -c -o $@ $<
|
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# UF2 generation, iMXRT need to strip to text only before conversion
|
# UF2 generation, iMXRT need to strip to text only before conversion
|
||||||
|
Reference in New Issue
Block a user