7e931bbd |
1 | # Makefile for armsrc, see ../common/Makefile.common for common settings\r |
6658905f |
2 | \r |
7e931bbd |
3 | APP_INCLUDES = apps.h\r |
6658905f |
4 | \r |
d3ae0de7 |
5 | #remove one of the following defines and comment out the relevant line\r |
6 | #in the next section to remove that particular feature from compilation \r |
c0d04e95 |
7 | APP_CFLAGS = -O6 -DWITH_LF -DWITH_ISO15693 -DWITH_ISO14443a -DWITH_ISO14443b\r |
8 | #-DWITH_LCD \r |
6658905f |
9 | \r |
d3ae0de7 |
10 | #SRC_LCD = fonts.c LCD.c\r |
c0d04e95 |
11 | SRC_LF = lfops.c hitag2.c\r |
d3ae0de7 |
12 | SRC_ISO15693 = iso15693.c\r |
13 | SRC_ISO14443a = iso14443a.c\r |
14 | SRC_ISO14443b = iso14443.c\r |
0fc0fca5 |
15 | \r |
e73e7172 |
16 | THUMBSRC = start.c \\r |
d3ae0de7 |
17 | $(SRC_LCD) \\r |
18 | $(SRC_ISO15693) \\r |
c0d04e95 |
19 | $(SRC_LF) \\r |
0fc0fca5 |
20 | appmain.c \\r |
0fc0fca5 |
21 | util.c \\r |
22 | usb.c\r |
23 | \r |
24 | # These are to be compiled in ARM mode\r |
d3ae0de7 |
25 | ARMSRC = fpgaloader.c \\r |
aac23b24 |
26 | legicrf.c \\r |
d3ae0de7 |
27 | $(SRC_ISO14443a) \\r |
68d9d60a |
28 | $(SRC_ISO14443b) \\r |
29 | crc.c\r |
aa4d9d9b |
30 | \r |
e73e7172 |
31 | # Do not move this inclusion before the definition of {THUMB,ASM,ARM}SRC\r |
0fc0fca5 |
32 | include ../common/Makefile.common\r |
6658905f |
33 | \r |
7e931bbd |
34 | all: $(OBJDIR)/osimage.s19 $(OBJDIR)/fpgaimage.s19\r |
6658905f |
35 | \r |
e73e7172 |
36 | $(OBJDIR)/fpga.o: fpga.bit\r |
37 | $(OBJCOPY) -O elf32-littlearm -I binary -B arm --redefine-sym _binary____fpga_fpga_bit_start=_binary_fpga_bit_start --redefine-sym _binary____fpga_fpga_bit_end=_binary_fpga_bit_end --prefix-sections=fpga_bit $^ $@\r |
6658905f |
38 | \r |
d5be6f7c |
39 | $(OBJDIR)/fullimage.elf: $(VERSIONOBJ) $(OBJDIR)/fpga.o $(THUMBOBJ) $(ARMOBJ) $(LIBGCC)\r |
7e931bbd |
40 | $(LD) -g -Tldscript -Map=$(patsubst %.elf,%.map,$@) -o $@ $^\r |
6658905f |
41 | \r |
e73e7172 |
42 | $(OBJDIR)/fpgaimage.elf: $(OBJDIR)/fullimage.elf\r |
4271e82d |
43 | $(OBJCOPY) -F elf32-littlearm --only-section .fpgaimage $^ $@ \r |
e73e7172 |
44 | \r |
45 | $(OBJDIR)/osimage.elf: $(OBJDIR)/fullimage.elf\r |
4271e82d |
46 | $(OBJCOPY) -F elf32-littlearm --remove-section .fpgaimage $^ $@\r |
e73e7172 |
47 | \r |
6658905f |
48 | clean:\r |
7e931bbd |
49 | $(DELETE) $(OBJDIR)$(PATHSEP)*.o\r |
50 | $(DELETE) $(OBJDIR)$(PATHSEP)*.elf\r |
51 | $(DELETE) $(OBJDIR)$(PATHSEP)*.s19\r |
52 | $(DELETE) $(OBJDIR)$(PATHSEP)*.map\r |
0fc0fca5 |
53 | $(DELETE) $(OBJDIR)$(PATHSEP)*.d\r |
8a6aec16 |
54 | $(DELETE) version.c\r |
7e931bbd |
55 | \r |
56 | .PHONY: all clean help\r |
57 | help:\r |
58 | @echo Multi-OS Makefile, you are running on $(DETECTED_OS)\r |
59 | @echo Possible targets:\r |
8652988d |
60 | @echo + all - Make both:\r |
61 | @echo + $(OBJDIR)/osimage.s19 - The OS image\r |
62 | @echo + $(OBJDIR)/fpgaimage.s19 - The FPGA image\r |
63 | @echo + clean - Clean $(OBJDIR)\r |
0fc0fca5 |
64 | \r |