Skip to content

Commit 4405bc4

Browse files
committed
(WiiU) Package Salamander as .wuhb along with RA assets
These assets are shared to the cores after core switch. Reading them out of a .wuhb is an Aroma-exclusive feature that makes core loading times dramatically better. Branding assets provided by @Ploggy, originally by cucholix afaik. Co-developed-by: Maschell <[email protected]>
1 parent 22dafed commit 4405bc4

File tree

9 files changed

+44
-315
lines changed

9 files changed

+44
-315
lines changed

dist-scripts/wiiu-cores.sh

Lines changed: 24 additions & 105 deletions
Original file line numberDiff line numberDiff line change
@@ -1,141 +1,60 @@
11
#!/bin/sh
22

33
# usage:
4-
# copy core libs (*_libretro_wiiu.a), info files (https://github.com/libretro/libretro-super/tree/master/dist/info)
5-
# and icons (https://github.com/libretro/retroarch-assets/tree/master/pkg/wiiu) to this directory then run
6-
# the script. the output will be in retroarch/pkg/wiiu
4+
# copy core libs (*_libretro_wiiu.a) and assets (https://buildbot.libretro.com/assets/frontend/assets.zip) to this
5+
# directory then run the script. the output will be in retroarch/pkg/wiiu
76

87
. ../version.all
98

109
platform=wiiu
1110
EXT=a
1211

13-
mkdir -p ../pkg/wiiu/retroarch/cores/info
14-
cp *.info ../pkg/wiiu/retroarch/cores/info/
15-
mkdir -p ../pkg/wiiu/rpx/retroarch/cores/info
16-
cp *.info ../pkg/wiiu/rpx/retroarch/cores/info/
12+
retroarch_dir=../pkg/wiiu/retroarch
13+
apps_dir=../pkg/wiiu/wiiu/apps
14+
mkdir -p $retroarch_dir/cores $apps_dir
1715

16+
echo "-- Building launcher (Salamander) --"
1817
make -C ../ -f Makefile.${platform} SALAMANDER_BUILD=1 clean || exit 1
19-
make -C ../ -f Makefile.${platform} SALAMANDER_BUILD=1 BUILD_HBL_ELF=1 BUILD_RPX=1 -j3 || exit 1
18+
make -C ../ -f Makefile.${platform} SALAMANDER_BUILD=1 -j$(nproc) || exit 1
2019

21-
mkdir -p ../pkg/wiiu/wiiu/apps/retroarch
22-
mv -f ../retroarch_wiiu_salamander.elf ../pkg/wiiu/wiiu/apps/retroarch/retroarch.elf
23-
cp -f ../pkg/wiiu/meta.xml ../pkg/wiiu/wiiu/apps/retroarch/meta.xml
24-
cp -f ../pkg/wiiu/icon.png ../pkg/wiiu/wiiu/apps/retroarch/icon.png
25-
mkdir -p ../pkg/wiiu/rpx/wiiu/apps/retroarch
26-
mv -f ../retroarch_wiiu_salamander.rpx ../pkg/wiiu/rpx/wiiu/apps/retroarch/retroarch.rpx
27-
rm -f ../retroarch_wiiu_salamander.rpx.elf
28-
cp -f ../pkg/wiiu/meta.xml ../pkg/wiiu/rpx/wiiu/apps/retroarch/meta.xml
29-
cp -f ../pkg/wiiu/icon.png ../pkg/wiiu/rpx/wiiu/apps/retroarch/icon.png
20+
if [ -e assets.zip ]; then
21+
# This is named "build" because we're building the assets, but it's also got a broad rule in the gitignore
22+
mkdir -p build/assets
23+
unzip -o assets.zip -d build/assets
3024

31-
make -C ../ -f Makefile.${platform} clean || exit 1
25+
wuhbtool ../retroarch_wiiu_salamander.rpx $apps_dir/retroarch.wuhb \
26+
--name="RetroArch" \
27+
--short-name="RetroArch" \
28+
--author="libretro" \
29+
--icon=../pkg/wiiu/booticon.png \
30+
--tv-image=../pkg/wiiu/bootTvTex.tga \
31+
--drc-image=../pkg/wiiu/bootDrcTex.tga \
32+
--content=build/ || exit 1
3233

33-
lookup()
34-
{
35-
cat | grep "$1 = " | sed "s/$1 = \"//" | sed s/\"//
36-
}
34+
rm -rf build
35+
fi
3736

38-
gen_meta_xml()
39-
{
40-
info="$1"_libretro.info
41-
if [ -e $info ] ; then
42-
display_name=`cat $info | lookup "display_name"`
43-
corename=`cat $info | lookup "corename"`
44-
authors=`cat $info | lookup "authors" | sed s/\|/\ -\ /g`
45-
systemname=`cat $info | lookup "systemname"`
46-
license=`cat $info | lookup "license"`
47-
date=`date +%Y%m%d%H%M%S`
48-
build_hash=`git rev-parse --short HEAD 2>/dev/null`
49-
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>' > "$1"_meta.xml
50-
echo '<app version="1">' >> "$1"_meta.xml
51-
echo ' <name>'$corename'</name>' >> "$1"_meta.xml
52-
echo ' <coder>'$authors'</coder>' >> "$1"_meta.xml
53-
echo ' <version>'$PACKAGE_VERSION' r'$build_hash'</version>' >> "$1"_meta.xml
54-
echo ' <release_date>'$date'</release_date>' >> "$1"_meta.xml
55-
echo ' <short_description>RetroArch</short_description>' >> "$1"_meta.xml
56-
echo -e ' <long_description>'$display_name'\n\nSystem: '$systemname'\nLicense: '$license'</long_description>' >> "$1"_meta.xml
57-
echo ' <category>emu</category>' >> "$1"_meta.xml
58-
echo ' <url>https://github.com/libretro</url>' >> "$1"_meta.xml
59-
echo '</app>' >> "$1"_meta.xml
60-
fi
61-
}
37+
make -C ../ -f Makefile.${platform} clean || exit 1
6238

