--- /dev/null
+PROJECT=rapper
+PLATFORM=arm-none-eabi
+LDFLAGS=--gc-sections -g -T LPC1768-flash.ld
+CFLAGS=-W -Wall -Os --std=gnu99 -fgnu89-inline -mcpu=cortex-m3 -mthumb -ffunction-sections -fdata-sections -I. -g
+
+# objects are separated by space
+OBJECTS=startup.o system_LPC17xx.o main.o core_cm3.o
+
+
+all: $(PROJECT).elf
+
+$(PROJECT).elf: $(OBJECTS)
+ $(PLATFORM)-ld -Map $(PROJECT).map $(LDFLAGS) $(OBJECTS) -o $@
+
+%.o: %.c
+ $(PLATFORM)-gcc -MM $< -MF $(patsubst %.o,%.d,$@) -MP
+ $(PLATFORM)-gcc $(CFLAGS) -c $< -o $@
+
+.PHONY: clean gdb
+
+clean:
+ rm -f $(PROJECT).elf $(OBJECTS) $(OBJECTS:.o=.d) $(PROJECT).map
+
+gdb:
+ $(PLATFORM)-gdb $(PROJECT).elf