Something went wrong. Try again.
OpenMW is an open implementation of the Morrowind engine
Something went wrong. Try again.
Shell
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132#!/bin/bash -e
VERBOSE=""USE_CCACHE=""KEEP=""USE_WERROR=""DEPENDENCIES_ROOT_PATH="/tmp/openmw-deps"
source ./CI/macos/deps_versions.sh
while getopts VCkEd: ARGdo case $ARG in V ) VERBOSE=true ;;
C ) USE_CCACHE=true ;;
k ) KEEP=true ;;
E ) USE_WERROR=true ;;
d ) DEPENDENCIES_ROOT_PATH="$OPTARG" ;;
* ) cat <<EOFUsage: $0 [-VCkETd]Options: -C Use ccache. -d <dir> This folder points to the openmw-deps (e.g. /tmp/openmw-deps). -k Keep the old build directory, default is to delete it. -V Run verbosely -E Use warnings as errors (-Werror)EOF exit 1 ;; esacdone
if [[ -z $KEEP ]]; then if [[ -n $VERBOSE && -d "build" ]]; then echo "Deleting existing build directory" fi rm -fr buildfi
mkdir -p buildcd build
declare -a CMAKE_CONF_OPTS=(-D CMAKE_C_COMPILER="clang"-D CMAKE_CXX_COMPILER="clang++"-DOPENMW_USE_SYSTEM_YAML_CPP=OFF-D CMAKE_OSX_DEPLOYMENT_TARGET="14.8")
declare -a BUILD_OPTS=(-D BUILD_OPENMW=TRUE-D BUILD_OPENCS=TRUE-D BUILD_ESMTOOL=TRUE-D BUILD_BSATOOL=TRUE-D BUILD_ESSIMPORTER=TRUE-D BUILD_NIFTEST=TRUE-D BUILD_NAVMESHTOOL=TRUE-D BUILD_BULLETOBJECTTOOL=TRUE-G"Unix Makefiles")
if [[ "${MACOS_AMD64}" ]]; then VCPKG_TARGET_TRIPLET="x64-osx-dynamic" CMAKE_CONF_OPTS+=( -D CMAKE_OSX_ARCHITECTURES="x86_64" )else VCPKG_TARGET_TRIPLET="arm64-osx-dynamic"fi
DEPENDENCIES_INSTALLED_PATH="$DEPENDENCIES_ROOT_PATH/installed/$VCPKG_TARGET_TRIPLET"QT_PATH=/tmp/Qt/$QT_VER/macos
CMAKE_CONF_OPTS+=( -D CMAKE_PREFIX_PATH="$DEPENDENCIES_INSTALLED_PATH;$QT_PATH" -DVCPKG_HOST_TRIPLET="$VCPKG_TARGET_TRIPLET" -DVCPKG_TARGET_TRIPLET="$VCPKG_TARGET_TRIPLET" -DCMAKE_TOOLCHAIN_FILE="$DEPENDENCIES_ROOT_PATH/scripts/buildsystems/vcpkg.cmake")
if [[ "${CMAKE_BUILD_TYPE}" ]]; then CMAKE_CONF_OPTS+=( -D CMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} )else CMAKE_CONF_OPTS+=( -D CMAKE_BUILD_TYPE=RelWithDebInfo )fi
if [[ -n $USE_CCACHE ]]; then CMAKE_CONF_OPTS+=( -D CMAKE_C_COMPILER_LAUNCHER="ccache" -D CMAKE_CXX_COMPILER_LAUNCHER="ccache" )fi
if [[ -n $USE_WERROR ]]; then CMAKE_CONF_OPTS+=( -D OPENMW_CXX_FLAGS="-Werror" )fi
if [[ -n $VERBOSE ]]; then echo CMake arguments: \ "${CMAKE_CONF_OPTS[@]}" \ "${BUILD_OPTS[@]}" \ ..fi
cmake \ "${CMAKE_CONF_OPTS[@]}" \ "${BUILD_OPTS[@]}" \ ..