Re: unused_oids script is broken with bsd sed
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Alvaro Herrera <alvherre@2ndquadrant.com>
Cc: Robert Haas <robertmhaas@gmail.com>, John Naylor <jcnaylor@gmail.com>,
Stas Kelvich <s.kelvich@postgrespro.ru>,
Andreas Karlsson <andreas@proxel.se>,
Andrew Dunstan <andrew.dunstan@2ndquadrant.com>,
PostgreSQL Hackers <pgsql-hackers@postgresql.org>,
David Fetter <david@fetter.org>
Date: 2018-05-03T20:11:25Z
Lists: pgsql-hackers
Alvaro Herrera <alvherre@2ndquadrant.com> writes: > Tom Lane wrote: >> However, RenameTempFile is also used by Gen_fmgrtab.pl, and having the >> same sort of no-touch semantics for fmgroids.h and friends would have some >> additional fallout. The makefiles would think they have to keep >> re-running Gen_fmgrtab.pl if fmgroids.h is older than the mod time on any >> input file, and that's certainly no good. We can fix that by inventing a >> stamp file for the Gen_fmgrtab.pl run, analogous to bki-stamp for the >> genbki.pl run, but that means changes in the makefiles that go a bit >> beyond the realm of triviality. > Sounds OK to me -- a stamp file is already established technique, so it > shouldn't go *too much* beyond triviality. Yeah, what I'm envisioning is to change the makefile rules around these files to look as much as possible like the ones around the BKI files, which are (we hope) already debugged. So it doesn't seem like a high risk change ... at least so far as the makefiles are concerned. > I do note that > msvc/Solution.pm runs Gen_fmgrtab.pl, but it shouldn't require any > changes anyhow. Hmm. Actually, given the IsNewer checks there, it looks like Solution.pm is basically hand-rolling makefile-like dependency checking, which means it would be fooled by no-touch updates in the same way as make is, causing rebuilds to do unnecessary work. We could live with that for awhile maybe, but ultimately Solution.pm would need to be fixed to use a stamp file like the makefile logic. I could take a stab at that, but I don't have any way to test it myself. regards, tom lane
Commits
-
Blindly try to fix MSVC build's use of genbki.pl and Gen_fmgrtab.pl.
- bad51a49a4c0 11.0 landed
-
Avoid overwriting unchanged output files in genbki.pl and Gen_fmgrtab.pl.
- 1f1cd9b5ddc6 11.0 landed
-
Rearrange makefile rules for running Gen_fmgrtab.pl.
- 9bf28f96c7eb 11.0 landed
-
Avoid parsing catalog data twice during BKI file construction.
- a0854f10722b 11.0 landed
-
Fix duplicate_oids and unused_oids so user needn't cd to catalog dir.
- dd4cc9d7069c 11.0 landed
-
Convert unused_oids and duplicate_oids to use Catalog.pm infrastructure.
- 5602265f770f 11.0 landed
-
Make Catalog.pm's representation of toast and index decls more abstract.
- 1eb3a09e93d2 11.0 landed