summaryrefslogtreecommitdiff
path: root/.travis.yml
blob: cf111ca186fda9b0ba0669dabfb4def9821115fe (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
# Use, modification, and distribution are
# subject to the Boost Software License, Version 1.0. (See accompanying
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
#
# Copyright Rene Rivera 2015-2016.
# Copyright Peter Dimov 2017.

branches:
  only:
    - master
    - develop

dist: trusty

language: cpp

compiler: gcc

addons:
  apt:
    packages:
      - p7zip-full
      - docutils-common
      - docutils-doc
      - docbook
      - docbook-xml
      - docbook-xsl
      - xsltproc
      - doxygen
      - dvipsk-ja
      - texlive
      - sshpass
      - ghostscript
  ssh_known_hosts: frs.sourceforge.net

env:
  matrix:
    - TRAVIS_EMPTY_JOB_WORKAROUND=true

matrix:
  exclude:
    - env: TRAVIS_EMPTY_JOB_WORKAROUND=true

  include:

    # Build release package, but skip the final archive/upload step,
    #  to stay under time limit
    #
    # Skip EOL=LF and EOL=CRLF because they often time out

    - env: SCRIPT=ci_boost_release EOL=NONE

    # Simple integrated status tests check.
    - env: SCRIPT=ci_boost_status

    # Run 'quick' tests.
    - env: SCRIPT=ci_boost_status TARGET=quick TOOLSET=gcc
      compiler: g++

    - env: SCRIPT=ci_boost_status TARGET=quick TOOLSET=gcc CXXSTD=11
      compiler: g++

    - env: SCRIPT=ci_boost_status TARGET=quick TOOLSET=clang
      compiler: clang++

    # Run tests for the library updated by this commit.
    - env: SCRIPT=ci_boost_test_library TOOLSET=gcc CXXSTD=11
      compiler: g++

    # Library requirements tests.
    - env: SCRIPT=ci_boost_library_check

  allow_failures:
    - env: SCRIPT=ci_boost_library_check

before_install:
  # Fetch the scripts to do the actual building/testing.
  - |
    wget "https://raw.githubusercontent.com/boostorg/release-tools/develop/ci_boost_common.py" -P ..
    wget "https://raw.githubusercontent.com/boostorg/release-tools/develop/${SCRIPT}.py" -P ..
    rvm install 2.3.3

install: python "${TRAVIS_BUILD_DIR}/../${SCRIPT}.py" install
before_script: python "${TRAVIS_BUILD_DIR}/../${SCRIPT}.py" before_script
script: python "${TRAVIS_BUILD_DIR}/../${SCRIPT}.py" script
after_success: python "${TRAVIS_BUILD_DIR}/../${SCRIPT}.py" after_success
after_failure: python "${TRAVIS_BUILD_DIR}/../${SCRIPT}.py" after_failure
after_script: python "${TRAVIS_BUILD_DIR}/../${SCRIPT}.py" after_script