]> Creatis software - clitk.git/blob - .travis.yml
Add correct travis cache
[clitk.git] / .travis.yml
1 git:
2   depth: 1
3   
4 sudo: required
5
6 dist: trusty
7
8 os: 
9     - osx
10     - linux
11 compiler:
12     - gcc
13     - clang
14 env:
15     - WITH_CMAKE=true VTK_VERSION=7.0.0 ITK_VERSION=4.9.1 QT_VERSION=5.5.1 C11=false
16     - WITH_CMAKE=true VTK_VERSION=7.0.0 ITK_VERSION=4.9.1 QT_VERSION=4.8.7 C11=false
17     - WITH_CMAKE=true VTK_VERSION=6.3 ITK_VERSION=4.9.1 QT_VERSION=5.5.1 C11=false
18     - WITH_CMAKE=true VTK_VERSION=6.3 ITK_VERSION=4.9.1 QT_VERSION=4.8.7 C11=false
19     - WITH_CMAKE=true VTK_VERSION=5.10 ITK_VERSION=4.5 QT_VERSION=4.8.7 C11=false
20     - WITH_CMAKE=true VTK_VERSION=7.0.0 ITK_VERSION=4.9.1 QT_VERSION=5.5.1 C11=true
21     - WITH_CMAKE=true VTK_VERSION=7.0.0 ITK_VERSION=4.9.1 QT_VERSION=4.8.7 C11=true
22     - WITH_CMAKE=true VTK_VERSION=6.3 ITK_VERSION=4.9.1 QT_VERSION=5.5.1 C11=true
23     - WITH_CMAKE=true VTK_VERSION=6.3 ITK_VERSION=4.9.1 QT_VERSION=4.8.7 C11=true
24     - WITH_CMAKE=true VTK_VERSION=7.0.0 ITK_VERSION=4.13.0 QT_VERSION=5.5.1 C11=false
25     - WITH_CMAKE=true VTK_VERSION=6.3 ITK_VERSION=4.13.0 QT_VERSION=5.5.1 C11=false
26     - WITH_CMAKE=true VTK_VERSION=7.0.0 ITK_VERSION=4.13.0 QT_VERSION=5.5.1 C11=true
27     - WITH_CMAKE=true VTK_VERSION=6.3 ITK_VERSION=4.13.0 QT_VERSION=5.5.1 C11=true
28
29 matrix:
30   exclude:
31   - os: osx
32     env: WITH_CMAKE=true VTK_VERSION=5.10 ITK_VERSION=4.5 QT_VERSION=4.8.7 C11=false #VTK5.10 doesn't work with osX
33   - os: osx
34     env: WITH_CMAKE=true VTK_VERSION=5.10 ITK_VERSION=4.5 QT_VERSION=4.8.7 C11=true #VTK5.10 doesn't work with osX
35   - os: osx
36     env: WITH_CMAKE=true VTK_VERSION=6.3 ITK_VERSION=4.9.1 QT_VERSION=4.8.7 C11=false #Qt4 doesn't work with brew anymore
37   - os: osx
38     env: WITH_CMAKE=true VTK_VERSION=6.3 ITK_VERSION=4.9.1 QT_VERSION=4.8.7 C11=true #Qt4 doesn't work with brew anymore
39   - os: osx
40     env: WITH_CMAKE=true VTK_VERSION=7.0.0 ITK_VERSION=4.9.1 QT_VERSION=4.8.7 C11=false
41   - os: osx
42     env: WITH_CMAKE=true VTK_VERSION=7.0.0 ITK_VERSION=4.9.1 QT_VERSION=4.8.7 C11=true
43   - os: linux
44     env: WITH_CMAKE=true VTK_VERSION=5.10 ITK_VERSION=4.5 QT_VERSION=4.8.7 C11=true #Problem with VTK 5.10 and c++11
45   - os: linux
46     compiler: clang #Remove ITK with clang on linux
47   include:
48   - os: linux
49     compiler: clang
50     env: WITH_CMAKE=true VTK_VERSION=7.0.0 ITK_VERSION=4.13.0 QT_VERSION=5.5.1 C11=false
51   - os: linux
52     compiler: clang
53     env: WITH_CMAKE=true VTK_VERSION=6.3 ITK_VERSION=4.13.0 QT_VERSION=5.5.1 C11=false
54   - os: linux
55     compiler: clang
56     env: WITH_CMAKE=true VTK_VERSION=7.0.0 ITK_VERSION=4.13.0 QT_VERSION=5.5.1 C11=true
57   - os: linux
58     compiler: clang
59     env: WITH_CMAKE=true VTK_VERSION=6.3 ITK_VERSION=4.13.0 QT_VERSION=5.5.1 C11=true
60
61
62 language: cpp
63
64 notifications:
65  email:
66   on_success: never
67   on_failure: never
68
69 addons:
70   sonarcloud:
71     organization: "open-vv-github"
72     token:
73       secure: "cvFKxhrmarSAieav+qev+QdQiyx17jMyQggTBWigSiSeeYPWEUloyF5VnC+sL7o6Kh21ooXKhgvN+J1wB1FEwV8tqoOGoQRaqWpFwRbjqo1qn1r2J6+XMcmaAq6KOeUYzYdk+j8/ZnpkjhxVZIejXtVQpNg02QuqIO8ZmToWPgcKU6VCK33jbN1zZc2TXXbV7KyC6wdX0dZ3Y9lbaBtBGUr7C8QXmT4MUqtuwjQMymTDEBTuhyNn1sp+kEOOV7C6sji58q9h1C+r61+vpcQ5wmJDLr8Gy/uQhm3vCjqNNenHLRLnW5ITRgjL1pqhd499ppSFuGI76wAo5XMMkwTbYJRqUU56z09ZdwyVebsDgMJID/jgtQtclPPkiDOFs40+/gSNQzcOsO8tBNVOC9i/AFIDjbkRFAf6Uq+w34C3lf+7eVVlwGqaifSTTEm/Q/FyVWdGoFDANmbMhodfODT6gm16CQT0WkmQ67bKEu0sqKz6HrEXQ2R8xG8smNzpSRR1KbPv13Xd6Xb7xkOklBc9x2ccSyR6wXqPO9vJrJWNqyGMFKFlpZ2d8zTDtyuAvFxBBYykAmVW55g1VuNeRrIeynMBzib0HSRZhxUBDW8znVeKoeZLQxNihMZnXj9W996lreInheN9ySTwANfx20+b3AMBsRRhuIi5EPmeYTM/kR4="
74
75 branches:
76 only:
77 - master
78
79 before_install:
80 - if test $TRAVIS_OS_NAME == osx ; then brew update; fi
81 - if test $TRAVIS_OS_NAME == linux ; then sudo add-apt-repository --yes ppa:kubuntu-ppa/backports; fi
82 - if test $TRAVIS_OS_NAME == linux ; then sudo apt-get update -qq; fi
83 - if test $TRAVIS_OS_NAME == linux ; then sudo apt-get install --reinstall ca-certificates; fi
84 - export NUM_THREADS=2
85 - export cwd=$(pwd)
86 - export SCRIPTS=$cwd/travis
87 - export EXTERNALS_DIR=$HOME
88 - export VTK_SOURCE_DIR=${EXTERNALS_DIR}/vtk-${VTK_VERSION}
89 - export VTK_DIR=${EXTERNALS_DIR}/vtk-${VTK_VERSION}-build
90 - export ITK_SOURCE_DIR=${EXTERNALS_DIR}/itk-${ITK_VERSION}
91 - export ITK_DIR=${EXTERNALS_DIR}/itk-${ITK_VERSION}-build
92 - export BUILD_DIR=$cwd/build
93 - if test $TRAVIS_OS_NAME == linux ; then sudo apt-get install -y -qq build-essential cmake; fi
94 #Install qt5
95 - $SCRIPTS/travis_build_qt.sh
96 - if test $TRAVIS_OS_NAME == linux; then sudo apt-get -y install libgdcm2-dev libpq-dev; fi
97 - if test $TRAVIS_OS_NAME == linux; then if [[ "$QT_VERSION" == "5.5.1" ]] ; then QTDIR="/opt/qt55" && PATH="$PATH:$QTDIR/bin" && qt55-env.sh ; fi; fi
98 - if test $TRAVIS_OS_NAME == osx ; then export HOMEBREW_QT_VERSION=$(brew list --versions qt | rev | cut -d' ' -f1 | rev); fi
99 - if test $TRAVIS_OS_NAME == osx ; then brew install ccache; fi
100 - if test $TRAVIS_OS_NAME == osx ; then export PATH="/usr/local/opt/qt/bin:/usr/local/opt/ccache/libexec:$PATH"; fi
101 - if test $TRAVIS_OS_NAME == osx ; then qmake -v; fi
102
103 cache:
104  - directories:
105    - $HOME/vtk-5.10
106    - $HOME/vtk-5.10-build
107    - $HOME/vtk-6.3
108    - $HOME/vtk-6.3-build
109    - $HOME/vtk-7.0.0
110    - $HOME/vtk-7.0.0-build
111    - $HOME/itk-4.5
112    - $HOME/itk-4.5-build
113    - $HOME/itk-4.9.1
114    - $HOME/itk-4.9.1-build
115    - '$HOME/.sonar/cache'
116  - timeout: 10000
117
118 before_script:
119 - export DO_BUILD_VTK=false
120 - export DO_BUILD_ITK=false
121 - if test $TRAVIS_OS_NAME == linux ; then sudo ln -s /usr/bin/x86_64-linux-gnu/libpq.so /usr/bin/libpq.so; fi
122 - if ! test -e ${VTK_SOURCE_DIR}/CMakeLists.txt; then rm -fr $VTK_SOURCE_DIR; DO_BUILD_VTK=true; fi
123 - if ! test -e ${ITK_SOURCE_DIR}/CMakeLists.txt; then rm -fr $ITK_SOURCE_DIR; DO_BUILD_ITK=true; fi
124 #Install vtk and itk (different version)
125
126 script:
127 - 'if [ $DO_BUILD_VTK == true ]; then $SCRIPTS/travis_build_vtk.sh || travis_terminate 1;
128    elif [ $DO_BUILD_ITK == true ]; then $SCRIPTS/travis_build_itk.sh || travis_terminate 1;
129    else $SCRIPTS/travis_build_vv.sh || travis_terminate 1; fi'
130 - if [ $TRAVIS_OS_NAME == linux ] && [ $DO_BUILD_VTK == false ] && [ $DO_BUILD_ITK == false ]; then build-wrapper-linux-x86-64 --out-dir bw-output make clean all; fi
131 - if [ $TRAVIS_OS_NAME == linux ] && [ $DO_BUILD_VTK == false ] && [ $DO_BUILD_ITK == false ]; then sonar-scanner -X ; fi