101 lines
1.8 KiB
YAML
101 lines
1.8 KiB
YAML
# .travis.yml for use with EPICS Base ci-scripts
|
|
# (see: https://github.com/epics-base/ci-scripts)
|
|
|
|
language: cpp
|
|
compiler: gcc
|
|
dist: bionic
|
|
|
|
cache:
|
|
directories:
|
|
- $HOME/.cache
|
|
|
|
env:
|
|
global:
|
|
- SETUP_PATH=.ci-local
|
|
|
|
addons:
|
|
apt:
|
|
packages:
|
|
# for all EPICS builds
|
|
- libreadline6-dev
|
|
- libncurses5-dev
|
|
- perl
|
|
# for clang compiler
|
|
- clang
|
|
# for mingw builds (32bit and 64bit)
|
|
- g++-mingw-w64-i686
|
|
- g++-mingw-w64-x86-64
|
|
# for RTEMS cross builds
|
|
- qemu-system-x86
|
|
|
|
install:
|
|
- python .ci/cue.py prepare
|
|
|
|
script:
|
|
- python .ci/cue.py build
|
|
- python .ci/cue.py test-results
|
|
|
|
jobs:
|
|
include:
|
|
|
|
# Windows builds
|
|
|
|
- env: BASE=7.0
|
|
os: windows
|
|
compiler: vs2017
|
|
|
|
- env: BASE=7.0
|
|
os: windows
|
|
|
|
# Different configurations of default gcc and clang
|
|
|
|
- env: BASE=7.0
|
|
|
|
- env: BASE=7.0
|
|
compiler: clang
|
|
|
|
- env: BASE=7.0 EXTRA="CMD_CXXFLAGS=-std=c++11"
|
|
|
|
- env: BASE=7.0 EXTRA="CMD_CXXFLAGS=-std=c++11"
|
|
compiler: clang
|
|
|
|
# RTEMS
|
|
|
|
- env: BASE=7.0 RTEMS=4.10
|
|
|
|
- env: BASE=7.0 RTEMS=4.9
|
|
|
|
# Trusty: compiler versions very close to RHEL 7
|
|
|
|
- env: BASE=7.0
|
|
dist: trusty
|
|
|
|
- env: BASE=7.0 EXTRA="CMD_CXXFLAGS=-std=c++11"
|
|
dist: trusty
|
|
|
|
- env: BASE=3.15 EXTRA="CMD_CXXFLAGS=-std=c++11"
|
|
dist: trusty
|
|
|
|
# Cross-compilations to Windows using MinGW and WINE
|
|
|
|
- env: BASE=7.0 WINE=32 TEST=NO BCFG=static
|
|
|
|
- env: BASE=7.0 WINE=64 TEST=NO
|
|
|
|
# Other gcc versions (added as an extra package)
|
|
|
|
- env: BASE=7.0
|
|
compiler: gcc-6
|
|
addons: { apt: { packages: ["g++-6"], sources: ["ubuntu-toolchain-r-test"] } }
|
|
|
|
- env: BASE=7.0
|
|
compiler: gcc-7
|
|
addons: { apt: { packages: ["g++-7"], sources: ["ubuntu-toolchain-r-test"] } }
|
|
|
|
# MacOS build
|
|
|
|
- env: BASE=7.0
|
|
os: osx
|
|
compiler: clang
|
|
addons: { homebrew: { packages: ["re2c"], update: true } }
|