• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1##########################################################################################################################
2# File automatically-generated by tool: [projectgenerator] version: [3.13.0-B3] date: [Fri Apr 30 08:31:16 CST 2021]
3##########################################################################################################################
4
5# ------------------------------------------------
6# Generic Makefile (based on gcc)
7#
8# ChangeLog :
9#	2017-02-10 - Several enhancements + project update mode
10#   2015-07-22 - first version
11# ------------------------------------------------
12
13######################################
14# target
15######################################
16TARGET = cst85f01
17
18
19#######################################
20# paths
21#######################################
22# Build path
23BUILD_DIR = $(OUT_DIR_PATH)
24
25#######################################
26# toolchain paths
27#######################################
28# Toolchain path
29ifneq ($(TOOLCHAIN_DIR_PATH), )
30GCC_PATH = $(TOOLCHAIN_DIR_PATH)
31endif
32
33#######################################
34# binaries
35#######################################
36PREFIX = arm-none-eabi-
37# The gcc compiler bin path can be either defined in make command via GCC_PATH variable (> make GCC_PATH=xxx)
38# either it can be added to the PATH environment variable.
39ifneq ($(GCC_PATH), )
40CC = $(GCC_PATH)/$(PREFIX)gcc
41AS = $(GCC_PATH)/$(PREFIX)gcc -x assembler-with-cpp
42CP = $(GCC_PATH)/$(PREFIX)objcopy
43SZ = $(GCC_PATH)/$(PREFIX)size
44else
45CC = $(PREFIX)gcc
46AS = $(PREFIX)gcc -x assembler-with-cpp
47CP = $(PREFIX)objcopy
48SZ = $(PREFIX)size
49endif
50HEX = $(CP) -O ihex
51BIN = $(CP) -O binary -S
52
53#######################################
54# CFLAGS
55#######################################
56# cpu
57CPU = -mcpu=cortex-m4
58
59# fpu
60FPU = -mfpu=fpv4-sp-d16
61
62# float-abi
63#FLOAT-ABI = -mfloat-abi=hard
64FLOAT-ABI = -mfloat-abi=softfp
65# mcu
66MCU = $(CPU) -mthumb $(FPU) $(FLOAT-ABI)
67
68
69#######################################
70# LDFLAGS
71#######################################
72# link script
73LDSCRIPT = cst85f01.ld
74
75# libraries. remove(-lkernel -larch -lcpup -lexchook -lpm -lutils -lhdf_core -lhdf_osal_lite -lhdf_hcs -lsample_driver)
76STATIC_LIB = -lcore -lsec_static -lstartup_boot  -lhandler -lbootstrap
77STATIC_LIB_DIR = -L$(BUILD_DIR)/libs
78LIBS = -lc -lm -lnosys  ./libs/libdrv.a
79LIBDIR =
80#LDFLAGS = $(MCU) -specs=nano.specs -T$(LDSCRIPT) $(LIBDIR) $(LIBS) -Wl,-Map=$(BUILD_DIR)/$(TARGET).map,--cref -Wl,--gc-sections
81LDFLAGS = $(MCU) -specs=nosys.specs -T$(LDSCRIPT) $(LIBDIR) $(LIBS) -Wl,-Map=$(BUILD_DIR)/$(TARGET).map,--cref -Wl,--gc-sections
82
83# default action: build all
84all: $(BUILD_DIR)/$(TARGET).elf $(BUILD_DIR)/$(TARGET).hex $(BUILD_DIR)/$(TARGET).bin
85
86
87#######################################
88# build the application
89#######################################
90$(BUILD_DIR)/$(TARGET).elf: Makefile
91	$(CC) $(STATIC_LIB_DIR) -Wl,--whole-archive -Wl,--start-group $(STATIC_LIB) -Wl,--end-group -Wl,--no-whole-archive $(LDFLAGS) -o $@
92	$(SZ) $@
93
94$(BUILD_DIR)/%.hex: $(BUILD_DIR)/%.elf | $(BUILD_DIR)
95	$(HEX) $< $@
96
97$(BUILD_DIR)/%.bin: $(BUILD_DIR)/%.elf | $(BUILD_DIR)
98	$(BIN) $< $@
99
100$(BUILD_DIR):
101	mkdir -p $@
102
103#######################################
104# clean up
105#######################################
106clean:
107	-rm -fR $(BUILD_DIR)
108
109# *** EOF ***
110