mirror of
https://github.com/pocoproject/poco.git
synced 2025-04-23 16:52:44 +02:00
build matrix
This commit is contained in:
parent
2ffb24583e
commit
ed0f23b60f
75
.travis.yml
75
.travis.yml
@ -1,23 +1,11 @@
|
|||||||
language: cpp
|
language: cpp
|
||||||
|
|
||||||
os: linux
|
|
||||||
|
|
||||||
dist: bionic
|
|
||||||
|
|
||||||
arch:
|
|
||||||
- amd64
|
|
||||||
- ppc64le
|
|
||||||
- s390x
|
|
||||||
- arm64
|
|
||||||
|
|
||||||
cache:
|
cache:
|
||||||
- apt
|
- apt
|
||||||
|
|
||||||
before_install:
|
#before_install:
|
||||||
# we need a recent version of CMake
|
# - if [ "$TRAVIS_OS_NAME" == "linux" ]; then sudo apt-get update -qq; fi
|
||||||
# linux prereqisite packages
|
# - if [ "$TRAVIS_OS_NAME" == "linux" ]; then sudo apt-get install -qq -y cmake libssl-dev unixodbc-dev libmysqlclient-dev g++-arm-linux-gnueabi g++-arm-linux-gnueabihf clang libc++-dev sloccount cppcheck; fi
|
||||||
- if [ "$TRAVIS_OS_NAME" == "linux" ]; then sudo apt-get update -qq; fi
|
|
||||||
- if [ "$TRAVIS_OS_NAME" == "linux" ]; then sudo apt-get install -qq -y cmake libssl-dev unixodbc-dev libmysqlclient-dev g++-arm-linux-gnueabi g++-arm-linux-gnueabihf clang libc++-dev ninja-build sloccount cppcheck; fi
|
|
||||||
|
|
||||||
services:
|
services:
|
||||||
- mongodb
|
- mongodb
|
||||||
@ -44,6 +32,7 @@ before_script:
|
|||||||
jobs:
|
jobs:
|
||||||
include:
|
include:
|
||||||
- os: linux
|
- os: linux
|
||||||
|
- dist: bionic
|
||||||
- arch: amd64
|
- arch: amd64
|
||||||
- env: TEST_NAME="android API level 19"
|
- env: TEST_NAME="android API level 19"
|
||||||
addons:
|
addons:
|
||||||
@ -75,6 +64,7 @@ jobs:
|
|||||||
#cd cmake-build && travis_wait 30 /opt/android-sdk/cmake/3.10.2.4988404/bin/ctest -E Foundation --output-on-failure FIXME Android emulator hangs
|
#cd cmake-build && travis_wait 30 /opt/android-sdk/cmake/3.10.2.4988404/bin/ctest -E Foundation --output-on-failure FIXME Android emulator hangs
|
||||||
|
|
||||||
- os: linux
|
- os: linux
|
||||||
|
- dist: bionic
|
||||||
- arch: amd64
|
- arch: amd64
|
||||||
- env: TEST_NAME="android API level 24 arm64-v8a"
|
- env: TEST_NAME="android API level 24 arm64-v8a"
|
||||||
addons:
|
addons:
|
||||||
@ -106,22 +96,35 @@ jobs:
|
|||||||
#cd cmake-build && travis_wait 30 /opt/android-sdk/cmake/3.10.2.4988404/bin/ctest -E Foundation --output-on-failure FIXME Android emulator hangs
|
#cd cmake-build && travis_wait 30 /opt/android-sdk/cmake/3.10.2.4988404/bin/ctest -E Foundation --output-on-failure FIXME Android emulator hangs
|
||||||
|
|
||||||
- os: linux
|
- os: linux
|
||||||
|
- dist: bionic
|
||||||
- arch: amd64
|
- arch: amd64
|
||||||
- env: TEST_NAME="clang (make)"
|
- env: TEST_NAME="clang (make)"
|
||||||
|
addons:
|
||||||
|
apt:
|
||||||
|
packages:
|
||||||
|
- libssl-dev
|
||||||
|
- unixodbc-dev
|
||||||
|
- libmysqlclient-dev
|
||||||
compiler: clang
|
compiler: clang
|
||||||
script:
|
script:
|
||||||
- ./configure --everything --omit=PDF --config=Linux-clang && make all -s -j2 && sudo make install
|
- ./configure --everything --omit=PDF --config=Linux-clang && make all -s -j2 && sudo make install
|
||||||
- sudo -s ./travis/runtests.sh
|
- sudo -s ./travis/runtests.sh
|
||||||
|
|
||||||
- os: linux
|
- os: linux
|
||||||
|
- dist: bionic
|
||||||
- arch:
|
- arch:
|
||||||
- amd64
|
- amd64
|
||||||
- ppc64le
|
- ppc64le
|
||||||
- s390x
|
- s390x
|
||||||
- arm64
|
- arm64
|
||||||
- env: TEST_NAME="gcc (make)"
|
- env: TEST_NAME="gcc (make)"
|
||||||
|
addons:
|
||||||
|
apt:
|
||||||
|
packages:
|
||||||
|
- libssl-dev
|
||||||
|
- unixodbc-dev
|
||||||
|
- libmysqlclient-dev
|
||||||
compiler: gcc
|
compiler: gcc
|
||||||
|
|
||||||
script:
|
script:
|
||||||
- ./configure --everything --omit=PDF && make all -s -j2 && sudo make install
|
- ./configure --everything --omit=PDF && make all -s -j2 && sudo make install
|
||||||
- sudo -s ./travis/runtests.sh
|
- sudo -s ./travis/runtests.sh
|
||||||
@ -131,30 +134,64 @@ jobs:
|
|||||||
# - ./configure --omit=PDF,Data/ODBC,Data/MySQL,Crypto,NetSSL,PageCompiler && make all -s -j2 CROSS_COMPILE=arm-linux-gnueabi- POCO_TARGET_OSARCH=armv7l
|
# - ./configure --omit=PDF,Data/ODBC,Data/MySQL,Crypto,NetSSL,PageCompiler && make all -s -j2 CROSS_COMPILE=arm-linux-gnueabi- POCO_TARGET_OSARCH=armv7l
|
||||||
|
|
||||||
- os: linux
|
- os: linux
|
||||||
|
- dist: bionic
|
||||||
- arch: amd64
|
- arch: amd64
|
||||||
- env: TEST_NAME="gcc (CMake)"
|
- env: TEST_NAME="gcc (CMake)"
|
||||||
compiler: gcc
|
compiler: gcc
|
||||||
|
addons:
|
||||||
|
apt:
|
||||||
|
packages:
|
||||||
|
- cmake
|
||||||
|
- libssl-dev
|
||||||
|
- unixodbc-dev
|
||||||
|
- libmysqlclient-dev
|
||||||
script:
|
script:
|
||||||
- cmake -H. -Bcmake-build -GNinja -DENABLE_PDF=OFF -DENABLE_TESTS=ON && cmake --build cmake-build --target all && cd cmake-build && sudo -s PWD=`pwd` PATH=$PWD/cmake-3.5.1-Linux-x86_64/bin:$PATH ctest --output-on-failure -E "(DataMySQL)|(DataODBC)"
|
- cmake -H. -Bcmake-build -GNinja -DENABLE_PDF=OFF -DENABLE_TESTS=ON && cmake --build cmake-build --target all && cd cmake-build && sudo -s PWD=`pwd` PATH=$PWD/cmake-3.5.1-Linux-x86_64/bin:$PATH ctest --output-on-failure -E "(DataMySQL)|(DataODBC)"
|
||||||
|
|
||||||
- os: linux
|
- os: linux
|
||||||
|
- dist: bionic
|
||||||
- arch: amd64
|
- arch: amd64
|
||||||
- env: TEST_NAME="clang (CMake)"
|
- env: TEST_NAME="clang (CMake)"
|
||||||
compiler: clang
|
compiler: clang
|
||||||
|
addons:
|
||||||
|
apt:
|
||||||
|
packages:
|
||||||
|
- cmake
|
||||||
|
- libssl-dev
|
||||||
|
- unixodbc-dev
|
||||||
|
- libmysqlclient-dev
|
||||||
script:
|
script:
|
||||||
- cmake -H. -Bcmake-build -GNinja -DENABLE_PDF=OFF -DENABLE_TESTS=ON && cmake --build cmake-build --target all && cd cmake-build && sudo -s PWD=`pwd` PATH=$PWD/cmake-3.5.1-Linux-x86_64/bin:$PATH ctest --output-on-failure -E "(DataMySQL)|(DataODBC)"
|
- cmake -H. -Bcmake-build -GNinja -DENABLE_PDF=OFF -DENABLE_TESTS=ON && cmake --build cmake-build --target all && cd cmake-build && sudo -s PWD=`pwd` PATH=$PWD/cmake-3.5.1-Linux-x86_64/bin:$PATH ctest --output-on-failure -E "(DataMySQL)|(DataODBC)"
|
||||||
|
|
||||||
- os: linux
|
- os: linux
|
||||||
|
- dist: bionic
|
||||||
- arch: amd64
|
- arch: amd64
|
||||||
- env: TEST_NAME="arm-linux-gnueabi-g++ (CMake)"
|
- env: TEST_NAME="arm-linux-gnueabi-g++ (CMake)"
|
||||||
|
addons:
|
||||||
|
apt:
|
||||||
|
packages:
|
||||||
|
- cmake
|
||||||
|
- libssl-dev
|
||||||
|
- unixodbc-dev
|
||||||
|
- libmysqlclient-dev
|
||||||
|
- g++-arm-linux-gnueabi
|
||||||
script:
|
script:
|
||||||
- export CC="arm-linux-gnueabi-gcc"
|
- export CC="arm-linux-gnueabi-gcc"
|
||||||
- export CXX="arm-linux-gnueabi-g++"
|
- export CXX="arm-linux-gnueabi-g++"
|
||||||
- cmake -H. -Bcmake-build -GNinja -DENABLE_PDF=OFF -DENABLE_NETSSL=OFF -DENABLE_CRYPTO=OFF -DENABLE_JWT=OFF -DENABLE_TESTS=ON && cmake --build cmake-build --target all
|
- cmake -H. -Bcmake-build -GNinja -DENABLE_PDF=OFF -DENABLE_NETSSL=OFF -DENABLE_CRYPTO=OFF -DENABLE_JWT=OFF -DENABLE_TESTS=ON && cmake --build cmake-build --target all
|
||||||
|
|
||||||
- os: linux
|
- os: linux
|
||||||
|
- dist: bionic
|
||||||
- arch: amd64
|
- arch: amd64
|
||||||
- env: TEST_NAME="arm-linux-gnueabihf-g++ (CMake)"
|
- env: TEST_NAME="arm-linux-gnueabihf-g++ (CMake)"
|
||||||
|
addons:
|
||||||
|
apt:
|
||||||
|
packages:
|
||||||
|
- cmake
|
||||||
|
- libssl-dev
|
||||||
|
- unixodbc-dev
|
||||||
|
- libmysqlclient-dev
|
||||||
|
- g++-arm-linux-gnueabihf
|
||||||
script:
|
script:
|
||||||
- export CC="arm-linux-gnueabihf-gcc"
|
- export CC="arm-linux-gnueabihf-gcc"
|
||||||
- export CXX="arm-linux-gnueabihf-g++"
|
- export CXX="arm-linux-gnueabihf-g++"
|
||||||
@ -172,6 +209,7 @@ jobs:
|
|||||||
|
|
||||||
# build documentation and release
|
# build documentation and release
|
||||||
- os: linux
|
- os: linux
|
||||||
|
- dist: bionic
|
||||||
- arch: amd64
|
- arch: amd64
|
||||||
- env: TEST_NAME="documentation & release"
|
- env: TEST_NAME="documentation & release"
|
||||||
compiler: clang
|
compiler: clang
|
||||||
@ -182,30 +220,35 @@ jobs:
|
|||||||
# QA jobs for code analytics and metrics
|
# QA jobs for code analytics and metrics
|
||||||
# static code analysis with cppcheck (we can add --enable=all later)
|
# static code analysis with cppcheck (we can add --enable=all later)
|
||||||
- os: linux
|
- os: linux
|
||||||
|
- dist: bionic
|
||||||
- arch: amd64
|
- arch: amd64
|
||||||
- env: TEST_NAME="cppcheck"
|
- env: TEST_NAME="cppcheck"
|
||||||
script: cppcheck --force --quiet --inline-suppr -j2 -iData/SQLite/src/sqlite3.c .
|
script: cppcheck --force --quiet --inline-suppr -j2 -iData/SQLite/src/sqlite3.c .
|
||||||
|
|
||||||
# search for TODO within source tree
|
# search for TODO within source tree
|
||||||
- os: linux
|
- os: linux
|
||||||
|
- dist: bionic
|
||||||
- arch: amd64
|
- arch: amd64
|
||||||
- env: TEST_NAME="TODO"
|
- env: TEST_NAME="TODO"
|
||||||
script: grep -r TODO *
|
script: grep -r TODO *
|
||||||
|
|
||||||
# search for FIXME within source tree
|
# search for FIXME within source tree
|
||||||
- os: linux
|
- os: linux
|
||||||
|
- dist: bionic
|
||||||
- arch: amd64
|
- arch: amd64
|
||||||
- env: TEST_NAME="FIXME"
|
- env: TEST_NAME="FIXME"
|
||||||
script: grep -r FIXME *
|
script: grep -r FIXME *
|
||||||
|
|
||||||
# search for HACK within source tree
|
# search for HACK within source tree
|
||||||
- os: linux
|
- os: linux
|
||||||
|
- dist: bionic
|
||||||
- arch: amd64
|
- arch: amd64
|
||||||
- env: TEST_NAME="HACK"
|
- env: TEST_NAME="HACK"
|
||||||
script: grep -r HACK *
|
script: grep -r HACK *
|
||||||
|
|
||||||
# some statistics about the code base
|
# some statistics about the code base
|
||||||
- os: linux
|
- os: linux
|
||||||
|
- dist: bionic
|
||||||
- arch: amd64
|
- arch: amd64
|
||||||
- env: TEST_NAME="sloccount"
|
- env: TEST_NAME="sloccount"
|
||||||
script: sloccount .
|
script: sloccount .
|
||||||
|
Loading…
x
Reference in New Issue
Block a user