Extcap programs must write to the packet pipe in binary mode.
[metze/wireshark/wip.git] / .gitlab-ci.yml
1 .ubuntu: &ubuntu
2   image: crondaemon/wireshark
3   retry: 1
4   before_script:
5     - rm -rf /etc/apt/sources.list.d/*
6     - echo "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial main" >  /etc/apt/sources.list.d/clang.list
7     - echo "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-5.0 main" > /etc/apt/sources.list.d/clang5.list
8     - echo "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-6.0 main" > /etc/apt/sources.list.d/clang6.list
9     - apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 15CF4D18AF4F7421
10     - echo "deb http://ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu xenial main" > /etc/apt/sources.list.d/gcc.list
11     - apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 1E9377A2BA9EF27F
12     - apt-get update -qq
13     - mkdir build
14     - cd build
15 gcc-4:
16   <<: *ubuntu
17   script:
18     - ../tools/debian-setup.sh --install-optional ninja-build gcc-4.9 g++-4.9 -y
19     - cmake -GNinja -DCMAKE_C_COMPILER=gcc-4.9 -DCMAKE_CXX_COMPILER=g++-4.9 ..
20     - ninja
21 gcc-5:
22   <<: *ubuntu
23   script:
24     - ../tools/debian-setup.sh --install-optional ninja-build gcc-5 g++-5 -y
25     - cmake -GNinja -DCMAKE_C_COMPILER=gcc-5 -DCMAKE_CXX_COMPILER=g++-5 ..
26     - ninja
27 gcc-6:
28   <<: *ubuntu
29   script:
30     - ../tools/debian-setup.sh --install-optional ninja-build  gcc-6 g++-6 -y
31     - cmake -GNinja -DCMAKE_C_COMPILER=gcc-6 -DCMAKE_CXX_COMPILER=g++-6 ..
32     - ninja
33 gcc-7:
34   <<: *ubuntu
35   script:
36     - ../tools/debian-setup.sh --install-optional ninja-build  gcc-7 g++-7 -y
37     - cmake -GNinja -DCMAKE_C_COMPILER=gcc-7 -DCMAKE_CXX_COMPILER=g++-7 ..
38     - ninja
39 gcc-8:
40   <<: *ubuntu
41   script:
42     - ../tools/debian-setup.sh --install-optional ninja-build  gcc-8 g++-8 -y
43     - cmake -GNinja -DCMAKE_C_COMPILER=gcc-8 -DCMAKE_CXX_COMPILER=g++-8 ..
44     - ninja
45 gcc-8-nopcap:
46   <<: *ubuntu
47   script:
48     - ../tools/debian-setup.sh --install-optional ninja-build  gcc-8 g++-8 -y
49     - cmake -GNinja -DENABLE_PCAP=OFF -DCMAKE_C_COMPILER=gcc-8 -DCMAKE_CXX_COMPILER=g++-8 ..
50     - ninja
51 clang-3.5:
52   <<: *ubuntu
53   script:
54     - ../tools/debian-setup.sh --install-optional ninja-build  clang-3.5 -y
55     - cmake -GNinja -DCMAKE_C_COMPILER=clang-3.5 -DCMAKE_CXX_COMPILER=clang++-3.5 ..
56     - ninja
57 clang-3.6:
58   <<: *ubuntu
59   script:
60     - ../tools/debian-setup.sh --install-optional ninja-build clang-3.6 -y
61     - cmake -GNinja -DCMAKE_C_COMPILER=clang-3.6 -DCMAKE_CXX_COMPILER=clang++-3.6 ..
62     - ninja
63 clang-3.7:
64   <<: *ubuntu
65   script:
66     - ../tools/debian-setup.sh --install-optional ninja-build  clang-3.7 -y
67     - cmake -GNinja -DCMAKE_C_COMPILER=clang-3.7 -DCMAKE_CXX_COMPILER=clang++-3.7 ..
68     - ninja
69 clang-3.8:
70   <<: *ubuntu
71   script:
72     - ../tools/debian-setup.sh --install-optional ninja-build  clang-3.8 -y
73     - cmake -GNinja -DCMAKE_C_COMPILER=clang-3.8 -DCMAKE_CXX_COMPILER=clang++-3.8 ..
74     - ninja
75 clang-3.9:
76   <<: *ubuntu
77   script:
78     - ../tools/debian-setup.sh --install-optional ninja-build  clang-3.9 -y
79     - cmake -GNinja -DCMAKE_C_COMPILER=clang-3.9 -DCMAKE_CXX_COMPILER=clang++-3.9 ..
80     - ninja
81 clang-4.0:
82   <<: *ubuntu
83   script:
84     - ../tools/debian-setup.sh --install-optional ninja-build  clang-4.0 -y
85     - cmake -GNinja -DCMAKE_C_COMPILER=clang-4.0 -DCMAKE_CXX_COMPILER=clang++-4.0 -DCMAKE_C_FLAGS=-Wframe-larger-than=20000 ..
86     - ninja
87 clang-5.0:
88   <<: *ubuntu
89   script:
90     - ../tools/debian-setup.sh --install-optional ninja-build  clang-5.0 -y
91     - cmake -GNinja -DCMAKE_C_COMPILER=clang-5.0 -DCMAKE_CXX_COMPILER=clang++-5.0 -DCMAKE_C_FLAGS=-Wframe-larger-than=20000 ..
92     - ninja
93 clang-6.0:
94   <<: *ubuntu
95   script:
96     - ../tools/debian-setup.sh --install-optional ninja-build  clang-6.0 -y
97     - cmake -GNinja -DCMAKE_C_COMPILER=clang-6.0 -DCMAKE_CXX_COMPILER=clang++-6.0 -DCMAKE_C_FLAGS=-Wframe-larger-than=20000 ..
98     - ninja
99 clang-7:
100   <<: *ubuntu
101   script:
102      - ../tools/debian-setup.sh --install-optional ninja-build clang-7 -y
103      - cmake -GNinja -DCMAKE_C_COMPILER=clang-7  -DCMAKE_CXX_COMPILER=clang++-7 -DCMAKE_C_FLAGS=-Wframe-larger-than=20000 ..
104      - ninja
105 clang-7-nopcap:
106   <<: *ubuntu
107   script:
108     - ../tools/debian-setup.sh --install-optional ninja-build clang-7 -y
109     - cmake -GNinja -DENABLE_PCAP=OFF -DCMAKE_C_COMPILER=clang-7 -DCMAKE_CXX_COMPILER=clang++-7 -DCMAKE_C_FLAGS=-Wframe-larger-than=20000 ..
110     - ninja
111 rpm-centos-7:
112   image: centos:7
113   script:
114     - yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
115     - yum install -y which
116     - tools/rpm-setup.sh --install-optional -y
117     - mkdir build
118     - cd build
119     - cmake3 -GNinja ..
120     - ninja-build
121     - ninja-build rpm-package
122 rpm-opensuse-42.3:
123   image: opensuse:42.3
124   script:
125     - zypper --non-interactive install which update-desktop-files
126     - tools/rpm-setup.sh --install-optional
127     - mkdir build
128     - cd build
129     - cmake ..
130     - make
131     - make rpm-package
132 rpm-fedora-28:
133   image: fedora:28
134   script:
135     - yum install -y which
136     - tools/rpm-setup.sh --install-optional -y
137     - mkdir build
138     - cd build
139     - cmake3 -GNinja ..
140     - ninja-build
141     - ninja-build rpm-package
142 after_script:
143   - if [ -f build/run/tshark ];then build/run/tshark --version; fi