diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000000000000000000000000000000000000..8e6637f9651e784a904b9b888b0aa134f4ff8332 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,34 @@ +language: cpp +sudo: required +dist: trusty +branches: + only: + - master + - devel +compiler: +- gcc +addons: + apt: + packages: + - g++ + - cmake + - libboost-dev + - libboost-filesystem-dev + - libboost-system-dev + - git + - flex + - bison + - asciidoc + - autoconf + - source-highlight + - doxygen + - libtinyxml-dev + - libltdl-dev + - liblog4cxx10-dev + - python2.7-dev + - doxygen-latex +before_install: +- git submodule update --init --recursive + +script: ./.travis/build +# after_script: ./.travis/run diff --git a/.travis/build b/.travis/build new file mode 100755 index 0000000000000000000000000000000000000000..235010235849b30455c87b094ab53245c81a2e56 --- /dev/null +++ b/.travis/build @@ -0,0 +1,100 @@ +#!/bin/bash +set -ev + +# Directories. +root_dir=`pwd` +build_dir="$root_dir/_travis/build" +install_dir="$root_dir/_travis/install" +export DEVEL_DIR="$root_dir/_travis/" + +# Shortcuts. +git_clone="git clone --recursive --quiet" +git_branch=devel + +# Create layout. +rm -rf "$build_dir" "$install_dir" +mkdir -p "$build_dir" +mkdir -p "$install_dir" + +# Setup environment variables. +export LD_LIBRARY_PATH="$install_dir/lib:$LD_LIBRARY_PATH" +export LD_LIBRARY_PATH="$install_dir/lib/`dpkg-architecture -qDEB_BUILD_MULTIARCH`:$LD_LIBRARY_PATH" +export PKG_CONFIG_PATH="$install_dir/lib/pkgconfig:$PKG_CONFIG_PATH" +export PKG_CONFIG_PATH="$install_dir/lib/`dpkg-architecture -qDEB_BUILD_MULTIARCH`/pkgconfig:$PKG_CONFIG_PATH" + +export PATH=$DEVEL_DIR/install/sbin:$DEVEL_DIR/install/bin:$PATH +# export PKG_CONFIG_PATH=$DEVEL_DIR/install/lib/pkgconfig/ +# export PYTHONPATH=$DEVEL_DIR/install/lib/python2.7/site-packages:$DEVEL_DIR/install/lib/python2.7/dist-packages:$PYTHONPATH +# export LD_LIBRARY_PATH=$DEVEL_DIR/install/lib:$LD_LIBRARY_PATH + +cmake_args="-DCMAKE_INSTALL_LIBDIR=lib -DCMAKE_INSTALL_PREFIX:STRING='$install_dir' -DCMAKE_BUILD_TYPE=Release" +make_args="-s -j4" + +install_eigen3() +{ + echo "--> Compiling Eigen" + mkdir -p "$build_dir" + cd "$build_dir" + wget --quiet -O - "http://bitbucket.org/eigen/eigen/get/3.2.4.tar.bz2" | tar -xj + mv eigen-eigen-10219c95fe65 eigen3 + cd "$build_dir/eigen3" + mkdir build + cd build + cmake $cmake_args -Dpkg_config_libdir="$install_dir/lib" .. + make $make_args install +} + +install_doxygen() +{ + echo "--> Compiling Doxygen" + mkdir -p "$build_dir" + cd "$build_dir" + wget --quiet -O - "https://github.com/doxygen/doxygen/archive/Release_1_8_10.tar.gz" | tar -xz; + cd "$build_dir/doxygen-Release_1_8_10" + mkdir build + cd build + cmake $cmake_args .. + make $make_args install +} + +check_dependency() +{ + echo "--> Compiling $1" + mkdir -p "$build_dir/$1" + cd "$build_dir" + $git_clone "git://github.com/$1" "$1" + cd "$build_dir/$1" + mkdir build + cd build + cmake $cmake_args .. + make $make_args +} + +install_dependency() +{ + echo "--> Compiling $1" + mkdir -p "$build_dir/$1" + cd "$build_dir" + if [ "$#" -eq "2" ]; then + branch=$2 + else + branch=$git_branch + fi + $git_clone --branch $branch "git://github.com/$1" "$1" + cd "$build_dir/$1" + mkdir build + cd build + cmake $cmake_args .. + make $make_args install +} + +# Install dependencies +install_dependency humanoid-path-planner/hpp-util devel + +# Compile and run tests +cd "$build_dir" +cmake "$root_dir" -DCMAKE_INSTALL_PREFIX="$install_dir" \ + -DCMAKE_INSTALL_PREFIX:STRING="$install_dir" +make $make_args +make $make_args test +make $make_args install diff --git a/README.md b/README.md index 021b184cd389a9029dc410d4951f72b741ef98b5..8ee4056672f675372de973d4b1d1882c11b0b993 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,7 @@ # hpp-statistics +[](https://travis-ci.org/humanoid-path-planner/hpp-statistics) + This package is part of the [HPP] software and provides a few tools for basic statistics. ### Version