summaryrefslogtreecommitdiff
path: root/ext/pybind11/.travis.yml
diff options
context:
space:
mode:
authorAndreas Sandberg <andreas.sandberg@arm.com>2017-02-27 13:17:51 +0000
committerAndreas Sandberg <andreas.sandberg@arm.com>2017-05-02 12:37:32 +0000
commitc79706ff4ce591df2151db5504d3c224f3c9965f (patch)
treeb56cd2bfe704a40575a71075e78194a4c516c98d /ext/pybind11/.travis.yml
parent359cb08623324b62d7c34973ae54d5bc7f23f9fd (diff)
downloadgem5-c79706ff4ce591df2151db5504d3c224f3c9965f.tar.xz
ext: Add pybind rev f4b81b3
Change-Id: I52e4fc9ebf2f59da57d8cf8f3e37cc79598c2f5f Signed-off-by: Andreas Sandberg <andreas.sandberg@arm.com> Reviewed-by: Andreas Hansson <andreas.hansson@arm.com> Reviewed-by: Curtis Dunham <curtis.dunham@arm.com> Reviewed-on: https://gem5-review.googlesource.com/2229 Reviewed-by: Tony Gutierrez <anthony.gutierrez@amd.com> Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Reviewed-by: Pierre-Yves PĂ©neau <pierre-yves.peneau@lirmm.fr>
Diffstat (limited to 'ext/pybind11/.travis.yml')
-rw-r--r--ext/pybind11/.travis.yml115
1 files changed, 115 insertions, 0 deletions
diff --git a/ext/pybind11/.travis.yml b/ext/pybind11/.travis.yml
new file mode 100644
index 000000000..28d3e840b
--- /dev/null
+++ b/ext/pybind11/.travis.yml
@@ -0,0 +1,115 @@
+language: cpp
+sudo: false
+matrix:
+ include:
+ - os: linux
+ env: PYTHON=2.7 CPP=11 GCC=4.8
+ addons:
+ apt:
+ sources: [ubuntu-toolchain-r-test, kubuntu-backports]
+ packages: [g++-4.8, cmake]
+ - os: linux
+ env: PYTHON=3.5 CPP=11 GCC=4.8
+ addons:
+ apt:
+ sources: [ubuntu-toolchain-r-test, kubuntu-backports, deadsnakes]
+ packages: [g++-4.8, cmake, python3.5-dev]
+ - sudo: true
+ services: docker
+ env: PYTHON=2.7 CPP=14 GCC=6
+ - sudo: true
+ services: docker
+ env: PYTHON=3.5 CPP=14 GCC=6 DEBUG=1
+ - os: osx
+ osx_image: xcode7.3
+ env: PYTHON=2.7 CPP=14 CLANG
+ - os: osx
+ osx_image: xcode7.3
+ env: PYTHON=3.5 CPP=14 CLANG
+ # A barebones build makes sure everything still works without optional deps (numpy/scipy/eigen)
+ # and also tests the automatic discovery functions in CMake (Python version, C++ standard).
+ - os: linux
+ env: BAREBONES
+ addons:
+ apt:
+ sources: [ubuntu-toolchain-r-test, kubuntu-backports]
+ packages: [g++-4.8, cmake]
+ install: pip install pytest
+ # Documentation build:
+ - os: linux
+ language: docs
+ env: DOCS STYLE LINT
+ install:
+ - pip install --upgrade sphinx sphinx_rtd_theme flake8 pep8-naming
+ - pip install docutils==0.12
+ script:
+ - make -C docs html SPHINX_OPTIONS=-W
+ - tools/check-style.sh
+ - flake8
+cache:
+ directories:
+ - $HOME/.cache/pip
+ - $HOME/Library/Caches/pip
+before_install:
+- |
+ # Configure build variables
+ if [ "$TRAVIS_OS_NAME" = "linux" ]; then
+ if [ -z "$GCC" ]; then export GCC=4.8; fi
+ export CXX=g++-$GCC CC=gcc-$GCC;
+ if [ "$GCC" = "6" ]; then export DOCKER=debian:testing CXX=g++ CC=gcc; fi
+ elif [ "$TRAVIS_OS_NAME" = "osx" ]; then
+ export CXX=clang++ CC=clang;
+ fi
+ if [ -n "$CPP" ]; then export CPP=-std=c++$CPP; fi
+ if [ "${PYTHON:0:1}" = "3" ]; then export PY=3; fi
+ if [ -n "$DEBUG" ]; then export CMAKE_EXTRA_ARGS="-DCMAKE_BUILD_TYPE=Debug"; fi
+- |
+ # Initialize enviornment
+ if [ -n "$DOCKER" ]; then
+ docker pull $DOCKER
+ export containerid=$(docker run --detach --tty \
+ --volume="$PWD":/pybind11 --workdir=/pybind11 \
+ --env="CC=$CC" --env="CXX=$CXX" --env="DEBIAN_FRONTEND=$DEBIAN_FRONTEND" \
+ --env=GCC_COLORS=\ \
+ $DOCKER)
+ docker exec --tty "$containerid" sh -c 'for s in 0 15; do sleep $s; apt-get update && apt-get -qy dist-upgrade && break; done'
+ export SCRIPT_RUN_PREFIX="docker exec --tty $containerid"
+ else
+ if [ "$TRAVIS_OS_NAME" = "linux" ]; then
+ pip install --user --upgrade pip virtualenv
+ virtualenv -p python$PYTHON venv
+ elif [ "$TRAVIS_OS_NAME" = "osx" ]; then
+ if [ "$PY" = "3" ]; then
+ brew update; brew install python$PY;
+ else
+ curl -fsSL -O https://bootstrap.pypa.io/get-pip.py
+ sudo -H python get-pip.py
+ fi
+ pip$PY install --user --upgrade pip virtualenv
+ python$PY -m virtualenv venv
+ fi
+ source venv/bin/activate
+ fi
+install:
+- |
+ # Install dependencies
+ if [ -n "$DOCKER" ]; then
+ docker exec --tty "$containerid" sh -c "for s in 0 15; do sleep \$s; apt-get -qy --no-install-recommends install \
+ python$PYTHON-dev python$PY-pytest python$PY-scipy \
+ libeigen3-dev cmake make g++ && break; done"
+ else
+ pip install numpy scipy pytest
+
+ wget -q -O eigen.tar.gz https://bitbucket.org/eigen/eigen/get/3.3.0.tar.gz
+ tar xzf eigen.tar.gz
+ export CMAKE_EXTRA_ARGS="${CMAKE_EXTRA_ARGS} -DCMAKE_INCLUDE_PATH=$PWD/eigen-eigen-26667be4f70b"
+ fi
+script:
+- $SCRIPT_RUN_PREFIX cmake ${CMAKE_EXTRA_ARGS}
+ -DPYBIND11_PYTHON_VERSION=$PYTHON
+ -DPYBIND11_CPP_STANDARD=$CPP
+ -DPYBIND11_WERROR=ON
+- $SCRIPT_RUN_PREFIX make pytest -j 2
+- $SCRIPT_RUN_PREFIX make test_install
+after_script:
+- if [ -n "$DOCKER" ]; then docker stop "$containerid"; docker rm "$containerid"; fi