default: artifacts: paths: - ./bin/slime - ./bin/slime_d expire_in: 1 week variables: GIT_SUBMODULE_STRATEGY: recursive stages: - build_debug - build_release - test build_clang++_d: image: warchantua/dev-essential stage: build_debug script: clang++ -D_DEBUG -D_DONT_BREAK_ON_ERRORS src/main.cpp -gfull -gdwarf -o ./bin/slime_d --std=c++17 -I3rd/ build_g++_d: stage: build_debug script: g++ -D_DEBUG -D_DONT_BREAK_ON_ERRORS src/main.cpp -g -o ./bin/slime_d --std=c++17 -I3rd/ build_clang++_r: image: warchantua/dev-essential stage: build_release script: clang++ -D_DONT_BREAK_ON_ERRORS -O3 src/main.cpp -g -o ./bin/slime --std=c++17 -I3rd/ || exit 1 build_g++_r: stage: build_release script: g++ -D_DONT_BREAK_ON_ERRORS -O3 src/main.cpp -g -o ./bin/slime --std=c++17 -I3rd/ || exit 1 tests_d: stage: test script: ./bin/slime_d --run-tests tests_r: stage: test script: ./bin/slime --run-tests valgrind: image: warchantua/dev-essential stage: test script: valgrind --error-exitcode=123 -q --track-origins=yes --leak-check=full --show-leak-kinds=all ./bin/slime_d --run-tests