Skip to content

Commit

Permalink
[Travis] Add build jobs with multiple GCC and clang versions
Browse files Browse the repository at this point in the history
* GCC 4.8 and 7.x
* clang 3.5 and 3.9

Part of GEOS RFC 5: C++11 Compilation Mode
  • Loading branch information
mloskot committed Sep 9, 2017
1 parent b7101be commit 2ebfdcc
Showing 1 changed file with 91 additions and 19 deletions.
110 changes: 91 additions & 19 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,33 +6,105 @@
# by the Free Software Foundation.
# See the COPYING file for more information.
#
dist: trusty
sudo: false

language: cpp

compiler:
- g++
- clang

env:
- GEOS_BUILD_TOOL=autotools CFLAGS=-m32 CXXFLAGS=-m32
- GEOS_BUILD_TOOL=autotools CFLAGS=-m64 CXXFLAGS=-m64
- GEOS_BUILD_TOOL=cmake CFLAGS=-m32 CXXFLAGS=-m32
- GEOS_BUILD_TOOL=cmake CFLAGS=-m64 CXXFLAGS=-m64
ref:
sources: &sources
- ubuntu-toolchain-r-test
- george-edison55-precise-backports

matrix:
fast_finish: true
include:
- os: linux
addons:
apt:
sources: *sources
packages: ['g++-7','cmake']
env:
- E="TOOL=cmake && CXX=g++-7 && ARCH=-m64 && CC=gcc-7"

- os: linux
addons:
apt:
sources: *sources
packages: ['g++-7']
env:
- E="TOOL=autotools && CXX=g++-7 && ARCH=-m64 && CC=gcc-7"

- os: linux
addons:
apt:
sources: *sources
packages: ['g++-7-multilib','gcc-7-multilib','g++-multilib','gcc-multilib']
env:
- E="TOOL=autotools && CXX=g++-7 && ARCH=-m32 && CC=gcc-7"

- os: linux
addons:
apt:
sources: *sources
packages: ['g++-4.8','cmake']
env:
- E="TOOL=cmake && CXX=g++-4.8 && ARCH=-m64 && CC=gcc-4.8"

- os: linux
addons:
apt:
sources: *sources
packages: ['g++-4.8']
env:
- E="TOOL=autotools && CXX=g++-4.8 && ARCH=-m64 && CC=gcc-4.8"

- os: linux
addons:
apt:
sources: *sources
packages: ['g++-4.8-multilib','gcc-4.8-multilib','g++-multilib','gcc-multilib']
env:
- E="TOOL=autotools && CXX=g++-4.8 && ARCH=-m32 && CC=gcc-4.8"

- os: linux
addons:
apt:
sources: *sources
packages: ['clang-3.9','cmake']
env:
- E="TOOL=cmake && CXX=clang++-3.9 && ARCH=-m64 && CC=clang-3.9"

- os: linux
addons:
apt:
sources: *sources
packages: ['clang-3.9']
env:
- E="TOOL=autotools && CXX=clang++-3.9 && ARCH=-m64 && CC=clang-3.9"

- os: linux
addons:
apt:
sources: *sources
packages: ['clang']
env:
- E="TOOL=autotools && CXX=clang++ && ARCH=-m64 && CC=clang"

- os: linux
addons:
apt:
sources: *sources
packages: ['clang','cmake']
env:
- E="TOOL=cmake && CXX=clang++ && ARCH=-m64 && CC=clang"

addons:
apt:
sources:
- george-edison55-precise-backports
packages:
- cmake
- cmake-data
- g++-multilib
- gcc-multilib
- make
before_install:
- eval "${E}"
- export CXXFLAGS=${ARCH}
- export CFLAGS=${ARCH}
- export GEOS_BUILD_TOOL=${TOOL}
- ${CXX} --version

script: ./tools/ci/script.sh

Expand Down

0 comments on commit 2ebfdcc

Please sign in to comment.