Rockbox open source high quality audio player as a Music Player Daemon
mpris rockbox mpd libadwaita audio rust zig deno
2
fork

Configure Feed

Select the types of activity you want to include in your feed.

3ds: Makefile improvements

- Allow overriding of the smdhtool and 3dsxtool programs
- Introduce dependencies in ctru.make for 3dsx and cia packages
- Build these packages when the binary is built
- Copy instead of moving the cia package when building a zip
- Properly clean all build artifacts when make clean is used

Change-Id: I2069bcc44d6ab6031ef61ed9980f92ff9a913bc9

+51 -21
+47 -18
packaging/ctru/ctru.make
··· 56 56 57 57 .SECONDEXPANSION: # $$(OBJ) is not populated until after this 58 58 59 - MAKEROM ?= makerom 60 - MAKEROM_ARGS := -elf "$(BINARY).elf" -rsf "$(RSF_PATH)" -banner "$(BUILDDIR)/banner.bnr" -icon "$(BUILDDIR)/icon.icn" -DAPP_TITLE="$(APP_TITLE)" -DAPP_PRODUCT_CODE="$(PRODUCT_CODE)" -DAPP_UNIQUE_ID="$(UNIQUE_ID)" -DAPP_ENCRYPTED="$(APP_ENCRYPTED)" -DAPP_SYSTEM_MODE="$(SYSTEM_MODE)" -DAPP_SYSTEM_MODE_EXT="$(SYSTEM_MODE_EXT)" -DAPP_CATEGORY="$(CATEGORY)" -DAPP_USE_ON_SD="$(USE_ON_SD)" -DAPP_MEMORY_TYPE="$(MEMORY_TYPE)" -DAPP_CPU_SPEED="$(CPU_SPEED)" -DAPP_ENABLE_L2_CACHE="$(ENABLE_L2_CACHE)" 61 - MAKEROM_ARGS += -major $(VERSION_MAJOR) -minor $(VERSION_MINOR) -micro $(VERSION_MICRO) 59 + SMDH_PATH := $(BUILDDIR)/rockbox.smdh 60 + 3DSX_PATH := $(BUILDDIR)/rockbox.3dsx 61 + 62 + BANNER_PATH := $(BUILDDIR)/rockbox.bnr 63 + ICON_PATH := $(BUILDDIR)/rockbox.icn 64 + CIA_PATH := $(BUILDDIR)/rockbox.cia 62 65 63 - ifneq ($(strip $(LOGO)),) 64 - MAKEROM_ARGS += -logo "$(LOGO)" 65 - endif 66 - ifneq ($(strip $(ROMFS)),) 67 - MAKEROM_ARGS += -DAPP_ROMFS="$(ROMFS)" 68 - endif 66 + SMDHTOOL ?= smdhtool 67 + 3DSXTOOL ?= 3dsxtool 69 68 70 69 BANNERTOOL ?= bannertool 71 70 ··· 81 80 BANNER_AUDIO_ARG := -a 82 81 endif 83 82 84 - # main binary 83 + MAKEROM ?= makerom 84 + MAKEROM_ARGS := -DAPP_TITLE="$(APP_TITLE)" -DAPP_PRODUCT_CODE="$(PRODUCT_CODE)" -DAPP_UNIQUE_ID="$(UNIQUE_ID)" \ 85 + -DAPP_ENCRYPTED="$(APP_ENCRYPTED)" -DAPP_SYSTEM_MODE="$(SYSTEM_MODE)" \ 86 + -DAPP_SYSTEM_MODE_EXT="$(SYSTEM_MODE_EXT)" -DAPP_CATEGORY="$(CATEGORY)" -DAPP_USE_ON_SD="$(USE_ON_SD)" \ 87 + -DAPP_MEMORY_TYPE="$(MEMORY_TYPE)" -DAPP_CPU_SPEED="$(CPU_SPEED)" \ 88 + -DAPP_ENABLE_L2_CACHE="$(ENABLE_L2_CACHE)" \ 89 + -major $(VERSION_MAJOR) -minor $(VERSION_MINOR) -micro $(VERSION_MICRO) 90 + 91 + ifneq ($(strip $(LOGO)),) 92 + MAKEROM_ARGS += -logo "$(LOGO)" 93 + endif 94 + ifneq ($(strip $(ROMFS)),) 95 + MAKEROM_ARGS += -DAPP_ROMFS="$(ROMFS)" 96 + endif 97 + 85 98 $(BUILDDIR)/$(BINARY): $$(OBJ) $(FIRMLIB) $(VOICESPEEXLIB) $(CORE_LIBS) 86 99 ifeq ($(UNAME), Darwin) 87 - $(call PRINTS,LD $(BINARY))$(CC) -o $@ $^ $(LDOPTS) $(GLOBAL_LDOPTS) -Wl,$(LDMAP_OPT),$(BUILDDIR)/rockbox.map 100 + $(call PRINTS,LD $(@F))$(CC) -o $@ $^ $(LDOPTS) $(GLOBAL_LDOPTS) -Wl,$(LDMAP_OPT),$(BUILDDIR)/rockbox.map 88 101 else 89 - $(call PRINTS,LD $(BINARY))$(CC) -o $@ -Wl,--start-group $^ -Wl,--end-group $(LDOPTS) $(GLOBAL_LDOPTS) \ 102 + $(call PRINTS,LD $(@F))$(CC) -o $@ -Wl,--start-group $^ -Wl,--end-group $(LDOPTS) $(GLOBAL_LDOPTS) \ 90 103 -Wl,$(LDMAP_OPT),$(BUILDDIR)/rockbox.map 91 104 endif 92 - @mv $(BINARY) $(BINARY).elf 93 - smdhtool --create "$(APP_TITLE)" "$(APP_DESCRIPTION)" "$(APP_AUTHOR)" $(APP_ICON) "rockbox.smdh" 94 - 3dsxtool $(BINARY).elf $(BINARY).3dsx --smdh="rockbox.smdh" 95 - $(BANNERTOOL) makebanner $(BANNER_IMAGE_ARG) "$(BANNER_IMAGE)" $(BANNER_AUDIO_ARG) "$(BANNER_AUDIO)" -o "$(BUILDDIR)/banner.bnr" 96 - $(BANNERTOOL) makesmdh -s "$(APP_TITLE)" -l "$(APP_DESCRIPTION)" -p "$(APP_AUTHOR)" -i "$(APP_ICON)" -f "$(ICON_FLAGS)" -o "$(BUILDDIR)/icon.icn" 97 - $(MAKEROM) -f cia -o "$(BINARY).cia" -target t -exefslogo $(MAKEROM_ARGS) 105 + 106 + $(SMDH_PATH): $(APP_ICON) 107 + $(SMDHTOOL) --create "$(APP_TITLE)" "$(APP_DESCRIPTION)" "$(APP_AUTHOR)" $< $@ 108 + 109 + $(3DSX_PATH): $(BUILDDIR)/$(BINARY) $(SMDH_PATH) 110 + $(3DSXTOOL) $< $@ --smdh=$(SMDH_PATH) 111 + 112 + $(BANNER_PATH): $(BANNER_IMAGE) $(BANNER_AUDIO) 113 + $(BANNERTOOL) makebanner $(BANNER_IMAGE_ARG) $(BANNER_IMAGE) $(BANNER_AUDIO_ARG) $(BANNER_AUDIO) -o $@ 114 + 115 + $(ICON_PATH): $(APP_ICON) 116 + $(BANNERTOOL) makesmdh -s "$(APP_TITLE)" -l "$(APP_DESCRIPTION)" -p "$(APP_AUTHOR)" -i $< -f $(ICON_FLAGS) -o $@ 117 + 118 + $(CIA_PATH): $(BUILDDIR)/$(BINARY) $(RSF_PATH) $(BANNER_PATH) $(ICON_PATH) 119 + $(MAKEROM) -f cia -o $@ -target t -exefslogo -elf $< -rsf $(RSF_PATH) -banner $(BANNER_PATH) \ 120 + -icon $(ICON_PATH) $(MAKEROM_ARGS) 121 + 122 + # add dependencies to build the packages 123 + CTRU_PACKAGES := $(3DSX_PATH) $(CIA_PATH) 124 + 125 + build: $(CTRU_PACKAGES) 126 + bin: $(CTRU_PACKAGES)
+1 -1
tools/buildzip.pl
··· 750 750 751 751 # add hbmenu shortcut and cia file to zip file 752 752 if ($modelname =~ /ctru/) { 753 - move("rockbox.cia", "3ds"); 753 + copy("rockbox.cia", "3ds"); 754 754 copy("$ROOT/packaging/ctru/rockbox.xml", "3ds"); 755 755 756 756 system("$ziptool -u $output 3ds/rockbox.xml $target >/dev/null");
+1 -1
tools/configure
··· 4159 4159 boottool="cp " 4160 4160 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" 4161 4161 bmp2rb_native="$rootdir/tools/bmp2rb -f 4" 4162 - output="rockbox" 4162 + output="rockbox.elf" 4163 4163 bootoutput="rockbox" 4164 4164 appextra="recorder:gui" 4165 4165 plugins="yes"
+2 -1
tools/root.make
··· 234 234 $(LINKRAM) $(LINKROM) rockbox.elf rockbox.map rockbox.bin \ 235 235 make.dep rombox.elf rombox.map rombox.bin romstart.txt \ 236 236 $(BINARY) $(FLASHFILE) uisimulator bootloader flash $(BOOTLINK) \ 237 - rockbox.apk lang_enum.h rbversion.h fontbundle.h 237 + rockbox.apk lang_enum.h rbversion.h fontbundle.h 3ds rockbox.3dsx \ 238 + rockbox.bnr rockbox.cia rockbox.icn rockbox.smdh 238 239 239 240 #### linking the binaries: #### 240 241