libcryfs/.travis.yml

51 lines
1.5 KiB
YAML

language: cpp
sudo: required
dist: trusty
compiler:
- gcc
- clang
os:
- linux
- osx
matrix:
allow_failures:
- os: osx
- compiler: clang
addons:
apt:
packages:
- libcrypto++-dev
- libfuse-dev
install:
# Detect number of CPU cores
- export NUMCORES=`grep -c ^processor /proc/cpuinfo` && if [ ! -n "$NUMCORES" ]; then export NUMCORES=`sysctl -n hw.ncpu`; fi
- echo Using $NUMCORES cores
# Install boost
- wget -O boost.tar.bz2 https://sourceforge.net/projects/boost/files/boost/1.56.0/boost_1_56_0.tar.bz2/download
- tar -xf boost.tar.bz2
- cd boost_1_56_0
# TODO We should use clang as toolchain for building boost when clang is used for building our code
- ./bootstrap.sh --with-libraries=filesystem,thread,chrono,program_options
- sudo ./b2 -d0 -j$NUMCORES install
- cd ..
- sudo rm -rf boost.tar.bz2 boost_1_56_0
# Install run_with_fuse.sh
- mkdir cmake
- cd cmake
- wget https://raw.githubusercontent.com/smessmer/travis-utils/master/run_with_fuse.sh
- chmod +x run_with_fuse.sh
- cmake --version
# Use /dev/urandom when /dev/random is accessed, because travis doesn't have enough entropy
- sudo cp -a /dev/urandom /dev/random
script:
- cmake .. -DBUILD_TESTING=on -DCMAKE_BUILD_TYPE=Debug
- make -j$NUMCORES
- ./test/cpp-utils/cpp-utils-test
- ./run_with_fuse.sh ./test/fspp/fspp-test
- ./test/parallelaccessstore/parallelaccessstore-test
- ./test/blockstore/blockstore-test
- ./test/blobstore/blobstore-test
- ./test/cryfs/cryfs-test
after_script:
- rm run_with_fuse.sh