• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1sudo: required
2language: c
3services:
4    - docker
5
6matrix:
7    include:
8        # 32 bit build
9        - os: linux
10          env: DISTRO=debian:stable VARIANT=i386
11          compiler: gcc
12
13        # cross compilation builds
14        - os: linux
15          env: DISTRO=debian:stable VARIANT=cross-compile.ppc64le TREE="out"
16          compiler: powerpc64le-linux-gnu-gcc
17
18        - os: linux
19          env: DISTRO=debian:stable VARIANT=cross-compile.aarch64 TREE="out"
20          compiler: aarch64-linux-gnu-gcc
21
22        # musl (native)
23        - os: linux
24          # Message: WARNING: xsltproc: cannot process http://docbook.sourceforge.net/release/xsl-ns/current/manpages/docbook.xsl
25          # doc/meson.build:70:1: ERROR: Problem encountered: Docs cannot be built: xsltproc does not work correctly
26          env: DISTRO=alpine:latest
27          compiler: gcc
28
29        # build with minimal dependencies
30        - os: linux
31          env: DISTRO=debian:stable VARIANT=minimal TREE="out"
32          compiler: clang
33
34        # native non-intel
35        - os: linux
36          arch: ppc64le
37          compiler: gcc
38          env: DISTRO=debian:testing
39
40        - os: linux
41          arch: s390x
42          compiler: gcc
43          env: DISTRO=debian:stable
44
45        # other builds
46        - os: linux
47          env: DISTRO=fedora:latest
48          compiler: clang
49
50        - os: linux
51          env: DISTRO=centos:6 TREE="out"
52          compiler: gcc
53
54        - os: linux
55          env: DISTRO=debian:testing
56          compiler: gcc
57
58        - os: linux
59          env: DISTRO=debian:oldstable
60          compiler: clang
61
62        - os: linux
63          env: DISTRO=opensuse/tumbleweed
64          compiler: gcc
65
66        - os: linux
67          env: DISTRO=opensuse/leap
68          compiler: gcc
69
70        - os: linux
71          env: DISTRO=debian:oldstable
72          compiler: gcc
73
74        - os: linux
75          env: DISTRO=debian:testing
76          compiler: clang
77
78        - os: linux
79          env: DISTRO=ubuntu:latest TREE="out"
80          compiler: gcc
81
82        - os: linux
83          env: DISTRO=ubuntu:xenial
84          compiler: gcc
85
86        - os: linux
87          env: DISTRO=centos:latest
88          compiler: gcc
89
90before_install:
91    - DIR="/usr/src/ltp"
92    - printf "FROM $DISTRO\nRUN mkdir -p $DIR\nWORKDIR $DIR\nCOPY . $DIR\n" > Dockerfile
93    - echo "cat Dockerfile"; cat Dockerfile; echo "=====" # FIXME: debug
94    - docker build -t ltp .
95
96script:
97    - INSTALL="${DISTRO%%:*}"
98    - INSTALL="${INSTALL%%/*}"
99    - if [ ! "$TREE" ]; then TREE="in"; fi
100    - case $VARIANT in cross-compile*) BUILD="cross";; i386) BUILD="32";; *) BUILD="native";; esac
101    - docker run -t ltp /bin/sh -c "cd travis && ./$INSTALL.sh && if [ \"$VARIANT\" ]; then ./$INSTALL.$VARIANT.sh; fi && ../build.sh -o $TREE -t $BUILD -c $CC"
102