Re: preserve timestamps when installing headers
Heikki Linnakangas <hlinnaka@iki.fi>
From: Heikki Linnakangas <hlinnaka@iki.fi>
To: Tom Lane <tgl@sss.pgh.pa.us>,
Peter Eisentraut <peter.eisentraut@enterprisedb.com>
Cc: Michael Paquier <michael@paquier.xyz>,
Alexander Kuzmenkov <akuzmenkov@timescale.com>, pgsql-hackers@postgresql.org
Date: 2022-09-09T19:23:57Z
Lists: pgsql-hackers
Attachments
- 0001-Use-normal-install-program-to-install-server-headers.patch (text/x-patch) patch 0001
On 11/01/2022 00:03, Tom Lane wrote: > Peter Eisentraut <peter.eisentraut@enterprisedb.com> writes: >> I don't think preserving timestamps should be the default behavior, but >> I would support organizing things so that additional options can be >> passed to "install" to make it do whatever the user prefers. But that >> won't work if some installations don't go through install. +1. We just bumped into this with Neon, where we have a build script that generates Rust bindings from the PostgreSQL header files. The build script runs "make install", and because that changes the mtime even if there were no changes to the headers, the bindings are also regenerated every time. > So I fear we're optimizing for a case that stopped being mainstream > a decade or more back. I could get behind switching the code back > to using $(INSTALL) for this, and then offering some way to inject > user-selected switches into the $(INSTALL) invocations. That > wouldn't need much more than another gmake macro. (Does there > need to be a way to inject such switches only into header > installations, or is it OK to do it across the board?) Here's a patch to switch back to $(INSTALL). With that, you can do: ./configure INSTALL="/usr/bin/install -C" > [ wanders away wondering how this'd affect the meson conversion > project ] If anything, I guess this will help, by making the Makefile a bit less special. - Heikki
Commits
-
Use normal install program to install server headers.
- c0a1d7621b0a 16.0 landed