include ../Makefile.conf TARGET=raw407cxx TARGET_ELF=$(TARGET).elf TARGET_HEX=$(TARGET).hex TARGET_BIN=$(TARGET).bin TARGET_MAP=$(TARGET).map # Includes INC+= -I. INC+= -I../libs/cmsis INC+= -I../libs/STM32F4xx_HAL_Driver/Inc INC+= -I../libs/st_usb CFLAGS+=$(INC) CXXFLAGS+=$(INC) # lib objects LIB_OBJ+=$(wildcard ../libs/cmsis/*.o) LIB_OBJ+=$(wildcard ../libs/STM32F4xx_HAL_Driver/Src/*.o) LIB_OBJ+=$(wildcard ../libs/st_usb/*.o) LDFLAGS+= -Wl,-gc-sections,--print-memory-usage,-Map=$(TARGET_MAP) LDFLAGS+= -T $(LINKER_SCRIPT) C_SRC=$(wildcard *.c) C_OBJ=$(subst .c,.o,$(C_SRC)) CXX_SRC=$(wildcard *.cc) CXX_OBJ=$(subst .cc,.o,$(CXX_SRC)) OBJ=$(C_OBJ) $(CXX_OBJ) .PHONY: flash all clean flash: all $(OPENOCD) -s $(OPENOCD_SCRIPTS) -f board/$(OPENOCD_BOARD) \ -c "tcl_port disabled" \ -c "gdb_port disabled" \ -c "program $(TARGET_ELF)" \ -c reset \ -c shutdown all: $(TARGET_BIN) $(TARGET_HEX) $(TARGET_BIN): $(TARGET_ELF) $(OBJCOPY) -Obinary $^ $@ $(TARGET_HEX): $(TARGET_ELF) $(OBJCOPY) -Oihex $^ $@ $(TARGET_ELF): $(OBJ) $(LD) $(CXXFLAGS) $(LDFLAGS) $(OBJ) $(LIB_OBJ) -o $(TARGET_ELF) clean: rm -vf $(OBJ) rm -vf $(TARGET_ELF) rm -vf $(TARGET_HEX) rm -vf $(TARGET_BIN) rm -vf $(TARGET_MAP)