From: D. Ben Knoble Date: Sat, 21 Feb 2026 13:58:10 GMT Subject: Re: [PATCH v5] build: regenerate config-list.h when Documentation changes Message-ID: In-Reply-To: On Thu, Feb 19, 2026 at 8:57 AM Patrick Steinhardt wrote: > > 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. > > +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!