This is a repository to host CI jobs to build dependencies for OpenMW via vcpkg to be cached as binary artifacts at https://gitlab.com/OpenMW/openmw-deps.
Jobs start automatically on push to master and automatically push archived artifacts to another git repository.
You can test the repo is working on your own fork using a deploy key and a gpg key you generate.
To make this work properly multiple secrets have to be configured:
SSH_PRIVATE_KEYwith private SSH key allowed to push changes to repository specified viaPUSH_URLvariable (e.g. generated byssh-keygen).- You should use a deploy key setup on your fork of https://gitlab.com/OpenMW/openmw-dep
GPG_PRIVATE_KEYwith private GPG key to sign commits with GPG signature (e.g. generated withgpg --full-generate-key).GPG_PRIVATE_KEY_PASSPHRASEa passphrase for theGPG_PRIVATE_KEYto make it possible to use the GPG key (e.g. the value used duringgpg --full-generate-key).- You can generate a gpg key with the git author information used in CI. It does not need to be associated with any account.
Also the following variable has to be set:
PUSH_URLwith target SSH-based URL forgit pushcommand (e.g.[email protected]:OpenMW/openmw-deps.gitor your fork).
Any pushes should create a branch/commit on the openmw-dep repo. However, the manifest file links will not work. You will need to create a tag/release for that to work.
You need to install the following: brew install autoconf autoconf-archive automake
vcpkg install --overlay-ports=ports --overlay-triplets=triplets --triplet arm64-osx-dynamic --host-triplet arm64-osx-dynamicvcpkg export --x-all-installed --raw --output vcpkg-macos-test --output-dir DIRECTORY
You will need to change the variables towards the top of the OpenMW before_script.macos.sh file to:
DEPENDENCIES_ROOT_PATH="/DIRECTORY/vcpkg-macos-test"
You will also need to change this:
if [[ "${MACOS_AMD64}" ]]; then
CMAKE_CONF_OPTS+=(
-D CMAKE_OSX_ARCHITECTURES="x86_64"
)
fito:
if [[ "${MACOS_AMD64}" ]]; then
ICU_PATH=$(arch -x86_64 /usr/local/bin/brew --prefix icu4c)
OPENAL_PATH=$(arch -x86_64 /usr/local/bin/brew --prefix openal-soft)
CMAKE_CONF_OPTS+=(
-D CMAKE_OSX_ARCHITECTURES="x86_64"
-D CMAKE_PREFIX_PATH="$DEPENDENCIES_ROOT_PATH;$QT_PATH;$OPENAL_PATH"
-D Boost_INCLUDE_DIR="$DEPENDENCIES_ROOT_PATH/include"
-D OSGPlugins_LIB_DIR="$DEPENDENCIES_ROOT_PATH/lib/osgPlugins-3.6.5"
-D ICU_ROOT="$ICU_PATH"
-D CMAKE_OSX_DEPLOYMENT_TARGET="13.6"
-D OPENMW_USE_SYSTEM_RECASTNAVIGATION=TRUE
)
else
VCPKG_TARGET_TRIPLET="arm64-osx-dynamic"
DEPENDENCIES_INSTALLED_PATH="$DEPENDENCIES_ROOT_PATH/installed/$VCPKG_TARGET_TRIPLET"
CMAKE_CONF_OPTS+=(
-D CMAKE_PREFIX_PATH="$DEPENDENCIES_INSTALLED_PATH;$QT_PATH"
-D collada_dom_DIR="$DEPENDENCIES_INSTALLED_PATH/share/collada-dom"
-DVCPKG_HOST_TRIPLET="$VCPKG_TARGET_TRIPLET"
-DVCPKG_TARGET_TRIPLET="$VCPKG_TARGET_TRIPLET"
-DCMAKE_TOOLCHAIN_FILE="$DEPENDENCIES_ROOT_PATH/scripts/buildsystems/vcpkg.cmake"
)
fi