From: René Scharfe Date: Sun, 20 Jun 2021 12:53:10 GMT Subject: Re: [PATCH 3/3] hook-list.h: add a generated list of hooks, like config-list.h Message-ID: <648321ed-bda9-d7fc-73e1-7ccf48addf9c@web.de> In-Reply-To: <20210618170550.GE6312@szeder.dev> Am 18.06.21 um 19:05 schrieb SZEDER Gábor: > On Thu, Jun 17, 2021 at 12:09:36PM +0200, Ævar Arnfjörð Bjarmason wrote: >> 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 <> +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. > >> + chomp; >> + @l[$.] = $_; >> + push @h => $l[$. - 1] if /^~~~+$/s; >> + END { >> + print qq[\t"$_",\n] for sort @h; >> + } >> + ' > + cat <> + NULL, >> +}; >> +EOF >> +} >> + >> +echo >> +print_hook_list