-
Notifications
You must be signed in to change notification settings - Fork 2
/
.travis.yml
45 lines (38 loc) · 2.87 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
sudo: false
language: cpp
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- libboost-all-dev
# - libopenmpi-dev
matrix:
include:
- os: linux
compiler: gcc
# - os: osx
# compiler: clang
before_install:
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh && bash Miniconda3-latest-Linux-x86_64.sh -b -p _miniconda; else wget https://repo.continuum.io/miniconda/Miniconda3-latest-MacOSX-x86_64.sh && bash Miniconda3-latest-MacOSX-x86_64.sh -b -p _miniconda; fi
- export PATH="$PWD/_miniconda/bin:$PATH"
- conda config --set always_yes yes --set changeps1 no
- conda update -q conda
- conda install meson mpi
install: true
script:
- pushd 01_basic && mkdir bcmake && cd bcmake && cmake .. && make && cd .. && meson bmeson && cd bmeson && ninja && popd
- pushd 02_shared_libraries && mkdir bcmake && cd bcmake && cmake .. && make && cd .. && meson bmeson && cd bmeson && ninja && popd
- pushd 03_modularity && mkdir bcmake && cd bcmake && cmake .. && make && cd .. && meson bmeson && cd bmeson && ninja && popd
- pushd 04_tests && mkdir bcmake && cd bcmake && cmake .. && make && ctest && cd .. && meson bmeson && cd bmeson && ninja && meson test && popd
- pushd 05a_external_library && mkdir bcmake && cd bcmake && cmake .. && make && cd .. && meson bmeson && cd bmeson && ninja && popd
- pushd 05b_external_library && mkdir bcmake && cd bcmake && cmake .. && make && cd .. && meson bmeson && cd bmeson && ninja && popd
- pushd 06_unit_tests && meson bmeson && cd bmeson && ninja && meson test && cd .. && mkdir bcmake && cd bcmake && cmake -DGTEST_DIR=$PWD/../subprojects/googletest-release-1.8.1/ -DCATCH_DIR=$PWD/../subprojects/Catch2-2.11.1 .. && make && ctest && popd
- pushd 07_customization && meson -DENABLE_TESTING=true bmeson && cd bmeson && ninja && meson test && cd .. && mkdir bcmake && cd bcmake && cmake -DGTEST_DIR=$PWD/../subprojects/googletest-release-1.8.1/ -DENABLE_TESTING=ON .. && make && ctest && popd
- pushd 08a_mpi && CXX=mpicxx meson bmeson && cd bmeson && ninja && rm -rf * && cmake -DCMAKE_CXX_COMPILER=mpicxx .. && make && popd
- pushd 08b_mpi && meson bmeson && cd bmeson && ninja && rm -rf * && cmake .. && make && popd
- pushd 09_pkg-config && pushd extra_lib && meson -Dprefix=$PWD/../installed_libs/extra build && pushd build && ninja install && popd && popd &&
export LD_LIBRARY_PATH=$PWD/installed_libs/extra/lib:$LD_LIBRARY_PATH &&
pushd basic_lib && meson -Dprefix=$PWD/../installed_libs/basic build && pushd build && ninja install && popd && popd &&
export PKG_CONFIG_PATH=$PWD/installed_libs/basic/lib/pkgconfig:$PKG_CONFIG_PATH && export LD_LIBRARY_PATH=$PWD/installed_libs/basic/lib:$LD_LIBRARY_PATH &&
pushd cool_lib && meson -Dprefix=$PWD/../installed_libs/cool build && pushd build && ninja install && popd && popd