On Wed Jun 14, 2023 at 2:32 PM CDT, Andres Freund wrote: > Hi, > > On 2023-06-09 11:43:54 -0700, Andres Freund wrote: > > On 2023-06-02 10:13:44 -0500, Tristan Partin wrote: > > > On Fri Jun 2, 2023 at 8:47 AM CDT, Andres Freund wrote: > > > > Hi, > > > > > > > > On 2023-06-02 08:10:43 -0500, Tristan Partin wrote: > > > > > > I wonder if we instead could just make perl output the files it > > > > > > loads and > > > > > > handle dependencies automatically that way? But that's more work, > > > > > > so it's > > > > > > probably the right thing to go for the manual path for now. > > > > > > > > > > I am not familar with Perl enough (at all haha) to know if that is > > > > > possible. I don't know exactly what these Perl files do, but perhaps > > > > > it > > > > > might make sense to have some global lookup table that is setup near > > > > > the > > > > > beginning of the script. > > > > > > > > It'd be nice to have something more general - there are other perl > > > > modules we > > > > load, e.g. > > > > ./src/backend/catalog/Catalog.pm > > > > ./src/backend/utils/mb/Unicode/convutils.pm > > > > ./src/tools/PerfectHash.pm > > > > > > > > > > > > > perl_files = { > > > > > 'Catalog.pm': files('path/to/Catalog.pm'), > > > > > ... > > > > > } > > > > > > > > I think you got it, but just to make sure: I was thinking of generating > > > > a > > > > depfile from within perl. Something like what you propose doesn't quite > > > > seems > > > > like a sufficient improvement. > > > > > > Whatever I am proposing is definitely subpar to generating a depfile. So > > > if that can be done, that is the best option! > > > > I looked for a bit, but couldn't find an easy way to do so. I would still > > like > > to pursue going towards dep files for the perl scripts, even if that > > requires > > explicit support in the perl scripts, but that's a change for later. > > Took a second look - sure looks like just using values %INC should suffice? > > Ilmari, you're the perl expert, is there an issue with that? > > Tristan, any chance you're interested hacking that up for a bunch of the > scripts? Might be worth adding a common helper for, I guess? > > Something like > > for (values %INC) > { > print STDERR "$kw_def_file: $_\n"; > } > > seems to roughly do the right thing for gen_keywordlist.pl. Of course for > something real it'd need an option where to put that data, instead of printing > to stderr.
I would need to familiarize myself with perl, but since you've written probably all or almost all that needs to be written, I can probably scrape by :). I definitely have the bandwidth to make this change though pending what Ilmari says. -- Tristan Partin Neon (https://neon.tech)