-
Notifications
You must be signed in to change notification settings - Fork 73
/
.travis.yml
125 lines (120 loc) · 4.17 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
# Enable C++ support
language: cpp
env:
global:
- NUM_THREADS=4
matrix:
include:
- os: linux
dist: trusty
sudo: required
compiler: gcc
addons:
apt:
sources:
- sourceline: 'ppa:bzindovic/suitesparse-bugfix-1319687'
- sourceline: 'ppa:xqms/opencv-nonfree'
- sourceline: 'ppa:ubuntu-toolchain-r/test'
- sourceline: 'ppa:adrozdoff/cmake'
# github.com/jrl-umi3218/Tasks ppa is disabled for now
# because it does not include CMake Config files.
# It is instead being built from source below.
# - sourceline: 'ppa:pierre-gergondet+ppa/multi-contact-unstable'
packages:
- libtool
- pkg-config
- build-essential
- autoconf
- automake
- gfortran
- libgflags-dev
- libgoogle-glog-dev
- libgtest-dev
- libboost-all-dev
- libeigen3-dev
- libopenblas-dev
- libopencv-dev
- libopencv-nonfree-dev
- cmake
- libgoogle-glog-dev
- libatlas-base-dev
- libeigen3-dev
- libsuitesparse-dev
- libtbb-dev
# github.com/jrl-umi3218/Tasks ppa is disabled for now
# because it does not include CMake Config files.
# It is instead being built from source below.
# - libtasks-dev
# - libtasks-qld-doc
# dependency install steps
before_install:
- mkdir -p ~/src/
- cd ~/src/
- git clone https://ceres-solver.googlesource.com/ceres-solver -b 1.12.0
- cd ceres-solver
- mkdir build
- cd build
- cmake ..
- sudo make -j3 install
- cd ../..
-
# workaround for:
# https://github.com/cmake-basis/BASIS/pull/609
# https://github.com/cmake-basis/BASIS/issues/608
# https://github.com/cmake-basis/BASIS/issues/612
# switch to commented version if changes did not work
- git clone https://github.com/schuhschuh/cmake-basis.git
#- git clone --depth=1 https://github.com/ahundt/BASIS.git cmake-basis --branch grl
- cd cmake-basis
- mkdir build
- cd build
- cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local
- sudo make -j install
- cd ../..
-
- git clone https://github.com/google/flatbuffers.git -b v1.7.0
- cd flatbuffers
- mkdir build
- cd build
- cmake ..
- sudo make -j install
- cd ../..
-
- git clone https://github.com/gabime/spdlog.git -b v0.13.0
- cd spdlog
- mkdir build
- cd build
- cmake ..
- sudo make -j install
- cd ../..
-
- cd ..
-
# ROS indigo setup
- sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
- sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116
- sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116
- sudo apt-get update
- sudo apt-get install ros-indigo-ros-base
-
# IMPORTANT: You must create new tags/branches of the robotics_setup script,
# and ensure the script checks out specific versions on git to
# ensure builds of past versions are always consistent.
- mkdir -p ~/src
- git clone https://github.com/ahundt/robotics_setup.git
- cd robotics_setup
- git reset --hard 529b003fe0eaa74045f32b94cc671261d1776c11 # check out specific working version
# Tasks is built from source because the ppa doesn't include cmake config files
- ./robotics_tasks.sh -p OFF
- ./trtk.sh
# Build steps
script:
# - git clone https://github.com/ahundt/grl.git not necessary for travis should already be in right spot
#- cd grl
- cd $TRAVIS_BUILD_DIR
- mkdir build
- cd build
- cmake .. -DBUILD_ALL_MODULES=ON -DBUILD_DOCUMENTATION=OFF -DBUILD_EXAMPLE=ON -DMODULE_grl=ON -DMODULE_robone=ON -DMODULE_roboneprivate=ON -DWITH_Ceres=ON -DWITH_CisstNetlib=OFF -DWITH_Eigen3=ON -DWITH_FRI_Client_SDK_Cpp=OFF -DWITH_Nanopb=OFF -DWITH_PCL=OFF -DWITH_RBDyn=ON -DWITH_SpaceVecAlg=ON -DWITH_TRTK=ON -DWITH_Tasks=ON -DWITH_Threads=ON -DWITH_cisst=OFF -DWITH_freenect2=OFF -DWITH_sawConstraintController=OFF -DWITH_sch-core=ON -DWITH_spdlog=ON -DWITH_ur_modern_driver=OFF
- make
# - sudo make install
# - cd ../..