Make command line syntax consistent with other tools
[xapian.git] / .travis.yml
blobc6f72c10ed097cdf7e01bc5800c40cc4becf29d1
1 # Travis configuration for building Xapian. This is
2 # fairly intensive, so we only enable it for pull
3 # requests.
5 # Right now, we build on containerised linux, which
6 # travis provides as Ubuntu 12.04 LTS so we have to
7 # upgrade a lot of stuff to get something vaguely
8 # modern.
9 sudo: false
10 language: cpp
11 env:
12   global:
13     # Tell bootstrap where to clone ./common from
14     - XAPIAN_COMMON_CLONE_URL=https://github.com/xapian/xapian.git
15 matrix:
16   include:
17     - compiler: gcc
18       # GCC we want v4.9.
19       addons:
20         apt:
21           sources:
22             - ubuntu-toolchain-r-test
23           packages:
24             - doxygen
25             - graphviz
26             - help2man
27             - python-docutils
28             - pngcrush
29             - python-sphinx
30             - uuid-dev
31             - libpcre3-dev
32             - libmagic-dev
33             - tcl
34             - libsvm-dev
35             - gcc-4.9
36             - g++-4.9
37       # Installing it isn't enough!
38       env: USE_CC=gcc-4.9 USE_CXX=g++-4.9
39     - compiler: clang
40       # Clang is already installed, but we want to build using the
41       # llvm c++ library, not the GCC one. (Otherwise, depending on
42       # the GCC version, there can be issues.)
43       addons:
44         apt:
45           sources:
46             - ubuntu-toolchain-r-test
47           packages:
48             - doxygen
49             - graphviz
50             - help2man
51             - python-docutils
52             - pngcrush
53             - python-sphinx
54             - uuid-dev
55             - libpcre3-dev
56             - libmagic-dev
57             - tcl
58             - libsvm-dev
59             - libc++-dev
60       # We also have to disable an error, because (older?)
61       # perl header files don't play nicely with clang.
62       env: USE_CC=clang USE_CXX=clang++ CXXFLAGS=-Wno-error=reserved-user-defined-literal
64 before_script:
65   # Bootstrap everything (including letor, which isn't done
66   # by default), then configure using our chosen compiler.
67   - ./bootstrap xapian-core xapian-applications/omega swig xapian-bindings xapian-letor
68   - ./configure CC=$USE_CC CXX=$USE_CXX
69 script: make && make check VERBOSE=1 AUTOMATED_TESTING=1