forked from eudaq/eudaq
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
134 lines (114 loc) · 5.78 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
language: cpp
sudo: required
dist: bionic
# removed due to bug https://github.com/travis-ci/travis-ci/issues/2111 https://github.com/18F/cg-style/pull/32/files
# conflict between branch whitelist and tags
# branches:
# only:
# - master
# - v1.7-dev
# set here versions / file paths
env:
global:
- ROOT6_FILENAME_LINUX=root_v6.18.04.Linux-ubuntu18-x86_64-gcc7.4.tar.gz
- ROOT6_FILENAME_MAC=root_v6.18.04.macosx64-10.13-clang100.tar.gz
- CMAKE_DOWNLOAD_PATH=https://cmake.org/files/v3.11
- CMAKE_FILENAME_LINUX=cmake-3.11.1-Linux-x86_64.tar.gz
- CMAKE_FILENAME_MAC=cmake-3.11.1-Darwin-x86_64.tar.gz
- PYTHON_VERSION_MODERN=3.6.5
- PYTHON_VERSION_OLD=2.7.14
- CMAKE_BUILD_TYPE=RelWithDebInfo
- EUDAQ_BUILD_EXECUTABLE=ON
- EUDAQ_BUILD_GUI=ON
- EUDAQ_BUILD_MANUAL=OFF
- EUDAQ_BUILD_STDEVENT_MONITOR=ON
- EUDAQ_EXTRA_BUILD_NREADER=OFF
- EUDAQ_LIBRARY_BUILD_LCIO=ON
- EUDAQ_MODULE_BUILD_STD=ON
- USER_CALICE_BUILD=OFF
- USER_EUDET_BUILD=ON
- USER_EUDET_BUILD_NI=ON
- USER_EUDET_BUILD_TLU=ON
- USER_EXAMPLE_BUILD=ON
- USER_ITKSTRIP_BUILD=ON
- USER_ITKSTRIP_BUILD_ITSROOT=ON
- EUDAQ_BUILD_ONLINE_ROOT_MONITOR=ON
# possible options:
# Linux/Mac
# gcc/clang
# ROOT 5/6
# QT 4/5
# Python 2/3 not realized yet
# in order to reduce options:
# Linux/Mac
# gcc/clang
# modern (ROOT 6, QT 5, Python 3) / old (ROOT 5, QT 4, Python 2)
# results in 8 combinations
# documentation to be "compiled" in maximum one option
# cmspixel:
# requires pxar download and installation which is done
# disabled for mac, old, gcc and clang as pxar can be installed but during eudaq compilation is fails to include properly the defines from api.h
# the reason for this behaviour is unclear
cache:
directories:
- $TRAVIS_BUILD_DIR/extern/ZestSC1
- $TRAVIS_BUILD_DIR/extern/tlufirmware
- $TRAVIS_BUILD_DIR/extern/aliceitsalpidesoftwaremaster
before_cache:
- rm -r $TRAVIS_BUILD_DIR/extern/aliceitsalpidesoftwaremaster
- cd $TRAVIS_BUILD_DIR/extern
- unzip aliceitsalpidesoftwaremaster.zip
- mv $TRAVIS_BUILD_DIR/extern/alice-its-alpide-software-master-3189f00d7515733d46a61a5ab2606e436df4955b $TRAVIS_BUILD_DIR/extern/aliceitsalpidesoftwaremaster
matrix:
include:
- os: linux
env: OPTION=modern
compiler: clang
- os: linux
env: OPTION=modern EUDAQ_BUILD_MANUAL=ON
compiler: gcc
- os: osx
compiler: clang
env: OPTION=modern BUILD_rpi_controller=OFF BUILD_palpidefs=OFF
- os: osx
compiler: gcc
env: OPTION=modern BUILD_rpi_controller=OFF BUILD_palpidefs=OFF
before_install:
install:
- source .travis/update_repositories.sh
- source .travis/install_afs.sh
- source .travis/install_libusb_0_1.sh
- source .travis/install_libusb_1_0.sh
- source .travis/install_qt.sh
- source .travis/install_root.sh
- source .travis/install_tex.sh
- if [[ $BUILD_cmspixel == "ON" ]]; then source .travis/install_pxar.sh; fi
- if [[ $BUILD_rpi_controller == "ON" ]]; then source .travis/install_wiringpi.sh; fi
- export PALPIDEFS_SPECIAL_PARAMETERS=""
- if [[ $BUILD_palpidefs == "ON" ]]; then source .travis/install_palpidefs_driver.sh; export PALPIDEFS_SPECIAL_PARAMETERS="-DCMAKE_PALPIDEFS_DRIVER_INCLUDE:FILEPATH=$TRAVIS_BUILD_DIR/extern/aliceitsalpidesoftwaremaster/pALPIDEfs-software -DUSE_TINYXML=off -DUSE_ROOT=on"; fi
before_script:
- $CXX --version
- echo $PATH
- echo $LD_LIBRARY_PATH
script:
- mkdir $HOME/eudaq_build_folder
- mkdir $HOME/eudaq_installation_folder
- cd $HOME/eudaq_build_folder
- echo -DEUDAQ_INSTALL_PREFIX=$HOME/eudaq_installation_folder -DCMAKE_BUILD_TYPE=$CMAKE_BUILD_TYPE -DEUDAQ_BUILD_EXECUTABLE=$EUDAQ_BUILD_EXECUTABLE -DEUDAQ_BUILD_GUI=$EUDAQ_BUILD_GUI -DEUDAQ_BUILD_MANUAL=$EUDAQ_BUILD_MANUAL -DEUDAQ_BUILD_STDEVENT_MONITOR=$EUDAQ_BUILD_STDEVENT_MONITOR -DEUDAQ_EXTRA_BUILD_NREADER=$EUDAQ_EXTRA_BUILD_NREADER -DEUDAQ_LIBRARY_BUILD_LCIO=$EUDAQ_LIBRARY_BUILD_LCIO -DEUDAQ_MODULE_BUILD_STD=$EUDAQ_MODULE_BUILD_STD -DUSER_CALICE_BUILD=$USER_CALICE_BUILD -DUSER_EUDET_BUILD=$USER_EUDET_BUILD -DUSER_EUDET_BUILD_NI=$USER_EUDET_BUILD_NI -DUSER_EUDET_BUILD_TLU=$USER_EUDET_BUILD_TLU -DUSER_EXAMPLE_BUILD=$USER_EXAMPLE_BUILD -DUSER_ITKSTRIP_BUILD=$USER_ITKSTRIP_BUILD -DUSER_ITKSTRIP_BUILD_ITSROOT=$USER_ITKSTRIP_BUILD_ITSROOT -DEUDAQ_BUILD_ONLINE_ROOT_MONITOR=$EUDAQ_BUILD_ONLINE_ROOT_MONITOR $TRAVIS_BUILD_DIR
- cmake -DEUDAQ_INSTALL_PREFIX=$HOME/eudaq_installation_folder -DCMAKE_BUILD_TYPE=$CMAKE_BUILD_TYPE -DEUDAQ_BUILD_EXECUTABLE=$EUDAQ_BUILD_EXECUTABLE -DEUDAQ_BUILD_GUI=$EUDAQ_BUILD_GUI -DEUDAQ_BUILD_MANUAL=$EUDAQ_BUILD_MANUAL -DEUDAQ_BUILD_STDEVENT_MONITOR=$EUDAQ_BUILD_STDEVENT_MONITOR -DEUDAQ_EXTRA_BUILD_NREADER=$EUDAQ_EXTRA_BUILD_NREADER -DEUDAQ_LIBRARY_BUILD_LCIO=$EUDAQ_LIBRARY_BUILD_LCIO -DEUDAQ_MODULE_BUILD_STD=$EUDAQ_MODULE_BUILD_STD -DUSER_CALICE_BUILD=$USER_CALICE_BUILD -DUSER_EUDET_BUILD=$USER_EUDET_BUILD -DUSER_EUDET_BUILD_NI=$USER_EUDET_BUILD_NI -DUSER_EUDET_BUILD_TLU=$USER_EUDET_BUILD_TLU -DUSER_EXAMPLE_BUILD=$USER_EXAMPLE_BUILD -DUSER_ITKSTRIP_BUILD=$USER_ITKSTRIP_BUILD -DUSER_ITKSTRIP_BUILD_ITSROOT=$USER_ITKSTRIP_BUILD_ITSROOT -DEUDAQ_BUILD_ONLINE_ROOT_MONITOR=$EUDAQ_BUILD_ONLINE_ROOT_MONITOR $TRAVIS_BUILD_DIR
- make install
before_deploy:
- cd $TRAVIS_BUILD_DIR
- source .travis/before_deploy.sh
- ls ${FILE_TO_UPLOAD_1}
deploy:
provider: releases
api_key:
secure: nNpy+uDh8b0gkVMY+zf1ZSnevXox/7nFW6q8Z7TxOAGKudGdFdw2A4M+bmBGvXQX/68aqcLJfiFI4YBOkEMIdTuK75Hpr0K6vCasVDHBXmsEiPbtOXYg5PJpA5QZFEjnKJGQFGusGqdHA2nBUsWiAOCiF4ZD2Qb8GxT6t8fGgF8=
file: ${FILE_TO_UPLOAD_1}
skip_cleanup: true
overwrite: true
on:
tags: true
condition: "$EUDAQ_BUILD_MANUAL = ON"
repo: eudaq/eudaq