From c2be931046858c901872f8610c27fab52d483fc7 Mon Sep 17 00:00:00 2001 From: Jan Vrany Date: Fri, 7 Nov 2025 19:59:32 +0000 Subject: [PATCH] pre-commit: check for whitespace errors in on all files under gdb I got a review comment [1] because I forgot to run git diff --staged --check to check commits before submitting. This commit adds a pre-commit hook to do this automatically. Approved-By: Simon Marchi [1]: https://inbox.sourceware.org/gdb-patches/c231d267-f541-4774-8005-6d433a9d6e96@simark.ca/ --- .pre-commit-config.yaml | 8 ++++++++ gdb/contrib/check-whitespace-pre-commit.sh | 19 +++++++++++++++++++ 2 files changed, 27 insertions(+) create mode 100755 gdb/contrib/check-whitespace-pre-commit.sh diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 71c898f7c1e..d26e55d33c5 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -97,6 +97,14 @@ repos: exclude: '.*/testsuite/.*' verbose: true stages: [pre-commit] + - id: check-whitespace + name: check-whitespace + language: script + entry: gdb/contrib/check-whitespace-pre-commit.sh + files: '^(gdb(support|server)?)/.*$' + pass_filenames: true + verbose: true + stages: [pre-commit] - repo: https://github.com/nmoroze/tclint rev: v0.6.1 hooks: diff --git a/gdb/contrib/check-whitespace-pre-commit.sh b/gdb/contrib/check-whitespace-pre-commit.sh new file mode 100755 index 00000000000..db45dc26e65 --- /dev/null +++ b/gdb/contrib/check-whitespace-pre-commit.sh @@ -0,0 +1,19 @@ +#!/bin/sh + +# Copyright (C) 2025 Free Software Foundation, Inc. +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +set -e + +git --no-pager diff --staged --check "$@"