From 15a2388a33b1306dcaf16b62432c7a13b40ca2a3 Mon Sep 17 00:00:00 2001 From: MerryMage Date: Fri, 6 Oct 2017 20:58:48 +0100 Subject: travis: Split build scripts for different platforms This commit also separates clang-format from the linux build, closing #2702. --- .travis/clang-format/script.sh | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100755 .travis/clang-format/script.sh (limited to '.travis/clang-format/script.sh') diff --git a/.travis/clang-format/script.sh b/.travis/clang-format/script.sh new file mode 100755 index 000000000..80a0f47e5 --- /dev/null +++ b/.travis/clang-format/script.sh @@ -0,0 +1,37 @@ +#!/bin/bash -ex + +if grep -nr '\s$' src *.yml *.txt *.md Doxyfile .gitignore .gitmodules .travis* dist/*.desktop \ + dist/*.svg dist/*.xml; then + echo Trailing whitespace found, aborting + exit 1 +fi + +# Default clang-format points to default 3.5 version one +CLANG_FORMAT=clang-format-3.9 +$CLANG_FORMAT --version + +if [ "$TRAVIS_EVENT_TYPE" = "pull_request" ]; then + # Get list of every file modified in this pull request + files_to_lint="$(git diff --name-only --diff-filter=ACMRTUXB $TRAVIS_COMMIT_RANGE | grep '^src/[^.]*[.]\(cpp\|h\)$' || true)" +else + # Check everything for branch pushes + files_to_lint="$(find src/ -name '*.cpp' -or -name '*.h')" +fi + +# Turn off tracing for this because it's too verbose +set +x + +for f in $files_to_lint; do + d=$(diff -u "$f" <($CLANG_FORMAT "$f") || true) + if ! [ -z "$d" ]; then + echo "!!! $f not compliant to coding style, here is the fix:" + echo "$d" + fail=1 + fi +done + +set -x + +if [ "$fail" = 1 ]; then + exit 1 +fi -- cgit v1.2.3