Repository: trafficserver
Updated Branches:
  refs/heads/master 29a3b84af -> 4d14cea66


Automate clang-format setup.


Project: http://git-wip-us.apache.org/repos/asf/trafficserver/repo
Commit: http://git-wip-us.apache.org/repos/asf/trafficserver/commit/4d14cea6
Tree: http://git-wip-us.apache.org/repos/asf/trafficserver/tree/4d14cea6
Diff: http://git-wip-us.apache.org/repos/asf/trafficserver/diff/4d14cea6

Branch: refs/heads/master
Commit: 4d14cea668575284d518d07d572c296424be8677
Parents: 29a3b84
Author: James Peach <[email protected]>
Authored: Sat Feb 13 17:07:27 2016 -0800
Committer: James Peach <[email protected]>
Committed: Sat Feb 13 21:23:51 2016 -0800

----------------------------------------------------------------------
 tools/clang-format.sh | 38 +++++++++++++++++++++++++++++++++++---
 1 file changed, 35 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/trafficserver/blob/4d14cea6/tools/clang-format.sh
----------------------------------------------------------------------
diff --git a/tools/clang-format.sh b/tools/clang-format.sh
index f6d31b9..c97c620 100755
--- a/tools/clang-format.sh
+++ b/tools/clang-format.sh
@@ -1,4 +1,4 @@
-#!/bin/sh
+#! /usr/bin/env bash
 #
 #  Simple wrapper to run clang-format on a bunch of files
 #
@@ -18,10 +18,42 @@
 #  See the License for the specific language governing permissions and
 #  limitations under the License.
 
+set -e # exit on error
+
 DIR=${1:-.}
-FORMAT=${FORMAT:-clang-format}
+ROOT=${ROOT:-$(git rev-parse --show-toplevel)/.git/fmt}
+URL=${URL:-https://bintray.com/artifact/download/apache/trafficserver/clang-format-20150331.tar.bz2}
+
+TAR=${TAR:-tar}
+CURL=${CURL:-curl}
+SHASUM=${SHASUM:-shasum}
+
+ARCHIVE=$ROOT/$(basename ${URL})
+
+case $(uname -s) in
+Darwin)
+  FORMAT=${FORMAT:-${ROOT}/clang-format/clang-format.osx}
+  ;;
+Linux)
+  FORMAT=${FORMAT:-${ROOT}/clang-format/clang-format.linux}
+  ;;
+*)
+  echo "Leif needs to build a clang-format for $(uname -s)"
+  exit 2
+esac
+
+mkdir -p ${ROOT}
+
+if [ ! -e ${FORMAT} ] ; then
+  ${CURL} -L --progress-bar -o ${ARCHIVE} ${URL}
+  ${TAR} -x -C ${ROOT} -f ${ARCHIVE}
+  cat > ${ROOT}/sha1 << EOF
+7117c5bed99da43be733427970b4239f4bd8063d  ${ARCHIVE}
+EOF
+  ${SHASUM} -a 1 -c ${ROOT}/sha1
+fi
 
 for file in $(find $DIR -iname \*.[ch] -o -iname \*.cc); do
     echo $file
-    $FORMAT -i $file
+    ${FORMAT} -i $file
 done

Reply via email to