Probe for preadv/pwritev in a more macOS-friendly way.

Tom Lane <tgl@sss.pgh.pa.us>

Commit: f014b1b9bb8eda4e82c1805969dbae2b07b7d54d
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date: 2021-07-12T23:17:35Z
Releases: 15.0
Probe for preadv/pwritev in a more macOS-friendly way.

Apple's mechanism for dealing with functions that are available
in only some OS versions confuses AC_CHECK_FUNCS, and therefore
AC_REPLACE_FUNCS.  We can use AC_CHECK_DECLS instead, so long as
we enable -Werror=unguarded-availability-new.  This allows people
compiling for macOS to control whether or not preadv/pwritev are
used by setting MACOSX_DEPLOYMENT_TARGET, rather than supplying
a back-rev SDK.  (Of course, the latter still works, too.)

James Hilliard

Discussion: https://postgr.es/m/20210122193230.25295-1-james.hilliard1@gmail.com

Files

PathChange+/−
configure modified +140 −26
configure.ac modified +9 −2
src/include/pg_config.h.in modified +8 −6
src/include/port/pg_iovec.h modified +2 −2
src/tools/msvc/Solution.pm modified +2 −2

Discussion