1 BIN2C = ../../../../src/helper/bin2char.sh
3 CROSS_COMPILE ?= arm-none-eabi-
4 GCC = $(CROSS_COMPILE)gcc
5 OBJCOPY = $(CROSS_COMPILE)objcopy
7 FLAGS = -mcpu=cortex-m4 -march=armv7e-m -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb
9 CFLAGS = -c -DNO_MSP_CLASSIC_DEFINES -Dgcc -Wall -ffunction-sections
10 CFLAGS += -fdata-sections -std=c99 -O4
12 LDFLAGS = -lc -lnosys -Wl,--gc-sections
15 msp432e4x/driverlib.o \
16 msp432e4x/main_msp432e4x.o \
17 msp432e4x/startup_msp432e4.o
20 msp432p401x/driverlib.o \
21 msp432p401x/main_msp432p401x.o \
22 msp432p401x/startup_msp432p4.o
25 msp432p411x/driverlib.o \
26 msp432p411x/main_msp432p411x.o \
27 msp432p411x/startup_msp432p4.o
29 all: msp432e4x_algo.inc msp432p401x_algo.inc msp432p411x_algo.inc
32 @echo 'Building file: $<'
33 @echo 'Invoking: GNU Compiler'
34 $(GCC) -D__MSP432E4X__ $(FLAGS) $(CFLAGS) -o"$@" "$(shell echo $<)"
35 @echo 'Finished building: $<'
39 @echo 'Building file: $<'
40 @echo 'Invoking: GNU Compiler'
41 $(GCC) -D__MSP432P401X__ $(FLAGS) $(CFLAGS) -o"$@" "$(shell echo $<)"
42 @echo 'Finished building: $<'
46 @echo 'Building file: $<'
47 @echo 'Invoking: GNU Compiler'
48 $(GCC) -D__MSP432P411X__ $(FLAGS) $(CFLAGS) -o"$@" "$(shell echo $<)"
49 @echo 'Finished building: $<'
52 msp432e4x_algo.out: $(MSP432E4X_OBJS)
53 @echo 'Building target: $@'
54 @echo 'Invoking: GNU Linker'
55 $(GCC) $(FLAGS) $(LDFLAGS) -o$@ $(MSP432E4X_OBJS) -Tmsp432e4x/msp432e4x.lds
56 @echo 'Finished building target: $@'
59 msp432p401x_algo.out: $(MSP432P401X_OBJS)
60 @echo 'Building target: $@'
61 @echo 'Invoking: GNU Linker'
62 $(GCC) $(FLAGS) $(LDFLAGS) -o$@ $(MSP432P401X_OBJS) -Tmsp432p401x/msp432p401x.lds
63 @echo 'Finished building target: $@'
66 msp432p411x_algo.out: $(MSP432P411X_OBJS)
67 @echo 'Building target: $@'
68 @echo 'Invoking: GNU Linker'
69 $(GCC) $(FLAGS) $(LDFLAGS) -o$@ $(MSP432P411X_OBJS) -Tmsp432p411x/msp432p411x.lds
70 @echo 'Finished building target: $@'
74 @echo 'Building target: $@'
75 @echo 'Invoking: GNU Objcopy Utility'
76 $(OBJCOPY) -Obinary $< $@
77 @echo 'Finished building target: $@'
81 @echo 'Building target: $@'
82 @echo 'Invoking Bin2Char Script'
85 @echo 'Finished building target: $@'
89 @echo 'Cleaning Targets and Build Artifacts'
90 rm -rf *.inc *.bin *.out *.map
91 rm -rf msp432e4x/*.o msp432e4x/*.d
92 rm -rf msp432p401x/*.o msp432p401x/*.d
93 rm -rf msp432p411x/*.o msp432p411x/*.d
94 @echo 'Finished clean'