wxWidgets/.travis.yml
Vadim Zeitlin a3f61f973d Merge branches 'travis-warning-errors' and 'travis-cleanup'
Fail CI builds if any warnings (other than those given by an explicit
preprocessor #warning directive) are encountered.

Also cleanup Travis config a bit.

See https://github.com/wxWidgets/wxWidgets/pull/1933,
    https://github.com/wxWidgets/wxWidgets/pull/1935
2020-07-07 12:45:58 +02:00

116 lines
4.6 KiB
YAML

# This is the control file for Travis continuous integration system.
#
# It is used automatically for the repositories on Github if it's found in the
# root directory of the project.
language: cpp
# Specify the default platform.
os: linux
dist: xenial
jobs:
include:
- dist: trusty
compiler: gcc
env: wxGTK_VERSION=2 wxUSE_XVFB=1
name: wxGTK 2 Ubuntu 14.04
- dist: xenial
compiler: gcc
env: wxGTK_VERSION=3
name: wxGTK 3 Ubuntu 16.04
- dist: bionic
compiler: gcc
env: wxGTK_VERSION=2 wxCONFIGURE_FLAGS="--enable-utf8 --enable-utf8only --enable-monolithic" wxUSE_XVFB=1
name: wxGTK 2 UTF-8 Ubuntu 18.04
- dist: bionic
compiler: gcc
env: wxGTK_VERSION=3 wxCONFIGURE_FLAGS="--enable-cxx11 --enable-stl --disable-webview" wxMAKEFILE_CXXFLAGS=-std=c++11 wxMAKEFILE_LDFLAGS=-Wl,--no-as-needed wxUSE_XVFB=1
name: wxGTK 3 STL Ubuntu 18.04
- dist: bionic
compiler: clang
env: wxGTK_VERSION=2 wxCONFIGURE_FLAGS="--disable-shared --disable-sys-libs --disable-webview" wxUSE_XVFB=1
name: wxGTK 2 clang Ubuntu 18.04
- dist: bionic
compiler: gcc
env: wxGTK_VERSION=3 wxTOOLSET=cmake wxCMAKE_GENERATOR="Unix Makefiles"
name: wxGTK 3 CMake Ubuntu 18.04
- os: osx
osx_image: xcode7.3
compiler: clang
env: wxSKIP_SAMPLES=1
name: wxOSX Xcode 7.3
- os: osx
osx_image: xcode9.4
compiler: clang
env: wxTOOLSET=cmake wxCMAKE_GENERATOR=Xcode wxCMAKE_DEFINES="-DCMAKE_CXX_STANDARD=11"
name: wxOSX CMake Xcode 9.4
- os: osx
osx_image: xcode11.3
env: wxCONFIGURE_FLAGS="--enable-monolithic --with-cxx=17 --with-macosx-version-min=10.12 --enable-stl"
name: wxOSX Xcode 11.3
- os: osx
osx_image: xcode11.4
env: wxCONFIGURE_FLAGS="--enable-monolithic --with-cxx=17 --host=i686-apple-darwin_sim --build=x86_64-apple-darwin17.7.0 --with-osx_iphone --with-macosx-version-min=10.0 --with-macosx-sdk=$(xcrun --sdk iphonesimulator --show-sdk-path) --enable-stl --disable-sys-libs" wxALLOW_WARNINGS=1 wxSKIP_GUI=1 wxSKIP_TESTING=1 wxSKIP_SAMPLES=1
name: wxOSX iOS Xcode 11.4
- os: osx
osx_image: xcode11.4
env: wxTOOLSET=cmake wxCMAKE_GENERATOR=Xcode wxCMAKE_DEFINES="-DCMAKE_SYSTEM_NAME=iOS -DCMAKE_FIND_ROOT_PATH=/usr/local -DCMAKE_XCODE_ATTRIBUTE_CODE_SIGNING_ALLOWED=NO -DCMAKE_OSX_DEPLOYMENT_TARGET=10.12" wxCMAKE_SAMPLES=OFF wxCMAKE_TESTS=OFF
name: wxOSX iOS CMake Xcode 11.4
- dist: bionic
compiler: gcc
env: wxCONFIGURE_FLAGS="--with-x11 --enable-pch --disable-stc" wxSKIP_SAMPLES=1
name: wxX11 Ubuntu 18.04
- dist: bionic
compiler: gcc
env: wxCONFIGURE_FLAGS="--with-directfb --enable-pch --disable-stc" wxSKIP_SAMPLES=1 wxALLOW_WARNINGS=1
name: wxDFB Ubuntu 18.04
- dist: bionic
compiler: gcc
env: wxCONFIGURE_FLAGS="--with-motif --enable-pch --disable-stc" wxSKIP_SAMPLES=1
name: wxMotif Ubuntu 18.04
- dist: bionic
compiler: gcc
env: wxCONFIGURE_FLAGS="--with-qt --enable-pch --without-opengl" wxSKIP_SAMPLES=1
name: wxQt Ubuntu 18.04
- os: linux
arch: arm64
env: wxCONFIGURE_FLAGS="--disable-sys-libs" wxLXC=1
name: wxGTK ARM64
- os: linux
arch: ppc64le
env: wxCONFIGURE_FLAGS="--disable-sys-libs --disable-gui" wxLXC=1 wxSKIP_GUI=1
name: wxBase PowerPC64
- os: linux
arch: s390x
env: wxCONFIGURE_FLAGS="--disable-sys-libs --disable-gui" wxLXC=1 wxSKIP_GUI=1
name: wxBase S/390
# The environments running these builds are flaky and often fail for the
# reasons that have nothing to do with the build itself.
allow_failures:
- os: linux
arch: ppc64le
env: wxCONFIGURE_FLAGS="--disable-sys-libs --disable-gui" wxLXC=1 wxSKIP_GUI=1
name: wxBase PowerPC64
- os: linux
arch: s390x
env: wxCONFIGURE_FLAGS="--disable-sys-libs --disable-gui" wxLXC=1 wxSKIP_GUI=1
name: wxBase S/390
branches:
only:
- master
- WX_3_0_BRANCH
notifications:
email:
if: repo = wxWidgets/wxWidgets
recipients:
- vadim@wxwidgets.org
on_success: change
on_failure: change
before_install: ./build/tools/before_install.sh
script: ./build/tools/travis-ci.sh