A modern Music Player Daemon based on Rockbox open source high quality audio player
libadwaita
audio
rust
zig
deno
mpris
rockbox
mpd
1# __________ __ ___.
2# Open \______ \ ____ ____ | | _\_ |__ _______ ___
3# Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
4# Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
5# Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
6# \/ \/ \/ \/ \/
7# $Id$
8#
9
10INCLUDES += -I$(APPSDIR)
11SRC += $(call preprocess, $(APPSDIR)/SOURCES)
12
13CONFIGFILE := $(FIRMDIR)/export/config/$(MODELNAME).h
14BOOTLDS := $(FIRMDIR)/target/$(CPU)/$(MANUFACTURER)/boot.lds
15BOOTLINK := $(BUILDDIR)/boot.link
16
17CLEANOBJS += $(BUILDDIR)/bootloader.*
18
19# FIXME: PP arm targets need this, otherwise we can't find __div0
20EXTRA_SPECIAL_LIBS = $(call a2lnk, $(CORE_LIBS))
21
22.SECONDEXPANSION:
23
24$(BOOTLINK): $(BOOTLDS) $(CONFIGFILE)
25 $(call PRINTS,PP $(@F))
26 $(call preprocess2file,$<,$@,-DLOADADDRESS=$(LOADADDRESS))
27
28$(BUILDDIR)/bootloader.elf: $$(OBJ) $(FIRMLIB) $(CORE_LIBS) $$(BOOTLINK)
29 $(call PRINTS,LD $(@F))$(CC) $(GCCOPTS) -Os -nostdlib -o $@ $(OBJ) \
30 -L$(BUILDDIR)/firmware -lfirmware \
31 -L$(BUILDDIR)/lib $(call a2lnk, $(CORE_LIBS)) $(EXTRA_SPECIAL_LIBS) \
32 -lgcc -T$(BOOTLINK) $(GLOBAL_LDOPTS) \
33 -Wl,--gc-sections -Wl,-Map,$(BUILDDIR)/bootloader.map
34
35$(BUILDDIR)/bootloader.bin : $(BUILDDIR)/bootloader.elf
36 $(call PRINTS,OC $(@F))$(call objcopy,$<,$@)
37
38$(BUILDDIR)/$(BINARY) : $(BUILDDIR)/bootloader.bin
39 $(call PRINTS,Build bootloader file)$(MKFIRMWARE) $< $@