|
1 | 1 | language: generic
|
2 | 2 | dist: trusty
|
3 | 3 | sudo: false
|
4 |
| -matrix: |
| 4 | +env: |
| 5 | + - [ "V=4.0", "PREFIX=/usr/lib/llvm-4.0/lib/cmake", "BIN=/usr/lib/llvm-4.0/bin" ] |
| 6 | +addons: |
| 7 | + apt: |
| 8 | + sources: [ "ubuntu-toolchain-r-test", "llvm-toolchain-trusty-4.0" ] |
| 9 | + 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" ] |
| 10 | +jobs: |
5 | 11 | include:
|
6 |
| - # Versions before 3.8 are not included nor whitelisted |
| 12 | + - stage: compiling and checking sources |
| 13 | + before_script: |
| 14 | + # Fix clang cmake dirs |
| 15 | + - if [ $V == 4.0 ]; then sudo -E ln -sn /usr/share/llvm-4.0/cmake /usr/lib/llvm-4.0/lib/cmake/clang; fi |
| 16 | + - 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 |
| 17 | + - if [ $V == 4.0 ]; then sudo -E ln -s /usr/bin/* /usr/lib/llvm-4.0/bin || true; fi |
| 18 | + script: |
| 19 | + - mkdir -p ../cache/vm ../cache/boostenv |
| 20 | + - mv vm/boostenv/main/cached ../cache/boostenv |
| 21 | + - mv vm/vm/main/cached ../cache/vm |
| 22 | + - export SOURCES=$(pwd) && mkdir ../build && cd ../build |
| 23 | + - cmake -DCMAKE_BUILD_TYPE=Release -DMOZART_BOOST_USE_STATIC_LIBS=False -DCMAKE_PROGRAM_PATH=$BIN -DCMAKE_PREFIX_PATH=$PREFIX -DMOZART_CACHED_BUILD=OFF $SOURCES |
| 24 | + - make -B gensources genboostsources VERBOSE=1 |
| 25 | + - cd .. |
| 26 | + - diff -q -r cache/boostenv/cached build/vm/boostenv/main/generated |
| 27 | + - diff -Npur cache/boostenv/cached build/vm/boostenv/main/generated |
| 28 | + - diff -q -r cache/vm/cached build/vm/vm/main/generated |
| 29 | + - diff -Npur cache/vm/cached build/vm/vm/main/generated |
7 | 30 |
|
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 |
| - |
29 |
| -before_script: |
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 |
| - |
39 |
| -script: |
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 |
44 |
| - - make check |
45 |
| -deploy: |
46 |
| - provider: releases |
47 |
| - skip_cleanup: true |
48 |
| - on: |
49 |
| - tags: true |
50 |
| - file_glob: true |
51 |
| - file: mozart2-*-Source.zip |
52 |
| - api_key: |
53 |
| - secure: GxwttdinweSfTeSkWu3aSp//AGT/ew4iyEUaLxh8nDeVRpAHEPBtMhgF25zoP6JLfhlEAOW7+5Gmomk1a/k+VQQWbFbod3jSSUIH/4gafEN7MVgy3Ma1NEWqViSC7IH/DDIhMzHAttznDOA2nWzoV1nyDpUydM8wvs3VK2N2wEI= |
| 31 | + - stage: compiling with pre-generated sources |
| 32 | + before_script: |
| 33 | + # Fix clang cmake dirs |
| 34 | + - if [ $V == 4.0 ]; then sudo -E ln -sn /usr/share/llvm-4.0/cmake /usr/lib/llvm-4.0/lib/cmake/clang; fi |
| 35 | + - 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 |
| 36 | + - if [ $V == 4.0 ]; then sudo -E ln -s /usr/bin/* /usr/lib/llvm-4.0/bin || true; fi |
| 37 | + script: |
| 38 | + - export SOURCES=$(pwd) && mkdir ../build && cd ../build |
| 39 | + - cmake -DCMAKE_BUILD_TYPE=Release -DMOZART_BOOST_USE_STATIC_LIBS=False -DCMAKE_PROGRAM_PATH=$BIN -DCMAKE_PREFIX_PATH=$PREFIX $SOURCES |
| 40 | + - make dist VERBOSE=1 |
| 41 | + - make VERBOSE=1 |
| 42 | + - make check |
| 43 | + deploy: |
| 44 | + provider: releases |
| 45 | + skip_cleanup: true |
| 46 | + on: |
| 47 | + tags: true |
| 48 | + file_glob: true |
| 49 | + file: mozart2-*-Source.zip |
| 50 | + api_key: |
| 51 | + secure: GxwttdinweSfTeSkWu3aSp//AGT/ew4iyEUaLxh8nDeVRpAHEPBtMhgF25zoP6JLfhlEAOW7+5Gmomk1a/k+VQQWbFbod3jSSUIH/4gafEN7MVgy3Ma1NEWqViSC7IH/DDIhMzHAttznDOA2nWzoV1nyDpUydM8wvs3VK2N2wEI= |
0 commit comments