413 kx
413 kx COMPONENT_TARGETS = $(HARDWARE_BLUE_PILL)
413 kx
413 kx include ../../../build-system/constants.mk
413 kx
413 kx # ======= __END_OF_REQUIRES__ =======
413 kx
413 kx sources = src
413 kx
413 kx SRC_DIR = $(TARGET_BUILD_DIR)/src
413 kx src_done = $(TARGET_BUILD_DIR)/.source_done
413 kx
413 kx run_gdb_script = $(TARGET_BUILD_DIR)/_run-gdb.sh
413 kx
413 kx led_target = $(TARGET_BUILD_DIR)/led.bin
413 kx
413 kx info_target = $(TARGET_BUILD_DIR)/.info-done
413 kx
413 kx USE_TARGET_DEST_DIR_SYSROOT = no
413 kx
413 kx ifeq ($(HARDWARE),$(HARDWARE_BLUE_PILL))
413 kx OPTIMIZATION_FLAGS = -O0
413 kx ARCH_FLAGS := -mthumb -mcpu=cortex-m3
413 kx endif
413 kx
413 kx BUILD_TARGETS = $(led_target) $(info_target)
413 kx
413 kx
413 kx include ../../../build-system/core.mk
413 kx
413 kx
413 kx ifeq ($(HARDWARE),$(HARDWARE_BLUE_PILL))
413 kx CFLAGS += -Wall -fno-common -ffunction-sections -fdata-sections
413 kx LDFLAGS += -Wall $(ARCH_FLAGS) -Wl,--gc-sections -nostdlib -nostartfiles
413 kx endif
413 kx
413 kx $(src_done): $(sources)
413 kx @cp -a $^ $(TARGET_BUILD_DIR)/
413 kx @touch $@
413 kx
413 kx $(led_target): $(src_done)
413 kx @( cd $(SRC_DIR)/ ; $(BUILD_ENVIRONMENT) $(MAKE) )
413 kx @cp -a $(SRC_DIR)/main.bin $@
413 kx # ======= Also copy main.elf for debuging: =======
413 kx @cp -a $(SRC_DIR)/main.elf $(TARGET_BUILD_DIR)/led.elf
413 kx # ======= Fill the Run GDB script: =======
413 kx @echo '#!/bin/sh' > $(run_gdb_script)
413 kx @echo '' >> $(run_gdb_script)
413 kx @echo 'TOOLCHAIN_PATH=$(TOOLCHAIN_PATH)' >> $(run_gdb_script)
413 kx @echo 'TARGET=$(TARGET)' >> $(run_gdb_script)
413 kx @echo 'CROSS_PREFIX=$${TOOLCHAIN_PATH}/bin/$${TARGET}-' >> $(run_gdb_script)
413 kx @echo '' >> $(run_gdb_script)
413 kx @echo '$${CROSS_PREFIX}gdb' >> $(run_gdb_script)
413 kx @chmod a+x $(run_gdb_script)
413 kx @touch $@
413 kx
413 kx $(info_target): $(led_target)
413 kx @echo "==================================="
413 kx @echo "======= Build Info: ======="
413 kx @echo "==================================="
413 kx @echo "======= CC = '$(CC)'"
413 kx @echo "======= CFLAGS = '$(CFLAGS)'"
413 kx @echo "======= LDFLAGS = '$(LDFLAGS)'"
413 kx @echo "======= ARCH_FLAGS = '$(ARCH_FLAGS)'"
413 kx @echo ""
413 kx @echo "#"
413 kx @echo "# Please find images: `basename $(led_target)` in the $(TARGET_BUILD_DIR)/ directory."
413 kx @echo "#"
413 kx @echo ""
413 kx @touch $@