Re: [PATCH 3/3] hook-list.h: add a generated list of hooks, like config-list.h
- From
SZEDER Gábor <szeder.dev@gmail.com>
- Date
- Jun 18, 2021, 17:05 UTC
- Message-ID
- <20210618170550.GE6312@szeder.dev>
- In-Reply-To
- <patch-3.3-f343fc7ae6-20210617T100239Z-avarab@gmail.com>
On Thu, Jun 17, 2021 at 12:09:36PM +0200, Ævar Arnfjörð Bjarmason wrote:
Show 15 quoted lines
> diff --git a/generate-hooklist.sh b/generate-hooklist.sh
> new file mode 100755
> index 0000000000..5a3f7f849c
> --- /dev/null
> +++ b/generate-hooklist.sh
> @@ -0,0 +1,24 @@
> +#!/bin/sh
> +
> +echo "/* Automatically generated by generate-hooklist.sh */"
> +
> +print_hook_list () {
> + cat <<EOF
> +static const char *hook_name_list[] = {
> +EOF
> + perl -ne 'Why Perl?
At the moment I can run 'make' and get a functioning git even when Perl is not installed. With this patch that wouldn't work anymore.
Both 'generate-cmdlist.sh' and 'generate-configlist.sh' can process the documentation into a header file with a long list in it without resorting to Perl; I'm sure that hooks could be processed without Perl as well.
Show 15 quoted lines
> + chomp;
> + @l[$.] = $_;
> + push @h => $l[$. - 1] if /^~~~+$/s;
> + END {
> + print qq[\t"$_",\n] for sort @h;
> + }
> + ' <Documentation/githooks.txt
> + cat <<EOF
> + NULL,
> +};
> +EOF
> +}
> +
> +echo
> +print_hook_list