-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
5 changed files
with
168 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
#!/bin/bash | ||
|
||
set -e | ||
|
||
# Set VV in .travis.yml to make scripts verbose | ||
[ "$VV" ] && set -x | ||
|
||
CACHEDIR=${CACHEDIR:-${HOME}/.cache} | ||
|
||
# source functions | ||
. ./.ci/travis/utils.sh | ||
|
||
# The module to be built isn't in the cache directory with the dependencies | ||
pwd | ||
|
||
# Add the path to the driver module to the RELEASE.local file, since it is needed by the example IOC | ||
update_release_local MOTOR_AEROTECH $TRAVIS_BUILD_DIR | ||
|
||
# Copy the travis RELEASE.local to the configure dir | ||
cp -f ${CACHEDIR}/RELEASE.local configure/RELEASE.local | ||
|
||
# Sanity check | ||
echo -e "${ANSI_BLUE}Contents of updated configure/RELEASE.local${ANSI_RESET}" | ||
cat configure/RELEASE.local | ||
echo -e "${ANSI_BLUE}End of updated configure/RELEASE.local${ANSI_RESET}" | ||
|
||
# Enable the building of example IOCs | ||
echo -e "${ANSI_BLUE}Creating configure/CONFIG_SITE.local${ANSI_RESET}" | ||
echo -e "BUILD_IOCS = YES" > configure/CONFIG_SITE.local | ||
cat configure/CONFIG_SITE.local | ||
echo -e "${ANSI_BLUE}End of configure/CONFIG_SITE.local${ANSI_RESET}" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
[submodule ".ci"] | ||
path = .ci | ||
url = https://github.com/epics-base/ci-scripts |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,131 @@ | ||
# .travis.xml for use with EPICS Base ci-scripts | ||
# (see: https://github.com/epics-base/ci-scripts) | ||
|
||
language: cpp | ||
compiler: gcc | ||
dist: xenial | ||
|
||
cache: | ||
directories: | ||
- $HOME/.cache | ||
|
||
env: | ||
global: | ||
- SETUP_PATH=.ci | ||
- MODULES="sncseq ipac asyn autosave busy motor" | ||
- SNCSEQ=R2-2-8 | ||
- IPAC=master | ||
- ASYN=R4-38 | ||
- AUTOSAVE=R5-9 | ||
- BUSY=R1-7-1 | ||
- MOTOR=master | ||
- MOTOR_RECURSIVE=NO | ||
|
||
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 | ||
homebrew: | ||
packages: | ||
# for all EPICS builds | ||
- bash | ||
# for the sequencer | ||
- re2c | ||
update: true | ||
|
||
install: | ||
- ./.ci/travis/prepare.sh | ||
# ugly hacks go here: | ||
- ./.ci-local/travis/post-prepare.sh | ||
|
||
script: | ||
- ./.ci/travis/build.sh | ||
|
||
# If you need to do more during install and build, | ||
# add a local directory to your module and do e.g. | ||
# - ./.ci-local/travis/install-extras.sh | ||
|
||
# Define build jobs | ||
|
||
# Well-known variables to use | ||
# SET source setup file | ||
# EXTRA content will be added to make command line | ||
# STATIC set to YES for static build (default: NO) | ||
# TEST set to NO to skip running the tests (default: YES) | ||
# VV set to make build scripts verbose (default: unset) | ||
|
||
# Usually from setup files, but may be specified or overridden | ||
# on a job line | ||
# MODULES list of dependency modules | ||
# BASE branch or release tag name of the EPICS Base to use | ||
# <MODULE> branch or release tag for a specific module | ||
# ... see README for setup file syntax description | ||
|
||
jobs: | ||
include: | ||
|
||
# Default gcc and clang, static build | ||
|
||
- env: BASE=7.0 | ||
|
||
- env: BASE=7.0 | ||
compiler: clang | ||
|
||
- env: BASE=7.0 STATIC=YES | ||
|
||
# Trusty: compiler versions very close to RHEL 7 | ||
|
||
- env: BASE=7.0 | ||
dist: trusty | ||
|
||
# Cross-compilations to Windows using MinGW and WINE | ||
|
||
- env: BASE=7.0 WINE=32 TEST=NO STATIC=YES | ||
compiler: mingw | ||
|
||
- env: BASE=7.0 WINE=64 TEST=NO STATIC=NO | ||
compiler: mingw | ||
|
||
# MacOS build | ||
|
||
- env: BASE=7.0 | ||
os: osx | ||
compiler: clang | ||
|
||
# Cross-compilation to RTEMS | ||
|
||
- env: BASE=7.0 RTEMS=4.10 | ||
|
||
- env: BASE=7.0 RTEMS=4.9 | ||
|
||
# Older Base releases | ||
|
||
- env: BASE=R3.15.7 | ||
|
||
- env: BASE=R3.15.7 STATIC=YES | ||
|
||
# 3.14.12.2 build fails on newer distributions and doesn't know tapfiles target | ||
|
||
- env: BASE=R3.14.12.8 | ||
|
||
- env: BASE=R3.14.12.8 STATIC=YES | ||
|
||
# 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"] } } |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters