55 lines
2.6 KiB
YAML
55 lines
2.6 KiB
YAML
kind: pipeline
|
|
name: default
|
|
|
|
type: docker
|
|
steps:
|
|
- name: test-debug-linux
|
|
image: deukhoofd/linux64builder
|
|
environment:
|
|
CC: /usr/bin/clang
|
|
CXX: /usr/bin/clang++
|
|
commands:
|
|
- cmake -DCMAKE_BUILD_TYPE=Debug . -B build-debug -DSTATICC=ON
|
|
- cmake --build build-debug --target all -- -j 4
|
|
- build-debug/ArbutilsTests -s --durations yes --use-colour yes
|
|
- name: test-release-linux
|
|
image: deukhoofd/linux64builder
|
|
environment:
|
|
CC: /usr/bin/clang
|
|
CXX: /usr/bin/clang++
|
|
commands:
|
|
- cmake -DCMAKE_BUILD_TYPE=Release . -B build-release
|
|
- cmake --build build-release --target all -- -j 4
|
|
- build-release/ArbutilsTests -s --durations yes --use-colour yes
|
|
- valgrind --tool=memcheck --gen-suppressions=all --leak-check=full --leak-resolution=med --track-origins=yes --vgdb=no --error-exitcode=1 build-release/ArbutilsTests
|
|
- name: style-check
|
|
image: deukhoofd/linux64builder
|
|
failure: ignore
|
|
commands:
|
|
- run-clang-format.py -r src/ tests/ --exclude "*MacroUtils.hpp"
|
|
- name: test-release-windows
|
|
image: deukhoofd/windowsbuilder
|
|
commands:
|
|
- cmake -DCMAKE_BUILD_TYPE=Release . -B build-release-windows -D CMAKE_C_COMPILER=/home/wclang/x86_64-w64-mingw32/bin/x86_64-w64-mingw32-clang -D CMAKE_CXX_COMPILER=/home/wclang/x86_64-w64-mingw32/bin/x86_64-w64-mingw32-clang++ -DWINDOWS=ON -DSTATICC=ON
|
|
- sed -i 's/-fPIC//g' build-release-windows/CMakeFiles/Arbutils.dir/flags.make
|
|
- cmake --build build-release-windows --target all -- -j 4
|
|
- export WINEARCH=win64
|
|
- wine build-release-windows/ArbutilsTests.exe -s
|
|
- name: conan-deploy
|
|
image: deukhoofd/linux64builder
|
|
environment:
|
|
CONAN_LOGIN_USERNAME:
|
|
from_secret: conan_username
|
|
CONAN_PASSWORD:
|
|
from_secret: conan_password
|
|
commands:
|
|
- rm -rf build-debug
|
|
- rm -rf build-release-windows
|
|
- cmake -DCMAKE_BUILD_TYPE=Release . -B build-conan -D CMAKE_C_COMPILER=/usr/bin/clang -D CMAKE_CXX_COMPILER=clang++ -DWINDOWS=0
|
|
- conan export-pkg . $DRONE_COMMIT@epsilon/$DRONE_BRANCH --build-folder build-conan -s compiler='clang' -s compiler.version=10 -s compiler.libcxx='libstdc++11'
|
|
- conan alias Arbutils/latest@epsilon/$DRONE_BRANCH Arbutils/$DRONE_COMMIT@epsilon/$DRONE_BRANCH
|
|
- conan remote add epsilon-public https://packages.p-epsilon.com/
|
|
- conan user -p -r=epsilon-public
|
|
- conan upload Arbutils/$DRONE_COMMIT@epsilon/$DRONE_BRANCH --all -r=epsilon-public --force
|
|
- conan upload Arbutils/latest@epsilon/$DRONE_BRANCH --all -r=epsilon-public
|
|
- conan user --clean |