* ruby-bigendian: Travis ruby s390x (big endian) architecture testing Install libpcre3-dev for Linux builds Don't fail the build if CPU model or memory can't be detected Switch one of Travis CI Ruby builds to use s390x arch
542 lines
14 KiB
YAML
542 lines
14 KiB
YAML
language: cpp
|
|
matrix:
|
|
include:
|
|
- compiler: clang
|
|
os: linux
|
|
env: SWIGLANG=
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
env: SWIGLANG= GCC=4.4
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
env: SWIGLANG= GCC=4.6
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
env: SWIGLANG= GCC=4.7
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
env: SWIGLANG= GCC=4.8
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
env: SWIGLANG= GCC=4.9
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
env: SWIGLANG= GCC=6
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
env: SWIGLANG= GCC=7
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
env: SWIGLANG= GCC=8
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
env: SWIGLANG= GCC=9
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=csharp
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=d VER=2.066.0
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=d VER=2.086.1
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=go VER=1.3
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=go VER=1.8
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=go VER=1.12
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=guile
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=java
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=javascript ENGINE=node VER=0.10
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=javascript ENGINE=node VER=4 CPP11=1
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=javascript ENGINE=node VER=6 CPP11=1
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=javascript ENGINE=node VER=8 CPP11=1
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=javascript ENGINE=node VER=10 CPP11=1
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=javascript ENGINE=jsc
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=javascript ENGINE=v8
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=lua
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=lua VER=5.3
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=mzscheme
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=ocaml
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=octave SWIGJOBS=-j2
|
|
sudo: required
|
|
dist: xenial # Octave v4.0.0
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=octave SWIGJOBS=-j2 CPP11=1
|
|
sudo: required
|
|
dist: bionic # Octave v4.2.2
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=perl5
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=php VER=7.0
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=php VER=7.1
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=php VER=7.2
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=php VER=7.3
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=python # 2.7
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=python PY3=3 VER=3.2
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=python PY3=3 VER=3.3
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=python PY3=3 VER=3.4
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=python PY3=3 VER=3.5
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=python PY3=3 VER=3.6
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=python PY3=3 VER=3.7
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=python PY3=3 VER=3.8
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=python SWIG_FEATURES=-builtin
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=python SWIG_FEATURES="-builtin -O"
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
env: SWIGLANG=python SWIG_FEATURES=-builtin GCC=6 CPP11=1
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
env: SWIGLANG=python SWIG_FEATURES=-builtin GCC=6 CPP11=1 PY3=3 VER=3.8
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=python SWIG_FEATURES=-builtin PY3=3 VER=3.4
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=python SWIG_FEATURES=-builtin PY3=3 VER=3.5
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=python SWIG_FEATURES=-builtin PY3=3 VER=3.7
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=python SWIG_FEATURES=-builtin PY3=3 VER=3.8
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=python SWIG_FEATURES="-builtin -O" PY3=3 VER=3.8
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=python SWIG_FEATURES=-builtin PY3=3 VER=3.8 SWIGOPTPY3=
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=python SWIG_FEATURES=-O
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=python SWIG_FEATURES=-O PY3=3 VER=3.8
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=r
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=ruby VER=1.9
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=ruby VER=2.0
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=ruby VER=2.1
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=ruby VER=2.2
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=ruby VER=2.3
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=ruby VER=2.4
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=ruby VER=2.5
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=ruby VER=2.6
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=ruby VER=2.7
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=scilab
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=tcl
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
env: SWIGLANG=csharp CPP11=1
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
env: SWIGLANG=go VER=1.6 CPP11=1
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
env: SWIGLANG=java CPP11=1
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
env: SWIGLANG=python CPP11=1
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
env: SWIGLANG=r CPP11=1 # Note: making 'R CMD SHLIB' use a different compiler is non-trivial
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
env: SWIGLANG=ruby CPP11=1
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
env: SWIGLANG=tcl CPP11=1
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
env: SWIGLANG=csharp GCC=6 CPP14=1
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
env: SWIGLANG=go VER=1.6 GCC=6 CPP14=1
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
env: SWIGLANG=java GCC=6 CPP14=1
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
env: SWIGLANG=python GCC=6 CPP14=1
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
env: SWIGLANG=ruby GCC=6 CPP14=1
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
env: SWIGLANG=tcl GCC=6 CPP14=1
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
env: SWIGLANG=java GCC=7 CPP14=1
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
env: SWIGLANG=python GCC=7 CPP14=1
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
env: SWIGLANG=csharp GCC=8 CPP17=1
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
env: SWIGLANG=java GCC=8 CPP17=1
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
env: SWIGLANG=python GCC=8 CPP17=1 PY3=3 VER=3.8
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
env: SWIGLANG=csharp GCC=9 CPP17=1
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
env: SWIGLANG=java GCC=9 CPP17=1
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
env: SWIGLANG=python GCC=9 CPP17=1 PY3=3 VER=3.8
|
|
sudo: required
|
|
dist: xenial
|
|
- os: linux
|
|
arch: s390x
|
|
env: SWIGLANG=ruby CPP11=1
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: osx
|
|
env: SWIGLANG=
|
|
- compiler: clang
|
|
os: osx
|
|
env: SWIGLANG=
|
|
- compiler: clang
|
|
os: osx
|
|
env: SWIGLANG=csharp
|
|
- compiler: clang
|
|
os: osx
|
|
env: SWIGLANG=go
|
|
- compiler: clang
|
|
os: osx
|
|
env: SWIGLANG=guile CSTD=c11
|
|
- compiler: clang
|
|
os: osx
|
|
env: SWIGLANG=java
|
|
- compiler: clang
|
|
os: osx
|
|
env: SWIGLANG=lua
|
|
- compiler: clang
|
|
os: osx
|
|
env: SWIGLANG=octave SWIGJOBS=-j2 CPP11=1
|
|
- compiler: clang
|
|
os: osx
|
|
env: SWIGLANG=perl5
|
|
- compiler: clang
|
|
os: osx
|
|
env: SWIGLANG=python
|
|
- compiler: clang
|
|
os: osx
|
|
env: SWIGLANG=python PY3=3
|
|
- compiler: clang
|
|
os: osx
|
|
env: SWIGLANG=ruby
|
|
- compiler: clang
|
|
os: osx
|
|
env: SWIGLANG=tcl
|
|
- compiler: clang
|
|
os: osx
|
|
env: SWIGLANG=java CPP17=1
|
|
osx_image: xcode10.2
|
|
- compiler: clang
|
|
os: osx
|
|
env: SWIGLANG=python PY3=3 CPP17=1
|
|
osx_image: xcode10.2
|
|
|
|
allow_failures:
|
|
# li_std_wstring failure see https://github.com/swig/swig/pull/1803
|
|
- os: linux
|
|
arch: s390x
|
|
env: SWIGLANG=ruby CPP11=1
|
|
sudo: required
|
|
dist: xenial
|
|
# Newer version of D not yet working/supported
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=d VER=2.086.1
|
|
sudo: required
|
|
dist: xenial
|
|
# seg fault in director_basic testcase
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=php VER=7.2
|
|
sudo: required
|
|
dist: xenial
|
|
# Experimental languages
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=mzscheme
|
|
sudo: required
|
|
dist: xenial
|
|
- compiler: gcc
|
|
os: linux
|
|
env: SWIGLANG=ocaml
|
|
sudo: required
|
|
dist: xenial
|
|
|
|
before_install:
|
|
- date -u
|
|
- uname -a
|
|
- if test "$TRAVIS_OS_NAME" = "linux"; then lscpu; grep "model name" /proc/cpuinfo || echo 'Unknown CPU model'; grep "MemTotal" /proc/meminfo || echo 'Unknown system memory amount'; fi
|
|
- if test "$TRAVIS_OS_NAME" = "osx"; then sysctl -a | grep brand_string; fi
|
|
# Travis overrides CC environment with compiler predefined values
|
|
- if test -n "$GCC"; then export CC="gcc-$GCC" && export CXX="g++-$GCC"; fi
|
|
install:
|
|
- if test "$TRAVIS_OS_NAME" = "linux"; then source Tools/travis-linux-install.sh; fi
|
|
- if test "$TRAVIS_OS_NAME" = "osx"; then source Tools/travis-osx-install.sh; fi
|
|
- ls -la $(which $CC) $(which $CXX) && $CC --version && $CXX --version
|
|
script:
|
|
- echo 'Configuring...' && echo -en 'travis_fold:start:script.1\\r'
|
|
- if test -n "$CPP11"; then CONFIGOPTS+=(--enable-cpp11-testing --without-maximum-compile-warnings "CXXFLAGS=-std=c++11 -Wall -Wextra" "CFLAGS=-std=c11 -Wall -Wextra") && export CSTD=c11 && export CPPSTD=c++11; fi
|
|
- if test -n "$CPP14"; then CONFIGOPTS+=(--enable-cpp11-testing --without-maximum-compile-warnings "CXXFLAGS=-std=c++14 -Wall -Wextra" "CFLAGS=-std=c11 -Wall -Wextra") && export CSTD=c11 && export CPPSTD=c++14; fi
|
|
- if test -n "$CPP17"; then CONFIGOPTS+=(--enable-cpp11-testing --without-maximum-compile-warnings "CXXFLAGS=-std=c++17 -Wall -Wextra" "CFLAGS=-std=c17 -Wall -Wextra") && export CSTD=c17 && export CPPSTD=c++17; fi
|
|
- if test -n "$SWIGLANG"; then CONFIGOPTS+=(--without-alllang --with-$WITHLANG); fi
|
|
- echo "${CONFIGOPTS[@]}"
|
|
- ./autogen.sh && mkdir -p build/build && cd build/build && ../../configure "${CONFIGOPTS[@]}"
|
|
- echo -en 'travis_fold:end:script.1\\r'
|
|
- make -s $SWIGJOBS
|
|
- ./swig -version && ./swig -pcreversion
|
|
- if test -z "$SWIGLANG"; then make -s $SWIGJOBS check-ccache; fi
|
|
- if test -z "$SWIGLANG"; then make -s $SWIGJOBS check-errors-test-suite; fi
|
|
- echo 'Installing...' && echo -en 'travis_fold:start:script.2\\r'
|
|
- if test -z "$SWIGLANG"; then sudo make -s install && swig -version && ccache-swig -V; fi
|
|
- echo -en 'travis_fold:end:script.2\\r'
|
|
# Stricter compile flags for examples. Various headers and SWIG generated code prevents full use of -pedantic.
|
|
- if test -n "$SWIGLANG"; then cflags=$($TRAVIS_BUILD_DIR/Tools/testflags.py --language $SWIGLANG --cflags --std=$CSTD --compiler=$CC) && echo $cflags; fi
|
|
- if test -n "$SWIGLANG"; then cxxflags=$($TRAVIS_BUILD_DIR/Tools/testflags.py --language $SWIGLANG --cxxflags --std=$CPPSTD --compiler=$CC) && echo $cxxflags; fi
|
|
- if test -n "$SWIGLANG"; then make -s check-$SWIGLANG-version; fi
|
|
- if test -n "$SWIGLANG"; then make check-$SWIGLANG-enabled; fi
|
|
- if test -n "$SWIGLANG"; then make $SWIGJOBS check-$SWIGLANG-examples CFLAGS="$cflags" CXXFLAGS="$cxxflags"; fi
|
|
- if test -n "$SWIGLANG"; then make $SWIGJOBS check-$SWIGLANG-test-suite CFLAGS="$cflags" CXXFLAGS="$cxxflags"; fi
|
|
- echo 'Cleaning...' && echo -en 'travis_fold:start:script.3\\r'
|
|
- make check-maintainer-clean && ../../configure $CONFIGOPTS
|
|
- echo -en 'travis_fold:end:script.3\\r'
|