Un-break AIX build.
authorTom Lane <tgl@sss.pgh.pa.us>
Fri, 9 Jul 2021 18:15:41 +0000 (14:15 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Fri, 9 Jul 2021 18:15:41 +0000 (14:15 -0400)
In commit d0a02bdb8, I'd supposed that uniformly probing for
ldap_bind would make the intent clearer.  However, that seems
not to work on AIX, for obscure reasons (maybe it's a macro
there?).  Revert to the former behavior of probing
ldap_simple_bind for thread-safe cases and ldap_bind otherwise.

Per buildfarm member hoverfly.

Discussion: https://postgr.es/m/17083-a19190d9591946a7@postgresql.org

configure
configure.in

index 200f6f3c2582e5297796366ccb12b3da75102371..6e18e8715a1752ce213f93ffca9fa30648751a45 100755 (executable)
--- a/configure
+++ b/configure
@@ -10607,11 +10607,12 @@ if test "$with_ldap" = yes ; then
     if test "$enable_thread_safety" = yes; then
       # Use ldap_r for FE if available, else assume ldap is thread-safe.
       # If ldap_r does exist, assume without checking that ldap does too.
-      # on some platforms ldap_r fails to link without PTHREAD_LIBS
+      # On some platforms ldap_r fails to link without PTHREAD_LIBS;
+      # also, on AIX we must probe ldap_simple_bind not ldap_bind.
       LIBS=""
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ldap_bind" >&5
-$as_echo_n "checking for library containing ldap_bind... " >&6; }
-if ${ac_cv_search_ldap_bind+:} false; then :
+      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ldap_simple_bind" >&5
+$as_echo_n "checking for library containing ldap_simple_bind... " >&6; }
+if ${ac_cv_search_ldap_simple_bind+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   ac_func_search_save_LIBS=$LIBS
@@ -10624,11 +10625,11 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 #ifdef __cplusplus
 extern "C"
 #endif
-char ldap_bind ();
+char ldap_simple_bind ();
 int
 main ()
 {
-return ldap_bind ();
+return ldap_simple_bind ();
   ;
   return 0;
 }
@@ -10641,25 +10642,25 @@ for ac_lib in '' ldap_r ldap; do
     LIBS="-l$ac_lib $PTHREAD_CFLAGS $PTHREAD_LIBS $EXTRA_LDAP_LIBS $ac_func_search_save_LIBS"
   fi
   if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_search_ldap_bind=$ac_res
+  ac_cv_search_ldap_simple_bind=$ac_res
 fi
 rm -f core conftest.err conftest.$ac_objext \
     conftest$ac_exeext
-  if ${ac_cv_search_ldap_bind+:} false; then :
+  if ${ac_cv_search_ldap_simple_bind+:} false; then :
   break
 fi
 done
-if ${ac_cv_search_ldap_bind+:} false; then :
+if ${ac_cv_search_ldap_simple_bind+:} false; then :
 
 else
-  ac_cv_search_ldap_bind=no
+  ac_cv_search_ldap_simple_bind=no
 fi
 rm conftest.$ac_ext
 LIBS=$ac_func_search_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ldap_bind" >&5
-$as_echo "$ac_cv_search_ldap_bind" >&6; }
-ac_res=$ac_cv_search_ldap_bind
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ldap_simple_bind" >&5
+$as_echo "$ac_cv_search_ldap_simple_bind" >&6; }
+ac_res=$ac_cv_search_ldap_simple_bind
 if test "$ac_res" != no; then :
   test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
 
index 0f2ee29f64c7c53b63ceba5442f798cd9456c462..17a037f31ae807448f51bcb41e02755c99c6addf 100644 (file)
@@ -1189,9 +1189,10 @@ if test "$with_ldap" = yes ; then
     if test "$enable_thread_safety" = yes; then
       # Use ldap_r for FE if available, else assume ldap is thread-safe.
       # If ldap_r does exist, assume without checking that ldap does too.
-      # on some platforms ldap_r fails to link without PTHREAD_LIBS
+      # On some platforms ldap_r fails to link without PTHREAD_LIBS;
+      # also, on AIX we must probe ldap_simple_bind not ldap_bind.
       LIBS=""
-      AC_SEARCH_LIBS(ldap_bind, [ldap_r ldap], [],
+      AC_SEARCH_LIBS(ldap_simple_bind, [ldap_r ldap], [],
                      [AC_MSG_ERROR([library 'ldap' is required for LDAP])],
                      [$PTHREAD_CFLAGS $PTHREAD_LIBS $EXTRA_LDAP_LIBS])
       LDAP_LIBS_FE="$LIBS $EXTRA_LDAP_LIBS"