Kevin Burke <kevin@meter.com> writes:
> Aha, never mind... I am using the Rust "coreutils" and this appears to be
> an incompatibility between the GNU "cp" tool and the Rust cp tool. While
> concerning I don't think that this is Postgres's fault.
It looks more like gmake having dropped the ball somewhere along the line
--- probes.h is a built file, plus it's symlinked in various places.
We know that Apple's /usr/bin/make works, but maybe you're using something
different? Also, it could matter whether this is a VPATH build or not.
FWIW, this is what I see immediately after a clean build on my Big Sur
laptop (non-VPATH):
$ find . -name probes.h | xargs ls -ld
-rw-r--r-- 1 tgl admin 7568 Sep 3 09:16 ./src/backend/utils/probes.h
lrwxr-xr-x 1 tgl admin 35 Sep 3 09:16 ./src/include/utils/probes.h -> ../../../src/backend/utils/probes.h
Looking at the install rule in src/include/Makefile, it
looks like it first blindly installs the symlink along with
everything else in src/include/utils, and then overwrites that
with the non-symlink copy. So I guess if you have a version
of "cp" with non-POSIX rules for what to do with symlinks,
this could indeed be "cp"'s fault ... but that would be a
cp bug, and a rather big one.
regards, tom lane