mirror of
https://github.com/Rockbox/rockbox.git
synced 2025-12-08 12:45:26 -05:00
FS#10253 : mkamsboot v1.0
- Bump version to 1.0 - Add Clipv2 target - Make mkamsboot work as a library (work by domonoky : FS#10185, with a few modifications by me) . Use a macro with variadic arguments for error cases in functions which might error. . Add detailed descriptions to functions exported by the library (in the header file) - modify bin2c.c to produce only one pair of .c/.h files with several files embedded in it - move files needing to be built by an ARM cross compiler into dualboot/ - commit produced .c/.h files (containing nrv2e_d8.S and dualboot.S built for Clip, Fuze, e200v2, c200v2, m200v4, Clipv2) - Write a real README file - cosmetics: indent dualboot.S properly, remove trailing spaces, limit lines to 80 characters - comments: add/correct comments in dualboot.S and mkamsboot.c - move back extract_fw.c to utils/AMS/hacking git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21118 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
bebc8587cf
commit
96165abec2
14 changed files with 1054 additions and 685 deletions
54
rbutil/mkamsboot/dualboot/Makefile
Normal file
54
rbutil/mkamsboot/dualboot/Makefile
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
CC=gcc
|
||||
|
||||
# Edit the following variables (plus copy/paste another set of rules) when
|
||||
# adding a new target. mkamsboot.c also needs to be edited to refer to these
|
||||
# new images.
|
||||
|
||||
BOOTOBJS = nrv2e_d8.o dualboot_clip.o dualboot_e200v2.o dualboot_c200v2.o dualboot_m200v4.o dualboot_fuze.o dualboot_clipv2.o
|
||||
BOOTBINS = 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
|
||||
|
||||
all: dualboot.h
|
||||
|
||||
dualboot.h: $(BOOTBINS)
|
||||
|
||||
# Dualboot bootloaders
|
||||
|
||||
dualboot_clip.o: dualboot.S
|
||||
arm-elf-gcc -DSANSA_CLIP -c -o dualboot_clip.o dualboot.S
|
||||
|
||||
dualboot_fuze.o: dualboot.S
|
||||
arm-elf-gcc -DSANSA_FUZE -c -o dualboot_fuze.o dualboot.S
|
||||
|
||||
dualboot_e200v2.o: dualboot.S
|
||||
arm-elf-gcc -DSANSA_E200V2 -c -o dualboot_e200v2.o dualboot.S
|
||||
|
||||
dualboot_m200v4.o: dualboot.S
|
||||
arm-elf-gcc -DSANSA_M200V4 -c -o dualboot_m200v4.o dualboot.S
|
||||
|
||||
dualboot_c200v2.o: dualboot.S
|
||||
arm-elf-gcc -DSANSA_C200V2 -c -o dualboot_c200v2.o dualboot.S
|
||||
|
||||
dualboot_clipv2.o: dualboot.S
|
||||
arm-elf-gcc -DSANSA_CLIPV2 -c -o dualboot_clipv2.o dualboot.S
|
||||
|
||||
# Rules for the ucl unpack function
|
||||
nrv2e_d8.o: nrv2e_d8.S
|
||||
arm-elf-gcc -DPURE_THUMB -c -o nrv2e_d8.o nrv2e_d8.S
|
||||
|
||||
# Rules for the ARM code embedded in mkamsboot - assemble, link, then extract
|
||||
# the binary code and finally convert to .h for building in mkamsboot
|
||||
|
||||
%.arm-elf: %.o
|
||||
arm-elf-ld -e 0 -Ttext=0 -o $@ $<
|
||||
|
||||
%.arm-bin: %.arm-elf
|
||||
arm-elf-objcopy -O binary $< $@
|
||||
|
||||
dualboot.c dualboot.h: $(BOOTBINS) bin2c
|
||||
./bin2c dualboot $(BOOTBINS)
|
||||
|
||||
bin2c: bin2c.c
|
||||
$(CC) -o bin2c bin2c.c
|
||||
|
||||
clean:
|
||||
rm -f *~ bin2c $(BOOTBINS) $(BOOTOBJS) dualboot.c dualboot.h
|
||||
Loading…
Add table
Add a link
Reference in a new issue