cemu_graphic_packs/build.sh
Milan 2eb4360922 Shortened and Colorized Appveyor output (#120)
* Console output compacted and colorized
The installation info took too many lines and won't be revamped while working great as is, so I'd think that it's better to supress any logging. The quiet-mode of the installation doesn't really seem to work either.

The installation part that sometimes errors is irrelevant to the part I've suppressed.
2017-10-19 23:22:18 +02:00

129 lines
4.4 KiB
Bash

#!/bin/bash
BGREEN='\033[1;32m'
GREEN='\033[0;32m'
BCYAN='\033[1;36m'
RED='\033[0;31m'
NC='\033[0m' # Removes Color
baseOutDir=$1
if [ -n "$baseOutDir" ]; then
if [ ! -d "$baseOutDir" ]; then
echo -e "${GREEN}Making base output directory ${BGREEN}$baseOutDir\n"
mkdir "$baseOutDir"
fi
fi
build_dir () {
srcDir=$1
dstDir=$2
if [ -n "$baseOutDir" ]; then
dstDir="$baseOutDir/$dstDir"
fi
params=( "$@" )
rest=( "${params[@]:2}" )
if [ ! -d "$dstDir" ]; then
mkdir -p "$dstDir"
else
rm "$dstDir"/*.txt
fi
for f in "$srcDir"/*.txt
do
filename=`basename $f`
outName="$dstDir/$filename"
#echo "Building $f to $outName with params ${rest[@]}"
php "$f" "${rest[@]}" > "$outName"
if [ $? -ne 0 ]; then
rm "$outName"
fi
done
}
res_360p=( "Performance" 640 360 )
res_480p=( "Performance" 854 480 )
res_540p=( "Performance" 960 540 )
res_720p=( "Performance" 1280 720 )
res_900p=( "Quality" 1600 900 )
res_1080p=( "Quality" 1920 1080 )
res_1080p219=( "Quality" 2560 1080 )
res_1440p=( "Quality" 2560 1440 )
res_1440p219=( "Quality" 3440 1440 )
res_1800p=( "Quality" 3200 1800 )
res_2160p=( "Quality" 3840 2160 )
res_2160p219=( "Quality" 5120 2160 )
res_2880p=( "Enthusiast" 5120 2880 )
res_4320p=( "Enthusiast" 7680 4320 )
res_5760p=( "Enthusiast" 10240 5760 )
std_respack () {
gameName=$1
params=( "$@" )
rest=( "${params[@]:1}" )
echo -e "${GREEN}[Building] ${BCYAN}$gameName ${NC}to ${params[@]:1}"
for arrg in "${rest[@]}"
do
resvarname="res_${arrg}[@]"
if [ -v "$resvarname" ]; then
resdata=( "${!resvarname}" )
prefix="${resdata[0]}"
subparams=( "${resdata[@]:1}" )
inFolder="Source/$gameName"
outFolder="${gameName}_${arrg}"
if [ -n "$prefix" ]; then
outFolder="$prefix/$outFolder"
fi
#width="${subparams[0]}"
#height="${subparams[1]}"
#echo "$arrg w: $width h: $height inFolder: $inFolder outFolder: $outFolder"
build_dir "$inFolder" "$outFolder" "${subparams[@]}"
elif [ -n "$arrg" ]; then #only if requested resolution name not empty (which happens when you remove array elem naively)
echo -e "${RED}$arrg resolution not defined, define it in build.sh"
exit 1
fi
done
}
res16by9=( "360p" "480p" "540p" "720p" "900p" "1080p" "1440p" "1800p" "2160p" "2880p" "4320p" "5760p" )
res21by9=( "1080p219" "1440p219" "2160p219" )
just720p=( "720p" )
just1080p=( "1080p" )
std_respack "Bayonetta" "${res16by9[@]/$just720p}"
std_respack "Bayonetta2" "${res16by9[@]/$just720p}"
std_respack "BreathOfTheWild" "${res16by9[@]/$just720p}" "${res21by9[@]}"
std_respack "CaptainToad" "${res16by9[@]/$just720p}" "${res21by9[@]}"
std_respack "ColorSplash" "${res16by9[@]/$just720p}"
std_respack "FistoftheNorthStar" "${res16by9[@]/$just720p}"
std_respack "GhostlyAdventures" "${res16by9[@]/$just720p}"
std_respack "GhostlyAdventures2" "${res16by9[@]/$just720p}"
std_respack "Guacamelee" "${res16by9[@]/$just720p}"
std_respack "HyruleWarriors" "${res16by9[@]/$just720p}"
std_respack "KirbyRainbowCurse" "${res16by9[@]/$just720p}"
std_respack "MarioKart8" "${res16by9[@]/$just720p}" "${res21by9[@]}"
std_respack "MarioTennis" "${res16by9[@]/$just720p}"
std_respack "MightyNumber9" "${res16by9[@]/$just720p}"
std_respack "NintendoLand" "${res16by9[@]/$just720p}"
std_respack "PokkenTournament" "${res16by9[@]/$just720p}"
std_respack "SonicLostWorld" "${res16by9[@]/$just720p}" "${res21by9[@]}"
std_respack "Splatoon" "${res16by9[@]/$just720p}" "${res21by9[@]}"
std_respack "SpongeBob" "${res16by9[@]/$just720p}"
std_respack "StarFoxGuard" "${res16by9[@]/$just720p}"
std_respack "StarFoxZero" "${res16by9[@]/$just720p}"
std_respack "SuperMario3DWorld" "${res16by9[@]/$just720p}" "${res21by9[@]}"
std_respack "SuperSmashBros" "${res16by9[@]/$just1080p}"
std_respack "Tekken" "${res16by9[@]/$just720p}"
std_respack "TropicalFreeze" "${res16by9[@]/$just720p}" "${res21by9[@]}"
std_respack "TwilightPrincessHD" "${res16by9[@]/$just1080p}"
std_respack "WarriorsOrochi3" "${res16by9[@]/$just720p}"
std_respack "WindWakerHD" "${res16by9[@]/$just1080p}" "${res21by9[@]}"
std_respack "Wonderful101" "${res16by9[@]/$just720p}"
std_respack "WoollyWorld" "${res16by9[@]/$just720p}" "${res21by9[@]}"
std_respack "XenobladeX" "${res16by9[@]/$just720p}" "${res21by9[@]}"
echo -e "${NC}"