1818
1919# Language specification.
2020language : c
21+ sudo : false
2122
2223# Compilers. Several compilers are provided in Travis, so we try them all.
2324# The value set here is visible via $CC environment variable.
2425compiler :
2526 - gcc
26- - clang
2727
2828os :
2929 - linux
30- - osx
3130
3231# Dependencies. Some header files are missing in a Travis' worker VM, so we
3332# have to install them. The "1.9.1" here is OK. It is the most adopted
3433# version string for Debian/Ubuntu, and no dependencies have been changed so
3534# far since the 1.9.1 release.
3635before_install :
37- - " if [[ $TRAVIS_OS_NAME = 'linux' ]]; then sudo apt-get -qq update; fi"
38- # Travis ships an outdated, broken version of libssl by default
39- - " if [[ $TRAVIS_OS_NAME = 'linux' ]]; then sudo apt-get -qq --only-upgrade install '^libssl.*'; fi"
40- - " if [[ $TRAVIS_OS_NAME = 'linux' ]]; then sudo apt-get -qq install $CC; fi" # upgrade if any
41- - " if [[ $TRAVIS_OS_NAME = 'linux' ]]; then JOBS='-j'; fi"
42- - " if [[ $TRAVIS_OS_NAME = 'osx' ]]; then brew install autoconf openssl; fi"
43- - " if [[ $TRAVIS_OS_NAME = 'osx' ]]; then OPENSSL_FLAG=\" --with-openssl-dir=`brew --prefix openssl`\" ; fi"
44- - " if [[ $TRAVIS_OS_NAME = 'osx' && $CC = 'gcc' ]]; then CC='gcc-4.9'; fi"
45- install : " if [[ $TRAVIS_OS_NAME = 'linux' ]]; then sudo apt-get -qq build-dep ruby1.9.1 2>/dev/null; fi"
36+ - " CONFIG_FLAG="
37+ - " JOBS='-j 4'"
4638
4739# Script is where the test runs. Note we just do "make test", not other tests
4840# like test-all, test-rubyspec. This is because they take too much time,
4941# enough for Travis to shut down the VM as being stalled.
5042before_script :
51- - " if [[ $TRAVIS_OS_NAME = 'osx' ]]; then rm -f ~/Library/Logs/DiagnosticReports/ruby_*.crash; fi"
5243 - " uname -a"
5344 - " uname -r"
5445 - " rm -fr .ext autom4te.cache"
55- - " make -f common.mk BASERUBY=ruby srcdir=. update-config_files"
46+ - " echo $TERM"
47+ - " make -f common.mk BASERUBY=ruby MAKEDIRS='mkdir -p' srcdir=. update-config_files"
5648 - " autoconf"
5749 - " mkdir config_1st config_2nd"
58- - " ./configure -C --disable-install-doc --disable-install-rdoc -- with-gcc=$CC $OPENSSL_FLAG "
50+ - " ./configure -C --disable-install-doc --with-gcc=$CC $CONFIG_FLAG "
5951 - " cp -pr config.status .ext/include config_1st"
6052 - " make reconfig"
6153 - " cp -pr config.status .ext/include config_2nd"
62- - " diff -ru config_1st config_2nd || true "
63- - " make -s $JOBS encs "
64- - " make -s $JOBS exts "
54+ - " diff -ru config_1st config_2nd"
55+ - " make after-update BASERUBY=ruby "
56+ - " make -s $JOBS"
6557 - " make update-rubyspec"
6658script :
67- - " make test"
68- - " make test-all TESTS='-q -j2'"
69- - " make test-rubyspec"
70- after_failure :
71- - " if [[ $TRAVIS_OS_NAME = 'osx' ]]; then find ~/Library/Logs/DiagnosticReports -type f -name ruby_\\ *.crash -ls -execdir cat {} \\ ; -delete; fi"
59+ - " make test TESTOPTS=--color=never"
60+ - " make test-all TESTOPTS='-q -j3 --color=never --job-status=normal'"
61+ - " make test-rubyspec MSPECOPT=-fm"
7262
7363# Branch matrix. Not all branches are Travis-ready so we limit branches here.
7464branches :
7565 only :
7666 - trunk
77- - ruby_1_9_3
78- - ruby_2_0_0
7967 - ruby_2_1
8068 - ruby_2_2
69+ - ruby_2_3
70+ - /^feature\//
71+ - /^bug\//
8172
8273# We want to be notified when something happens.
8374notifications :
@@ -86,7 +77,7 @@ notifications:
8677 - " irc.freenode.org#ruby-core"
8778 - " irc.freenode.org#ruby-ja"
8879 on_success : change # [always|never|change] # default: always
89- on_failure : change # [always|never|change] # default: always
80+ on_failure : always # [always|never|change] # default: always
9081 template :
9182 - " %{message} by @%{author}: See %{build_url}"
9283
0 commit comments