You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

87 lines
1.7 KiB

#!/usr/bin/env bash
set -euo pipefail
echo "Building for target: clockwork pi GameSH"
declare -r DIR="$(dirname "${BASH_SOURCE[0]}")"
cd "$DIR"
declare -r ABSDIR="$(pwd)"
usage() {
echo "${BASH_SOURCE[0]} [--target /path/to/devliution/in/gameshell/menu] [--usage]"
exit 1
}
POSITIONAL=()
while [[ $# -gt 0 ]]
do
key="$1"
case $key in
-t|--target)
TARGET="$2"
shift # past argument
shift # past value
;;
--help|-h|--usage|-u)
usage
shift # past argument
;;
*) # unknown option
POSITIONAL+=("$1") # save it in an array for later
shift # past argument
;;
esac
done
set -- "${POSITIONAL[@]}" # restore positional parameters
install_deps() {
sudo apt install -y cmake libsdl2-dev libbz2-dev libsodium-dev
}
main() {
install_deps
build
install
}
build() {
cd ../..
rm -f CMakeCache.txt
cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release -DTARGET_PLATFORM=cpigamesh -DDISABLE_LTO=ON
cmake --build build -j $(getconf _NPROCESSORS_ONLN)
cd -
}
install() {
git rev-parse HEAD > /home/cpi/games/devilutionX/build/devilutionx.rev
if [ -z ${TARGET+x} ]; then
local target_dir="25_devilutionX"
else
local target_dir=${TARGET#"/home/cpi/apps/Menu/"}
fi
local script_dir="/home/cpi/apps/Menu/$target_dir"
local target_dir_base=`basename "$target_dir"`
local target_dir_dir=`dirname "$target_dir"`
local icon_name="${target_dir_dir}/${target_dir_base#*_}"
local icon_dir="/home/cpi/launcher/skin/default/Menu/GameShell/${icon_name}.png"
echo $target_dir
echo $script_dir
echo $target_dir_base
echo $target_dir_dir
echo $icon_name
echo $icon_dir
mkdir -p $script_dir
cp __init__.py $script_dir
cp Devilution.png $icon_dir
}
main