ext-cryptopp/.travis.yml

195 lines
4.5 KiB
YAML
Raw Normal View History

language: cpp
os:
- linux
- osx
dist: xenial
sudo: required
2018-12-08 08:08:08 -05:00
osx_image: xcode10.1
git:
2018-12-09 03:31:50 -05:00
depth: 5
compiler:
- clang
- gcc
env:
global:
- BUILD_JOBS=2
- ANDROID_HOME="$HOME/android-sdk"
- ANDROID_SDK="$HOME/android-sdk"
- ANDROID_NDK="$HOME/android-ndk"
2018-12-09 04:19:00 -05:00
- ANDROID_SDK_ROOT="$ANDROID_SDK"
- ANDROID_NDK_ROOT="$ANDROID_NDK"
matrix:
- BUILD_MODE="all"
- BUILD_MODE="native"
- BUILD_MODE="no-asm"
2017-08-17 01:47:08 -04:00
- BUILD_MODE="debug"
- BUILD_MODE="asan"
- BUILD_MODE="ubsan"
2019-10-14 23:01:27 -04:00
- BUILD_MODE="pem"
2017-05-28 01:17:28 -04:00
matrix:
exclude:
# Skip GCC on OS X entirely
- os: osx
compiler: gcc
include:
- os: linux
env:
- BUILD_OS=linux
- BUILD_MODE=autotools
- os: linux
env:
- BUILD_OS=linux
- BUILD_MODE=cmake
2019-10-14 23:05:05 -04:00
- os: linux
env:
- BUILD_OS=linux
- BUILD_MODE=pem
- os: osx
env:
- BUILD_OS=osx
- BUILD_MODE=autotools
- os: osx
env:
- BUILD_OS=osx
- BUILD_MODE=cmake
2019-10-14 23:05:05 -04:00
- os: osx
2019-10-14 23:01:27 -04:00
env:
2019-10-14 23:05:05 -04:00
- BUILD_OS=osx
2019-10-14 23:01:27 -04:00
- BUILD_MODE=pem
2019-10-14 23:05:05 -04:00
- os: linux
env:
- BUILD_OS=linux
- BUILD_MODE=android
- PLATFORM=armeabi-v7a
- os: linux
env:
- BUILD_OS=linux
- BUILD_MODE=android
- PLATFORM=aarch64
- os: linux
env:
- BUILD_OS=linux
- BUILD_MODE=android
- PLATFORM=x86
- os: linux
env:
- BUILD_OS=linux
- BUILD_MODE=android
- PLATFORM=x86_64
- os: osx
env:
- BUILD_OS=osx
- BUILD_MODE=ios
- PLATFORM=iPhoneOS
- os: osx
env:
- BUILD_OS=osx
- BUILD_MODE=ios
- PLATFORM=Arm64
- os: osx
env:
- BUILD_OS=osx
- BUILD_MODE=ios
- PLATFORM=WatchOS
- os: osx
env:
- BUILD_OS=osx
- BUILD_MODE=ios
- PLATFORM=AppleTVOS
- os: osx
env:
- BUILD_OS=osx
- BUILD_MODE=ios
- PLATFORM=iPhoneSimulator
- os: osx
env:
- BUILD_OS=osx
- BUILD_MODE=ios
- PLATFORM=WatchSimulator
- os: osx
env:
- BUILD_OS=osx
- BUILD_MODE=ios
- PLATFORM=AppleTVSimulator
allow_failures:
- os: osx
env:
- BUILD_OS=osx
- BUILD_MODE=ios
- PLATFORM=WatchOS
2018-12-08 08:28:53 -05:00
- os: osx
env:
- BUILD_OS=osx
- BUILD_MODE=ios
- PLATFORM=iPhoneSimulator
before_install:
- |
if [[ "$BUILD_OS" == "linux" ]] && [[ "$BUILD_MODE" == "android" ]]; then
# https://github.com/travis-ci/travis-ci/issues/9037
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A145
sudo apt-get update
2018-12-09 09:43:15 -05:00
source TestScripts/setenv-travis.sh
bash TestScripts/install-android.sh
fi
if [[ "$BUILD_OS" == "linux" ]] && [[ "$BUILD_MODE" == "autotools" ]]; then
# https://github.com/travis-ci/travis-ci/issues/9037
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A145
sudo apt-get install -y autoconf automake libtool
fi
script:
2017-08-10 22:59:00 -04:00
- |
if [[ "$BUILD_MODE" == "ios" ]]; then
2018-08-01 22:01:52 -04:00
cp TestScripts/setenv-ios.sh .
cp TestScripts/cryptest-ios.sh .
bash cryptest-ios.sh
elif [[ "$BUILD_MODE" == "android" ]]; then
cp TestScripts/setenv-android.sh .
2018-08-01 22:01:52 -04:00
cp TestScripts/cryptest-android.sh .
bash cryptest-android.sh
elif [[ "$BUILD_MODE" == "autotools" ]]; then
2018-08-01 22:01:52 -04:00
cp TestScripts/cryptest-autotools.sh .
bash cryptest-autotools.sh
elif [[ "$BUILD_MODE" == "cmake" ]]; then
2018-08-01 22:01:52 -04:00
cp TestScripts/cryptest-cmake.sh .
bash cryptest-cmake.sh
2019-10-14 23:05:05 -04:00
elif [[ "$BUILD_MODE" == "pem" ]]; then
cp TestScripts/cryptest-pem.sh .
bash cryptest-pem.sh
2017-08-17 01:47:08 -04:00
elif [[ "$BUILD_MODE" == "debug" ]]; then
CXXFLAGS="-DDEBUG -g2 -O1" make -j "$BUILD_JOBS"
./cryptest.exe v
./cryptest.exe tv all
2017-08-10 22:59:00 -04:00
else
make "$BUILD_MODE" -j "$BUILD_JOBS"
2017-08-10 22:59:00 -04:00
./cryptest.exe v
./cryptest.exe tv all
fi
# whitelist branches to avoid testing feature branches twice
branches:
only:
- master
addons:
sonarcloud: false
notifications:
email:
recipients:
- cryptopp-build@googlegroups.com
on_success: always # default: change
2017-08-10 22:59:00 -04:00
on_failure: always # default: always