mirror of
https://github.com/cuberite/SQLiteCpp.git
synced 2025-08-04 09:46:02 -04:00
Travis CI: reworking the whole compiler matrix from scratch
This commit is contained in:
parent
8dbdbcac77
commit
3c60b8ce3c
295
.travis.yml
295
.travis.yml
@ -1,244 +1,92 @@
|
|||||||
# Copyright (c) 2012-2020 Sebastien Rombauts (sebastien.rombauts@gmail.com)
|
# Copyright (c) 2012-2020 Sebastien Rombauts (sebastien.rombauts@gmail.com)
|
||||||
|
|
||||||
# request for Ubuntu 14.04 Trusty VM
|
language: cpp
|
||||||
sudo: true
|
sudo: false
|
||||||
dist: trusty
|
|
||||||
|
# Use Linux unless specified otherwise
|
||||||
|
os: linux
|
||||||
|
|
||||||
cache:
|
cache:
|
||||||
apt: true
|
apt: true
|
||||||
|
|
||||||
# NOTE: no language, so that we can set CXX and CC env vars as required
|
|
||||||
#language: cpp
|
|
||||||
|
|
||||||
matrix:
|
matrix:
|
||||||
include:
|
include:
|
||||||
# gcc default (4.8)
|
|
||||||
- compiler: gcc
|
##########################################################################
|
||||||
|
# GCC on Linux
|
||||||
|
##########################################################################
|
||||||
|
|
||||||
|
- dist: bionic
|
||||||
env:
|
env:
|
||||||
- CC=gcc
|
- cc=gcc
|
||||||
- CXX=g++
|
- cxx=g++
|
||||||
- CXXFLAGS="-Wall -Wextra -pedantic"
|
- CXXFLAGS=""
|
||||||
# gcc 4.9 std=default
|
- COVERALLS=true
|
||||||
- compiler: gcc
|
|
||||||
addons:
|
|
||||||
apt:
|
- dist: xenial
|
||||||
sources:
|
|
||||||
- ubuntu-toolchain-r-test
|
|
||||||
packages:
|
|
||||||
- g++-4.9
|
|
||||||
env:
|
env:
|
||||||
- CC=gcc-4.9
|
- cc=gcc
|
||||||
- CXX=g++-4.9
|
- cxx=g++
|
||||||
- CXXFLAGS="-Wall -Wextra -pedantic"
|
- CXXFLAGS=""
|
||||||
# gcc 5 std=c++03
|
|
||||||
- compiler: gcc
|
- dist: trusty
|
||||||
addons:
|
|
||||||
apt:
|
|
||||||
sources:
|
|
||||||
- ubuntu-toolchain-r-test
|
|
||||||
packages:
|
|
||||||
- g++-5
|
|
||||||
env:
|
env:
|
||||||
- CC=gcc-5
|
- cc=gcc
|
||||||
- CXX=g++-5
|
- cxx=g++
|
||||||
- CXXFLAGS="-std=c++03 -Wall -Wextra -pedantic"
|
- CXXFLAGS=""
|
||||||
# gcc 5 std=c++11
|
|
||||||
- compiler: gcc
|
##########################################################################
|
||||||
addons:
|
# Clang on Linux
|
||||||
apt:
|
##########################################################################
|
||||||
sources:
|
|
||||||
- ubuntu-toolchain-r-test
|
- dist: bionic
|
||||||
packages:
|
|
||||||
- g++-5
|
|
||||||
env:
|
env:
|
||||||
- CC=gcc-5
|
- cc=clang
|
||||||
- CXX=g++-5
|
- cxx=clang++
|
||||||
- CXXFLAGS="-std=c++11 -Wall -Wextra -pedantic"
|
- CXXFLAGS=""
|
||||||
# gcc 5 default
|
|
||||||
- compiler: gcc
|
- dist: xenial
|
||||||
addons:
|
|
||||||
apt:
|
|
||||||
sources:
|
|
||||||
- ubuntu-toolchain-r-test
|
|
||||||
packages:
|
|
||||||
- g++-5
|
|
||||||
env:
|
env:
|
||||||
- CC=gcc-5
|
- cc=clang
|
||||||
- CXX=g++-5
|
- cxx=clang++
|
||||||
- CXXFLAGS="-Wall -Wextra -pedantic"
|
- CXXFLAGS=""
|
||||||
# gcc 5 std=c++11
|
|
||||||
- compiler: gcc
|
- dist: trusty
|
||||||
addons:
|
|
||||||
apt:
|
|
||||||
sources:
|
|
||||||
- ubuntu-toolchain-r-test
|
|
||||||
packages:
|
|
||||||
- g++-5
|
|
||||||
env:
|
env:
|
||||||
- CC=gcc-5
|
- cc=clang
|
||||||
- CXX=g++-5
|
- cxx=clang++
|
||||||
- CXXFLAGS="-std=c++11 -Wall -Wextra -pedantic"
|
- CXXFLAGS=""
|
||||||
# gcc 5 std=c++14
|
|
||||||
- compiler: gcc
|
##########################################################################
|
||||||
addons:
|
# Clang on OSX
|
||||||
apt:
|
##########################################################################
|
||||||
sources:
|
|
||||||
- ubuntu-toolchain-r-test
|
# Latest XCode
|
||||||
packages:
|
- os: osx
|
||||||
- g++-5
|
|
||||||
env:
|
env:
|
||||||
- CC=gcc-5
|
- cc=clang
|
||||||
- CXX=g++-5
|
- cxx=clang++
|
||||||
- CXXFLAGS="-std=c++14 -Wall -Wextra -pedantic"
|
- CXXFLAGS=""
|
||||||
# gcc 5 std=c++1z
|
|
||||||
- compiler: gcc
|
# XCode 8.3
|
||||||
addons:
|
- os: osx
|
||||||
apt:
|
osx_image: xcode8.3
|
||||||
sources:
|
|
||||||
- ubuntu-toolchain-r-test
|
|
||||||
packages:
|
|
||||||
- g++-5
|
|
||||||
env:
|
env:
|
||||||
- CC=gcc-5
|
- cc=clang
|
||||||
- CXX=g++-5
|
- cxx=clang++
|
||||||
- CXXFLAGS="-std=c++1z -Wall -Wextra -pedantic"
|
- CXXFLAGS=""
|
||||||
# gcc 6.5 std=c++14 (default standard)
|
|
||||||
- compiler: gcc
|
|
||||||
addons:
|
|
||||||
apt:
|
|
||||||
sources:
|
|
||||||
- ubuntu-toolchain-r-test
|
|
||||||
packages:
|
|
||||||
- g++-6
|
|
||||||
env:
|
|
||||||
- CC=gcc-6
|
|
||||||
- CXX=g++-6
|
|
||||||
- CXXFLAGS="-std=c++14 -Wall -Wextra -pedantic"
|
|
||||||
# gcc 6.5 std=c++1z
|
|
||||||
- compiler: gcc
|
|
||||||
addons:
|
|
||||||
apt:
|
|
||||||
sources:
|
|
||||||
- ubuntu-toolchain-r-test
|
|
||||||
packages:
|
|
||||||
- g++-6
|
|
||||||
env:
|
|
||||||
- CC=gcc-6
|
|
||||||
- CXX=g++-6
|
|
||||||
- CXXFLAGS="-std=c++1z -Wall -Wextra -pedantic"
|
|
||||||
# gcc 7.4 std=c++14 (default standard)
|
|
||||||
- compiler: gcc
|
|
||||||
addons:
|
|
||||||
apt:
|
|
||||||
sources:
|
|
||||||
- ubuntu-toolchain-r-test
|
|
||||||
packages:
|
|
||||||
- g++-7
|
|
||||||
env:
|
|
||||||
- CC=gcc-7
|
|
||||||
- CXX=g++-7
|
|
||||||
- CXXFLAGS="-std=c++14 -Wall -Wextra -pedantic"
|
|
||||||
# gcc 7.4 std=c++17
|
|
||||||
- compiler: gcc
|
|
||||||
addons:
|
|
||||||
apt:
|
|
||||||
sources:
|
|
||||||
- ubuntu-toolchain-r-test
|
|
||||||
packages:
|
|
||||||
- g++-7
|
|
||||||
env:
|
|
||||||
- CC=gcc-7
|
|
||||||
- CXX=g++-7
|
|
||||||
- CXXFLAGS="-std=c++17 -Wall -Wextra -pedantic"
|
|
||||||
# gcc 8 std=c++14 (default standard)
|
|
||||||
- compiler: gcc
|
|
||||||
addons:
|
|
||||||
apt:
|
|
||||||
sources:
|
|
||||||
- ubuntu-toolchain-r-test
|
|
||||||
packages:
|
|
||||||
- g++-8
|
|
||||||
env:
|
|
||||||
- CC=gcc-8
|
|
||||||
- CXX=g++-8
|
|
||||||
- CXXFLAGS="-std=c++14 -Wall -Wextra -pedantic"
|
|
||||||
# gcc 8 std=c++17
|
|
||||||
- compiler: gcc
|
|
||||||
addons:
|
|
||||||
apt:
|
|
||||||
sources:
|
|
||||||
- ubuntu-toolchain-r-test
|
|
||||||
packages:
|
|
||||||
- g++-8
|
|
||||||
env:
|
|
||||||
- CC=gcc-8
|
|
||||||
- CXX=g++-8
|
|
||||||
- CXXFLAGS="-std=c++17 -Wall -Wextra -pedantic"
|
|
||||||
# gcc 8 std=c++2a
|
|
||||||
- compiler: gcc
|
|
||||||
addons:
|
|
||||||
apt:
|
|
||||||
sources:
|
|
||||||
- ubuntu-toolchain-r-test
|
|
||||||
packages:
|
|
||||||
- g++-8
|
|
||||||
env:
|
|
||||||
- CC=gcc-8
|
|
||||||
- CXX=g++-8
|
|
||||||
- CXXFLAGS="-std=c++2a -Wall -Wextra -pedantic"
|
|
||||||
# gcc 9 std=c++14 (default standard)
|
|
||||||
- compiler: gcc
|
|
||||||
addons:
|
|
||||||
apt:
|
|
||||||
sources:
|
|
||||||
- ubuntu-toolchain-r-test
|
|
||||||
packages:
|
|
||||||
- g++-9
|
|
||||||
env:
|
|
||||||
- CC=gcc-9
|
|
||||||
- CXX=g++-9
|
|
||||||
- CXXFLAGS="-std=c++14 -Wall -Wextra -pedantic"
|
|
||||||
# TODO: issue with ExecuteMany and Bind helper function
|
|
||||||
# # gcc 9 std=c++17
|
|
||||||
# - compiler: gcc
|
|
||||||
# addons:
|
|
||||||
# apt:
|
|
||||||
# sources:
|
|
||||||
# - ubuntu-toolchain-r-test
|
|
||||||
# packages:
|
|
||||||
# - g++-9
|
|
||||||
# env:
|
|
||||||
# - CC=gcc-9
|
|
||||||
# - CXX=g++-9
|
|
||||||
# - CXXFLAGS="-std=c++17 -Wall -Wextra -pedantic"
|
|
||||||
# # gcc 9 std=c++2a
|
|
||||||
# - compiler: gcc
|
|
||||||
# addons:
|
|
||||||
# apt:
|
|
||||||
# sources:
|
|
||||||
# - ubuntu-toolchain-r-test
|
|
||||||
# packages:
|
|
||||||
# - g++-9
|
|
||||||
# env:
|
|
||||||
# - CC=gcc-9
|
|
||||||
# - CXX=g++-9
|
|
||||||
# - CXXFLAGS="-std=c++2a -Wall -Wextra -pedantic"
|
|
||||||
# clang default
|
|
||||||
- compiler: clang
|
|
||||||
env:
|
|
||||||
- CC=clang
|
|
||||||
- CXX=clang++
|
|
||||||
# os x
|
|
||||||
- compiler: clang
|
|
||||||
os: osx
|
|
||||||
env:
|
|
||||||
- CC=clang
|
|
||||||
- CXX=clang
|
|
||||||
- CXXFLAGS=-lstdc++
|
|
||||||
|
|
||||||
before_install:
|
before_install:
|
||||||
|
# Set the compiler environment variables properly
|
||||||
|
- export CC=${cc}
|
||||||
|
- export CXX=${cxx}
|
||||||
|
- ${CC} --version
|
||||||
|
- ${CXX} --version
|
||||||
|
|
||||||
|
install:
|
||||||
# coveralls test coverage:
|
# coveralls test coverage:
|
||||||
- if [[ "$CXX" == "g++" ]]; then pip install --user cpp-coveralls ; fi
|
- if [[ "$COVERALLS" == "true" ]]; then pip install --user cpp-coveralls ; fi
|
||||||
|
|
||||||
# scripts to run before build
|
# scripts to run before build
|
||||||
before_script:
|
before_script:
|
||||||
@ -249,8 +97,9 @@ before_script:
|
|||||||
# build examples, and run tests (ie make & make test)
|
# build examples, and run tests (ie make & make test)
|
||||||
script:
|
script:
|
||||||
- cmake --build .
|
- cmake --build .
|
||||||
|
- export ASAN_OPTIONS=verbosity=1:debug=1
|
||||||
- ctest --verbose --output-on-failure
|
- ctest --verbose --output-on-failure
|
||||||
|
|
||||||
# generate and publish GCov coveralls results
|
# generate and publish GCov coveralls results
|
||||||
after_success:
|
after_success:
|
||||||
- if [[ "$CXX" == "g++" ]]; then coveralls --root .. -e examples -e googletest -e sqlite3 -e tests -E ".*feature_tests.*" -E ".*CompilerId.*" --gcov-options '\-lp' ; fi
|
- if [[ "$COVERALLS" == "true" ]]; then coveralls --root .. -e examples -e googletest -e sqlite3 -e tests -E ".*feature_tests.*" -E ".*CompilerId.*" --gcov-options '\-lp' ; fi
|
||||||
|
Loading…
x
Reference in New Issue
Block a user