serenity/Meta/lint-gml-format.sh
kleines Filmröllchen 6ee597369d Meta+Userland: Run the GML formatter on CI and pre-commit
Now that the GML formatter is both perserving comments and also mostly
agrees to the existing GML style, it can be used to auto-format all the
GML files in the system. This commit does not only contain the scripts
for running the formatting on CI and the pre-commit hook, but also
initially formats all the existing GML files so that the hook is
successfull.
2022-02-07 18:39:50 +01:00

21 lines
702 B
Bash
Executable file

#!/usr/bin/env bash
set -e
script_path=$(cd -P -- "$(dirname -- "$0")" && pwd -P)
cd "${script_path}/.." || exit 1
if [ -z "${GML_FORMAT:-}" ] ; then
if ! [ -d Build/lagom/ ] ; then
echo "Directory Build/lagom/ does not exist. Skipping GML formatting."
exit 0
fi
if ! [ -r Build/lagom/gml-format ] ; then
echo "Lagom executable gml-format was not built. Skipping GML formatting."
echo "To enable this check, you may need to run './Meta/serenity.sh build lagom' first."
exit 0
fi
GML_FORMAT="Build/lagom/gml-format"
fi
find AK Base Documentation Kernel Meta Ports Tests Userland -type f -name '*.gml' -print0 | xargs -0 "${GML_FORMAT}" -i