blob: a29551650069375a998e25d9030905ac9033d8fb [file] [log] [blame]
Petr Vorel24519c12018-12-18 10:31:51 +01001sudo: required
Petr Vorel1ed52332017-01-11 13:42:29 +01002language: c
Petr Vorel24519c12018-12-18 10:31:51 +01003services:
4 - docker
Petr Vorel72a23be2018-01-26 19:51:16 +01005
Petr Vorelb6684332017-01-13 10:07:05 +01006matrix:
7 include:
Petr Vorel24519c12018-12-18 10:31:51 +01008 # 32 bit build
Petr Vorelb6684332017-01-13 10:07:05 +01009 - os: linux
Petr Vorel24519c12018-12-18 10:31:51 +010010 env: DISTRO=debian:stable VARIANT=i386
11 compiler: gcc
Petr Vorelb6684332017-01-13 10:07:05 +010012
Petr Vorel24519c12018-12-18 10:31:51 +010013 # cross compilation builds
Petr Vorelb6684332017-01-13 10:07:05 +010014 - os: linux
Petr Vorel24519c12018-12-18 10:31:51 +010015 env: DISTRO=debian:stable VARIANT=cross-compile.ppc64le TREE="out"
Petr Vorel72a23be2018-01-26 19:51:16 +010016 compiler: powerpc64le-linux-gnu-gcc
Petr Vorelc24cbc12019-03-26 12:35:27 +010017
Petr Vorel24519c12018-12-18 10:31:51 +010018 - os: linux
19 env: DISTRO=debian:stable VARIANT=cross-compile.aarch64 TREE="out"
20 compiler: aarch64-linux-gnu-gcc
Petr Vorel72a23be2018-01-26 19:51:16 +010021
Petr Vorel24519c12018-12-18 10:31:51 +010022 # build with minimal dependencies
23 - os: linux
24 env: DISTRO=debian:stable VARIANT=minimal TREE="out"
25 compiler: clang
26
Petr Vorelc24cbc12019-03-26 12:35:27 +010027 # other builds
28 - os: linux
29 env: DISTRO=fedora:latest
30 compiler: clang
31
32 - os: linux
33 env: DISTRO=centos:6 TREE="out"
34 compiler: gcc
35
Petr Vorel24519c12018-12-18 10:31:51 +010036 - os: linux
37 env: DISTRO=debian:testing
38 compiler: gcc
Petr Vorelc24cbc12019-03-26 12:35:27 +010039
Petr Vorel24519c12018-12-18 10:31:51 +010040 - os: linux
Petr Vorelc24cbc12019-03-26 12:35:27 +010041 env: DISTRO=debian:oldstable
Petr Vorel24519c12018-12-18 10:31:51 +010042 compiler: clang
43
44 - os: linux
Petr Vorelc24cbc12019-03-26 12:35:27 +010045 env: DISTRO=opensuse/tumbleweed
46 compiler: gcc
47
48 - os: linux
49 env: DISTRO=opensuse/leap
50 compiler: gcc
51
52 - os: linux
Petr Vorel24519c12018-12-18 10:31:51 +010053 env: DISTRO=debian:oldstable
54 compiler: gcc
Petr Vorelc24cbc12019-03-26 12:35:27 +010055
Petr Vorel24519c12018-12-18 10:31:51 +010056 - os: linux
Petr Vorelc24cbc12019-03-26 12:35:27 +010057 env: DISTRO=debian:testing
Petr Vorel24519c12018-12-18 10:31:51 +010058 compiler: clang
59
60 - os: linux
61 env: DISTRO=ubuntu:latest TREE="out"
62 compiler: gcc
63
64 - os: linux
65 env: DISTRO=ubuntu:xenial
66 compiler: gcc
67
68 - os: linux
Petr Vorel24519c12018-12-18 10:31:51 +010069 env: DISTRO=centos:latest
70 compiler: gcc
Petr Vorel1ed52332017-01-11 13:42:29 +010071
Petr Vorel3d43c232017-11-27 15:45:53 +010072before_install:
Petr Vorel24519c12018-12-18 10:31:51 +010073 - DIR="/usr/src/ltp"
74 - printf "FROM $DISTRO\nRUN mkdir -p $DIR\nWORKDIR $DIR\nCOPY . $DIR\n" > Dockerfile
75 - echo "cat Dockerfile"; cat Dockerfile; echo "=====" # FIXME: debug
76 - docker build -t ltp .
Petr Vorel2b103e42018-07-04 18:10:36 +020077
Petr Vorel24519c12018-12-18 10:31:51 +010078script:
79 - INSTALL="${DISTRO%%:*}"
Petr Vorele478b942019-03-01 11:29:28 +010080 - INSTALL="${INSTALL%%/*}"
Petr Vorel24519c12018-12-18 10:31:51 +010081 - if [ ! "$TREE" ]; then TREE="in"; fi
82 - case $VARIANT in cross-compile*) BUILD="cross";; i386) BUILD="32";; *) BUILD="native";; esac
83 - docker run -it ltp /bin/sh -c "cd travis && ./$INSTALL.sh && if [ \"$VARIANT\" ]; then ./$INSTALL.$VARIANT.sh; fi && ../build.sh -o $TREE -t $BUILD -c $CC"