| sudo: required |
| language: c |
| services: |
| - docker |
| |
| matrix: |
| include: |
| # 32 bit build |
| - os: linux |
| env: DISTRO=debian:stable VARIANT=i386 |
| compiler: gcc |
| |
| # cross compilation builds |
| - os: linux |
| env: DISTRO=debian:stable VARIANT=cross-compile.ppc64le TREE="out" |
| compiler: powerpc64le-linux-gnu-gcc |
| |
| - os: linux |
| env: DISTRO=debian:stable VARIANT=cross-compile.aarch64 TREE="out" |
| compiler: aarch64-linux-gnu-gcc |
| |
| # build with minimal dependencies |
| - os: linux |
| env: DISTRO=debian:stable VARIANT=minimal TREE="out" |
| compiler: clang |
| |
| # other builds |
| - os: linux |
| env: DISTRO=fedora:latest |
| compiler: clang |
| |
| - os: linux |
| env: DISTRO=centos:6 TREE="out" |
| compiler: gcc |
| |
| - os: linux |
| env: DISTRO=debian:testing |
| compiler: gcc |
| |
| - os: linux |
| env: DISTRO=debian:oldstable |
| compiler: clang |
| |
| - os: linux |
| env: DISTRO=opensuse/tumbleweed |
| compiler: gcc |
| |
| - os: linux |
| env: DISTRO=opensuse/leap |
| compiler: gcc |
| |
| - os: linux |
| env: DISTRO=debian:oldstable |
| compiler: gcc |
| |
| - os: linux |
| env: DISTRO=debian:testing |
| compiler: clang |
| |
| - os: linux |
| env: DISTRO=ubuntu:latest TREE="out" |
| compiler: gcc |
| |
| - os: linux |
| env: DISTRO=ubuntu:xenial |
| compiler: gcc |
| |
| - os: linux |
| env: DISTRO=centos:latest |
| compiler: gcc |
| |
| before_install: |
| - DIR="/usr/src/ltp" |
| - printf "FROM $DISTRO\nRUN mkdir -p $DIR\nWORKDIR $DIR\nCOPY . $DIR\n" > Dockerfile |
| - echo "cat Dockerfile"; cat Dockerfile; echo "=====" # FIXME: debug |
| - docker build -t ltp . |
| |
| script: |
| - INSTALL="${DISTRO%%:*}" |
| - INSTALL="${INSTALL%%/*}" |
| - if [ ! "$TREE" ]; then TREE="in"; fi |
| - case $VARIANT in cross-compile*) BUILD="cross";; i386) BUILD="32";; *) BUILD="native";; esac |
| - 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" |