diff options
author | Jay Berkenbilt <ejb@ql.org> | 2023-12-27 16:51:44 +0100 |
---|---|---|
committer | Jay Berkenbilt <ejb@ql.org> | 2023-12-27 16:51:44 +0100 |
commit | d96f74ae3483b4e7c4cb3112cb5a7a45d358dbf8 (patch) | |
tree | ae895595aedc1c0b772f8d8ae8921614c0bf8a1f | |
parent | a3b939ce583b925439d3b549780bbdbb68611ea6 (diff) | |
download | qpdf-d96f74ae3483b4e7c4cb3112cb5a7a45d358dbf8.tar.zst |
Use version-specific clang-format if available
-rwxr-xr-x | format-code | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/format-code b/format-code index b2e72364..a1378405 100755 --- a/format-code +++ b/format-code @@ -25,18 +25,23 @@ # that refers to this comment. See also .clang-format. min_version=18 -clang_version=$(clang-format --version | \ - awk '{for (i=1; i<=NF; i++) if ($i == "version") {print int($(i+1)); exit}}') -if [ "$clang_version" -lt "$min_version" ]; then - echo "clang-format version >= $min_version is required" - exit 2 +clang_format=clang-format +if clang-format-$min_version --version >/dev/null 2>&1; then + clang_format=clang-format-$min_version +else + clang_version=$(clang-format --version | \ + awk '{for (i=1; i<=NF; i++) if ($i == "version") {print int($(i+1)); exit}}') + if [ "$clang_version" -lt "$min_version" ]; then + echo "clang-format version >= $min_version is required" + exit 2 + fi fi cd $(dirname $0) for i in $(find . -name 'build*' -prune -o '(' \ -name '*.hh' -o -name '*.h' -o -name '*.cc' -o -name '*.c' \ ')' -print); do - if clang-format < $i >| $i.new; then + if $clang_format < $i >| $i.new; then if diff -q $i $i.new >/dev/null 2>/dev/null; then echo "okay: $i" rm $i.new |