summaryrefslogtreecommitdiff
path: root/hooks/pre-commit
diff options
context:
space:
mode:
authorRiku Isokoski <riksu9000@gmail.com>2021-08-17 12:35:29 (GMT)
committerRiku Isokoski <riksu9000@gmail.com>2021-08-17 12:35:29 (GMT)
commit5b969ccfa975632606aa0b3dc8165460effb9cc3 (patch)
tree38cb0686dd51b5d627ee597a07352e291a004749 /hooks/pre-commit
parent7ac6bdfe71f10dd4388da6d3fd29650b072f71f7 (diff)
parentee44b6ff4998d6f4d0672c05c1f65c0a9692dc0d (diff)
Merge branch 'develop' into update_touch_driver
Diffstat (limited to 'hooks/pre-commit')
-rwxr-xr-xhooks/pre-commit25
1 files changed, 25 insertions, 0 deletions
diff --git a/hooks/pre-commit b/hooks/pre-commit
new file mode 100755
index 0000000..5e10aa1
--- /dev/null
+++ b/hooks/pre-commit
@@ -0,0 +1,25 @@
+#!/bin/bash
+if clang-format --version | grep -q 'version 11\.'; then
+ CLANG_FORMAT_EXECUTABLE="clang-format"
+else
+ CLANG_FORMAT_EXECUTABLE="clang-format-11"
+fi
+
+if ! command -v $CLANG_FORMAT_EXECUTABLE &> /dev/null
+then
+ echo $CLANG_FORMAT_EXECUTABLE does not exist, make sure to install it
+ exit 1
+fi
+
+for FILE in $(git diff --cached --name-only)
+do
+ if [[ "$FILE" =~ src/[A-Za-z0-9\ \-]+*\.(c|h|cpp|cc)$ ]]; then
+ echo Autoformatting $FILE with $CLANG_FORMAT_EXECUTABLE
+ $CLANG_FORMAT_EXECUTABLE -style=file -i -- $FILE
+ git add -- $FILE
+ elif [[ "$FILE" =~ src/(components|displayapp|drivers|heartratetask|logging|systemtask)/.*\.(c|h|cpp|cc)$ ]]; then
+ echo Autoformatting $FILE with $CLANG_FORMAT_EXECUTABLE
+ $CLANG_FORMAT_EXECUTABLE -style=file -i -- $FILE
+ git add -- $FILE
+ fi
+done