6339
for f in `ls -v *_${platform}.${EXT}`; do
6440
name=`echo "$f" | sed "s/\(_libretro_${platform}\|\).${EXT}$//"`
6541
whole_archive=
66-
build_hbl_elf=1
67-
build_rpx=1
6842

6943
if [ $name = "nxengine" ] ; then
7044
echo "Applying whole archive linking..."
7145
whole_archive="WHOLE_ARCHIVE_LINK=1"
7246
fi
7347

74-
if [ $name = "mame2003" ] ; then
75-
build_hbl_elf=0
76-
fi
77-
78-
if [ $name = "fbalpha2012" ] ; then
79-
build_hbl_elf=0
80-
fi
81-
82-
if [ $name = "mame2003_midway" ] ; then
83-
build_rpx=0
84-
fi
85-
if [ $name = "fbalpha2012_cps1" ] ; then
86-
build_rpx=0
87-
fi
88-
if [ $name = "fbalpha2012_cps2" ] ; then
89-
build_rpx=0
90-
fi
91-
if [ $name = "fbalpha2012_cps3" ] ; then
92-
build_rpx=0
93-
fi
94-
if [ $name = "fbalpha2012_neogeo" ] ; then
95-
build_rpx=0
96-
fi
97-
9848
echo "-- Building core: $name --"
9949
cp -f "$f" ../libretro_${platform}.${EXT}
10050
echo NAME: $name
10151

10252
# Compile core
103-
make -C ../ -f Makefile.${platform} LIBRETRO=$name BUILD_HBL_ELF=$build_hbl_elf BUILD_RPX=$build_rpx $whole_archive -j3 || exit 1
104-
gen_meta_xml $name
53+
make -C ../ -f Makefile.${platform} LIBRETRO=$name $whole_archive -j$(nproc) || exit 1
10554

106-
if [ -e ../retroarch_wiiu.elf ] ; then
107-
cp ../retroarch_wiiu.elf ../pkg/wiiu/retroarch/cores/${name}_libretro.elf
108-
mkdir -p ../pkg/wiiu/wiiu/apps/${name}_libretro
109-
mv -f ../retroarch_wiiu.elf ../pkg/wiiu/wiiu/apps/${name}_libretro/${name}_libretro.elf
110-
if [ -e ${name}_meta.xml ] ; then
111-
cp -f ${name}_meta.xml ../pkg/wiiu/wiiu/apps/${name}_libretro/meta.xml
112-
else
113-
cp -f ../pkg/wiiu/meta.xml ../pkg/wiiu/wiiu/apps/${name}_libretro/meta.xml
114-
fi
115-
if [ -e $name.png ] ; then
116-
cp -f $name.png ../pkg/wiiu/wiiu/apps/${name}_libretro/icon.png
117-
else
118-
cp -f ../pkg/wiiu/icon.png ../pkg/wiiu/wiiu/apps/${name}_libretro/icon.png
119-
fi
120-
fi
12155
if [ -e ../retroarch_wiiu.rpx ] ; then
122-
cp ../retroarch_wiiu.rpx ../pkg/wiiu/rpx/retroarch/cores/${name}_libretro.rpx
123-
mkdir -p ../pkg/wiiu/rpx/wiiu/apps/${name}_libretro
124-
mv -f ../retroarch_wiiu.rpx ../pkg/wiiu/rpx/wiiu/apps/${name}_libretro/${name}_libretro.rpx
125-
rm -f ../retroarch_wiiu.rpx.elf
126-
if [ -e ${name}_meta.xml ] ; then
127-
cp -f ${name}_meta.xml ../pkg/wiiu/rpx/wiiu/apps/${name}_libretro/meta.xml
128-
else
129-
cp -f ../pkg/wiiu/meta.xml ../pkg/wiiu/rpx/wiiu/apps/${name}_libretro/meta.xml
130-
fi
131-
if [ -e $name.png ] ; then
132-
cp -f $name.png ../pkg/wiiu/rpx/wiiu/apps/${name}_libretro/icon.png
133-
else
134-
cp -f ../pkg/wiiu/icon.png ../pkg/wiiu/rpx/wiiu/apps/${name}_libretro/icon.png
135-
fi
56+
cp ../retroarch_wiiu.rpx $retroarch_dir/cores/${name}_libretro.rpx
13657
fi
137-
rm -rf ${name}_meta.xml
138-
13958
done
14059

14160
# Additional build step

dist-scripts/wiiu-new-cores.sh

Lines changed: 0 additions & 194 deletions
This file was deleted.

dist-scripts/wiiu-rpx-upload.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,10 +37,10 @@ fi
3737

3838
filesToUpload()
3939
{
40-
find . -type f \( -name "*.rpx" -o -name "*.xml" -o -name "*.png" -o -name "*.info" \)
40+
find . -type f \( -name "*.rpx" -o -name "*.wuhb" -o -name "*.info" \)
4141
}
4242

43-
cd ../pkg/wiiu/rpx
43+
cd ../pkg/wiiu
4444

4545
# First, delete any previous *.remote files from previous uploads.
4646
find . -name '*.remote' | xargs rm -f {}

0 commit comments

Comments
 (0)