summaryrefslogtreecommitdiff
path: root/utils/mkamsboot/dualboot/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'utils/mkamsboot/dualboot/Makefile')
-rw-r--r--utils/mkamsboot/dualboot/Makefile61
1 files changed, 61 insertions, 0 deletions
diff --git a/utils/mkamsboot/dualboot/Makefile b/utils/mkamsboot/dualboot/Makefile
new file mode 100644
index 0000000000..0aa1e3f7d9
--- /dev/null
+++ b/utils/mkamsboot/dualboot/Makefile
@@ -0,0 +1,61 @@
1CC=gcc
2CROSS_PREFIX?=arm-elf-eabi
3# Edit the following variables (plus copy/paste another set of rules) when
4# adding a new target. mkamsboot.c also needs to be edited to refer to these
5# new images.
6
7BOOTOBJS = nrv2e_d8.o dualboot_clip.o dualboot_e200v2.o dualboot_c200v2.o dualboot_m200v4.o dualboot_fuze.o dualboot_clipv2.o dualboot_clipplus.o dualboot_fuzev2.o dualboot_clipzip.o
8BOOTBINS = nrv2e_d8.arm-bin dualboot_clip.arm-bin dualboot_e200v2.arm-bin dualboot_c200v2.arm-bin dualboot_m200v4.arm-bin dualboot_fuze.arm-bin dualboot_clipv2.arm-bin dualboot_clipplus.arm-bin dualboot_fuzev2.arm-bin dualboot_clipzip.arm-bin
9
10all: ../dualboot.h ../dualboot.c
11
12# Dualboot bootloaders
13
14dualboot_clip.o: dualboot.S
15 $(CROSS_PREFIX)-$(CC) -DSANSA_CLIP -c -o dualboot_clip.o dualboot.S
16
17dualboot_fuze.o: dualboot.S
18 $(CROSS_PREFIX)-$(CC) -DSANSA_FUZE -c -o dualboot_fuze.o dualboot.S
19
20dualboot_e200v2.o: dualboot.S
21 $(CROSS_PREFIX)-$(CC) -DSANSA_E200V2 -c -o dualboot_e200v2.o dualboot.S
22
23dualboot_m200v4.o: dualboot.S
24 $(CROSS_PREFIX)-$(CC) -DSANSA_M200V4 -c -o dualboot_m200v4.o dualboot.S
25
26dualboot_c200v2.o: dualboot.S
27 $(CROSS_PREFIX)-$(CC) -DSANSA_C200V2 -c -o dualboot_c200v2.o dualboot.S
28
29dualboot_clipv2.o: dualboot.S
30 $(CROSS_PREFIX)-$(CC) -DSANSA_CLIPV2 -c -o dualboot_clipv2.o dualboot.S
31
32dualboot_clipplus.o: dualboot.S
33 $(CROSS_PREFIX)-$(CC) -DSANSA_CLIPPLUS -c -o dualboot_clipplus.o dualboot.S
34
35dualboot_fuzev2.o: dualboot.S
36 $(CROSS_PREFIX)-$(CC) -DSANSA_FUZEV2 -c -o dualboot_fuzev2.o dualboot.S
37
38dualboot_clipzip.o: dualboot.S
39 $(CROSS_PREFIX)-$(CC) -DSANSA_CLIPZIP -c -o dualboot_clipzip.o dualboot.S
40
41# Rules for the ucl unpack function
42nrv2e_d8.o: nrv2e_d8.S
43 $(CROSS_PREFIX)-$(CC) -DPURE_THUMB -c -o nrv2e_d8.o nrv2e_d8.S
44
45# Rules for the ARM code embedded in mkamsboot - assemble, link, then extract
46# the binary code and finally convert to .h for building in mkamsboot
47
48%.arm-elf: %.o
49 $(CROSS_PREFIX)-ld -e 0 -Ttext=0 -o $@ $<
50
51%.arm-bin: %.arm-elf
52 $(CROSS_PREFIX)-objcopy -O binary $< $@
53
54../dualboot.c ../dualboot.h: $(BOOTBINS) bin2c
55 ./bin2c ../dualboot $(BOOTBINS)
56
57bin2c: bin2c.c
58 $(CC) -o bin2c bin2c.c
59
60clean:
61 rm -f *~ bin2c $(BOOTBINS) $(BOOTOBJS)