Files
RMG/Source/Script/Build.sh
T
2024-01-23 13:58:41 +01:00

34 lines
861 B
Bash
Executable File

#!/usr/bin/env bash
set -ex
script_dir="$(dirname "$0")"
toplvl_dir="$(realpath "$script_dir/../../")"
build_config="${1:-Debug}"
build_dir="$toplvl_dir/Build/$build_config"
threads="${2:-$(nproc)}"
if [ "$1" = "--help" ] ||
[ "$1" = "-h" ]
then
echo "$0 [Build Config] [Thread Count]"
exit
fi
mkdir -p "$build_dir"
cmake -S "$toplvl_dir" -B "$build_dir" -DCMAKE_BUILD_TYPE="$build_config" -DPORTABLE_INSTALL=ON -DUSE_ANGRYLION=ON -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -G "Ninja"
cmake --build "$build_dir" --parallel "$threads"
if [[ "$build_config" = "Debug" ]] ||
[[ "$build_config" = "RelWithDebInfo" ]]
then
cmake --install "$build_dir" --prefix="$toplvl_dir"
else
cmake --install "$build_dir" --strip --prefix="$toplvl_dir"
fi
if [[ $(uname -s) = *MINGW64* ]]
then
cmake --build "$build_dir" --target=bundle_dependencies
fi