diff --git a/scripts/cmake-format.sh b/scripts/cmake-format.sh index 687a77047..eec901b7e 100755 --- a/scripts/cmake-format.sh +++ b/scripts/cmake-format.sh @@ -5,11 +5,12 @@ SCRIPT_PATH=$(realpath "$SCRIPT_PATH") SRC_PATH="${SCRIPT_PATH}/.." FORMAT_ARG="--check" +REST_ARGS=$@ if [ $# -ne 0 ] then if [ "$1" = "--help" ] || [ "$1" = "-h" ]; then - echo "usage: $0" + echo "usage: $0 [options] [file, file, ...]" echo "\t--check.-c ... run format check only, no files changed (default)" echo "\t--format,-f ... format files in place" echo "\t--help,-h ... print this help" @@ -20,16 +21,21 @@ then if [ "$1" = "--check" ] || [ "$1" = "-c" ]; then FORMAT_ARG="--check" + REST_ARGS="${@:2}" fi if [ "$1" = "--format" ] || [ "$1" = "-f" ]; then FORMAT_ARG="-i" + REST_ARGS="${@:2}" fi fi -CMAKE_FILES=$(find ${SRC_PATH} -name "*.cmake" -o -name "CMakeLists.txt") -CMAKE_CI_FILES=$(find ${SRC_PATH}/ci -name "*.txt") -for FILE in $CMAKE_FILES $CMAKE_CI_FILES; +if [[ -z REST_ARGS ]]; +then + CMAKE_FILES=$(find ${SRC_PATH} -name "*.cmake" -o -name "CMakeLists.txt") + CMAKE_CI_FILES=$(find ${SRC_PATH}/ci -name "*.txt") +fi +for FILE in $CMAKE_FILES $CMAKE_CI_FILES $REST_ARGS; do echo "processing file $FILE..." cmake-format -c "$SCRIPT_PATH/cmake-format.yml" $FORMAT_ARG $FILE