29 lines
765 B
Bash
Executable File
29 lines
765 B
Bash
Executable File
#!/bin/bash
|
|
#
|
|
# A tool to run clang-format on the entire project
|
|
#
|
|
# Some inspirations were taken from https://github.com/eklitzke/clang-format-all
|
|
|
|
# Variable that will hold the name of the clang-format command
|
|
FMT=""
|
|
|
|
# Some distros just call it clang-format. Others (e.g. Ubuntu) are insistent
|
|
# that the version number be part of the command. We prefer clang-format if
|
|
# that's present, otherwise we work backwards from highest version to lowest
|
|
# version.
|
|
for clangfmt in clang-format{,-{4,3}.{9,8,7,6,5,4,3,2,1,0}}; do
|
|
if which "$clangfmt" &>/dev/null; then
|
|
FMT="$clangfmt"
|
|
break
|
|
fi
|
|
done
|
|
|
|
# Check if we found a working clang-format
|
|
if [ -z "$FMT" ]; then
|
|
echo "failed to find clang-format"
|
|
exit 1
|
|
fi
|
|
|
|
$FMT -i *.cpp
|
|
$FMT -i *.h
|