metaforce/.gitlab-ci.yml

199 lines
4.8 KiB
YAML
Raw Normal View History

2017-12-31 02:44:18 +00:00
.build:variables:
variables: &build_variables
GIT_SUBMODULE_STRATEGY: recursive
2021-02-20 21:10:08 +00:00
#.build:macos: &macos_definition
# stage: build
# tags:
# - macos
# script:
# - mkdir build
# - cd build
# - >
# cmake
# -GNinja
# -DCMAKE_BUILD_TYPE=RelWithDebInfo
# -DURDE_DLPACKAGE=urde-$CI_PIPELINE_ID-macos-x86_64-$URDE_VECTOR_ISA
# -DURDE_VECTOR_ISA=$URDE_VECTOR_ISA
# ..
# - ninja urde hecl visigen
# - cd Binaries
# - cp -R urde.app $CI_PROJECT_DIR/URDE.app
# - cd $CI_PROJECT_DIR
# - strip -S -o URDE.app/Contents/MacOS/urde URDE.app/Contents/MacOS/urde
# - strip -S -o URDE.app/Contents/MacOS/hecl URDE.app/Contents/MacOS/hecl
# - strip -S -o URDE.app/Contents/MacOS/visigen URDE.app/Contents/MacOS/visigen
# - (if [ "${URDE_MACOS_CODESIGN_UID}" != "" ]; then codesign -s $URDE_MACOS_CODESIGN_UID --deep URDE.app; else echo "Unable to sign app bundle :("; fi);
# only:
# - release
# - dev
# artifacts:
# name: "urde-$CI_PIPELINE_ID-macos-x86_64-$URDE_VECTOR_ISA"
# paths:
# - URDE.app/
# expire_in: 1 week
2017-12-31 02:44:18 +00:00
2021-02-20 21:10:08 +00:00
#build:macos:sse3:
# <<: *macos_definition
# variables:
# <<: *build_variables
# URDE_VECTOR_ISA: sse3
2017-12-31 02:44:18 +00:00
2021-02-20 21:10:08 +00:00
#build:macos:sse41:
# <<: *macos_definition
# variables:
# <<: *build_variables
# URDE_VECTOR_ISA: sse41
2017-12-31 02:44:18 +00:00
2021-02-20 21:10:08 +00:00
#build:macos:avx:
# <<: *macos_definition
# variables:
# <<: *build_variables
# URDE_VECTOR_ISA: avx
2017-12-31 02:44:18 +00:00
2021-02-20 21:10:08 +00:00
#build:macos:avx2:
# <<: *macos_definition
# variables:
# <<: *build_variables
# URDE_VECTOR_ISA: avx2
2017-12-31 02:44:18 +00:00
.build:linux: &linux_definition
stage: build
tags:
- linux
script:
- mkdir build
- cd build
- >
cmake
-GNinja
-DCMAKE_BUILD_TYPE=RelWithDebInfo
-DURDE_DLPACKAGE=urde-$CI_PIPELINE_ID-linux-x86_64-$URDE_VECTOR_ISA
-DURDE_VECTOR_ISA=$URDE_VECTOR_ISA
..
- nice -n19 ninja -j8 urde hecl visigen
2018-05-11 07:02:42 +00:00
- cp Binaries/urde $CI_PROJECT_DIR
- strip --strip-debug -o $CI_PROJECT_DIR/urde Binaries/urde
2017-12-31 02:44:18 +00:00
- rm -r $CI_PROJECT_DIR/hecl
2018-05-11 07:02:42 +00:00
- strip --strip-debug -o $CI_PROJECT_DIR/hecl Binaries/hecl
2017-12-31 02:44:18 +00:00
- rm -r $CI_PROJECT_DIR/visigen
2018-05-11 07:02:42 +00:00
- strip --strip-debug -o $CI_PROJECT_DIR/visigen Binaries/visigen
2017-12-31 02:44:18 +00:00
only:
- release
- dev
2017-12-31 02:44:18 +00:00
artifacts:
name: "urde-$CI_PIPELINE_ID-linux-x86_64-$URDE_VECTOR_ISA"
paths:
- urde
- hecl
- visigen
expire_in: 1 week
build:linux:sse3:
<<: *linux_definition
variables:
<<: *build_variables
URDE_VECTOR_ISA: sse3
build:linux:sse41:
<<: *linux_definition
variables:
<<: *build_variables
URDE_VECTOR_ISA: sse41
build:linux:avx:
<<: *linux_definition
variables:
<<: *build_variables
URDE_VECTOR_ISA: avx
build:linux:avx2:
<<: *linux_definition
variables:
<<: *build_variables
URDE_VECTOR_ISA: avx2
2018-01-02 05:57:20 +00:00
.build:win32: &win32_definition
stage: build
tags:
- win32
script:
- cmd.exe /c "call `"C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars64.bat`" && set > %temp%\vcvars.txt"
- >
Get-Content "$env:temp\vcvars.txt" | Foreach-Object {
if ($_ -match "^(.*?)=(.*)$") {
Set-Content "env:\$($matches[1])" $matches[2]
}
}
2018-01-02 05:57:20 +00:00
- mkdir build
- cd build
- >
cmake
-GNinja
-DCMAKE_BUILD_TYPE=RelWithDebInfo
-DCMAKE_MSVC_RUNTIME_LIBRARY=MultiThreaded
-DURDE_DLPACKAGE="urde-$env:CI_PIPELINE_ID-win32-x86_64-$env:URDE_VECTOR_ISA"
-DURDE_VECTOR_ISA="$env:URDE_VECTOR_ISA"
2020-05-27 17:15:24 +00:00
-DLLVM_ROOT_DIR=C:\projects\deps\llvm
-DCMAKE_C_FLAGS=
-DCMAKE_CXX_FLAGS=
2018-01-02 05:57:20 +00:00
..
- ninja urde hecl visigen
- 'copy Binaries\urde.exe "$env:CI_PROJECT_DIR\urde.exe"'
- 'pdbcopy Binaries\urde.pdb "$env:CI_PROJECT_DIR\urde.pdb" -p'
- 'copy Binaries\hecl.exe "$env:CI_PROJECT_DIR\hecl.exe"'
- 'pdbcopy Binaries\hecl.pdb "$env:CI_PROJECT_DIR\hecl.pdb" -p'
- 'copy Binaries\visigen.exe "$env:CI_PROJECT_DIR\visigen.exe"'
- 'pdbcopy Binaries\visigen.pdb "$env:CI_PROJECT_DIR\visigen.pdb" -p'
2018-01-02 05:57:20 +00:00
only:
- release
- dev
2018-01-02 05:57:20 +00:00
artifacts:
name: "urde-$env:CI_PIPELINE_ID-win32-x86_64-$env:URDE_VECTOR_ISA"
2018-01-02 05:57:20 +00:00
paths:
- urde.exe
- urde.pdb
- hecl.exe
- hecl.pdb
- visigen.exe
- visigen.pdb
expire_in: 1 week
build:win32:sse2:
<<: *win32_definition
variables:
<<: *build_variables
URDE_VECTOR_ISA: sse2
build:win32:sse41:
<<: *win32_definition
variables:
<<: *build_variables
URDE_VECTOR_ISA: sse41
build:win32:avx:
<<: *win32_definition
variables:
<<: *build_variables
URDE_VECTOR_ISA: avx
build:win32:avx2:
<<: *win32_definition
variables:
<<: *build_variables
URDE_VECTOR_ISA: avx2
2017-12-31 02:44:18 +00:00
deploy:
stage: deploy
only:
- release
- dev
2017-12-31 02:44:18 +00:00
dependencies: []
tags:
- server
variables:
GIT_STRATEGY: none
2017-12-31 02:44:18 +00:00
script:
- python3 /var/lib/gitlab-runner/deploy_urde.py $CI_PIPELINE_ID $CI_COMMIT_REF_NAME