|
1 | 1 | #!/bin/sh |
2 | 2 |
|
3 | 3 | # 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 |
7 | 6 |
|
8 | 7 | . ../version.all |
9 | 8 |
|
10 | 9 | platform=wiiu |
11 | 10 | EXT=a |
12 | 11 |
|
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 |
17 | 15 |
|
| 16 | +echo "-- Building launcher (Salamander) --" |
18 | 17 | 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 |
20 | 19 |
|
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 |
30 | 24 |
|
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 |
32 | 33 |
|
33 | | -lookup() |
34 | | -{ |
35 | | - cat | grep "$1 = " | sed "s/$1 = \"//" | sed s/\"// |
36 | | -} |
| 34 | + rm -rf build |
| 35 | +fi |
37 | 36 |
|
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 |
62 | 38 |
|
63 | 39 | for f in `ls -v *_${platform}.${EXT}`; do |
64 | 40 | name=`echo "$f" | sed "s/\(_libretro_${platform}\|\).${EXT}$//"` |
65 | 41 | whole_archive= |
66 | | - build_hbl_elf=1 |
67 | | - build_rpx=1 |
68 | 42 |
|
69 | 43 | if [ $name = "nxengine" ] ; then |
70 | 44 | echo "Applying whole archive linking..." |
71 | 45 | whole_archive="WHOLE_ARCHIVE_LINK=1" |
72 | 46 | fi |
73 | 47 |
|
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 | | - |
98 | 48 | echo "-- Building core: $name --" |
99 | 49 | cp -f "$f" ../libretro_${platform}.${EXT} |
100 | 50 | echo NAME: $name |
101 | 51 |
|
102 | 52 | # 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 |
105 | 54 |
|
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 |
121 | 55 | 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 |
136 | 57 | fi |
137 | | - rm -rf ${name}_meta.xml |
138 | | - |
139 | 58 | done |
140 | 59 |
|
141 | 60 | # Additional build step |
0 commit comments