From f4bd46764143744202b817cf7268aa9e6f4ab5f7 Mon Sep 17 00:00:00 2001 From: Tobias Brunner Date: Thu, 14 Sep 2017 15:33:59 +0200 Subject: [PATCH] travis: Use Clang 4.0 instead of 3.9 due to va_start() warnings This is a follow up on the issue documented in the previous commit. To build with -Werror and Clang 3.9 we'd have to change all enum arguments that are used as last argument before ... to e.g. u_int, which affects quite a lot of places (crypto-factory, MODP_CUSTOM constructors, auth-cfg, bus, vici-builder, vici-message). Besides that it doesn't look as nice it also seems a bit too much hassle just to cater to the whims of a particular version of one compiler, so we just don't build with that version on Travis and use 4.0 instead. --- .travis.yml | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/.travis.yml b/.travis.yml index a17f242d1..35c9932f7 100644 --- a/.travis.yml +++ b/.travis.yml @@ -10,6 +10,19 @@ compiler: before_install: - ./scripts/test.sh deps - ./scripts/test.sh pydeps + # use clang 4.0 instead of 3.9 due to unnecessary va_start() warnings + - echo $TRAVIS_OS_NAME + - echo $CC + - echo $(clang --version) + - if [ "$TRAVIS_OS_NAME" == "linux" -a "$CC" == "clang" ]; then + if [[ "$(clang --version)" =~ 3\.9\.[0-9] ]]; then + curl http://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -; + echo "deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-4.0 main" | sudo tee -a /etc/apt/sources.list; + sudo apt-get update -qq; + sudo apt-get install -qq clang-4.0; + CC=clang-4.0; + fi; + fi before_script: - sudo sysctl -w net.ipv6.conf.all.disable_ipv6=0 || true