summaryrefslogtreecommitdiff
path: root/rbutil/mkamsboot/dualboot/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'rbutil/mkamsboot/dualboot/Makefile')
-rw-r--r--rbutil/mkamsboot/dualboot/Makefile54
1 files changed, 54 insertions, 0 deletions
diff --git a/rbutil/mkamsboot/dualboot/Makefile b/rbutil/mkamsboot/dualboot/Makefile
new file mode 100644
index 0000000000..06b90c7fb9
--- /dev/null
+++ b/rbutil/mkamsboot/dualboot/Makefile
@@ -0,0 +1,54 @@
1CC=gcc
2
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
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
9
10all: dualboot.h
11
12dualboot.h: $(BOOTBINS)
13
14# Dualboot bootloaders
15
16dualboot_clip.o: dualboot.S
17 arm-elf-gcc -DSANSA_CLIP -c -o dualboot_clip.o dualboot.S
18
19dualboot_fuze.o: dualboot.S
20 arm-elf-gcc -DSANSA_FUZE -c -o dualboot_fuze.o dualboot.S
21
22dualboot_e200v2.o: dualboot.S
23 arm-elf-gcc -DSANSA_E200V2 -c -o dualboot_e200v2.o dualboot.S
24
25dualboot_m200v4.o: dualboot.S
26 arm-elf-gcc -DSANSA_M200V4 -c -o dualboot_m200v4.o dualboot.S
27
28dualboot_c200v2.o: dualboot.S
29 arm-elf-gcc -DSANSA_C200V2 -c -o dualboot_c200v2.o dualboot.S
30
31dualboot_clipv2.o: dualboot.S
32 arm-elf-gcc -DSANSA_CLIPV2 -c -o dualboot_clipv2.o dualboot.S
33
34# Rules for the ucl unpack function
35nrv2e_d8.o: nrv2e_d8.S
36 arm-elf-gcc -DPURE_THUMB -c -o nrv2e_d8.o nrv2e_d8.S
37
38# Rules for the ARM code embedded in mkamsboot - assemble, link, then extract
39# the binary code and finally convert to .h for building in mkamsboot
40
41%.arm-elf: %.o
42 arm-elf-ld -e 0 -Ttext=0 -o $@ $<
43
44%.arm-bin: %.arm-elf
45 arm-elf-objcopy -O binary $< $@
46
47dualboot.c dualboot.h: $(BOOTBINS) bin2c
48 ./bin2c dualboot $(BOOTBINS)
49
50bin2c: bin2c.c
51 $(CC) -o bin2c bin2c.c
52
53clean:
54 rm -f *~ bin2c $(BOOTBINS) $(BOOTOBJS) dualboot.c dualboot.h