From f6ace9962d95eb12236083871154c1501f02c556 Mon Sep 17 00:00:00 2001 From: Thiago de Arruda Date: Thu, 13 Mar 2014 12:11:03 -0300 Subject: Refactor travis build to use clang's sanitizers - Valgrind configuration removed - Fix errors reported by the undefined behavior sanitizer - Travis will now run two build steps: - A normal build of a shared library for unit testing(in parallel with gcc) - A clang build with some sanitizers enabled for integration testing. After these changes travis will run much faster, while providing valgrind-like error detection. --- scripts/travis-setup.sh | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100755 scripts/travis-setup.sh (limited to 'scripts/travis-setup.sh') diff --git a/scripts/travis-setup.sh b/scripts/travis-setup.sh new file mode 100755 index 0000000000..437659dd77 --- /dev/null +++ b/scripts/travis-setup.sh @@ -0,0 +1,19 @@ +#!/bin/sh -e + +# [ "$CC" != "clang" ] && exit + +add-apt-repository -y ppa:ubuntu-toolchain-r/ppa +wget -O - http://llvm.org/apt/llvm-snapshot.gpg.key | apt-key add - + +cat > /etc/apt/sources.list.d/clang.list << "EOF" +deb http://llvm.org/apt/precise/ llvm-toolchain-precise main +deb-src http://llvm.org/apt/precise/ llvm-toolchain-precise main +# 3.4 +deb http://llvm.org/apt/precise/ llvm-toolchain-precise-3.4 main +deb-src http://llvm.org/apt/precise/ llvm-toolchain-precise-3.4 main +# Common +deb http://ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu precise main +EOF + +apt-get -qq update +apt-get -qq -y --no-install-recommends install clang-3.4 lldb-3.4 -- cgit