diff options
author | Brad King <brad.king@kitware.com> | 2017-02-22 20:01:23 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2017-02-22 21:59:26 (GMT) |
commit | d5f39a56a44fe061018c6acc15e1c3aa7337ff54 (patch) | |
tree | 4a4e0bf7ef543de77f176899540a426a5d6b6d23 /Utilities/Scripts | |
parent | f6986ee479f1cce6da17859eaf6a0616852b9e20 (diff) | |
download | CMake-d5f39a56a44fe061018c6acc15e1c3aa7337ff54.zip CMake-d5f39a56a44fe061018c6acc15e1c3aa7337ff54.tar.gz CMake-d5f39a56a44fe061018c6acc15e1c3aa7337ff54.tar.bz2 |
clang-format.bash: Use Git attributes to mark files for formatting
Diffstat (limited to 'Utilities/Scripts')
-rwxr-xr-x | Utilities/Scripts/clang-format.bash | 36 |
1 files changed, 7 insertions, 29 deletions
diff --git a/Utilities/Scripts/clang-format.bash b/Utilities/Scripts/clang-format.bash index 2b36ac5..edcda77 100755 --- a/Utilities/Scripts/clang-format.bash +++ b/Utilities/Scripts/clang-format.bash @@ -1,6 +1,6 @@ #!/usr/bin/env bash #============================================================================= -# Copyright 2015-2016 Kitware, Inc. +# Copyright 2015-2017 Kitware, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -106,34 +106,12 @@ case "$mode" in *) die "invalid mode: $mode" ;; esac -# Filter sources to which our style should apply. -$git_ls -z -- '*.c' '*.cc' '*.cpp' '*.cxx' '*.h' '*.hh' '*.hpp' '*.hxx' '*.cu' '*.notcu' | +# List files as selected above. +$git_ls | - # Exclude lexer/parser generator input and output. - egrep -z -v '^Source/cmCommandArgumentLexer\.' | - egrep -z -v '^Source/cmCommandArgumentParser(\.y|\.cxx|Tokens\.h)' | - egrep -z -v '^Source/cmDependsJavaLexer\.' | - egrep -z -v '^Source/cmDependsJavaParser(\.y|\.cxx|Tokens\.h)' | - egrep -z -v '^Source/cmExprLexer\.' | - egrep -z -v '^Source/cmExprParser(\.y|\.cxx|Tokens\.h)' | - egrep -z -v '^Source/cmFortranLexer\.' | - egrep -z -v '^Source/cmFortranParser(\.y|\.cxx|Tokens\.h)' | - egrep -z -v '^Source/cmListFileLexer(\.in\.l|\.c)' | - - # Exclude third-party sources. - egrep -z -v '^Source/bindexplib' | - egrep -z -v '^Source/(kwsys|CursesDialog/form)/' | - egrep -z -v '^Utilities/(KW|cm).*/' | - - # Exclude reference content. - egrep -z -v '^Tests/RunCMake/GenerateExportHeader/reference/' | - - # Exclude manually-formatted sources (e.g. with long lines). - egrep -z -v '^Tests/PositionIndependentTargets/pic_test.h' | - egrep -z -v '^Tests/CompileFeatures/cxx_right_angle_brackets.cpp' | - - # Exclude sources with encoding not suported by clang-format. - egrep -z -v '^Tests/RunCMake/CommandLine/cmake_depends/test_UTF-16LE.h' | + # Select sources with our attribute. + git check-attr --stdin format.clang-format | + sed -n '/: format\.clang-format: set$/ {s/:[^:]*:[^:]*$//p}' | # Update sources in-place. - xargs -0 "$clang_format" -i + xargs -d '\n' "$clang_format" -i |