blob: 948f44cbafb87908c4915f4054b5389cd5080f98 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
|
CC=arm-none-eabi-gcc
AR=arm-none-eabi-ar
###########################################
vpath %.c STM32F4xx_HAL_Driver/Src
# Default STDPERIPH_SETTINGS to settings suitable for STM32F401RE MCU (Nucleo board)
STDPERIPH_SETTINGS ?= -DUSE_STDPERIPH_DRIVER -DSTM32F4XX -DSTM32F401xE
CFLAGS = -ggdb -O2 -Wall -Wextra -Warray-bounds
CFLAGS += -mcpu=cortex-m4 -mthumb -mlittle-endian -mthumb-interwork
CFLAGS += -mfloat-abi=hard -mfpu=fpv4-sp-d16
CFLAGS += $(STDPERIPH_SETTINGS)
CFLAGS += -ICMSIS/Include -ICMSIS/Device/ST/STM32F4xx/Include -ISTM32F4xx_HAL_Driver/Inc
SRCS = stm32f4xx_hal.c stm32f4xx_hal_msp_template.c \
stm32f4xx_hal_adc.c stm32f4xx_hal_nand.c \
stm32f4xx_hal_adc_ex.c stm32f4xx_hal_nor.c \
stm32f4xx_hal_can.c stm32f4xx_hal_pccard.c \
stm32f4xx_hal_cortex.c stm32f4xx_hal_pcd.c \
stm32f4xx_hal_crc.c stm32f4xx_hal_pwr.c \
stm32f4xx_hal_cryp.c stm32f4xx_hal_pwr_ex.c \
stm32f4xx_hal_cryp_ex.c stm32f4xx_hal_rcc.c \
stm32f4xx_hal_dac.c stm32f4xx_hal_rcc_ex.c \
stm32f4xx_hal_dac_ex.c stm32f4xx_hal_rng.c \
stm32f4xx_hal_dcmi.c stm32f4xx_hal_rtc.c \
stm32f4xx_hal_dma.c stm32f4xx_hal_rtc_ex.c \
stm32f4xx_hal_dma2d.c stm32f4xx_hal_sai.c \
stm32f4xx_hal_dma_ex.c stm32f4xx_hal_sd.c \
stm32f4xx_hal_eth.c stm32f4xx_hal_sdram.c \
stm32f4xx_hal_flash.c stm32f4xx_hal_smartcard.c \
stm32f4xx_hal_flash_ex.c stm32f4xx_hal_spi.c \
stm32f4xx_hal_gpio.c stm32f4xx_hal_sram.c \
stm32f4xx_hal_hash.c stm32f4xx_hal_tim.c \
stm32f4xx_hal_hash_ex.c stm32f4xx_hal_tim_ex.c \
stm32f4xx_hal_hcd.c stm32f4xx_hal_uart.c \
stm32f4xx_hal_i2c.c stm32f4xx_hal_usart.c \
stm32f4xx_hal_i2c_ex.c stm32f4xx_hal_wwdg.c \
stm32f4xx_hal_i2s.c stm32f4xx_ll_fmc.c \
stm32f4xx_hal_i2s_ex.c stm32f4xx_ll_fsmc.c \
stm32f4xx_hal_irda.c stm32f4xx_ll_sdmmc.c \
stm32f4xx_hal_iwdg.c stm32f4xx_ll_usb.c \
stm32f4xx_hal_ltdc.c
# Override the SRCS and only even compile the files this project actually makes use of
SRCS = stm32f4xx_hal.c \
stm32f4xx_hal_cortex.c \
stm32f4xx_hal_rcc.c \
stm32f4xx_hal_dma.c \
stm32f4xx_hal_gpio.c \
stm32f4xx_hal_tim.c \
stm32f4xx_hal_tim_ex.c \
stm32f4xx_hal_uart.c \
stm32f4xx_hal_usart.c \
OBJS = $(SRCS:.c=.o)
.PHONY: libstmf4.a
all: libstmf4.a
%.o : %.c
$(CC) $(CFLAGS) -c -o $@ $^
libstmf4.a: $(OBJS)
$(AR) -r $@ $(OBJS)
clean:
rm -f $(OBJS) libstmf4.a
|