diff --git a/.travis.yml b/.travis.yml index 3316c88b..cd4c519c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,13 +5,37 @@ sudo: false matrix: include: - os: linux + compiler: gcc + env: COVERAGE=gcov-4.9 + addons: + apt: + sources: ['ubuntu-toolchain-r-test'] + packages: [ 'g++-4.9', 'protobuf-compiler', 'libprotobuf-dev' ] + - os: linux + compiler: clang addons: apt: packages: [ 'protobuf-compiler', 'libprotobuf-dev' ] + - os: osx + compiler: clang install: + - if [[ $(uname -s) == 'Darwin' ]]; then brew install protobuf; fi; + - if [ -n "${COVERAGE}" ]; then + export CXX=g++-4.9; + export CC=gcc-4.9; + export CXXFLAGS="--coverage -g"; + export CFLAGS="--coverage -g"; + export LDFLAGS="--coverage"; + fi; - make script: - make test + - if [ -n "${COVERAGE}" ]; then + rm vector_tile.pb.o; + ${COVERAGE} -lp *.o; + pip install --user cpp-coveralls; + ~/.local/bin/coveralls --no-gcov -i ./ --exclude clipper --exclude vector_tile.pb.cc --exclude vector_tile.pb.h; + fi diff --git a/Makefile b/Makefile index dedb1817..1887849a 100644 --- a/Makefile +++ b/Makefile @@ -52,7 +52,7 @@ libjsonpull.a: jsonpull.o ranlib $@ %.o: %.c $(H) - cc $(PG) $(INCLUDES) -O3 -g -Wall $(CFLAGS) -c $< + $(CC) $(PG) $(INCLUDES) -O3 -g -Wall $(CFLAGS) -c $< %.o: %.cc $(H) $(CXX) $(PG) $(INCLUDES) -O3 -g -Wall $(CXXFLAGS) -c $< diff --git a/README.md b/README.md index da500cf4..f55d7ad6 100644 --- a/README.md +++ b/README.md @@ -5,6 +5,7 @@ Builds [vector tilesets](https://www.mapbox.com/developers/vector-tiles/) from l features. This is a tool for [making maps from huge datasets](MADE_WITH.md). [![Build Status](https://travis-ci.org/mapbox/tippecanoe.svg)](https://travis-ci.org/mapbox/tippecanoe) +[![Coverage Status](https://coveralls.io/repos/mapbox/tippecanoe/badge.svg?branch=master&service=github)](https://coveralls.io/github/mapbox/tippecanoe?branch=master) Intent ------