Re: pgsql: Build src/port files as a library with -fPIC, and usethat in li - Mailing list pgsql-hackers

From Christoph Berg
Subject Re: pgsql: Build src/port files as a library with -fPIC, and usethat in li
Date
Msg-id 20190129140437.GF9860@msg.df7cb.de
Whole thread Raw
In response to Re: pgsql: Build src/port files as a library with -fPIC, and use that in li  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: pgsql: Build src/port files as a library with -fPIC, and use that in li  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
Re: Tom Lane 2018-09-28 <20671.1538142538@sss.pgh.pa.us>
> >> I proposed in
> >> https://www.postgresql.org/message-id/19581.1538077716@sss.pgh.pa.us
> >> 
> >> that we should remove pqsignal, as well as
> >> pg_utf_mblen
> >> pg_encoding_to_char
> >> pg_char_to_encoding
> >> pg_valid_server_encoding
> >> pg_valid_server_encoding_id
> >> 
> >> from libpq's exports, on the grounds that (a) nobody should be using
> >> those (they're undocumented as exports), and (b) anybody who is using
> >> them should get them from libpgport/libpgcommon instead.  Thoughts?
> 
> > I'm fine with that if we say (a) should be true, and even if it is
> > not, (b) is an easy workaround. Bumping the libpq SONAME just because
> > of this seems excessive.
> 
> Yeah, if anyone insists that this requires a soname bump, I'd probably
> look for another solution.  Making the makefiles a bit cleaner is not
> worth the churn that would cause, IMO.

It took a while to notice, but this change does break 8.2's initdb if
libpq5 from PG12 is installed:

$ /usr/lib/postgresql/8.2/bin/initdb
/usr/lib/postgresql/8.2/bin/initdb: symbol lookup error: /usr/lib/postgresql/8.2/bin/initdb: undefined symbol:
pqsignal

postgres 8.2 itself seems to work fine.

Christoph


pgsql-hackers by date:

Previous
From: Oleksii Kliukin
Date:
Subject: Re: pg_basebackup, walreceiver and wal_sender_timeout
Next
From: Tomas Vondra
Date:
Subject: Re: COPY FROM WHEN condition