Re: pg_preadv() and pg_pwritev() - Mailing list pgsql-hackers

From Thomas Munro
Subject Re: pg_preadv() and pg_pwritev()
Date
Msg-id CA+hUKGKAbLqkZsFQ88z64MtYpPzZQhV59YjG3vVzWeGTzbM9+A@mail.gmail.com
Whole thread Raw
In response to Re: pg_preadv() and pg_pwritev()  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: pg_preadv() and pg_pwritev()  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
On Thu, Jan 14, 2021 at 5:13 AM Tom Lane <tgl@sss.pgh.pa.us> wrote:
> I have a different complaint, using Big Sur and Xcode 12.3:
>
> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file:
libpgport.a(pread.o)has no symbols
 
> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file:
libpgport_shlib.a(pread_shlib.o)has no symbols
 
> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file:
libpgport_srv.a(pread_srv.o)has no symbols
 
>
> Looks like we need to be more careful about not including pread.c
> in the build unless it actually has code to contribute.

I did it that way because it made it easy to test different
combinations of the replacements on computers that do actually have
pwrite and pwritev, just by tweaking pg_config.h.  Here's an attempt
to do it with AC_REPLACE_FUNCS, which avoids creating empty .o files.
It means that to test the replacements on modern systems you have to
tweak pg_config.h and also add the relevant .o files to LIBOBJS in
src/Makefile.global, but that seems OK.

Attachment

pgsql-hackers by date:

Previous
From: Alvaro Herrera
Date:
Subject: Re: A failure of standby to follow timeline switch
Next
From: Tom Lane
Date:
Subject: Re: pgbench and timestamps (bounced)