#!/bin/sh # # 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 src/*.cpp $FMT -i src/*.h $FMT -i src/entities/*.cpp $FMT -i src/entities/*.h $FMT -i src/utils/*.cpp $FMT -i src/utils/*.h $FMT -i src/helpers/*.cpp $FMT -i src/helpers/*.h $FMT -i src/services/*.cpp $FMT -i src/services/*.h $FMT -i src/widgets/*.cpp $FMT -i src/widgets/*.h $FMT -i src/dialogs/*.cpp $FMT -i src/dialogs/*.h $FMT -i src/api/*.cpp $FMT -i src/api/*.h $FMT -i tests/unit_tests/*.cpp $FMT -i tests/unit_tests/testcases/app/*.cpp $FMT -i tests/unit_tests/testcases/app/*.h