2 # Open \______ \ ____ ____ | | _\_ |__ _______ ___
3 # Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
4 # Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
5 # Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
10 INCLUDES
+= -I
$(APPSDIR
)
11 SRC
+= $(call preprocess
, $(APPSDIR
)/SOURCES
)
13 CONFIGFILE
:= $(FIRMDIR
)/export/config
/$(MODELNAME
).h
14 BOOTLDS
:= $(FIRMDIR
)/target
/$(CPU
)/$(MANUFACTURER
)/boot.lds
15 BOOTLINK
:= $(BUILDDIR
)/boot.link
17 CLEANOBJS
+= $(BUILDDIR
)/bootloader.
*
22 UNWARMINDER_LINK
:= -lunwarminder
-L
$(BUILDDIR
)/lib
27 $(BOOTLINK
): $(BOOTLDS
) $(CONFIGFILE
)
28 $(call PRINTS
,PP
$(@F
))
29 $(call preprocess2file
,$<,$@
,-DLOADADDRESS
=$(LOADADDRESS
))
31 $(BUILDDIR
)/bootloader.elf
: $$(OBJ
) $$(FIRMLIB
) $$(UNWARMINDER
) $$(BOOTLINK
)
32 $(call PRINTS
,LD
$(@F
))$(CC
) $(GCCOPTS
) -Os
-nostdlib
-o
$@
$(OBJ
) \
33 $(FIRMLIB
) $(UNWARMINDER_LINK
) -lgcc
-L
$(BUILDDIR
)/firmware \
34 -T
$(BOOTLINK
) $(GLOBAL_LDOPTS
) \
35 -Wl
,--gc-sections
-Wl
,-Map
,$(BUILDDIR
)/bootloader.map
37 $(BUILDDIR
)/bootloader.bin
: $(BUILDDIR
)/bootloader.elf
38 $(call PRINTS
,OBJCOPY
$(@F
))$(OC
) $(if
$(filter yes
, $(USE_ELF
)), -S
-x
, -O binary
) $< $@
40 $(BUILDDIR
)/bootloader.asm
: $(BUILDDIR
)/bootloader.bin
41 $(TOOLSDIR
)/sh2d
-sh1
$< > $@
43 $(BUILDDIR
)/$(BINARY
) : $(BUILDDIR
)/bootloader.bin
44 $(call PRINTS
,Build bootloader file
)$(MKFIRMWARE
) $< $@