Skip to content

Commit 1b62931

Browse files
committed
Fix and refactor travis.yml
1 parent 779139b commit 1b62931

File tree

1 file changed

+41
-33
lines changed

1 file changed

+41
-33
lines changed

.travis.yml

Lines changed: 41 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,43 @@
1-
language: cpp
2-
compiler:
3-
- gcc
4-
before_install:
5-
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
6-
- sudo apt-get update -qq
7-
- sudo apt-get install -qq libboost1.55-all-dev tk8.5-dev emacs23-nox
8-
- if [ "$CXX" = "g++" ]; then sudo apt-get install -qq g++-4.8; fi
9-
- if [ "$CXX" = "g++" ]; then export CXX="g++-4.8" CC="gcc-4.8"; fi
1+
language: generic
2+
dist: trusty
3+
sudo: false
4+
matrix:
5+
include:
6+
# Versions before 3.8 are not included nor whitelisted
7+
8+
# Broken (uses ubuntu's version, not llvm one. {LLVM,Clang}Config.cmake are beyond redemption
9+
#- env: [ "V=3.8", "PREFIX=/usr/lib/llvm-3.8" ]
10+
# addons:
11+
# apt:
12+
# sources: [ "ubuntu-toolchain-r-test", "llvm-toolchain-trusty-3.8" ]
13+
# packages: [ "libboost-all-dev", "tcl-dev", "tk-dev", "emacs", "clang-3.8", "libclang-3.8-dev", "llvm-3.8-dev" ]
14+
15+
# Broken: Unknown relocation 0x2a (llvm-3.9 known to be bugged on travis)
16+
#- env: [ "V=3.9", "PREFIX=/usr/lib/llvm-3.9/lib/cmake" ]
17+
# addons:
18+
# apt:
19+
# sources: [ "ubuntu-toolchain-r-test", "llvm-toolchain-trusty-3.9" ]
20+
# packages: [ "libboost-all-dev", "tcl-dev", "tk-dev", "emacs", "clang-3.9", "libclang-3.9-dev", "llvm-3.9-dev" ]
21+
22+
# Works, with heavy fixing (see below)
23+
- env: [ "V=4.0", "PREFIX=/usr/lib/llvm-4.0/lib/cmake", "BIN=/usr/lib/llvm-4.0/bin" ]
24+
addons:
25+
apt:
26+
sources: [ "ubuntu-toolchain-r-test", "llvm-toolchain-trusty-4.0" ]
27+
packages: [ "libboost-all-dev", "tcl-dev", "tk-dev", "emacs", "clang-4.0", "libclang-4.0-dev", "llvm-4.0-dev", "clang-format-4.0", "clang-tidy-4.0" ]
28+
1029
before_script:
11-
- mkdir externals
12-
- cd externals
13-
- svn co --quiet http://googletest.googlecode.com/svn/trunk gtest
14-
- svn co --quiet http://llvm.org/svn/llvm-project/llvm/tags/RELEASE_33/final llvm
15-
- cd llvm/tools/
16-
- svn co --quiet http://llvm.org/svn/llvm-project/cfe/tags/RELEASE_33/final clang
17-
- cd ../../..
18-
- mkdir builds
19-
- cd builds
20-
- mkdir gtest-debug
21-
- cd gtest-debug
22-
- cmake -DCMAKE_BUILD_TYPE=Debug ../../externals/gtest
23-
- make -j3
24-
- cd ..
25-
- mkdir llvm-release
26-
- cd llvm-release
27-
- cmake -DCMAKE_BUILD_TYPE=Release ../../externals/llvm
28-
- make -j3
29-
- cd ../..
30+
- apt list --installed
31+
- env
32+
# Fix clang cmake dirs
33+
- if [ $V == 3.9 ]; then sudo -E ln -sn /usr/share/llvm-3.9/cmake /usr/lib/llvm-3.9/lib/cmake/clang; fi
34+
35+
- if [ $V == 4.0 ]; then sudo -E ln -sn /usr/share/llvm-4.0/cmake /usr/lib/llvm-4.0/lib/cmake/clang; fi
36+
- if [ $V == 4.0 ]; then sudo -E ln -sn /usr/share/llvm-4.0/cmake /usr/lib/llvm-4.0/lib/cmake/clang-4.0; fi
37+
- if [ $V == 4.0 ]; then sudo -E ln -s /usr/bin/* /usr/lib/llvm-4.0/bin || true; fi
38+
3039
script:
31-
- cd builds
32-
- mkdir mozart2-release
33-
- cd mozart2-release
34-
- cmake -DCMAKE_BUILD_TYPE=Release -DGTEST_SRC_DIR=../../externals/gtest -DGTEST_BUILD_DIR=../gtest-debug -DLLVM_SRC_DIR=../../externals/llvm -DLLVM_BUILD_DIR=../llvm-release ../..
35-
- make -j3
40+
- export SOURCES=$(pwd) && mkdir ../build && cd ../build
41+
- cmake -DCMAKE_BUILD_TYPE=Release -DMOZART_BOOST_USE_STATIC_LIBS=False -DCMAKE_PROGRAM_PATH=$BIN -DCMAKE_PREFIX_PATH=$PREFIX $SOURCES
42+
- make dist VERBOSE=1
43+
- make VERBOSE=1

0 commit comments

Comments
 (0)