Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1goU0O-00075Z-W4 for pgsql-hackers@arkaria.postgresql.org; Tue, 29 Jan 2019 14:04:49 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.89) (envelope-from ) id 1goU0N-0003Z7-EQ for pgsql-hackers@arkaria.postgresql.org; Tue, 29 Jan 2019 14:04:47 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1goU0N-0003Z0-7A for pgsql-hackers@lists.postgresql.org; Tue, 29 Jan 2019 14:04:47 +0000 Received: from feynman.df7cb.de ([195.49.152.168]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1goU0G-00053U-2V for pgsql-hackers@postgresql.org; Tue, 29 Jan 2019 14:04:46 +0000 Received: from msg.df7cb.de (unknown [IPv6:2003:5b:203b:100:7627:eaff:fe52:8e03]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by feynman.df7cb.de (Postfix) with ESMTPSA id 43ppCV6mV9z3F1K; Tue, 29 Jan 2019 15:04:38 +0100 (CET) Date: Tue, 29 Jan 2019 15:04:38 +0100 From: Christoph Berg To: Tom Lane Cc: PostgreSQL Hackers Subject: Re: pgsql: Build src/port files as a library with -fPIC, and use that in li Message-ID: <20190129140437.GF9860@msg.df7cb.de> Mail-Followup-To: Christoph Berg , Tom Lane , PostgreSQL Hackers References: <20180928115830.GC26142@msg.df7cb.de> <19404.1538140436@sss.pgh.pa.us> <20180928132013.GE26142@msg.df7cb.de> <20671.1538142538@sss.pgh.pa.us> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20671.1538142538@sss.pgh.pa.us> User-Agent: Mutt/1.10.1 (2018-07-13) List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk 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