mirror of
https://github.com/OpenMW/openmw.git
synced 2025-01-21 07:23:54 +00:00
Merge branch 'ci_jobs' into 'master'
Enable existing and add CI jobs See merge request OpenMW/openmw!2220
This commit is contained in:
commit
895779f2ec
4 changed files with 55 additions and 25 deletions
|
@ -100,7 +100,22 @@ Ubuntu_GCC:
|
|||
# When CCache doesn't exist (e.g. first build on a fork), build takes more than 1h, which is the default for forks.
|
||||
timeout: 2h
|
||||
|
||||
.Ubuntu_GCC_tests:
|
||||
Ubuntu_GCC_Debug:
|
||||
extends: .Ubuntu
|
||||
cache:
|
||||
key: Ubuntu_GCC_Debug.ubuntu_22.04.v1
|
||||
before_script:
|
||||
- CI/install_debian_deps.sh gcc openmw-deps openmw-deps-dynamic
|
||||
variables:
|
||||
CC: gcc
|
||||
CXX: g++
|
||||
CCACHE_SIZE: 4G
|
||||
CMAKE_BUILD_TYPE: Debug
|
||||
CMAKE_CXX_FLAGS_DEBUG: -O0
|
||||
# When CCache doesn't exist (e.g. first build on a fork), build takes more than 1h, which is the default for forks.
|
||||
timeout: 2h
|
||||
|
||||
Ubuntu_GCC_tests:
|
||||
extends: Ubuntu_GCC
|
||||
cache:
|
||||
key: Ubuntu_GCC_tests.ubuntu_22.04.v1
|
||||
|
@ -130,7 +145,7 @@ Ubuntu_GCC:
|
|||
reports:
|
||||
junit: build/tests.xml
|
||||
|
||||
.Ubuntu_GCC_tests_asan:
|
||||
Ubuntu_GCC_tests_asan:
|
||||
extends: Ubuntu_GCC
|
||||
cache:
|
||||
key: Ubuntu_GCC_asan.ubuntu_22.04.v1
|
||||
|
@ -148,7 +163,7 @@ Ubuntu_GCC:
|
|||
reports:
|
||||
junit: build/tests.xml
|
||||
|
||||
.Ubuntu_GCC_tests_ubsan:
|
||||
Ubuntu_GCC_tests_ubsan:
|
||||
extends: Ubuntu_GCC
|
||||
cache:
|
||||
key: Ubuntu_GCC_ubsan.ubuntu_22.04.v1
|
||||
|
@ -183,7 +198,7 @@ Ubuntu_GCC:
|
|||
reports:
|
||||
junit: build/tests.xml
|
||||
|
||||
.Ubuntu_GCC_tests_coverage:
|
||||
Ubuntu_GCC_tests_coverage:
|
||||
extends: .Ubuntu_GCC_tests_Debug
|
||||
cache:
|
||||
key: Ubuntu_GCC_tests_coverage.ubuntu_22.04.v1
|
||||
|
@ -246,17 +261,29 @@ Ubuntu_GCC:
|
|||
Ubuntu_Clang:
|
||||
extends: .Ubuntu
|
||||
before_script:
|
||||
- CI/install_debian_deps.sh clang clang-tidy openmw-deps openmw-deps-dynamic
|
||||
- CI/install_debian_deps.sh clang openmw-deps openmw-deps-dynamic
|
||||
cache:
|
||||
key: Ubuntu_Clang.ubuntu_22.04.v1
|
||||
key: Ubuntu_Clang.ubuntu_22.04.v2
|
||||
variables:
|
||||
CC: clang
|
||||
CXX: clang++
|
||||
CI_CLANG_TIDY: 1
|
||||
CCACHE_SIZE: 2G
|
||||
# When CCache doesn't exist (e.g. first build on a fork), build takes more than 1h, which is the default for forks.
|
||||
timeout: 3h
|
||||
|
||||
Ubuntu_Clang_Tidy:
|
||||
extends: Ubuntu_Clang
|
||||
before_script:
|
||||
- CI/install_debian_deps.sh clang clang-tidy openmw-deps openmw-deps-dynamic
|
||||
cache:
|
||||
key: Ubuntu_Clang_Tidy.ubuntu_22.04.v1
|
||||
variables:
|
||||
CMAKE_BUILD_TYPE: Debug
|
||||
CMAKE_CXX_FLAGS_DEBUG: -O0
|
||||
CI_CLANG_TIDY: 1
|
||||
# When CCache doesn't exist (e.g. first build on a fork), build takes more than 1h, which is the default for forks.
|
||||
timeout: 3h
|
||||
|
||||
.Ubuntu_Clang_tests:
|
||||
extends: Ubuntu_Clang
|
||||
cache:
|
||||
|
@ -562,7 +589,7 @@ Ubuntu_AndroidNDK_arm64-v8a:
|
|||
- ccache/
|
||||
- build/extern/fetched/
|
||||
before_script:
|
||||
- CI/install_debian_deps.sh gcc
|
||||
- CI/install_debian_deps.sh android
|
||||
stage: build
|
||||
script:
|
||||
- df -h
|
||||
|
|
|
@ -24,11 +24,11 @@ declare -a CMAKE_CONF_OPTS=(
|
|||
-DCMAKE_C_COMPILER_LAUNCHER=ccache
|
||||
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache
|
||||
-DCMAKE_INSTALL_PREFIX=install
|
||||
-DCMAKE_BUILD_TYPE=RelWithDebInfo
|
||||
-DBUILD_SHARED_LIBS=OFF
|
||||
-DUSE_SYSTEM_TINYXML=ON
|
||||
-DOPENMW_USE_SYSTEM_RECASTNAVIGATION=ON
|
||||
-DOPENMW_CXX_FLAGS="-Werror -Werror=implicit-fallthrough" # flags specific to OpenMW project
|
||||
-DCMAKE_EXE_LINKER_FLAGS="${CMAKE_EXE_LINKER_FLAGS} -fuse-ld=mold"
|
||||
)
|
||||
|
||||
if [[ $CI_OPENMW_USE_STATIC_DEPS ]]; then
|
||||
|
@ -52,6 +52,10 @@ if [[ "${CMAKE_BUILD_TYPE}" ]]; then
|
|||
CMAKE_CONF_OPTS+=(
|
||||
-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
|
||||
)
|
||||
else
|
||||
CMAKE_CONF_OPTS+=(
|
||||
-DCMAKE_BUILD_TYPE=RelWithDebInfo
|
||||
)
|
||||
fi
|
||||
|
||||
if [[ "${CMAKE_CXX_FLAGS_DEBUG}" ]]; then
|
||||
|
@ -60,12 +64,6 @@ if [[ "${CMAKE_CXX_FLAGS_DEBUG}" ]]; then
|
|||
)
|
||||
fi
|
||||
|
||||
if [[ "${CMAKE_EXE_LINKER_FLAGS}" ]]; then
|
||||
CMAKE_CONF_OPTS+=(
|
||||
-DCMAKE_EXE_LINKER_FLAGS="${CMAKE_EXE_LINKER_FLAGS}"
|
||||
)
|
||||
fi
|
||||
|
||||
if [[ "${BUILD_WITH_CODE_COVERAGE}" ]]; then
|
||||
CMAKE_CONF_OPTS+=(
|
||||
-DBUILD_WITH_CODE_COVERAGE="${BUILD_WITH_CODE_COVERAGE}"
|
||||
|
@ -97,6 +95,8 @@ if [[ "${BUILD_TESTS_ONLY}" ]]; then
|
|||
-DBUILD_OPENCS=OFF \
|
||||
-DBUILD_WIZARD=OFF \
|
||||
-DBUILD_NAVMESHTOOL=OFF \
|
||||
-DBUILD_BULLETOBJECTTOOL=OFF \
|
||||
-DBUILD_NIFTEST=OFF \
|
||||
-DBUILD_UNITTESTS=${BUILD_UNITTESTS} \
|
||||
-DBUILD_BENCHMARKS=${BUILD_BENCHMARKS} \
|
||||
-DGTEST_ROOT="${GOOGLETEST_DIR}" \
|
||||
|
|
|
@ -9,8 +9,8 @@ print_help() {
|
|||
}
|
||||
|
||||
declare -rA GROUPED_DEPS=(
|
||||
[gcc]="binutils gcc build-essential cmake ccache curl unzip git pkg-config"
|
||||
[clang]="binutils clang make cmake ccache curl unzip git pkg-config"
|
||||
[gcc]="binutils gcc build-essential cmake ccache curl unzip git pkg-config mold"
|
||||
[clang]="binutils clang make cmake ccache curl unzip git pkg-config mold"
|
||||
|
||||
# Common dependencies for building OpenMW.
|
||||
[openmw-deps]="
|
||||
|
@ -75,6 +75,8 @@ declare -rA GROUPED_DEPS=(
|
|||
python3-pip
|
||||
xvfb
|
||||
"
|
||||
|
||||
[android]="binutils build-essential cmake ccache curl unzip git pkg-config"
|
||||
)
|
||||
|
||||
if [[ $# -eq 0 ]]; then
|
||||
|
@ -92,6 +94,7 @@ for group in "$@"; do
|
|||
done
|
||||
|
||||
export APT_CACHE_DIR="${PWD}/apt-cache"
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
set -x
|
||||
mkdir -pv "$APT_CACHE_DIR"
|
||||
apt-get update -yqq
|
||||
|
|
Loading…
Reference in a new issue