Use Travis build matrix to test different platforms

Create a clean, minimal, cross-platform Travis script with a build
matrix for testing different operating systems and architectures.
This commit is contained in:
Peter Colberg 2016-06-23 23:32:31 -04:00
parent e2fc5dd2f8
commit 50c52d2b0f
2 changed files with 12 additions and 35 deletions

View File

@ -1,26 +0,0 @@
#!/bin/sh
set -eux
case "$TARGET" in
host)
uname -a
export LOADER=
make ;;
arm32)
sudo bash -c 'echo >> /etc/apt/sources.list "deb http://archive.ubuntu.com/ubuntu/ trusty main restricted universe"'
sudo apt-get update
sudo apt-get -y install gcc-4.7-arm-linux-gnueabihf qemu binfmt-support
make CC="arm-linux-gnueabihf-gcc-4.7"
export LD_LIBRARY_PATH=/usr/arm-linux-gnueabihf/lib
#export LOADER=/usr/arm-linux-gnueabihf/lib/ld-linux-armhf.so.3
export LOADER="echo TESTS DISABLED ON ARM"
;;
*)
echo 'Unknown TARGET!'
exit 1
;;
esac
$LOADER make check
make clean && git status --ignored --porcelain && test -z "$(git status --ignored --porcelain)"

View File

@ -1,13 +1,16 @@
sudo: required
dist: trusty
language: c
script: ./.travis.sh
os:
- linux
env:
- TARGET=host
- TARGET=arm32
script:
- make $FLAGS
- make check $FLAGS
- make clean && git status --ignored --porcelain && test -z "$(git status --ignored --porcelain)"
matrix:
exclude:
- os: osx
env: TARGET=arm32
include:
- os: linux
env: FLAGS="CC=gcc"
notifications:
email: false