pgsql: configure: don't probe for libldap_r if libldap is 2.5 or newer.

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: configure: don't probe for libldap_r if libldap is 2.5 or newer.
Date: 2022-05-10 22:42:28
Message-ID: E1noYYm-0004TM-5n@gemulon.postgresql.org
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-committers

configure: don't probe for libldap_r if libldap is 2.5 or newer.

In OpenLDAP 2.5 and later, libldap itself is always thread-safe and
there's never a libldap_r. Our existing coding dealt with that
by assuming it wouldn't find libldap_r if libldap is thread-safe.
But that rule fails to cope if there are multiple OpenLDAP versions
visible, as is likely to be the case on macOS in particular. We'd
end up using shiny new libldap in the backend and a hoary libldap_r
in libpq.

Instead, once we've found libldap, check if it's >= 2.5 (by
probing for a function introduced then) and don't bother looking
for libldap_r if so. While one can imagine library setups that
this'd still give the wrong answer for, they seem unlikely to
occur in practice.

Per report from Peter Eisentraut. Back-patch to all supported branches.

Discussion: https://postgr.es/m/fedacd7c-2a38-25c9-e7ff-dea549d0e979@enterprisedb.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/aff45c879e018d18951a9bc4cd8e2a395ee52c43

Modified Files
--------------
configure | 13 ++++++++++++-
configure.ac | 9 ++++++++-
2 files changed, 20 insertions(+), 2 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message David Rowley 2022-05-10 23:40:04 pgsql: Fix some incorrect preprocessor tests in tuplesort specializatio
Previous Message noreply 2022-05-10 22:03:00 pgsql: Tag refs/tags/REL_14_3 was created