[ci] enable check C/C++ format on CI

This commit is contained in:
tangxifan 2022-10-06 18:26:06 -07:00
parent afdc071c4c
commit 5d9e918d5d
2 changed files with 35 additions and 1 deletions

View File

@ -58,4 +58,5 @@ sudo apt-get install -y \
clang-6.0 \ clang-6.0 \
clang-7 \ clang-7 \
clang-8 \ clang-8 \
clang-10 clang-10 \
clang-format-10

33
dev/check-format.sh Executable file
View File

@ -0,0 +1,33 @@
#!/usr/bin/env bash
clean=$(git status -s -uno | wc -l) #Short ignore untracked
if [ $clean -ne 0 ]; then
echo "Current working tree was not clean! This tool only works on clean checkouts"
exit 2
else
echo "Code Formatting Check"
echo "====================="
make format"$1" > /dev/null 2>&1
valid_format=$(git diff | wc -l)
if [ $valid_format -ne 0 ]; then
echo "FAILED"
echo ""
echo "You *must* make the following changes to match the formatting style"
echo "-------------------------------------------------------------------"
echo ""
git diff
echo ""
echo "Run 'make format$1' to apply these changes"
git reset --hard > /dev/null
exit 1
else
echo "OK"
fi
fi
exit 0