homebrewfilter/distribute
Christopher Roy Bratusek dada697c4e fix non-working updates
2012-04-14 13:16:48 +02:00

99 lines
2.1 KiB
Bash
Executable File

#!/bin/bash
compile_hbf ()
{
make || exit 1
}
compile_boot ()
{
if [[ -e $PWD/hbf.dol && ! $FORCE ]]; then
cp hbf.dol boot/source/hbf.dol
make -C boot/ || exit 1
else compile_hbf
cp hbf.dol boot/source/hbf.dol
make -C boot/ || exit 1
fi
}
compile_installer ()
{
if [[ -e boot/hbf_boot.dol && ! $FORCE ]]; then
cp boot/hbf_boot.dol installer/wad/00000002.app
else compile_boot
cp boot/hbf_boot.dol installer/wad/00000002.app
fi
if [[ $CHNL == "COMEX" ]]; then
wine tools/WadMii.exe -input "Z:\home\chris\Projekte\homebrewfilter\installer\wad" -output "Z:\home\chris\Projekte\homebrewfilter\installer\data\install.wad"
sleep 5
else
wine tools/WadMii.exe -input "Z:\home\chris\Projekte\homebrewfilter\installer\wad" -output "Z:\home\chris\Projekte\homebrewfilter\installer\THBF.wad"
sleep 5
mono tools/CustomizeMii.exe
fi
if [[ -e installer/data/install.wad ]]; then
make -C installer || exit 1
else echo -e "--Error installer/data/install.wad not found--"
exit 1
fi
}
make_distribution ()
{
if [[ -e installer/installer.dol && ! $FORCE ]]; then
cp installer/installer.dol HomebrewFilter/boot.dol
else compile_installer
cp installer/installer.dol HomebrewFilter/boot.dol
fi
XREV=$(grep "define SVN_REV" svnrev/svnrev.c | gawk '{print $3}')
cp data/meta.xml.in HomebrewFilter/meta.xml
sed -e "s/@REV@/$XREV/g" -i HomebrewFilter/meta.xml
sed -e '/./{H;$!d;}' -e "x;/rev$XREV/!d;" updates >> HomebrewFilter/meta.xml
echo -e "\n </long_description>\n</app>" >> HomebrewFilter/meta.xml
}
make_filelist()
{
ARC=$1
THM=$(basename $1 .zip)
unp -U $1
cd $THM/
for i in $(ls -1 *.png *.xml); do \
echo "$THM/file:$i" >> temp ; \
cat temp | tr "\n" "+" > filelist ; \
done
}
if [[ $1 == "-c" ]]; then
make clean
make -C boot clean
make -C installer clean
rm HomebrewFilter/meta.xml
elif [[ $1 == "-l" ]]; then
make_filelist $2
elif [[ $1 == "-f" ]]; then
FORCE=YES
make_distribution
elif [[ $1 == "-o" ]]; then
FORCE=YES
CHNL=COMEX
make_distribution
elif [[ $1 == "-b" ]]; then
FORCE=YES
compile_boot
else make_distribution
fi