diff options
author | Cosmin Truta <ctruta@gmail.com> | 2019-04-22 23:00:58 -0400 |
---|---|---|
committer | Cosmin Truta <ctruta@gmail.com> | 2019-04-22 23:00:58 -0400 |
commit | cdbb8ec7aaf7baa8316f1c641c3e56e889625212 (patch) | |
tree | d4873927031df4e1d8c113df3b764581de160d34 | |
parent | 72fa126446460347a504f3d9b90f24aed1365595 (diff) | |
download | libpng-cdbb8ec7aaf7baa8316f1c641c3e56e889625212.tar.gz |
Add support for Travis CI
-rw-r--r-- | .travis.yml | 23 | ||||
-rwxr-xr-x | scripts/travis.sh | 37 |
2 files changed, 60 insertions, 0 deletions
diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 000000000..2a931b6c2 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,23 @@ +language: c + +compiler: + - clang + +env: + - USE_CMAKE=1 DISABLE_TESTS=1 + - USE_CMAKE=1 ENABLE_SANITIZERS="address,undefined" EXTRA_ARGS="-DPNG_HARDWARE_OPTIMIZATIONS=ON" + - USE_CMAKE=1 ENABLE_SANITIZERS="address,undefined" EXTRA_ARGS="-DPNG_HARDWARE_OPTIMIZATIONS=OFF" + - USE_CONFIGURE=1 DISABLE_TESTS=1 + - USE_CONFIGURE=1 EXTRA_ARGS="--enable-hardware-optimizations" + - USE_CONFIGURE=1 EXTRA_ARGS="--disable-hardware-optimizations" + - USE_LEGACY_MAKEFILES=1 DISABLE_TESTS=1 + - USE_LEGACY_MAKEFILES=1 ENABLE_SANITIZERS="address,undefined" + +os: + - linux + - osx + +script: + - bash ./scripts/travis.sh + +sudo: false diff --git a/scripts/travis.sh b/scripts/travis.sh new file mode 100755 index 000000000..7d59b24dc --- /dev/null +++ b/scripts/travis.sh @@ -0,0 +1,37 @@ +#!/bin/bash + +set -e + +if [[ $ENABLE_SANITIZERS ]]; then + LOCAL_CMAKE_EXTRA_ARGS="-DCMAKE_C_FLAGS=-fsanitize=$ENABLE_SANITIZERS" + LOCAL_MAKE_EXTRA_ARGS="CFLAGS=-fsanitize=$ENABLE_SANITIZERS LDFLAGS=-fsanitize=$ENABLE_SANITIZERS" +fi + +if [[ $USE_CMAKE ]]; then + echo "$0: using cmake + make:" $LOCAL_CMAKE_EXTRA_ARGS $EXTRA_ARGS + mkdir build-cmake + cd build-cmake + cmake $LOCAL_CMAKE_EXTRA_ARGS $EXTRA_ARGS .. + make + [[ $DISABLE_TESTS ]] || make test + make clean +fi + +if [[ $USE_CONFIGURE ]]; then + mkdir build-configure + cd build-configure + echo "$0: using configure + make:" $LOCAL_MAKE_EXTRA_ARGS $EXTRA_ARGS + ../configure $LOCAL_MAKE_EXTRA_ARGS $EXTRA_ARGS + make + [[ $DISABLE_TESTS ]] || make test + make clean + make distclean +fi + +if [[ $USE_LEGACY_MAKEFILES ]]; then + echo "$0: using scripts/makefile.$CC:" $LOCAL_MAKE_EXTRA_ARGS $EXTRA_ARGS + make -f scripts/makefile.$CC $LOCAL_MAKE_EXTRA_ARGS $EXTRA_ARGS + [[ $DISABLE_TESTS ]] || make -f scripts/makefile.$CC $LOCAL_MAKE_EXTRA_ARGS $EXTRA_ARGS test + make -f scripts/makefile.$CC $LOCAL_MAKE_EXTRA_ARGS $EXTRA_ARGS clean + # TODO: use scripts/makefile.std, etc. +fi |