4 BUILD_IMAGES_PROJECT: cmocka/gitlab-build-images
5 FEDORA_BUILD: buildenv-fedora
6 CENTOS7_BUILD: buildenv-centos7
7 TUMBLEWEED_BUILD: buildenv-tumbleweed
8 UBUNTU_BUILD: buildenv-ubuntu
17 image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$CENTOS7_BUILD
19 - mkdir -p obj && cd obj && cmake3
20 -DCMAKE_BUILD_TYPE=RelWithDebInfo
22 -DUNIT_TESTING=ON .. &&
23 make -j$(nproc) && ctest --output-on-failure
36 image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$FEDORA_BUILD
38 - mkdir -p obj && cd obj && cmake
39 -DCMAKE_INSTALL_PREFIX=/tmp/local
40 -DCMAKE_BUILD_TYPE=RelWithDebInfo
42 -DUNIT_TESTING=ON .. &&
43 make -j$(nproc) && ctest --output-on-failure && make install
54 fedora/address-sanitizer:
56 image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$FEDORA_BUILD
58 - mkdir -p obj && cd obj && cmake
59 -DCMAKE_BUILD_TYPE=AddressSanitizer
61 -DUNIT_TESTING=ON .. &&
62 make -j$(nproc) && ctest --output-on-failure
73 fedora/undefined-sanitizer:
75 image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$FEDORA_BUILD
77 - mkdir -p obj && cd obj && cmake
78 -DCMAKE_BUILD_TYPE=UndefinedSanitizer
81 && make -j$(nproc) && ctest --output-on-failure
96 image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$FEDORA_BUILD
99 if [[ -z "$CI_COMMIT_BEFORE_SHA" ]]; then
100 export CI_COMMIT_BEFORE_SHA=$(git rev-parse "${CI_COMMIT_SHA}~15")
103 # Check if the commit exists in this branch
104 # This is not the case for a force push
105 git branch --contains $CI_COMMIT_BEFORE_SHA 2>/dev/null || export CI_COMMIT_BEFORE_SHA=$(git rev-parse "${CI_COMMIT_SHA}~15")
107 export CI_COMMIT_RANGE="$CI_COMMIT_BEFORE_SHA..$CI_COMMIT_SHA"
110 --build-dir=obj-csbuild
111 --prep-cmd="cmake -DCMAKE_BUILD_TYPE=Debug -DPICKY_DEVELOPER=ON -DUNIT_TESTING=ON @SRCDIR@"
112 --build-cmd "make clean && make -j$(nproc)"
113 --git-commit-range $CI_COMMIT_RANGE
115 --print-current --print-fixed
130 - mkdir -p obj-freebsd && cd obj-freebsd && cmake
131 -DCMAKE_BUILD_TYPE=RelWithDebInfo
133 -DUNIT_TESTING=ON .. &&
134 make && ctest --output-on-failure
140 - branches@cwrap/pam_wrapper
141 - branches@cryptomilk/pam_wrapper
147 # pam_wrapper stopped to work with the latest OpenPAM version, this is a
148 # bigger effort to investigate.
151 tumbleweed/x86_64/gcc:
153 image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$TUMBLEWEED_BUILD
155 - mkdir -p obj && cd obj && cmake
156 -DCMAKE_BUILD_TYPE=RelWithDebInfo
158 -DUNIT_TESTING=ON .. &&
159 make -j$(nproc) && ctest --output-on-failure
170 tumbleweed/x86_64/gcc7:
172 image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$TUMBLEWEED_BUILD
174 - mkdir -p obj && cd obj && cmake
175 -DCMAKE_C_COMPILER=gcc-7 -DCMAKE_CXX_COMPILER=g++-7
176 -DCMAKE_BUILD_TYPE=RelWithDebInfo
178 -DUNIT_TESTING=ON .. &&
179 make -j$(nproc) && ctest --output-on-failure
190 # PICKY_DEVELOPER IS OFF
191 # => https://github.com/python/cpython/pull/19133
192 tumbleweed/x86_64/clang:
194 image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$TUMBLEWEED_BUILD
196 - mkdir -p obj && cd obj && cmake
197 -DCMAKE_BUILD_TYPE=RelWithDebInfo
198 -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++
199 -DPICKY_DEVELOPER=OFF
200 -DUNIT_TESTING=ON .. &&
201 make -j$(nproc) && ctest --output-on-failure
212 # PICKY_DEVELOPER IS OFF
213 # => https://github.com/python/cpython/pull/19133
214 tumbleweed/static-analysis:
216 image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$TUMBLEWEED_BUILD
218 - export CCC_CC=clang
219 - export CCC_CXX=clang++
220 - mkdir -p obj && cd obj && scan-build cmake
221 -DCMAKE_BUILD_TYPE=Debug
222 -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++
223 -DPICKY_DEVELOPER=OFF
224 -DUNIT_TESTING=ON .. &&
225 scan-build --status-bugs -o scan make -j$(nproc)
238 image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$UBUNTU_BUILD
240 - mkdir -p obj && cd obj && cmake
241 -DCMAKE_BUILD_TYPE=RelWithDebInfo
243 -DUNIT_TESTING=ON .. &&
244 make -j$(nproc) && ctest --output-on-failure