127 lines
3.8 KiB
YAML
127 lines
3.8 KiB
YAML
# -*- fill-column: 1000 -*-
|
|
kind: pipeline
|
|
name: Build x86_64
|
|
|
|
volumes:
|
|
- name: debian-package-cache
|
|
host:
|
|
path: /var/cache/debian-package-cache
|
|
|
|
trigger:
|
|
event:
|
|
exclude:
|
|
- tag
|
|
|
|
steps:
|
|
- name: GCC 9 & 10 / clang 10
|
|
image: ubuntu:focal
|
|
pull: always
|
|
environment:
|
|
CXX: g++-9
|
|
CXXFLAGS: -pipe -O2
|
|
DEBIAN_FRONTEND: noninteractive
|
|
LANG: C.utf8
|
|
commands:
|
|
- rm /etc/apt/apt.conf.d/docker-clean
|
|
- alias apt-get='rm -f /var/cache/apt/archives/lock && apt-get'
|
|
- apt-get update -q
|
|
- apt-get install -qq build-essential cmake g++-10 clang pkg-config
|
|
- apt-get install -qq catch libcgicc-dev nlohmann-json3-dev libgit2-dev libcurl4-openssl-dev libicu-dev libfmt-dev libpugixml-dev
|
|
- rm -rf build && mkdir -p build && cd build
|
|
- cmake -G "Unix Makefiles" -DWITH_TESTS=YES ..
|
|
- make VERBOSE=1
|
|
- make install DESTDIR=install
|
|
- cd tests && ctest -V
|
|
- cd ../../
|
|
- rm -rf build && mkdir -p build && cd build
|
|
- CXX="g++-10" cmake -G "Unix Makefiles" -DWITH_TESTS=YES ..
|
|
- make VERBOSE=1
|
|
- make install DESTDIR=install
|
|
- cd tests && ctest -V
|
|
- cd ../../
|
|
- rm -rf build && mkdir -p build && cd build
|
|
- CXX="clang++" cmake -G "Unix Makefiles" -DWITH_TESTS=YES ..
|
|
- make VERBOSE=1
|
|
- make install DESTDIR=install
|
|
- cd tests && ctest -V
|
|
volumes:
|
|
- name: debian-package-cache
|
|
path: /var/cache/apt/archives
|
|
|
|
- name: GCC 8 / clang 7
|
|
image: debian:buster-slim
|
|
pull: always
|
|
environment:
|
|
CXX: g++-8
|
|
CXXFLAGS: -pipe -O2
|
|
DEBIAN_FRONTEND: noninteractive
|
|
LANG: C.utf8
|
|
nlohmann_json_DIR: "/usr/lib/cmake"
|
|
commands:
|
|
- rm /etc/apt/apt.conf.d/docker-clean
|
|
- alias apt-get='rm -f /var/cache/apt/archives/lock && apt-get'
|
|
- apt-get update -q
|
|
- apt-get install -qq build-essential cmake clang pkg-config
|
|
- apt-get install -qq catch libcgicc-dev nlohmann-json-dev libgit2-dev libcurl4-openssl-dev libicu-dev libfmt-dev libpugixml-dev
|
|
- rm -rf build && mkdir -p build && cd build
|
|
- cmake -G "Unix Makefiles" -DWITH_TESTS=YES ..
|
|
- make VERBOSE=1
|
|
- make install DESTDIR=install
|
|
- cd tests && ctest -V
|
|
- cd ../../
|
|
- rm -rf build && mkdir -p build && cd build
|
|
- CXX="clang++" cmake -G "Unix Makefiles" -DWITH_TESTS=YES ..
|
|
- make VERBOSE=1
|
|
- make install DESTDIR=install
|
|
- cd tests && ctest -V
|
|
volumes:
|
|
- name: debian-package-cache
|
|
path: /var/cache/apt/archives
|
|
|
|
- name: GCC 7 / clang 6
|
|
image: ubuntu:bionic
|
|
pull: always
|
|
environment:
|
|
CXX: g++-7
|
|
CXXFLAGS: -pipe -O2
|
|
DEBIAN_FRONTEND: noninteractive
|
|
LANG: C.utf8
|
|
nlohmann_json_DIR: "/usr/lib/cmake"
|
|
pugixml_DIR: "/usr/share/libpugixml-dev/cmake"
|
|
commands:
|
|
- rm /etc/apt/apt.conf.d/docker-clean
|
|
- alias apt-get='rm -f /var/cache/apt/archives/lock && apt-get'
|
|
- apt-get update -q
|
|
- apt-get install -qq build-essential cmake clang pkg-config
|
|
- apt-get install -qq catch libcgicc-dev nlohmann-json-dev libgit2-dev libcurl4-gnutls-dev libicu-dev libfmt-dev libpugixml-dev
|
|
- ln -s /usr/lib/x86_64-linux-gnu/libpugixml.so.1.8 /lib/x86_64-linux-gnu/libpugixml.so.1.8
|
|
- ln -s /usr/lib/x86_64-linux-gnu/libpugixml.so /lib/x86_64-linux-gnu/libpugixml.so
|
|
- ln -s /usr/lib/x86_64-linux-gnu/libpugixml.a /lib/x86_64-linux-gnu/libpugixml.a
|
|
- rm -rf build && mkdir -p build && cd build
|
|
- cmake -G "Unix Makefiles" -DWITH_TESTS=YES ..
|
|
- make VERBOSE=1
|
|
- make install DESTDIR=install
|
|
- cd tests && ctest -V
|
|
- cd ../../
|
|
- rm -rf build && mkdir -p build && cd build
|
|
- CXX="clang++" cmake -G "Unix Makefiles" -DWITH_TESTS=YES ..
|
|
- make VERBOSE=1
|
|
- make install DESTDIR=install
|
|
- cd tests && ctest -V
|
|
volumes:
|
|
- name: debian-package-cache
|
|
path: /var/cache/apt/archives
|
|
|
|
- name: notify
|
|
image: drillster/drone-email
|
|
pull: always
|
|
settings:
|
|
host: mail.tzend.de
|
|
from: drone@tzend.de
|
|
username:
|
|
from_secret: email_username
|
|
password:
|
|
from_secret: email_password
|
|
when:
|
|
status: [ changed, failure ]
|