blob: b91b6a5e59db6c1f884a8ad825fb29e535b6bd1e [file] [log] [blame]
brians0ab60bb2013-01-31 02:21:51 +00001NAME=main
2
3LDSCRIPT=lpc1758_Debug.ld
4
5CSRC=main.c
6
7GCC_PATH=/usr/local/cortex-m3/bin
8
Austin Schuh63d0e9b2013-03-27 04:43:14 +00009PORT=/dev/ttyS1
brians0ab60bb2013-01-31 02:21:51 +000010
11CC=$(GCC_PATH)/arm-eabi-gcc
12LD=$(GCC_PATH)/arm-eabi-ld
13OBJCOPY=$(GCC_PATH)/arm-eabi-objcopy
Austin Schuh63d0e9b2013-03-27 04:43:14 +000014OBJDUMP=$(GCC_PATH)/arm-eabi-objdump
brians0ab60bb2013-01-31 02:21:51 +000015AS=$(GCC_PATH)/arm-eabi-as
16FLASHER=lpc21isp
17
Austin Schuh63d0e9b2013-03-27 04:43:14 +000018CFLAGS=-I. -I./FreeRTOS/include -I./FreeRTOS/portable/GCC/ARM_CM3/ -I./CommonDemoTasks/include -O3 -mcpu=cortex-m3 -mthumb -Wl,--gc-sections -ffunction-sections -Wl,-static -Werror
brians0ab60bb2013-01-31 02:21:51 +000019
20SPEED=38400
21OSC=12000
22
23SOURCES=main.c \
24 ParTest.c \
25 printf-stdarg.c \
26 cr_startup_lpc17.c \
27 CommonDemoTasks/flash.c \
28 FreeRTOS/portable/MemMang/heap_2.c \
29 alloc.c \
30 analog.c \
31 FreeRTOS/portable/GCC/ARM_CM3/port.c \
32 FreeRTOS/tasks.c \
33 FreeRTOS/list.c \
34 FreeRTOS/queue.c \
35 CAN.c \
36 LPCUSB/usbinit.c \
37 LPCUSB/usbcontrol.c \
38 LPCUSB/USB_SENSOR_STREAM.c \
39 LPCUSB/usbhw_lpc.c \
40 spi.c \
41 LPCUSB/usbstdreq.c
42
43all: $(NAME).hex
44
45$(NAME).elf: Makefile $(SOURCES:.c=.o) $(LDSCRIPT)
46 $(CC) $(CFLAGS) -nostartfiles -nostdlib -T $(LDSCRIPT) -o $@ -L/usr/local/cortex-m3/lib/gcc/arm-eabi/4.5.1/ $(SOURCES:.c=.o) -Wa,-Map -Wa,main.map -lgcc
47
48%.o: %.c Makefile
49 $(CC) $(CFLAGS) -nostartfiles -nostdlib -c -o $@ $< -Wall -std=gnu99
50
51run: deploy
52 $(FLASHER) -termonly $(NAME).hex $(PORT) $(SPEED) $(OSC)
53
54deploy: all $(NAME).hex
55 $(FLASHER) -hex -verify $(NAME).hex $(PORT) $(SPEED) $(OSC)
56
57cat:
58 @cd ../../bin; python serial_looper.py
59
Austin Schuh63d0e9b2013-03-27 04:43:14 +000060assm.S: $(NAME).elf
Brian Silverman798c7782013-03-28 16:48:02 -070061 $(OBJDUMP) -D -S $(NAME).elf > $@
Austin Schuh63d0e9b2013-03-27 04:43:14 +000062
brians0ab60bb2013-01-31 02:21:51 +000063%.hex: %.elf Makefile
64 $(OBJCOPY) -O ihex $< $@
65
66clean:
67 rm -rf $(SOURCES:.c=.o) $(NAME).hex $(NAME).elf