PROJECT=rapper PLATFORM ?= arm-none-eabi BOARD?=lpc1768 BPATH=boards/$(BOARD) LDFLAGS=--gc-sections -g -T $(BPATH)/flash.ld CFLAGS=-W -Wall --std=gnu99 -fgnu89-inline -mcpu=cortex-m3 -mthumb -ffunction-sections -fdata-sections -I$(BPATH) -I. -g #CFLAGS+=-Os # objects are separated by space USB_OBJS=usb/serial.o usb/core.o usb/desc.o usb/hw.o usb/user.o usb/vcom.o usb/cdcuser.o BOARD_OBJS=$(BPATH)/startup.o $(BPATH)/system.o boards/cortex_m3/core_cm3.o OBJECTS=main.o $(BOARD_OBJS) $(USB_OBJS) all: crc $(PROJECT).elf: $(OBJECTS) $(PLATFORM)-ld -Map $(PROJECT).map $(LDFLAGS) $(OBJECTS) -o $@ %.bin: %.elf $(PLATFORM)-objcopy -O binary $< $*.bin %.o: %.c $(PLATFORM)-gcc -MM $< -MF $(patsubst %.o,%.d,$@) -MP $(PLATFORM)-gcc $(CFLAGS) -c $< -o $@ .PHONY: clean gdb crc clean: rm -f $(PROJECT).elf $(OBJECTS) $(OBJECTS:.o=.d) $(PROJECT).map gdb: $(PLATFORM)-gdb $(PROJECT).elf crc: $(PROJECT).bin ../tools/lpcrc/lpcrc.sh $(PROJECT).bin $(BPATH)/startup.c