diff options
author | Daniel Agar <daniel@agar.ca> | 2015-01-05 23:16:30 -0500 |
---|---|---|
committer | Daniel Agar <daniel@agar.ca> | 2015-03-02 12:48:19 -0500 |
commit | b1dcb10f25862d7d833d91518a007b618236ad64 (patch) | |
tree | 267ece5eabff3b7ec7b7c77455259dab3a94a149 | |
parent | 0cd5fa2d1d6f388569ccb290cc895459430d7e75 (diff) | |
download | px4-firmware-b1dcb10f25862d7d833d91518a007b618236ad64.tar.gz px4-firmware-b1dcb10f25862d7d833d91518a007b618236ad64.tar.bz2 px4-firmware-b1dcb10f25862d7d833d91518a007b618236ad64.zip |
add make check_format to check astyle code formatting
-rw-r--r-- | .gitignore | 2 | ||||
-rw-r--r-- | Makefile | 4 | ||||
-rwxr-xr-x | Tools/check_code_style.sh | 28 | ||||
-rwxr-xr-x | Tools/fix_code_style.sh | 1 |
4 files changed, 35 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore index 611325444..0e553fa36 100644 --- a/.gitignore +++ b/.gitignore @@ -46,3 +46,5 @@ Firmware.zip unittests/build *.generated.h .vagrant +*.pretty + @@ -262,6 +262,10 @@ testbuild: tests: generateuorbtopicheaders $(Q) (mkdir -p $(PX4_BASE)/unittests/build && cd $(PX4_BASE)/unittests/build && cmake .. && $(MAKE) unittests) +.PHONY: format check_format +check_format: + $(Q) (./Tools/check_code_style.sh | sort -n) + # # Cleanup targets. 'clean' should remove all built products and force # a complete re-compilation, 'distclean' should remove everything diff --git a/Tools/check_code_style.sh b/Tools/check_code_style.sh new file mode 100755 index 000000000..491fbb0ce --- /dev/null +++ b/Tools/check_code_style.sh @@ -0,0 +1,28 @@ +#!/usr/bin/env bash +set -eu +failed=0 +for fn in $(find . -path './src/lib/uavcan' -prune -o \ + -path './NuttX' -prune -o \ + -path './Build' -prune -o \ + -path './mavlink' -prune -o \ + -path './unittests/gtest' -prune -o \ + -name '*.c' -o -name '*.cpp' -o -name '*.hpp' -o -name '*.h' -type f); do + if [ -f "$fn" ]; + then + ./Tools/fix_code_style.sh --quiet < $fn > $fn.pretty + diffsize=$(diff -y --suppress-common-lines $fn $fn.pretty | wc -l) + rm -f $fn.pretty + if [ $diffsize -ne 0 ]; then + failed=1 + echo $diffsize $fn + fi + fi +done + +if [ $failed -eq 0 ]; then + echo "Format checks passed" + exit 0 +else + echo "Format checks failed; please run ./Tools/fix_code_style.sh on each file" + exit 1 +fi diff --git a/Tools/fix_code_style.sh b/Tools/fix_code_style.sh index 5995d428e..e73a5a8af 100755 --- a/Tools/fix_code_style.sh +++ b/Tools/fix_code_style.sh @@ -18,4 +18,5 @@ astyle \ --exclude=EASTL \ --add-brackets \ --max-code-length=120 \ + --preserve-date \ $* |