Newer
Older
image: "flowdalic/debian-testing-dev:1.4"
before_script:
- |

Florian Schmaus
committed
readarray TOOLS <<EOF
c++
cc
clang
clang++
clang-tidy
doxygen
g++
gcc
include-what-you-use
meson
nasm
valgrind
EOF
for tool in ${TOOLS[@]}; do
echo -n "$tool version: "
$tool --version
done
variables:
BUILDDTYPE: debugoptmized
CC: gcc
CXX: g++
EXTRA_NINJA_ARGS: -v
EMPER_IO: "false"
stages:
- smoke-test
stage: smoke-test
script: make smoke-test-suite
static-analysis-with-emper-io:
stage: smoke-test
script: make static-analysis
variables:
EMPER_IO: "true"
.test:
stage: test
script:
- make test
.gcc:
variables:
CC: gcc
CXX: g++
.clang:
variables:
CC: clang
CXX: clang++
.emper-ws-scheduling:
variables:
EMPER_DEFAULT_SCHEDULING_STRATEGY: "work_stealing"
.emper-laws-scheduling:
variables:
EMPER_DEFAULT_SCHEDULING_STRATEGY: "locality_aware_work_stealing"
.emper-worker-no-sleep:
variables:
EMPER_WORKER_SLEEP: 'false'
.emper-worker-stats:
variables:
EMPER_WORKER_STATS: 'true'
.emper-userspace-rcu:
variables:
EMPER_USERSPACE_RCU: 'true'

Florian Fischer
committed
.default-library-static:
variables:
EMPER_DEFAULT_LIBRARY: 'static'
.clang-sanitizer:
extends:
- .clang
- .default-library-static
variables:
# Clang's sanitizers require undefined symbols to be allowed when
# linking. See also:
# - https://github.com/mesonbuild/meson/issues/764
# - https://mesonbuild.com/Builtin-options.html
EMPER_B_LUNDEF: 'false'

Florian Fischer
committed
.clang-sanitizer-undefined:
extends:
- .clang-sanitizer
variables:
EMPER_B_SANITIZE: 'undefined'
#.clang-sanitizer-memory:
# extends:
# - .clang-sanitizer
# variables:
# EMPER_B_SANITIZE: 'memory'
#.sanitizer-address:
# extends:
# - .default-library-static
# variables:
# EMPER_B_SANITIZE: 'address'
.release-build:
variables:
BUILDTYPE: release
.debug-build:
variables:
BUILDTYPE: debug
.worker-wakeup-strategy-all:
variables:
EMPER_WORKER_WAKEUP_STRATEGY: "all"
.do-not-log-timestamp:
variables:
EMPER_LOG_TIMESTAMP: "false"
.locked-ws-queues:
variables:
EMPER_LOCKED_WS_QUEUE: "true"
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
test-gcc:
extends:
- .test
- .gcc
test-gcc-release:
extends:
- test-gcc
- .release-build
test-gcc-debug:
extends:
- test-gcc
- .debug-build
test-clang:
extends:
- .test
- .clang
test-clang-release:
extends:
- test-clang
- .release-build
test-clang-debug:
extends:
- test-clang
- .debug-build
test-worker-no-sleep:
extends:
- .test
- .emper-worker-no-sleep
test-with-stats:
extends:
- .test
- .emper-worker-stats
test-with-userspace-rcu:
extends:
- .test
- .emper-userspace-rcu

Florian Fischer
committed
test-clang-sanitizer-undefined:
extends:
- .test
- .clang-sanitizer-undefined
#test-clang-sanitizer-memory:
# extends:
# - .test
# - .clang-sanitizer-memory
#test-clang-sanitizer-address:
# extends:
# - .test
# - .clang
# - .sanitizer-address
test-laws:
extends:
- .test
- .emper-laws-scheduling
test-laws-release:
extends:
- test-laws
- .release-build
test-worker-wakeup-strategy-all:
extends:
- .test
- .worker-wakeup-strategy-all
test-do-not-log-timestamp:
extends:
- .test
- .do-not-log-timestamp
test-locked-ws-queues:
extends:
- .test
- .locked-ws-queues