3 BUILD_IMAGES_PROJECT: cmocka/gitlab-build-images
4 FEDORA_BUILD: buildenv-fedora
5 CENTOS7_BUILD: buildenv-centos7
6 TUMBLEWEED_BUILD: buildenv-tumbleweed
7 MINGW_BUILD: buildenv-mingw
8 UBUNTU_BUILD: buildenv-ubuntu
11 image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$CENTOS7_BUILD
13 - mkdir -p obj && cd obj && cmake3
14 -DCMAKE_BUILD_TYPE=RelWithDebInfo
16 -DUNIT_TESTING=ON .. &&
17 make -j$(nproc) && ctest --output-on-failure
29 image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$FEDORA_BUILD
31 - mkdir -p obj && cd obj && cmake
32 -DCMAKE_INSTALL_PREFIX=/tmp/local
33 -DCMAKE_BUILD_TYPE=RelWithDebInfo
35 -DUNIT_TESTING=ON .. &&
36 make -j$(nproc) && ctest --output-on-failure && make install
47 fedora/address-sanitizer:
48 image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$FEDORA_BUILD
50 - mkdir -p obj && cd obj && cmake
51 -DCMAKE_BUILD_TYPE=AddressSanitizer
53 -DUNIT_TESTING=ON .. &&
54 make -j$(nproc) && ctest --output-on-failure
65 fedora/undefined-sanitizer:
66 image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$FEDORA_BUILD
68 - mkdir -p obj && cd obj && cmake
69 -DCMAKE_BUILD_TYPE=UndefinedSanitizer
71 && make -j$(nproc) && ctest --output-on-failure
85 image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$FEDORA_BUILD
88 if [[ -z "$CI_COMMIT_BEFORE_SHA" ]]; then
89 export CI_COMMIT_BEFORE_SHA=$(git rev-parse "${CI_COMMIT_SHA}~15")
92 # Check if the commit exists in this branch
93 # This is not the case for a force push
94 git branch --contains $CI_COMMIT_BEFORE_SHA 2>/dev/null || export CI_COMMIT_BEFORE_SHA=$(git rev-parse "${CI_COMMIT_SHA}~15")
96 export CI_COMMIT_RANGE="$CI_COMMIT_BEFORE_SHA..$CI_COMMIT_SHA"
99 --build-dir=obj-csbuild
100 --prep-cmd="cmake -DCMAKE_BUILD_TYPE=Debug -DPICKY_DEVELOPER=ON -DUNIT_TESTING=ON @SRCDIR@"
101 --build-cmd "make clean && make -j$(nproc)"
102 --git-commit-range $CI_COMMIT_RANGE
104 --print-current --print-fixed
118 - mkdir -p obj && cd obj && cmake
119 -DCMAKE_BUILD_TYPE=RelWithDebInfo
121 -DUNIT_TESTING=ON .. &&
122 make && ctest --output-on-failure
128 - branches@cwrap/uid_wrapper
129 - branches@cryptomilk/uid_wrapper
136 tumbleweed/x86_64/gcc:
137 image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$TUMBLEWEED_BUILD
139 - mkdir -p obj && cd obj && cmake
140 -DCMAKE_BUILD_TYPE=RelWithDebInfo
142 -DUNIT_TESTING=ON .. &&
143 make -j$(nproc) && ctest --output-on-failure
154 tumbleweed/x86_64/gcc7:
155 image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$TUMBLEWEED_BUILD
157 - mkdir -p obj && cd obj && cmake
158 -DCMAKE_C_COMPILER=gcc-7 -DCMAKE_CXX_COMPILER=g++-7
159 -DCMAKE_BUILD_TYPE=RelWithDebInfo
161 -DUNIT_TESTING=ON .. &&
162 make -j$(nproc) && ctest --output-on-failure
173 tumbleweed/x86_64/clang:
174 image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$TUMBLEWEED_BUILD
176 - mkdir -p obj && cd obj && cmake
177 -DCMAKE_BUILD_TYPE=RelWithDebInfo
178 -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++
180 -DUNIT_TESTING=ON .. &&
181 make -j$(nproc) && ctest --output-on-failure
192 tumbleweed/static-analysis:
193 image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$TUMBLEWEED_BUILD
195 - export CCC_CC=clang
196 - export CCC_CXX=clang++
197 - mkdir -p obj && cd obj && scan-build cmake
198 -DCMAKE_BUILD_TYPE=Debug
199 -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++
201 -DUNIT_TESTING=ON .. &&
202 scan-build --status-bugs -o scan make -j$(nproc)
214 image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$UBUNTU_BUILD
216 - mkdir -p obj && cd obj && cmake
217 -DCMAKE_BUILD_TYPE=RelWithDebInfo
219 -DUNIT_TESTING=ON .. &&
220 make -j$(nproc) && ctest --output-on-failure