surtur
bd421295c4
All checks were successful
continuous-integration/drone/push Build is passing
switch to fmt - "A modern formatting library" - for fun and profit, currently in header-only configuration. ref: https://github.com/fmtlib/fmt closes #5 closes #4
91 lines
2.3 KiB
Plaintext
91 lines
2.3 KiB
Plaintext
# vim: ft=bzl.starlark noexpandtab
|
|
def main(ctx):
|
|
return {
|
|
"kind": "pipeline",
|
|
"type": "docker",
|
|
"name": "testing",
|
|
"steps": [
|
|
{
|
|
"name": "update submodules",
|
|
"image": "docker.io/immawanderer/fedora-cpp:linux-amd64",
|
|
"pull": "always",
|
|
"depends_on": ["clone"],
|
|
"commands": [
|
|
"uname -r",
|
|
"git submodule update --init --recursive"
|
|
]
|
|
},
|
|
{
|
|
"name": "cppcheck",
|
|
"image": "docker.io/archlinux:base-devel",
|
|
"pull": "always",
|
|
"depends_on": ["update submodules"],
|
|
"commands": [
|
|
"pacman -Sy cppcheck --noconfirm --needed",
|
|
"uname -r",
|
|
"cppcheck --version",
|
|
"cppcheck --language=c++ --std=c++20 --enable=all --verbose ./*.{cpp,h}"
|
|
]
|
|
},
|
|
{
|
|
"name": "build debug",
|
|
"image": "docker.io/immawanderer/fedora-cpp:linux-amd64",
|
|
"pull": "always",
|
|
"depends_on": ["cppcheck"],
|
|
"commands": [
|
|
"uname -r",
|
|
"make debug"
|
|
]
|
|
},
|
|
{
|
|
"name": "build release",
|
|
"image": "docker.io/immawanderer/fedora-cpp:linux-amd64",
|
|
"pull": "always",
|
|
"depends_on": ["cppcheck"],
|
|
"commands": [
|
|
"uname -r",
|
|
"make release"
|
|
]
|
|
},
|
|
{
|
|
"name": "build on alpine",
|
|
"image": "docker.io/alpine:3.14",
|
|
"pull": "always",
|
|
"depends_on": ["cppcheck"],
|
|
"commands": [
|
|
"uname -r",
|
|
"apk add --no-cache gcc g++ cmake ninja --repository=http://dl-cdn.alpinelinux.org/alpine/edge/testing",
|
|
"ln -sv /usr/bin/ninja /usr/bin/ninja-build",
|
|
"mkdir -pv debug-alpine",
|
|
"cmake -G Ninja -DCMAKE_BUILD_TYPE=Debug -B debug-alpine",
|
|
"ninja -C debug-alpine && ls -lah ./debug-alpine && ./debug-alpine/fortuna" + "||" + "true"
|
|
]
|
|
},
|
|
{
|
|
"name": "valgrind debug",
|
|
"image": "docker.io/archlinux:base-devel",
|
|
"pull": "always",
|
|
"depends_on": ["build debug"],
|
|
"commands": [
|
|
"uname -r",
|
|
"pacman -Sy gcc cmake crypto++ ninja valgrind --noconfirm --needed",
|
|
"valgrind --version",
|
|
"make valgrind"
|
|
]
|
|
},
|
|
{
|
|
"name": "valgrind release",
|
|
"image": "docker.io/archlinux:base-devel",
|
|
"pull": "always",
|
|
"depends_on": ["build release"],
|
|
"commands": [
|
|
"uname -r",
|
|
"pacman -Sy gcc cmake crypto++ ninja valgrind --noconfirm --needed",
|
|
"valgrind --version",
|
|
"make valgrind-release"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
|