31 Commits

Author SHA1 Message Date
Daniel Axtens
50cec74c8b travis: Test across a range of platforms
Travis CI now supports testing on arm64, ppc64le and s390x. It would
be nice to test on them.

Signed-off-by: Daniel Axtens <dja@axtens.net>
2020-07-23 11:18:14 +10:00
Daniel Axtens
ae76c6590f travis: Bump distro version to Bionic
Bionic contains more recent compilers, which are required to have
the sanitisers work under s390x.

While we're at it, the 'sudo' key is deprecated, so remove it:

https://blog.travis-ci.com/2018-11-19-required-linux-infrastructure-migration

(It used to be used to mark VM vs docker container infrastructure,
but currently all amd64 builds run on VMs and all other archs run
inside LXD containers.)

Signed-off-by: Daniel Axtens <dja@axtens.net>
2020-07-23 11:11:44 +10:00
Ilya Lipnitskiy
ce75229b6a CMakeLists.txt: Fix protoc-c crashes on Linux
-lpthread was missing from the linker command line. See
https://github.com/protocolbuffers/protobuf/issues/5107 for more
details.

.travis.yml: Run CMake debug build for verification
2020-05-09 13:27:33 -07:00
Ilya Lipnitskiy
8f92882d4b .travis.yml: Reenable code coverage
Code coverage option was removed in the xenial update change (fe36c1677)
2019-05-20 10:49:27 -07:00
Robert Edmonds
8067d454b7 .travis.yml: Bump protobuf version to 3.7.1, use new URL 2019-04-10 20:28:52 -04:00
Robert Edmonds
defc6f044b Revert ".travis.yml: Force C++ standard language version"
This reverts commit 0585e053a8723fbdea4deefe17b6a6512274cde5.

Now that we autodetect any needed flags to enable C++11 support with the
AX_CXX_COMPILE_STDCXX macro, we no longer need to force this in
.travis.yml.
2018-08-13 22:39:31 -04:00
Robert Edmonds
0585e053a8 .travis.yml: Force C++ standard language version
The xenial Travis-CI environment uses a g++ version that is old enough
that it doesn't use C++11 or newer by default, so we have to force it by
setting CXX to "g++ -std=c++11".
2018-08-13 20:24:05 -04:00
Robert Edmonds
3b7ba77c4d .travis.yml: Bump protobuf version to 3.6.1 2018-08-13 19:40:30 -04:00
Robert Edmonds
fe36c1677a .travis.yml: Update to xenial
This commit updates the base Travis-CI image from trusty to xenial,
which ships with a slightly more modern compiler.
2018-08-13 19:40:04 -04:00
Paolo Borelli
29b25869fa bump protobuf version in travis to 3.0.2
protobuf does not provide configured tarballs anymore, so we need
to run autogen.sh ourselves.
2016-10-30 11:20:47 +01:00
Ilya Lipnitskiy
651ec8f512 .travis.yml: Remove clang check for now
http://lists.llvm.org/pipermail/llvm-foundation/2016-May/000020.html

travis-ci/travis-ci#6120
2016-06-17 00:27:34 -07:00
Ilya Lipnitskiy
565f42d300 .travis.yml: Add sanitizer checks
Add support for multiple versions of GCC and clang by using a build
matrix. Switch Travis VM to be based on Ubuntu 14.04
2015-12-12 17:05:05 -08:00
Robert Edmonds
a5a802641a .travis.yml: Update protobuf dependency to 2.6.1 2015-03-14 16:08:10 -04:00
Ilya Lipnitskiy
c89cd01189 .travis.yml: Exclude protoc-c from the coveralls report 2015-02-14 20:45:04 -08:00
Oleg Efimov
0a29317348 .travis.yml: exclude downloaded protobuf sources from coveralls report 2015-02-14 20:40:07 -08:00
Robert Edmonds
faf6244ef5 .travis.yml: fetch the protobuf tarball from GitHub instead of Google Code
Per the protobuf developers,

    We will from everything away from Google Code eventually. We haven't
    decided where to put future release packages yet but as it seems github
    supports this well chances are we'll use github as the canonical location
    for all downloads.
