]> mj.ucw.cz Git - home-hw.git/blob - Makefile
Files auto-generated by Cube MX
[home-hw.git] / Makefile
1 ##########################################################################################################################\r
2 # File automatically-generated by tool: [projectgenerator] version: [2.27.0] date: [Sat May 26 12:54:44 CEST 2018] \r
3 ##########################################################################################################################\r
4 \r
5 # ------------------------------------------------\r
6 # Generic Makefile (based on gcc)\r
7 #\r
8 # ChangeLog :\r
9 #       2017-02-10 - Several enhancements + project update mode\r
10 #   2015-07-22 - first version\r
11 # ------------------------------------------------\r
12 \r
13 ######################################\r
14 # target\r
15 ######################################\r
16 TARGET = test\r
17 \r
18 \r
19 ######################################\r
20 # building variables\r
21 ######################################\r
22 # debug build?\r
23 DEBUG = 1\r
24 # optimization\r
25 OPT = -Og\r
26 \r
27 \r
28 #######################################\r
29 # paths\r
30 #######################################\r
31 # source path\r
32 SOURCES_DIR =  \\r
33 Drivers/STM32F0xx_HAL_Driver \\r
34 Application \\r
35 Application/User/Src/stm32f0xx_it.c \\r
36 Drivers/CMSIS \\r
37 Application/User/Src \\r
38 Application/User \\r
39 Application/User/Src/main.c \\r
40 Drivers\r
41 \r
42 # firmware library path\r
43 PERIFLIB_PATH = \r
44 \r
45 # Build path\r
46 BUILD_DIR = build\r
47 \r
48 ######################################\r
49 # source\r
50 ######################################\r
51 # C sources\r
52 C_SOURCES =  \\r
53 Src/main.c \\r
54 Src/main.c \\r
55 /Src/system_stm32f0xx.c \\r
56 Src/stm32f0xx_it.c \\r
57 Src/stm32f0xx_it.c \\r
58 /aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_exti.c \\r
59 /aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_usart.c \\r
60 /aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_gpio.c \\r
61 /aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_pwr.c \\r
62 /aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_utils.c \\r
63 /aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_rcc.c \\r
64 /aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_dma.c\r
65 \r
66 # ASM sources\r
67 ASM_SOURCES =  \\r
68 startup_stm32f030x8.s\r
69 \r
70 \r
71 ######################################\r
72 # firmware library\r
73 ######################################\r
74 PERIFLIB_SOURCES = \r
75 \r
76 \r
77 #######################################\r
78 # binaries\r
79 #######################################\r
80 BINPATH = \r
81 PREFIX = arm-none-eabi-\r
82 CC = $(BINPATH)/$(PREFIX)gcc\r
83 AS = $(BINPATH)/$(PREFIX)gcc -x assembler-with-cpp\r
84 CP = $(BINPATH)/$(PREFIX)objcopy\r
85 AR = $(BINPATH)/$(PREFIX)ar\r
86 SZ = $(BINPATH)/$(PREFIX)size\r
87 HEX = $(CP) -O ihex\r
88 BIN = $(CP) -O binary -S\r
89  \r
90 #######################################\r
91 # CFLAGS\r
92 #######################################\r
93 # cpu\r
94 CPU = -mcpu=cortex-m0\r
95 \r
96 # fpu\r
97 # NONE for Cortex-M0/M0+/M3\r
98 \r
99 # float-abi\r
100 \r
101 \r
102 # mcu\r
103 MCU = $(CPU) -mthumb $(FPU) $(FLOAT-ABI)\r
104 \r
105 # macros for gcc\r
106 # AS defines\r
107 AS_DEFS = \r
108 \r
109 # C defines\r
110 C_DEFS =  \\r
111 -DUSE_FULL_LL_DRIVER \\r
112 -DSTM32F030x8\r
113 \r
114 \r
115 # AS includes\r
116 AS_INCLUDES = \r
117 \r
118 # C includes\r
119 C_INCLUDES =  \\r
120 -IInc \\r
121 -I/aux/misc/stm/F0-package/Drivers/STM32F0xx_HAL_Driver/Inc \\r
122 -I/aux/misc/stm/F0-package/Drivers/CMSIS/Device/ST/STM32F0xx/Include \\r
123 -I/aux/misc/stm/F0-package/Drivers/CMSIS/Include\r
124 \r
125 \r
126 # compile gcc flags\r
127 ASFLAGS = $(MCU) $(AS_DEFS) $(AS_INCLUDES) $(OPT) -Wall -fdata-sections -ffunction-sections\r
128 \r
129 CFLAGS = $(MCU) $(C_DEFS) $(C_INCLUDES) $(OPT) -Wall -fdata-sections -ffunction-sections\r
130 \r
131 ifeq ($(DEBUG), 1)\r
132 CFLAGS += -g -gdwarf-2\r
133 endif\r
134 \r
135 \r
136 # Generate dependency information\r
137 CFLAGS += -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)"\r
138 \r
139 \r
140 #######################################\r
141 # LDFLAGS\r
142 #######################################\r
143 # link script\r
144 LDSCRIPT = STM32F030R8Tx_FLASH.ld\r
145 \r
146 # libraries\r
147 LIBS = -lc -lm -lnosys \r
148 LIBDIR = \r
149 LDFLAGS = $(MCU) -specs=nano.specs -T$(LDSCRIPT) $(LIBDIR) $(LIBS) -Wl,-Map=$(BUILD_DIR)/$(TARGET).map,--cref -Wl,--gc-sections\r
150 \r
151 # default action: build all\r
152 all: $(BUILD_DIR)/$(TARGET).elf $(BUILD_DIR)/$(TARGET).hex $(BUILD_DIR)/$(TARGET).bin\r
153 \r
154 \r
155 #######################################\r
156 # build the application\r
157 #######################################\r
158 # list of objects\r
159 OBJECTS = $(addprefix $(BUILD_DIR)/,$(notdir $(C_SOURCES:.c=.o)))\r
160 vpath %.c $(sort $(dir $(C_SOURCES)))\r
161 # list of ASM program objects\r
162 OBJECTS += $(addprefix $(BUILD_DIR)/,$(notdir $(ASM_SOURCES:.s=.o)))\r
163 vpath %.s $(sort $(dir $(ASM_SOURCES)))\r
164 \r
165 $(BUILD_DIR)/%.o: %.c Makefile | $(BUILD_DIR) \r
166         $(CC) -c $(CFLAGS) -Wa,-a,-ad,-alms=$(BUILD_DIR)/$(notdir $(<:.c=.lst)) $< -o $@\r
167 \r
168 $(BUILD_DIR)/%.o: %.s Makefile | $(BUILD_DIR)\r
169         $(AS) -c $(CFLAGS) $< -o $@\r
170 \r
171 $(BUILD_DIR)/$(TARGET).elf: $(OBJECTS) Makefile\r
172         $(CC) $(OBJECTS) $(LDFLAGS) -o $@\r
173         $(SZ) $@\r
174 \r
175 $(BUILD_DIR)/%.hex: $(BUILD_DIR)/%.elf | $(BUILD_DIR)\r
176         $(HEX) $< $@\r
177         \r
178 $(BUILD_DIR)/%.bin: $(BUILD_DIR)/%.elf | $(BUILD_DIR)\r
179         $(BIN) $< $@    \r
180         \r
181 $(BUILD_DIR):\r
182         mkdir $@                \r
183 \r
184 #######################################\r
185 # clean up\r
186 #######################################\r
187 clean:\r
188         -rm -fR .dep $(BUILD_DIR)\r
189   \r
190 #######################################\r
191 # dependencies\r
192 #######################################\r
193 -include $(shell mkdir .dep 2>/dev/null) $(wildcard .dep/*)\r
194 \r
195 # *** EOF ***\r