1
1
openmpi/.travis.yml
2016-01-05 10:54:39 -08:00

69 строки
2.5 KiB
YAML

# Use "required" for sudo, because we want to use the "trusty" Debian
# distro, which is (currently) only available in the legacy Travis
# infrastructure (i.e., if we put "sudo: false" to use the new container-
# based Travis infrastructure, then "trusty" is not available). We
# need the "trusty" distro because it has more recent versions of the
# GNU Autotools (i.e., autogen.pl will fail if you use the regular
# distro because the GNU Autotools are too old).
sudo: required
dist: trusty
language: c
# Iterate over 2 different compilers
compiler:
- gcc
- clang
# Iterate over 2 different OSs
os:
- linux
- osx
addons:
# For Linux, make sure we have some extra packages that we like to
# build with
apt:
packages:
- autoconf
- automake
- libtool
- libnl-3-200
- libnl-3-dev
- libnl-route-3-200
- libnl-route-3-dev
- libibverbs-dev
- librdmacm-dev
env:
global:
- AM_MAKEFLAGS="-j4"
- CPPFLAGS="-I$HOME/bogus/include"
- LDFLAGS="-I$HOME/bogus/lib"
- LD_LIBRARY_PATH="$HOME/bogus/lib"
- CONFIGURE_ARGS="--prefix=$HOME/bogus"
- DISTCHECK_CONFIGURE_FLAGS="$CONFIGURE_ARGS"
# Install dependencies for the verbs and usnic providers. Open MPI is
# not currently using the verbs provider in Libfabric, so we might as
# well not build it.
before_install:
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then git clone https://github.com/ofiwg/libfabric.git ; fi
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then cd libfabric && ./autogen.sh && ./configure --prefix=$HOME/bogus --enable-usnic --disable-verbs && make install && cd .. ; fi
# Note that we use "make -k" to do the entire build, even if there was a
# build error in there somewhere. This prevents us from needing to submit
# to Travis, see the first error, fix that first error, submit again, ...etc.
install:
- m4 --version
- autoconf --version
- automake --version
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then libtool --version; else glibtool --version; fi
- ./autogen.pl
- if [[ "$TRAVIS_OS_NAME" == "linux" && "$CC" == "gcc" ]]; then ./configure $CONFIGURE_ARGS --with-libfabric=$HOME/bogus --with-usnic --with-verbs; else ./configure $CONFIGURE_ARGS; fi
- make -k
# We only need to distcheck on one OS / compiler combination (this is just
# a minor optimization to make the overall set of builds faster).
script:
- if [[ "$TRAVIS_OS_NAME" == "linux" && "$CC" == "gcc" ]]; then make distcheck; else make check; fi