neovim/.travis.yml
Florian Walch 987ee79bb7 Travis: Prepare for OS X builds.
* Use bot-ci script at to set up prebuilt dependencies.
 * Make CI scripts more consistent.
2014-11-28 22:57:18 +01:00

61 lines
2.0 KiB
YAML

language: c
os:
- linux
env:
global:
- CI_SCRIPTS=$TRAVIS_BUILD_DIR/.ci
# Travis reports back that it has 32-cores via /proc/cpuinfo, but it's not
# what we really have available. According to their documentation, it only has
# 1.5 virtual cores.
# See
# http://docs.travis-ci.com/user/speeding-up-the-build/#Paralellizing-your-build-on-one-VM
# for more information.
- MAKE_CMD="make -j2"
# Force verification of DLOG macros.
- CFLAGS='-DMIN_LOG_LEVEL=0'
matrix:
- CI_TARGET=clang-asan
- CI_TARGET=gcc
- CI_TARGET=gcc-32
- CI_TARGET=clint
matrix:
include:
- os: osx
env: CI_TARGET=clang-asan
- os: osx
env: CI_TARGET=gcc
compiler: gcc-4.9
allow_failures:
- os: osx
before_install:
# Pins the version of the java package installed on the Travis VMs
# and avoids a lengthy upgrade process for them.
- if [ $TRAVIS_OS_NAME = linux ]; then
sudo apt-mark hold oracle-java7-installer oracle-java8-installer;
sudo apt-get update;
elif [ $TRAVIS_OS_NAME = osx ]; then
brew update;
fi
install:
- if [ $TRAVIS_OS_NAME = linux ]; then
sudo apt-get install xclip gdb;
fi
before_script:
# Adds user to a dummy group.
# That allows to test changing the group of the file by `os_fchown`.
# Need xvfb for running some tests with xclip
- if [ $TRAVIS_OS_NAME = linux ]; then
sudo groupadd chown_test;
sudo usermod -a -G chown_test $USER;
export DISPLAY=:99.0;
sh -e /etc/init.d/xvfb start;
elif [ $TRAVIS_OS_NAME = osx ]; then
sudo dscl . -create /Groups/chown_test;
sudo dscl . -append /Groups/chown_test GroupMembership $USER;
fi
script:
# This will pass the environment variables down to a bash process which runs
# as $USER, while retaining the environment variables defined and belonging
# to secondary groups given above in usermod.
- sudo -E su $USER -c "ulimit -c 102400; sh -e \"$CI_SCRIPTS/$CI_TARGET.sh\""