File: .travis.yml

package info (click to toggle)
libtoxcore 0.2.10-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye, sid
  • size: 3,128 kB
  • sloc: ansic: 35,951; cpp: 1,535; sh: 642; python: 197; makefile: 78
file content (114 lines) | stat: -rw-r--r-- 3,702 bytes parent folder | download | duplicates (2)
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
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
---
# For Pull Requests, we build only the first three jobs: autotools on Linux,
# cmake on Linux, and cmake on Windows 32 bit.
#
# For branch builds and cron builds (once a day), we build all the jobs. This
# is achieved using the "if: type IN (push, api, cron)" fields in the matrix.

language: c

matrix:
  include:
    - stage: "Stage 1"
      env: JOB=cmake-linux
      compiler: gcc
      addons:
        apt:
          packages:
            - libconfig-dev          # For tox-bootstrapd.
            - libcv-dev              # For av_test.
            - libhighgui-dev         # For av_test.
            - libopencv-contrib-dev  # For av_test.
            - libopus-dev            # For toxav.
            - libsndfile1-dev        # For av_test.
            - libgtest-dev           # For unit tests.
            - libvpx-dev             # For toxav.
            - portaudio19-dev        # For av_test.
            - pylint
      install:       .travis/$JOB install
      script:        .travis/$JOB script
      after_script:  .travis/upload-coverage
    - stage: "Stage 1"
      env: JOB=autotools-linux
      compiler: clang
      addons:
        apt:
          packages:
            - libconfig-dev         # For tox-bootstrapd.
            - libopus-dev           # For toxav.
            - libvpx-dev            # For toxav.
      install:       .travis/$JOB install
      script:        .travis/$JOB script
    - stage: "Stage 1"
      env: JOB=bazel-linux
      compiler: clang
      addons:
        apt:
          packages:
            - libcv-dev              # For av_test.
            - libhighgui-dev         # For av_test.
            - libopencv-contrib-dev  # For av_test.
      before_install:
        # Clear bazel installation.
        - rm -rf $HOME/.cache/bazel/_bazel_$USER/install
        # Get toktok-stack, which contains the bazel workspace.
        - cd ..
        - git clone https://github.com/TokTok/toktok-stack
        - rm -rf toktok-stack/c-toxcore
        - mv c-toxcore toktok-stack/
        - cd toktok-stack/c-toxcore
      install:       .travis/$JOB install
      script:        .travis/$JOB script
      before_cache:
        # Clear bazel installation.
        - rm -rf $HOME/.cache/bazel/_bazel_$USER/install
    - stage: "Stage 1"
      if: type IN (push, api, cron)
      env: JOB=cmake-win32
      services: [docker]
      install:       .travis/$JOB install
      script:        .travis/$JOB script
    - stage: "Stage 1"
      if: type IN (push, api, cron)
      env: JOB=cmake-win64
      services: [docker]
      install:       .travis/$JOB install
      script:        .travis/$JOB script
    - stage: "Stage 1"
      if: type IN (push, api, cron)
      env: JOB=cmake-freebsd
      sudo: required
      install:       .travis/$JOB-stage1 install
      script:        .travis/$JOB-stage1 script
    - stage: "Stage 1"
      if: type IN (push, api, cron)
      env: JOB=cmake-osx
      os: osx
      install:       .travis/$JOB install
      script:        .travis/$JOB script
    - stage: "Stage 1"
      if: type IN (push, api, cron)
      env: JOB=tox-bootstrapd-docker
      services: [docker]
      script:        .travis/$JOB
    - stage: "Stage 2"
      if: type IN (push, api, cron)
      env: JOB=cmake-freebsd
      sudo: required
      install:       .travis/$JOB-stage2 install
      script:        .travis/$JOB-stage2 script
  fast_finish: true

cache:
  directories:
    - $HOME/.cache/bazel
    - $HOME/cache
    - /opt/freebsd/cache

notifications:
  irc:
    channels:
      - "chat.freenode.net#toktok-status"
    template:
      - "%{result} %{repository_name} %{build_url}"
      - "#%{build_number} changes: %{compare_url}"