summaryrefslogtreecommitdiff
path: root/.travis.yml
blob: bba6844210326404ec8cbf02b40ace8efacac901 (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
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
115
116
117
118
119
120
121
122
123
124
125
126
127
language: c
dist: trusty
sudo: required
compiler:
  - gcc
  - clang

addons:
  apt:
    packages:
    - autoconf
    - libtool
    - pkg-config
    - intltool
    - libdbus-glib-1-dev
    - libdbus-1-dev
    - libiw-dev
    - libglib2.0-dev
    - libmm-glib-dev
    - ppp
    - ppp-dev
    - libpolkit-gobject-1-dev
    - libgnutls-dev
    - libgcrypt11-dev
    - uuid-dev
    - libudev-dev
    - libgirepository1.0-dev
    - gobject-introspection
    - gtk-doc-tools
    - libglib2.0-doc
    - libreadline-dev
    - libnewt-dev
    - libnss3-dev
    - iptables
    - make
    - python-software-properties
    - python-gi
    - python-dbus
    - dbus
    - dbus-x11
    - libjansson4
    - libjansson-dev
    - libndp-dev
    - automake
    - dnsmasq
    - libcurl4-gnutls-dev
    - python3-pip
  coverity_scan:
    project:
      name: NetworkManager/NetworkManager
    build_command_prepend: sh autogen.sh --with-systemd-logind=no --enable-more-warnings=no --disable-ovs
    build_command: make -j4
    branch_pattern: .*coverity.*

before_install:
    - sudo dbus-uuidgen --ensure
    - |
      if test "$BUILD_TYPE" == 'meson'; then
          git clone https://github.com/ninja-build/ninja &&
          pushd ninja &&
              ./configure.py --bootstrap &&
              sudo cp ninja /usr/bin/ &&
          popd

          # Recent meson requires python 3.5, which isn't in Ubuntu 14.04.
          # Hence we cannot install it via `pip3 install meson`. Install the latest
          # working release.
          #
          # Wouldn't it be nice to have a build system that supports everything
          # that NetworkManager would like to support?
          wget https://github.com/mesonbuild/meson/releases/download/0.44.1/meson-0.44.1.tar.gz -O /tmp/meson.tar.gz
          tar -C /tmp -xvzf /tmp/meson.tar.gz
          pushd /tmp/meson-0.44.1
              sudo python3 setup.py install
          popd
      fi
    - sudo chmod o+x /usr/sbin/pppd

script:
    - |
      if test "$BUILD_TYPE" == 'meson'; then
          meson build \
              \
              -D ld_gc=false \
              -D session_tracking=no \
              -D systemdsystemunitdir=no \
              -D systemd_journal=false \
              -D selinux=false \
              -D libaudit=no \
              -D libpsl=false \
              -D vapi=false \
              -D introspection=false \
              -D qt=false \
              \
              -D docs=true \
              \
              -D ifcfg_rh=false \
              -D ibft=true \
              -D ifupdown=true \
              &&
          ninja -C build &&
          ninja -C build test
      fi
    - |
      if test "$BUILD_TYPE" == 'autotools'; then
          git clean -fdx &&
          NOCONFIGURE=1 ./autogen.sh &&
          mkdir ./build &&
          pushd ./build &&
          ../configure --prefix="$PWD/INST" --with-systemd-logind=no --enable-more-warnings=no --enable-ifcfg-rh --enable-config-plugin-ibft --enable-ifupdown --enable-tests &&
          make -j4 &&
          if [ "$CC" == gcc ]; then
              sudo locale-gen pl_PL.UTF-8 &&
              sudo make install &&
              NM_TEST_CLIENT_CHECK_L10N=1 ../contrib/travis/travis-check.sh
          else
              ../contrib/travis/travis-check.sh
          fi &&
          popd
      fi

env:
  matrix:
    - BUILD_TYPE=autotools
    - BUILD_TYPE=meson
  global:
    secure: K36MXkcsuDZ0msuEj5zHMmHfv6O725lsXuFdP6AJ3rYWKuLYE1+iNLgIRndNWDK9ckkNQFaCxDY4Z/NCfCYQTGAS9oXR5AwNqNbhOq8XrqdaZ2GX35sob8Tp4B3IsoREkN/UbIkXQKYlA5rUhgtSifUg3EwfeOiFvnLCwHcp0rYHnvT/jaq5vodBbA1jChjezcMHsp43kvPXHpybKRkipb9EzV/V3VtDLLWh9WQBvQNawpsHnT+MXSke1yU1zfNMyD9XiD7VDzCwaTs6LzjoFBLc86QS5U/9W72s0rFe6SbecntQHftknRzSrGiJDNe64wDZN/Wxq1MHxEOFCwDi6vcSwQ+RoTdhyshhfPVY2Mm5soj2w7Dx43Cz0dDZDCMhu5xxzFAFgkieJSfwXbuxga0ds58Ph8MgtDSp3fBRewZwI+vMuzl7a1hGkcqJojrm1lfgAKbNgrNUzQRwbVYAyrpa6/vCbd6ZH4PEtITwLaRf2mz8PG71xiMQguDDDXS8WF0U7Looe+G9ybAUwDS5hqHfeP+3q6bfN5Sg5Zs5QkBIN5LZbeWbPYldOEEDTvo3VI7e84bk7U5qEoUKc0w/tqVF1B5KgNUq6nIkCkmoBx8RFnmjpOHh99IfeRG9nQTRpCaEDvAM4fcRzITzId8dIIfAW/45P3ozzfz/HYiie+o=