aboutsummaryrefslogtreecommitdiff
path: root/.travis.yml
diff options
context:
space:
mode:
Diffstat (limited to '.travis.yml')
-rw-r--r--.travis.yml61
1 files changed, 61 insertions, 0 deletions
diff --git a/.travis.yml b/.travis.yml
new file mode 100644
index 0000000..20688b0
--- /dev/null
+++ b/.travis.yml
@@ -0,0 +1,61 @@
+# Travis CI has no ability to handle 3 langauges (c, c++, python)
+# and it overrides $CC/$CXX if language is set to c/c++ (only one, not both).
+#
+# Set language to python since at least the result of that is something useful.
+language: python
+
+python:
+ - "2.7"
+ - "3.4"
+
+# Manage the C/C++ compiler manually
+env:
+ - CC=gcc CXX=g++
+ - CC=gcc-4.8 CXX=g++-4.8
+ - CC=gcc-4.9 CXX=g++-4.9
+ - CC=gcc-5 CXX=g++-5
+ - CC=clang CXX=clang++
+
+addons:
+ apt:
+ sources:
+ - ubuntu-toolchain-r-test
+ packages:
+ - gcc-4.8
+ - g++-4.8
+ - gcc-4.9
+ - g++-4.9
+ - gcc-5
+ - g++-5
+ - scons
+
+
+before_install:
+ - export PATH=$HOME/.local/bin:$HOME/protobuf/bin:$PATH
+ - export MAKEFLAGS=-j$(nproc)
+ - $CC --version
+ - $CXX --version
+ - python --version
+ - lsb_release -a
+
+# Seems to be issues with concurrent builds
+#cache:
+# directories:
+# - $HOME/protobuf
+
+# Rather then compile protobuf 3 from source, use the binaries now available
+# to speed up build time and reduce surprises until Ubuntu adds protobuf3
+# packages to the repository.
+install:
+ - mkdir -p $HOME/protobuf && pushd $HOME/protobuf
+ && curl -LO 'https://github.com/google/protobuf/releases/download/v3.4.0/protoc-3.4.0-linux-x86_64.zip'
+ && unzip protoc-3.4.0-linux-x86_64.zip
+ && popd
+ - curl -L 'https://github.com/google/protobuf/releases/download/v3.4.0/protobuf-python-3.4.0.tar.gz' | tar xzf -
+ && pushd protobuf-3.4.0/python
+ && python setup.py build && python setup.py install
+ && popd
+
+script:
+ - pushd generator/proto && make && popd
+ - pushd tests && scons CC=$CC CXX=$CXX && popd