language: c
+cache: ccache
addons:
apt:
packages:
+ - ccache
- clang-3.6
- gcc-5
- binutils-mingw-w64
- CONFIG_OPTS="shared"
- CONFIG_OPTS="--debug --strict-warnings enable-crypto-mdebug enable-rc5 enable-md2"
- CONFIG_OPTS="" BUILDONLY="yes"
- - CONFIG_OPTS="--unified" BUILDONLY="yes"
- - CONFIG_OPTS="--unified shared" BUILDONLY="yes"
+ - CONFIG_OPTS="--classic" BUILDONLY="yes"
+ - CONFIG_OPTS="--classic shared" BUILDONLY="yes"
- CONFIG_OPTS="no-pic" BUILDONLY="yes"
- CONFIG_OPTS="no-engine" BUILDONLY="yes"
before_script:
- sh .travis-create-release.sh $TRAVIS_OS_NAME
- tar -xvzf _srcdist.tar.gz
- - cd _srcdist
+ - if echo "$CONFIG_OPTS" | grep -e "--classic" >/dev/null; then
+ srcdir=.;
+ cd _srcdist;
+ else
+ srcdir=../_srcdist;
+ mkdir _build;
+ cd _build;
+ fi
- if [ "$CC" == i686-w64-mingw32-gcc ]; then
export CROSS_COMPILE=${CC%%gcc}; unset CC;
- ./Configure mingw $CONFIG_OPTS -Wno-pedantic-ms-format;
+ $srcdir/Configure mingw $CONFIG_OPTS -Wno-pedantic-ms-format;
elif [ "$CC" == x86_64-w64-mingw32-gcc ]; then
export CROSS_COMPILE=${CC%%gcc}; unset CC;
- ./Configure mingw64 $CONFIG_OPTS -Wno-pedantic-ms-format;
+ $srcdir/Configure mingw64 $CONFIG_OPTS -Wno-pedantic-ms-format;
else
- ./config $CONFIG_OPTS;
+ if which ccache >/dev/null && [ "$CC" != clang-3.6 ]; then
+ CC="ccache $CC";
+ fi;
+ $srcdir/config $CONFIG_OPTS;
fi
- cd ..
script:
- - cd _srcdist
+ - if echo "$CONFIG_OPTS" | grep -e "--classic" >/dev/null; then
+ cd _srcdist;
+ else
+ cd _build;
+ fi
- make
- if [ -z "$BUILDONLY" ]; then
if [ -n "$CROSS_COMPILE" ]; then
export EXE_SHELL="wine" WINEPREFIX=`pwd`;
fi;
HARNESS_VERBOSE=yes make test;
+ else
+ make build_tests;
fi
- cd ..