|
| 1 | +#!/bin/sh -e |
| 2 | + |
| 3 | +# Silence a git warning |
| 4 | +git config --global advice.detachedHead false |
| 5 | + |
| 6 | +rm -fr build |
| 7 | +mkdir build |
| 8 | +cd build |
| 9 | + |
| 10 | +DEPENDENCIES_ROOT="/tmp/openmw-deps" |
| 11 | + |
| 12 | +if [[ "${MACOS_AMD64}" ]]; then |
| 13 | + QT_PATH=$(arch -x86_64 /usr/local/bin/brew --prefix qt@6) |
| 14 | + ICU_PATH=$(arch -x86_64 /usr/local/bin/brew --prefix icu4c) |
| 15 | + OPENAL_PATH=$(arch -x86_64 /usr/local/bin/brew --prefix openal-soft) |
| 16 | + CCACHE_EXECUTABLE=$(arch -x86_64 /usr/local/bin/brew --prefix ccache)/bin/ccache |
| 17 | +else |
| 18 | + QT_PATH=$(brew --prefix qt@6) |
| 19 | + ICU_PATH=$(brew --prefix icu4c) |
| 20 | + OPENAL_PATH=$(brew --prefix openal-soft) |
| 21 | + CCACHE_EXECUTABLE=$(brew --prefix ccache)/bin/ccache |
| 22 | +fi |
| 23 | + |
| 24 | +declare -a CMAKE_CONF_OPTS=( |
| 25 | +-D CMAKE_PREFIX_PATH="$DEPENDENCIES_ROOT;$QT_PATH;$OPENAL_PATH" |
| 26 | +-D CMAKE_C_COMPILER_LAUNCHER="$CCACHE_EXECUTABLE" |
| 27 | +-D CMAKE_CXX_COMPILER_LAUNCHER="$CCACHE_EXECUTABLE" |
| 28 | +-D CMAKE_CXX_FLAGS="-stdlib=libc++" |
| 29 | +-D CMAKE_C_COMPILER="clang" |
| 30 | +-D CMAKE_CXX_COMPILER="clang++" |
| 31 | +-D CMAKE_OSX_DEPLOYMENT_TARGET="13.6" |
| 32 | +-D OPENMW_USE_SYSTEM_RECASTNAVIGATION=TRUE |
| 33 | +-D Boost_INCLUDE_DIR="$DEPENDENCIES_ROOT/include" |
| 34 | +-D OSGPlugins_LIB_DIR="$DEPENDENCIES_ROOT/lib/osgPlugins-3.6.5" |
| 35 | +-D ICU_ROOT="$ICU_PATH" |
| 36 | +-D OPENMW_OSX_DEPLOYMENT=TRUE |
| 37 | +) |
| 38 | + |
| 39 | +declare -a BUILD_OPTS=( |
| 40 | +-D BUILD_OPENMW=TRUE |
| 41 | +-D BUILD_OPENCS=TRUE |
| 42 | +-D BUILD_ESMTOOL=TRUE |
| 43 | +-D BUILD_BSATOOL=TRUE |
| 44 | +-D BUILD_ESSIMPORTER=TRUE |
| 45 | +-D BUILD_NIFTEST=TRUE |
| 46 | +-D BUILD_NAVMESHTOOL=TRUE |
| 47 | +-D BUILD_BULLETOBJECTTOOL=TRUE |
| 48 | +-G"Unix Makefiles" |
| 49 | +) |
| 50 | + |
| 51 | +if [[ "${MACOS_AMD64}" ]]; then |
| 52 | + CMAKE_CONF_OPTS+=( |
| 53 | + -D CMAKE_OSX_ARCHITECTURES="x86_64" |
| 54 | + ) |
| 55 | +fi |
| 56 | + |
| 57 | +if [[ "${CMAKE_BUILD_TYPE}" ]]; then |
| 58 | + CMAKE_CONF_OPTS+=( |
| 59 | + -D CMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} |
| 60 | + ) |
| 61 | +else |
| 62 | + CMAKE_CONF_OPTS+=( |
| 63 | + -D CMAKE_BUILD_TYPE=RelWithDebInfo |
| 64 | + ) |
| 65 | +fi |
| 66 | + |
| 67 | +if [[ "${MACOS_AMD64}" ]]; then |
| 68 | + arch -x86_64 cmake \ |
| 69 | + "${CMAKE_CONF_OPTS[@]}" \ |
| 70 | + "${BUILD_OPTS[@]}" \ |
| 71 | + .. |
| 72 | +else |
| 73 | + cmake \ |
| 74 | + "${CMAKE_CONF_OPTS[@]}" \ |
| 75 | + "${BUILD_OPTS[@]}" \ |
| 76 | + .. |
| 77 | +fi |
0 commit comments