Move our p{read,write}v replacements into their own files.
macOS's ranlib issued a warning about an empty pread.o file with the
previous arrangement, on systems new enough to require no replacement
functions. Let's go back to using configure's AC_REPLACE_FUNCS system
to build and include each .o in the library only if it's needed, which
requires moving the *v() functions to their own files.
Also move the _with_retry() wrapper to a more permanent home.
Reported-by: Tom Lane <tgl@sss.pgh.pa.us>
Discussion: https://postgr.es/m/1283127.1610554395%40sss.pgh.pa.us
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/0d56acfbaa799553c0c6ea350fd6e68d81025994
Modified Files
--------------
configure | 54 ++++++++++++++++++++-
configure.ac | 8 ++--
src/backend/storage/file/fd.c | 65 +++++++++++++++++++++++++
src/include/storage/fd.h | 5 ++
src/port/Makefile | 2 -
src/port/pread.c | 43 +----------------
src/port/preadv.c | 58 +++++++++++++++++++++++
src/port/pwrite.c | 107 +-----------------------------------------
src/port/pwritev.c | 58 +++++++++++++++++++++++
src/tools/msvc/Mkvcbuild.pm | 2 +-
10 files changed, 248 insertions(+), 154 deletions(-)