2014-09-05 17:18:18 -04:00
Robert Edmonds
51b8da1589 .travis.yml: bump protobuf version to 2.6.0
Build with the latest protobuf release, in preparation for adding
"oneof" support.
2014-09-05 17:17:24 -04:00
Robert Edmonds
3ba170ccc7 .travis.yml: try to speed up the build a bit with "make -j2"
According to the travis-ci documentation, VMs are executed with 1.5
virtual CPU cores, so this should speed up our builds a little bit.
2014-09-05 15:44:47 -04:00
Robert Edmonds
11326ce7f3 .travis.yml: run 'ldconfig' after installing protobuf
This should fix the following build failure.

    ./protoc-c/protoc-c: error while loading shared libraries: libprotobuf.so.8: cannot open shared object file: No such file or directory
    make: *** [t/test.pb-c.c] Error 127
2014-09-05 15:03:24 -04:00
Robert Edmonds
61e5bee03d .travis.yml: fix 'language' declaration
It turns out that in YAML,

    language: c
    language: cpp

Actually means:

    language: cpp

I'm not sure if travis-ci actually supports providing a list of values
for the 'language' parameter, but let's try it anyway.
2014-09-05 14:35:50 -04:00
Robert S. Edmonds
1ccc5d4239 .travis.yml: install protobuf 2.5.0 from source
The travis-ci environment is based on Ubuntu 12.04 LTS, which has an
older protobuf version (2.4.1). We need to depend on features that are
only available in 2.5.0 (and, later, 2.6.0), so instead of satisfying
the protobuf build dependencies from the Ubuntu repository, download and
install our own copy of protobuf.

The travis-ci build from this commit should succeed, since we are
compatible with protobuf 2.5.0.

Based on a patch from Ilya Lipnitskiy.
2014-09-05 14:00:45 -04:00
Robert Edmonds
54881f489b .travis.yml: enable code coverage checks and upload data to coveralls.io 2014-06-02 18:04:35 -04:00
Robert Edmonds
db49f8e889 .travis.yml: test on both gcc and clang 2014-03-31 17:47:29 -04:00
Robert Edmonds
447964eee4 .travis.yml: add back "language: c"
of course, protobuf-c uses both C and C++.
2014-01-14 13:52:21 -05:00
Robert Edmonds
28e70e5e9a .travis.yml: remove "make clean" at end of build script 2014-01-14 13:51:30 -05:00
Robert Edmonds
bfd88382e6 .travis.yml: add VERBOSE=1 to make flags in order to log test failures
"As with the serial harness above, by default one status line is printed
per completed test, and a short summary after the suite has completed.
However, standard output and standard error of the test are redirected
to a per-test log file, so that parallel execution does not produce
intermingled output. The output from failed tests is collected in the
test-suite.log file. If the variable ‘VERBOSE’ is set, this file is
output after the summary."

(http://www.gnu.org/software/automake/manual/html_node/Parallel-Test-Harness.html)
2014-01-14 13:39:33 -05:00
Ilya Lipnitskiy
d74ef06435 .travis.yml: install valgrind on the CI VM 2014-01-14 00:20:05 -08:00
Ilya Lipnitskiy
baa3ab296d .travis.yml: add a travis build entry to run tests under valgrind
Makefile.am: add valgrind to the AM_TESTS_ENVIRONMENT
configure.ac: enable valgrind testing option for ./configure
m4/valgrind-tests.m4: enable tracing children for libtool wrapper
script compatibility, but ignore standard binaries in /usr or /bin
2014-01-14 00:20:05 -08:00
Robert Edmonds
5c4f8eafa7 .travis.yml: remove protobuf-c-rpc 2014-01-10 13:25:11 -05:00
Robert Edmonds
aab12f20bc .travis.yml: use system protobuf packages and build using distcheck
the change that required protobuf >= 2.5.0 has been reverted, so there's
no need to build protobuf from source. use the system protobuf packages
instead.

also use distcheck to build and check the distribution. this will run
the test suite and perform various other checks. it will also perform a
VPATH build using the distribution tarball, which will catch any files
present in the git repository but inadvertently not distributed in the
tarball.

also test the build when configured with "--enable-rpc".
2013-11-18 14:35:52 -05:00
Ilya Lipnitskiy
fce41f255e Add a travis-CI config file 2013-11-18 00:09:48 -08:00