|
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 | + |
10 | 29 | 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 | + |
30 | 39 | 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