# Copyright (C) 2011 Urabe, Shyouhei. All rights reserved. # # This file is a part of the programming language Ruby. Permission is hereby # granted, to either redistribute or modify this file, provided that the # conditions mentioned in the file COPYING are met. Consult the file for # details. # This is a Travis-CI build configuration file. The list of configurations # available is located in # # http://about.travis-ci.org/docs/user/build-configuration/ # # and as Ruby itself is a project written in C language, # # http://about.travis-ci.org/docs/user/languages/c/ # # is also a good place to look at. # Language specification. language: c sudo: false # Compilers. Several compilers are provided in Travis, so we try them all. # The value set here is visible via $CC environment variable. compiler: - gcc os: - linux # Dependencies. Some header files are missing in a Travis' worker VM, so we # have to install them. The "1.9.1" here is OK. It is the most adopted # version string for Debian/Ubuntu, and no dependencies have been changed so # far since the 1.9.1 release. before_install: - "CONFIG_FLAG=" - "JOBS='-j 4'" # Script is where the test runs. Note we just do "make test", not other tests # like test-all, test-rubyspec. This is because they take too much time, # enough for Travis to shut down the VM as being stalled. before_script: - "uname -a" - "uname -r" - "rm -fr .ext autom4te.cache" - "echo $TERM" - "make -f common.mk BASERUBY=ruby MAKEDIRS='mkdir -p' srcdir=. update-config_files" - "autoconf" - "mkdir config_1st config_2nd" - "./configure -C --disable-install-doc --with-gcc=$CC $CONFIG_FLAG" - "cp -pr config.status .ext/include config_1st" - "make reconfig" - "cp -pr config.status .ext/include config_2nd" - "diff -ru config_1st config_2nd" - "make after-update BASERUBY=ruby" - "make -s $JOBS" - "make update-rubyspec" script: - "make test TESTOPTS=--color=never" - "make test-all TESTOPTS='-q -j3 --color=never --job-status=normal'" - "make test-rubyspec MSPECOPT=-fm" # Branch matrix. Not all branches are Travis-ready so we limit branches here. branches: only: - trunk - ruby_2_1 - ruby_2_2 - ruby_2_3 - /^feature\// - /^bug\// # We want to be notified when something happens. notifications: irc: channels: - "irc.freenode.org#ruby-core" - "irc.freenode.org#ruby-ja" on_success: change # [always|never|change] # default: always on_failure: always # [always|never|change] # default: always template: - "%{message} by @%{author}: See %{build_url}" # Update ruby-head installed on Travis CI so other projects can test against it. webhooks: urls: - "https://rubies.travis-ci.org/rebuild/ruby-head" on_success: always on_failure: never email: - ko1c-failure@atdot.net - shibata.hiroshi@gmail.com # Local Variables: # mode: YAML # coding: utf-8-unix # indent-tabs-mode: nil # tab-width: 4 # fill-column: 79 # default-justification: full # End: