mirror of
https://github.com/triqs/dft_tools
synced 2024-11-18 12:03:50 +01:00
f65e5bfbad
-Disable LINTing in test macros with comment // NOLINT -Enable static analyzers for c++ tests -Switch app4triqs_c to static library Dynamic was pickung up previously installed libapp4triqs_c.so in tests Also there is no need to be dynamic for applications -Fix previous change in HeaderFilterRegex: 'app4triqs/c++' was blocking all headers for clang-tidy checks. 'app4triqs' works well, but we cannot install any other headers into app4triqs folder structure. We thus had to create INSTALL_DIR in travis.yml
47 lines
2.3 KiB
YAML
47 lines
2.3 KiB
YAML
|
|
language: cpp
|
|
sudo: required
|
|
dist: trusty
|
|
|
|
compiler:
|
|
- gcc
|
|
#- clang
|
|
|
|
before_install:
|
|
- sudo add-apt-repository 'deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-5.0 main' -y
|
|
- wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add -
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- sudo apt-get update
|
|
- sudo apt-get install -y --allow-unauthenticated g++-7 clang-5.0
|
|
- export LIBRARY_PATH=/usr/lib/llvm-5.0/lib:$LIBRARY_PATH
|
|
- sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 60 --slave /usr/bin/g++ g++ /usr/bin/g++-7
|
|
- sudo update-alternatives --install /usr/bin/clang clang /usr/bin/clang-5.0 60 --slave /usr/bin/clang++ clang++ /usr/bin/clang++-5.0
|
|
- sudo apt-get install -y --allow-unauthenticated libboost-all-dev cmake git libgfortran3 gfortran openmpi-bin openmpi-common openmpi-doc libopenmpi-dev libblas-dev liblapack-dev libfftw3-dev libgmp-dev hdf5-tools libhdf5-serial-dev python-h5py python-dev python-numpy python-scipy python-jinja2 python-virtualenv python-matplotlib python-tornado python-zmq python-mpi4py python-mako clang-format-5.0 libclang-5.0-dev python-clang-5.0 python-sphinx libjs-mathjax valgrind libnfft3-dev
|
|
|
|
install: true
|
|
|
|
script:
|
|
- export INSTALL_DIR=$HOME/root_install # We should install outside the repository
|
|
# ===== Set up Cpp2Py
|
|
- git clone https://github.com/triqs/cpp2py
|
|
- mkdir cpp2py/build && cd cpp2py/build
|
|
- cmake .. -DCMAKE_CXX_COMPILER=/usr/bin/${CXX} -DPYTHON_INTERPRETER=/usr/bin/python -DCMAKE_INSTALL_PREFIX=$INSTALL_DIR
|
|
- make -j8 install
|
|
- source $INSTALL_DIR/share/cpp2pyvars.sh
|
|
# ===== Set up TRIQS
|
|
- cd $TRAVIS_BUILD_DIR
|
|
- git clone https://github.com/TRIQS/triqs --branch unstable
|
|
- mkdir triqs/build && cd triqs/build
|
|
- cmake .. -DCMAKE_CXX_COMPILER=/usr/bin/${CXX} -DBuild_Tests=OFF -DCMAKE_INSTALL_PREFIX=$INSTALL_DIR
|
|
- make -j8 install
|
|
- source $INSTALL_DIR/share/triqsvars.sh
|
|
# ===== Set up CTINT and Test with Sanitizer Checks
|
|
- cd $TRAVIS_BUILD_DIR
|
|
- mkdir build && cd build
|
|
- cmake .. -DCMAKE_CXX_COMPILER=/usr/bin/${CXX} -DASAN=ON -DUBSAN=ON
|
|
- export UBSAN_SYMBOLIZER_PATH=/usr/lib/llvm-5.0/bin/llvm-symbolizer
|
|
- export ASAN_SYMBOLIZER_PATH=/usr/lib/llvm-5.0/bin/llvm-symbolizer
|
|
- export ASAN_OPTIONS=symbolize=1:detect_leaks=0
|
|
- export CTEST_OUTPUT_ON_FAILURE=1
|
|
- make -j8 && make test
|