.travis.yml 2.42 KB
Newer Older
Jeongseok Lee's avatar
Jeongseok Lee committed
1
2
3
language: cpp

env:
4
5
  global:
    - CTEST_PARALLEL_LEVEL=4
6
7
    - CTEST_OUTPUT_ON_FAILURE=1
    - CXX_FLAGS_DEBUG="-O1"
8
    - MAKEFLAGS="-j2"
Justin Carpentier's avatar
Justin Carpentier committed
9
    - BUILD_TESTING=ON
Jeongseok Lee's avatar
Jeongseok Lee committed
10

Joseph Mirabel's avatar
Joseph Mirabel committed
11
12
13
cache:
  ccache: true

Jeongseok Lee's avatar
Jeongseok Lee committed
14
matrix:
15
  include:
16
    - name: "Xenial - Release - g++"
Justin Carpentier's avatar
Justin Carpentier committed
17
18
19
      env: 
        - BUILD_TYPE=Release
        - PYTHON_EXE=python
20
21
      dist: xenial
      compiler: g++
Joseph Mirabel's avatar
Joseph Mirabel committed
22
23
24
      addons:
        apt:
          packages:
Joseph Mirabel's avatar
Joseph Mirabel committed
25
26
27
28
            - cmake
            - libboost-all-dev
            - libassimp-dev
            - libeigen3-dev
Joseph Mirabel's avatar
Joseph Mirabel committed
29
            - liboctomap-dev
Joseph Mirabel's avatar
Joseph Mirabel committed
30
31
            - python-lxml
            - python3-lxml
Joseph Mirabel's avatar
Joseph Mirabel committed
32
            - doxygen
33
34

    - name: "Bionic - Release - g++"
Justin Carpentier's avatar
Justin Carpentier committed
35
36
37
      env: 
        - BUILD_TYPE=Release
        - PYTHON_EXE=python
38
39
      dist: bionic
      compiler: g++
Joseph Mirabel's avatar
Joseph Mirabel committed
40
41
42
      addons:
        apt:
          packages:
Joseph Mirabel's avatar
Joseph Mirabel committed
43
44
45
46
            - cmake
            - libboost-all-dev
            - libassimp-dev
            - libeigen3-dev
Joseph Mirabel's avatar
Joseph Mirabel committed
47
            - liboctomap-dev
Joseph Mirabel's avatar
Joseph Mirabel committed
48
49
            - python-lxml
            - python3-lxml
Joseph Mirabel's avatar
Joseph Mirabel committed
50
            - doxygen
51
52

    - name: "Bionic - Debug - g++"
Justin Carpentier's avatar
Justin Carpentier committed
53
54
55
      env: 
        - BUILD_TYPE=Debug
        - PYTHON_EXE=python
56
      dist: bionic
57
      compiler: g++
Joseph Mirabel's avatar
Joseph Mirabel committed
58
59
60
      addons:
        apt:
          packages:
Joseph Mirabel's avatar
Joseph Mirabel committed
61
62
63
64
            - cmake
            - libboost-all-dev
            - libassimp-dev
            - libeigen3-dev
Joseph Mirabel's avatar
Joseph Mirabel committed
65
            - liboctomap-dev
Joseph Mirabel's avatar
Joseph Mirabel committed
66
67
            - python-lxml
            - python3-lxml
Joseph Mirabel's avatar
Joseph Mirabel committed
68
            - doxygen
69

Justin Carpentier's avatar
Justin Carpentier committed
70
71
72
    - name: "Bionic - Release - g++ - NO TEST"
      env: 
        - BUILD_TYPE=Release
Justin Carpentier's avatar
Justin Carpentier committed
73
        - PYTHON_EXE=python
Justin Carpentier's avatar
Justin Carpentier committed
74
75
76
77
78
79
80
81
82
83
84
        - BUILD_TESTING=OFF
      dist: bionic
      compiler: g++
      addons:
        apt:
          packages:
            - cmake
            - libboost-all-dev
            - libassimp-dev
            - libeigen3-dev
            - liboctomap-dev
Joseph Mirabel's avatar
Joseph Mirabel committed
85
            - doxygen
Justin Carpentier's avatar
Justin Carpentier committed
86

87
before_install:
Gabriele Buondonno's avatar
Gabriele Buondonno committed
88
  - if [ "$TRAVIS_OS_NAME" = "linux" ]; then source travis_custom/custom_before_install_linux.sh ; fi
Joseph Mirabel's avatar
Joseph Mirabel committed
89
  - if [ "$TRAVIS_OS_NAME" = "osx"   ]; then source travis_custom/custom_before_install_osx.sh   ; fi
90

Jeongseok Lee's avatar
Jeongseok Lee committed
91
92
script:
  # Create build directory
93
  - which python
Jeongseok Lee's avatar
Jeongseok Lee committed
94
  - mkdir build
95
  - cd build
Jeongseok Lee's avatar
Jeongseok Lee committed
96
97

  # Configure
Justin Carpentier's avatar
Justin Carpentier committed
98
  - cmake -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DBUILD_TESTING=$BUILD_TESTING -DCMAKE_CXX_FLAGS=-w -DCMAKE_CXX_FLAGS_DEBUG=${CXX_FLAGS_DEBUG} -DPYTHON_EXECUTABLE=$(which $PYTHON_EXE) ..
Jeongseok Lee's avatar
Jeongseok Lee committed
99
100

  # Build
Justin Carpentier's avatar
Justin Carpentier committed
101
  - make -j2
Jeongseok Lee's avatar
Jeongseok Lee committed
102
103

  # Run unit tests
104
  - travis_wait 30 make test
Jeongseok Lee's avatar
Jeongseok Lee committed
105

106
  # Make sure we can install and uninstall with no issues
107
108
  - sudo make install
  - sudo make uninstall