1# Copyright (C) 2011 Urabe, Shyouhei.  All rights reserved.
2#
3# This file is  a part of the programming language  Ruby.  Permission is hereby
4# granted,  to either  redistribute  or  modify this  file,  provided that  the
5# conditions  mentioned in  the file  COPYING are  met.  Consult  the  file for
6# details.
7
8# This is  a Travis-CI  build configuration file.   The list  of configurations
9# available is located in
10#
11#     http://about.travis-ci.org/docs/user/build-configuration/
12#
13# and as Ruby itself is a project written in C language,
14#
15#     http://about.travis-ci.org/docs/user/languages/c/
16#
17# is also a good place to look at.
18
19# Language specification.
20language: c
21
22# Compilers.  Several  compilers are  provided in Travis,  so we try  them all.
23# The value set here is visible via $CC environment variable.
24compiler:
25  - gcc
26  - clang
27
28# Dependencies.  Some  header files are missing  in a Travis' worker  VM, so we
29# have  to install  them.  The  "1.9.1" here  is OK.   It is  the  most adopted
30# version string  for Debian/Ubuntu, and  no dependencies have been  changed so
31# far since the 1.9.1 release.
32before_install:
33  - "sudo apt-get -qq update"
34  - "sudo apt-get -qq install $CC" # upgrade if any
35install: "sudo apt-get -qq build-dep ruby1.9.1 2>/dev/null"
36
37# Script is where the test runs.  Note  we just do "make test", not other tests
38# like  test-all, test-rubyspec.   This is  because  they take  too much  time,
39# enough for Travis to shut down the VM as being stalled.
40before_script:
41  - "autoconf"
42  - "./configure --with-gcc=$CC"
43  - "make -sj encs"
44  - "make -sj exts"
45script: "make test OPTS=-v"
46
47# Branch matrix.  Not all branches are Travis-ready so we limit branches here.
48branches:
49  only:
50    - trunk
51    - ruby_1_9_3
52
53# We want to be notified when something happens.
54notifications:
55  irc:
56    channels:
57      - "irc.freenode.org#ruby-core"
58      - "irc.freenode.org#ruby-ja"
59    on_success: change # [always|never|change] # default: always
60    on_failure: change # [always|never|change] # default: always
61    template:
62      - "%{message} by @%{author}: See %{build_url}"
63
64# Local Variables:
65# mode: YAML
66# coding: utf-8-unix
67# indent-tabs-mode: nil
68# tab-width: 4
69# fill-column: 79
70# default-justification: full
71# End:
72