@@ -11,21 +11,18 @@ build-linux:
1111 matrix :
1212 - COMPILER : [gcc-11, gcc-12, gcc-13, clang-11.0.1, clang-12, clang-13, clang-14, clang-15, clang-16, clang-17]
1313 TYPE : [exe, static, shared]
14- variables :
15- CONFIGS : ' { "exe": "platform_config.exe.cmake", "static": "platform_config.static.cmake", "shared": "platform_config.shared.cmake" }'
1614 image : $CI_REGISTRY/idi/dockerfiles/cmake-cpp:$COMPILER
1715 rules :
1816 - if : $CI_PIPELINE_SOURCE != "merge_request_event" && (($COMPILER =~ /(gcc-14|clang-14)$/)) # clang-14 image has a bug with libc++13
1917 allow_failure : true
2018 - if : $CI_PIPELINE_SOURCE != "merge_request_event" # Only on push events (same as 'except: merge_requests')
21- before_script :
22- - apt-get update && apt-get install -y -qq jq
19+ before_script : # This is required for pulling dependencies on projects
2320 - git config --global credential.helper store
2421 - echo "https://gitlab-ci-token:${CI_JOB_TOKEN}@${CI_SERVER_HOST}" > ~/.git-credentials
2522 script :
2623 - cmake --version && $CC --version && $CXX --version
2724 - mkdir -p build && cd build
28- - cmake .. $CMAKE_ARGS -DIDICMAKE_PLATFORM_CONFIG=../$(echo $CONFIGS | jq -r .$TYPE)
25+ - cmake .. $CMAKE_ARGS -DIDICMAKE_PLATFORM_CONFIG=../platform-config .$TYPE.cmake
2926 - cmake --build . -j 8
3027 - ctest -C Debug --output-junit ctest.xml
3128 interruptible : true
@@ -36,3 +33,31 @@ build-linux:
3633 - build/ctest.xml
3734 reports :
3835 junit : build/ctest.xml
36+
37+ build-windows :
38+ stage : build
39+ tags : [windows, beefy]
40+ parallel :
41+ matrix :
42+ - TYPE : [exe, static, shared]
43+ image : $CI_REGISTRY/idi/dockerfiles/cmake-cpp
44+ rules :
45+ - if : $CI_PIPELINE_SOURCE != "merge_request_event" # Only on push events (same as 'except: merge_requests')
46+ before_script : # This is required for pulling dependencies on projects
47+ - git config --system credential.helper store
48+ - echo "https://gitlab-ci-token:${CI_JOB_TOKEN}@${CI_SERVER_HOST}`n" > ~/.git-credentials
49+ script :
50+ - cmake --version
51+ - mkdir -p build
52+ - cd build
53+ - cmake .. $CMAKE_ARGS -DIDICMAKE_PLATFORM_CONFIG="../platform-config.$TYPE.cmake"
54+ - cmake --build . -j 8
55+ - ctest -C Debug --output-junit ctest.xml
56+ interruptible : true
57+ artifacts :
58+ when : always
59+ name : " idi-cpp-template-$TYPE-win64-$CI_COMMIT_SHORT_SHA"
60+ paths :
61+ - build/ctest.xml
62+ reports :
63+ junit : build/ctest.xml
0 commit comments