
E1 = example1
E2 = example2
E3 = example3
E4 = example4

AS = arm-none-eabi-as
CC = arm-none-eabi-gcc
LD = arm-none-eabi-ld
OC = arm-none-eabi-objcopy
OD = arm-none-eabi-objdump
SIM = arm-none-eabi-run

# Shows basic tool usage: as, ld, objcopy, objdump
ex1:
	$(AS) -mcpu=cortex-m3 -mthumb $(E1).s -o $(E1).o
	$(LD) -Ttext 0x0 -o $(E1).out $(E1).o
	$(OC) -Obinary $(E1).out $(E1).bin
	$(OD) -S $(E1).out > $(E1).lst

ex2:
	$(CC) -o $(E2).out $(E2).c -T generic-hosted.ld
ex2sim:
	$(SIM) $(E2).out


ex3:
	$(CC) -S -mcpu=cortex-m3 -mthumb $(E3).c -Ttext 0x0 -O3
#-o $(E3).s
#	$(OD) -S $(E3).o > $(E1).lst

#	$(CC) -mcpu=cortex-m3 -mthumb $(Ex).c -T generic-hosted.ld -o $(Ex).o


ex4:
	$(CC) -S -mcpu=cortex-m3 -mthumb $(E4).c -Ttext 0x0 -O3
#	$(OD) -S $(E3).o > $(E1).lst

#	$(CC) -mcpu=cortex-m3 -mthumb $(Ex).c -T generic-hosted.ld -o $(Ex).o

clean:
	rm -f *.o *.out *.bin *.ihex *.srec *.lst *~
