language: c
addons:
- apt_packages:
- - binutils-mingw-w64
- - gcc-mingw-w64
+ apt:
+ packages:
+ - clang-3.6
+ - gcc-5
+ - binutils-mingw-w64
+ - gcc-mingw-w64
+ - wine
+ sources:
+ - llvm-toolchain-precise-3.6
+ - ubuntu-toolchain-r-test
os:
- linux
compiler:
- clang
+ - clang-3.6
- gcc
+ - gcc-5
- i686-w64-mingw32-gcc
- x86_64-w64-mingw32-gcc
env:
- CONFIG_OPTS=""
- CONFIG_OPTS="shared"
- - CONFIG_OPTS="--debug --strict-warnings"
+ - CONFIG_OPTS="no-pic"
+ - CONFIG_OPTS="no-asm"
+ - CONFIG_OPTS="--debug --strict-warnings enable-crypto-mdebug enable-rc5 enable-md2"
+ - CONFIG_OPTS="--unified"
+ - CONFIG_OPTS="--unified shared"
+ - CONFIG_OPTS="--unified no-asm"
+ - CONFIG_OPTS="--unified --debug --strict-warnings enable-crypto-mdebug enable-rc5 enable-md2"
matrix:
+ include:
+ - os: linux
+ compiler: clang-3.6
+ env: CONFIG_OPTS="-fsanitize=address"
+ - os: linux
+ compiler: clang-3.6
+ env: CONFIG_OPTS="no-asm --debug --strict-warnings -fno-sanitize-recover -fsanitize=address -fsanitize=undefined enable-crypto-mdebug enable-rc5 enable-md2"
+ - os: linux
+ compiler: gcc-5
+ env: CONFIG_OPTS="-fsanitize=address"
+ - os: linux
+ compiler: gcc-5
+ env: CONFIG_OPTS="no-asm --debug --strict-warnings -fno-sanitize-recover -fsanitize=address -fsanitize=undefined enable-crypto-mdebug enable-rc5 enable-md2"
exclude:
+ - os: osx
+ compiler: clang-3.6
+ - os: osx
+ compiler: gcc
+ - os: osx
+ compiler: gcc-5
- os: osx
compiler: i686-w64-mingw32-gcc
- os: osx
compiler: x86_64-w64-mingw32-gcc
+ - compiler: i686-w64-mingw32-gcc
+ env: CONFIG_OPTS="shared"
+ - compiler: x86_64-w64-mingw32-gcc
+ env: CONFIG_OPTS="shared"
+ - compiler: i686-w64-mingw32-gcc
+ env: CONFIG_OPTS="no-asm"
+ - compiler: x86_64-w64-mingw32-gcc
+ env: CONFIG_OPTS="no-asm"
+ - compiler: i686-w64-mingw32-gcc
+ env: CONFIG_OPTS="--unified shared"
+ - compiler: x86_64-w64-mingw32-gcc
+ env: CONFIG_OPTS="--unified shared"
+ - compiler: i686-w64-mingw32-gcc
+ env: CONFIG_OPTS="--unified no-asm"
+ - compiler: x86_64-w64-mingw32-gcc
+ env: CONFIG_OPTS="--unified no-asm"
allow_failures:
- compiler: i686-w64-mingw32-gcc
- env: CONFIG_OPTS="--debug --strict-warnings"
+ env: CONFIG_OPTS="--debug --strict-warnings enable-crypto-mdebug enable-rc5 enable-md2"
- compiler: x86_64-w64-mingw32-gcc
- env: CONFIG_OPTS="--debug --strict-warnings"
+ env: CONFIG_OPTS="--debug --strict-warnings enable-crypto-mdebug enable-rc5 enable-md2"
+ - compiler: i686-w64-mingw32-gcc
+ env: CONFIG_OPTS="--unified --debug --strict-warnings enable-crypto-mdebug enable-rc5 enable-md2"
+ - compiler: x86_64-w64-mingw32-gcc
+ env: CONFIG_OPTS="--unified --debug --strict-warnings enable-crypto-mdebug enable-rc5 enable-md2"
before_script:
+ - sh .travis-create-release.sh $TRAVIS_OS_NAME
+ - tar -xvzf _srcdist.tar.gz
+ - cd _srcdist
- if [ "$CC" == i686-w64-mingw32-gcc ]; then
export CROSS_COMPILE=${CC%%gcc}; unset CC;
- ./Configure mingw $CONFIG_OPTS;
+ ./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;
+ ./Configure mingw64 $CONFIG_OPTS -Wno-pedantic-ms-format;
else
./config $CONFIG_OPTS;
fi
+ - cd ..
script:
+ - cd _srcdist
- make
- - if [ -z "$CROSS_COMPILE" ]; then make test; fi
+ - if [ -n "$CROSS_COMPILE" ]; then
+ export EXE_SHELL="wine" WINEPREFIX=`pwd`;
+ fi
+ - HARNESS_VERBOSE=yes make test
+ - cd ..
notifications:
email: