Re: [PATCH v5] build: regenerate config-list.h when Documentation changes
- From
D. Ben Knoble <ben.knoble+github@gmail.com>
- Date
- Feb 21, 2026, 13:58 UTC
- Message-ID
- <CALnO6CB0db28NCeoq7zJU-BF=ruoTsD9_f48rgEuweumoT7--w@mail.gmail.com>
- In-Reply-To
- <aZcWq9SapNnRAXti@pks.im>
On Thu, Feb 19, 2026 at 8:57 AM Patrick Steinhardt <ps@pks.im> wrote:
Show 15 quoted lines
>
> On Wed, Feb 18, 2026 at 09:37:59AM -0500, D. Ben Knoble wrote:
> > diff --git a/generate-configlist.sh b/generate-configlist.sh
> > index 75c39ade20..39ac8845ab 100755
> > --- a/generate-configlist.sh
> > +++ b/generate-configlist.sh
> > @@ -36,3 +37,11 @@ print_config_list () {
> > echo
> > print_config_list
> > } >"$OUTPUT"
> > +
> > +if test -n "$DEPFILE"
>
> We could arguably drop conditional now that both the Makefile and Meson
> pass that argument, but I don't mind it much.I'm going to reroll a commit message, so I could drop this. OTOH, I think we've got a working configuration, and maybe someone runs this script occasionally to generate the list without wanting the deps. Idk.
Show 39 quoted lines
> > +then > > + QUOTED_OUTPUT="$(printf '%s\n' "$OUTPUT" | sed 's,[&/\],\\&,g')" > > + printf '%s\n' "$SOURCE_DIR"/Documentation/*config.adoc \ > > + "$SOURCE_DIR"/Documentation/config/*.adoc | > > + sed -e 's/[# ]/\\&/g' -e "s/^/$QUOTED_OUTPUT: /" >"$DEPFILE" > > +fi > > Okay, so we first quote the target output file once, and then we quote > the sources with a single call to sed(1), too. To not perform quoting > of the target output file twice we don't include it in the printf call, > but instead prepend it to each line. > > Looks reasonable to me, and we spawn at most two sed(1) processes. Nice. > > > diff --git a/meson.build b/meson.build > > index 762e2d0fc0..74b459b004 100644 > > --- a/meson.build > > +++ b/meson.build > > @@ -720,11 +720,14 @@ endif > > > > builtin_sources += custom_target( > > output: 'config-list.h', > > + depfile: 'config-list.h.d', > > + depend_files: [ 'generate-configlist.sh' ], > > command: [ > > shell, > > - meson.current_source_dir() + '/generate-configlist.sh', > > + meson.current_source_dir() / 'generate-configlist.sh', > > meson.current_source_dir(), > > '@OUTPUT@', > > + '@DEPFILE@', > > ], > > env: script_environment, > > ) > > > > Diff-intervalle contre v4 : > > 1: e2f4e1f9ba < -: ---------- completion: add stash import, export > > The range-diff is a bit broken, but that doesn't really matter much.
Gr. I must have tweaked something at the last second and missed this. Bummer.
> Overall this patch looks good to me, thanks! > > Patrick
Thanks for the help and reviews!