[Libreoffice-commits] .: postgresql/makefile.mk postgresql/postgresql-9.1.1.patch

Fridrich Strba fridrich at kemper.freedesktop.org
Mon Dec 12 03:46:04 PST 2011


 postgresql/makefile.mk            |    8 
 postgresql/postgresql-9.1.1.patch |  383 +++++++++++++++++++++++++++++++++++++-
 2 files changed, 388 insertions(+), 3 deletions(-)

New commits:
commit e96eb62002d6bd745f5615bf180c3586f247cdd1
Author: Fridrich Å trba <fridrich.strba at bluewin.ch>
Date:   Mon Dec 12 12:45:37 2011 +0100

    Allow the internal libpq to use both openldap and mozldap

diff --git a/postgresql/makefile.mk b/postgresql/makefile.mk
index 0628d71..3f3bd82 100644
--- a/postgresql/makefile.mk
+++ b/postgresql/makefile.mk
@@ -52,15 +52,19 @@ CONFIGURE_DIR=.
 BUILD_DIR=src
 
 CONFIGURE_ACTION =
-BUILD_ACTION = nmake -f win32.mak USE_SSL=1
+BUILD_ACTION = nmake -f win32.mak USE_SSL=1 USE_LDAP=1 USE_MOZLDAL=1
 .ELSE
 CONFIGURE_DIR=.
 BUILD_DIR=src/interfaces/libpq
 
 CONFIGURE_ACTION = ./configure --without-readline --disable-shared --with-openssl
-.IF "$(WITH_LDAP)" == "YES" && "$(WITH_OPENLDAP)" == "YES"
+.IF "$(WITH_LDAP)" == "YES"
 CONFIGURE_ACTION += --with-ldap
 .ENDIF
+.IF "$(WITH_OPENLDAP)" != "YES"
+CONFIGURE_ACTION += --with-mozldap
+.ELSE
+.ENDIF
 BUILD_ACTION = make -j$(GMAKE_MODULE_PARALLELISM) all-static-lib
 .ENDIF
 
diff --git a/postgresql/postgresql-9.1.1.patch b/postgresql/postgresql-9.1.1.patch
index 5d4c29d..1037ef9 100644
--- a/postgresql/postgresql-9.1.1.patch
+++ b/postgresql/postgresql-9.1.1.patch
@@ -1,3 +1,380 @@
+--- misc/postgresql-9.1.1/src/backend/libpq/auth.c	2011-09-22 23:57:57.000000000 +0200
++++ misc/build/postgresql-9.1.1/src/backend/libpq/auth.c	2011-12-12 12:35:10.944058180 +0100
+@@ -93,22 +93,11 @@
+  *----------------------------------------------------------------
+  */
+ #ifdef USE_LDAP
+-#ifndef WIN32
+-/* We use a deprecated function to keep the codepath the same as win32. */
+ #define LDAP_DEPRECATED 1
+-#include <ldap.h>
++#ifdef USE_MOZLDAP
++#include <mozilla/ldap/ldap.h>
+ #else
+-#include <winldap.h>
+-
+-/* Correct header from the Platform SDK */
+-typedef
+-ULONG		(*__ldap_start_tls_sA) (
+-												IN PLDAP ExternalHandle,
+-												OUT PULONG ServerReturnValue,
+-												OUT LDAPMessage **result,
+-										   IN PLDAPControlA * ServerControls,
+-											IN PLDAPControlA * ClientControls
+-);
++#include <ldap.h>
+ #endif
+ 
+ static int	CheckLDAPAuth(Port *port);
+--- misc/postgresql-9.1.1/src/interfaces/libpq/fe-connect.c	2011-09-22 23:57:57.000000000 +0200
++++ misc/build/postgresql-9.1.1/src/interfaces/libpq/fe-connect.c	2011-12-12 12:36:14.305233929 +0100
+@@ -60,14 +60,13 @@
+ #endif
+ 
+ #ifdef USE_LDAP
+-#ifdef WIN32
+-#include <winldap.h>
++#ifdef USE_MOZLDAP
++#include <mozilla/ldap/ldap.h>
+ #else
+-/* OpenLDAP deprecates RFC 1823, but we want standard conformance */
+ #define LDAP_DEPRECATED 1
+ #include <ldap.h>
+-typedef struct timeval LDAP_TIMEVAL;
+ #endif
++typedef struct timeval LDAP_TIMEVAL;
+ static int ldapServiceLookup(const char *purl, PQconninfoOption *options,
+ 				  PQExpBuffer errorMessage);
+ #endif
+--- misc/postgresql-9.1.1/configure	2011-09-22 23:57:57.000000000 +0200
++++ misc/build/postgresql-9.1.1/configure	2011-12-12 12:26:58.368351739 +0100
+@@ -718,6 +718,7 @@
+ with_selinux
+ with_openssl
+ with_bonjour
++with_mozldap
+ with_ldap
+ with_pam
+ krb_srvtab
+@@ -836,6 +837,7 @@
+ with_krb_srvnam
+ with_pam
+ with_ldap
++with_mozldap
+ with_bonjour
+ with_openssl
+ with_selinux
+@@ -1533,6 +1535,7 @@
+                           [postgres]
+   --with-pam              build with PAM support
+   --with-ldap             build with LDAP support
++  --with-mozldap          build with Mozilla LDAP support
+   --with-bonjour          build with Bonjour support
+   --with-openssl          build with OpenSSL support
+   --with-selinux          build with SELinux support
+@@ -5432,6 +5435,42 @@
+ $as_echo "$with_ldap" >&6; }
+ 
+ 
++{ $as_echo "$as_me:$LINENO: checking whether to use Mozilla LDAP implementation" >&5
++$as_echo_n "checking whether to use Mozilla LDAP implementation... " >&6; }
++
++
++
++# Check whether --with-mozldap was given.
++if test "${with_mozldap+set}" = set; then
++  withval=$with_mozldap;
++  case $withval in
++    yes)
++
++cat >>confdefs.h <<\_ACEOF
++#define USE_MOZLDAP 1
++_ACEOF
++
++      ;;
++    no)
++      :
++      ;;
++    *)
++      { { $as_echo "$as_me:$LINENO: error: no argument expected for --with-mozldap option" >&5
++$as_echo "$as_me: error: no argument expected for --with-mozldap option" >&2;}
++   { (exit 1); exit 1; }; }
++      ;;
++  esac
++
++else
++  with_mozldap=no
++
++fi
++
++
++{ $as_echo "$as_me:$LINENO: result: $with_mozldap" >&5
++$as_echo "$with_mozldap" >&6; }
++
++
+ 
+ #
+ # Bonjour
+@@ -13584,7 +13623,7 @@
+ fi
+ 
+ if test "$with_ldap" = yes ; then
+-  if test "$PORTNAME" != "win32"; then
++  if test "$with_mozldap" != "yes"; then
+ 
+ for ac_header in ldap.h
+ do
+@@ -13742,24 +13781,30 @@
+ 
+   else
+ 
+-for ac_header in winldap.h
++for ac_header in mozilla/ldap/ldap.h
+ do
+ as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+-{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
++if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
++  { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
+ $as_echo_n "checking for $ac_header... " >&6; }
+ if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+   $as_echo_n "(cached) " >&6
++fi
++ac_res=`eval 'as_val=${'$as_ac_Header'}
++		 $as_echo "$as_val"'`
++	       { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
++$as_echo "$ac_res" >&6; }
+ else
+-  cat >conftest.$ac_ext <<_ACEOF
++  # Is the header compilable?
++{ $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5
++$as_echo_n "checking $ac_header usability... " >&6; }
++cat >conftest.$ac_ext <<_ACEOF
+ /* confdefs.h.  */
+ _ACEOF
+ cat confdefs.h >>conftest.$ac_ext
+ cat >>conftest.$ac_ext <<_ACEOF
+ /* end confdefs.h.  */
+ $ac_includes_default
+-#include <windows.h>
+-
+-
+ #include <$ac_header>
+ _ACEOF
+ rm -f conftest.$ac_objext
+@@ -13780,20 +13825,101 @@
+ 	 test -z "$ac_c_werror_flag" ||
+ 	 test ! -s conftest.err
+        } && test -s conftest.$ac_objext; then
+-  eval "$as_ac_Header=yes"
++  ac_header_compiler=yes
+ else
+   $as_echo "$as_me: failed program was:" >&5
+ sed 's/^/| /' conftest.$ac_ext >&5
+ 
+-	eval "$as_ac_Header=no"
++	ac_header_compiler=no
+ fi
+ 
+ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
++{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
++$as_echo "$ac_header_compiler" >&6; }
++
++# Is the header present?
++{ $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5
++$as_echo_n "checking $ac_header presence... " >&6; }
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++#include <$ac_header>
++_ACEOF
++if { (ac_try="$ac_cpp conftest.$ac_ext"
++case "(($ac_try" in
++  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
++  *) ac_try_echo=$ac_try;;
++esac
++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
++$as_echo "$ac_try_echo") >&5
++  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } >/dev/null && {
++	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
++	 test ! -s conftest.err
++       }; then
++  ac_header_preproc=yes
++else
++  $as_echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++  ac_header_preproc=no
++fi
++
++rm -f conftest.err conftest.$ac_ext
++{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
++$as_echo "$ac_header_preproc" >&6; }
++
++# So?  What about this header?
++case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
++  yes:no: )
++    { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
++$as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
++    { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
++$as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
++    ac_header_preproc=yes
++    ;;
++  no:yes:* )
++    { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
++$as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
++    { $as_echo "$as_me:$LINENO: WARNING: $ac_header:     check for missing prerequisite headers?" >&5
++$as_echo "$as_me: WARNING: $ac_header:     check for missing prerequisite headers?" >&2;}
++    { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
++$as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
++    { $as_echo "$as_me:$LINENO: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&5
++$as_echo "$as_me: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&2;}
++    { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
++$as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
++    { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
++$as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
++    ( cat <<\_ASBOX
++## ---------------------------------------- ##
++## Report this to pgsql-bugs at postgresql.org ##
++## ---------------------------------------- ##
++_ASBOX
++     ) | sed "s/^/$as_me: WARNING:     /" >&2
++    ;;
++esac
++{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
++$as_echo_n "checking for $ac_header... " >&6; }
++if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
++  $as_echo_n "(cached) " >&6
++else
++  eval "$as_ac_Header=\$ac_header_preproc"
+ fi
+ ac_res=`eval 'as_val=${'$as_ac_Header'}
+ 		 $as_echo "$as_val"'`
+ 	       { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+ $as_echo "$ac_res" >&6; }
++
++fi
+ as_val=`eval 'as_val=${'$as_ac_Header'}
+ 		 $as_echo "$as_val"'`
+    if test "x$as_val" = x""yes; then
+@@ -13802,8 +13928,8 @@
+ _ACEOF
+ 
+ else
+-  { { $as_echo "$as_me:$LINENO: error: header file <winldap.h> is required for LDAP" >&5
+-$as_echo "$as_me: error: header file <winldap.h> is required for LDAP" >&2;}
++  { { $as_echo "$as_me:$LINENO: error: header file <mozilla/ldap/ldap.h> is required for LDAP" >&5
++$as_echo "$as_me: error: header file <mozilla/ldap/ldap.h> is required for LDAP" >&2;}
+    { (exit 1); exit 1; }; }
+ fi
+ 
+@@ -23348,7 +23474,7 @@
+ # We can test for libldap_r only after we know PTHREAD_LIBS
+ if test "$with_ldap" = yes ; then
+   _LIBS="$LIBS"
+-  if test "$PORTNAME" != "win32"; then
++  if test "$with_mozldap" != "yes"; then
+ 
+ { $as_echo "$as_me:$LINENO: checking for ldap_bind in -lldap" >&5
+ $as_echo_n "checking for ldap_bind in -lldap... " >&6; }
+@@ -23515,87 +23641,8 @@
+       LDAP_LIBS_FE="-lldap $EXTRA_LDAP_LIBS"
+     fi
+   else
+-
+-{ $as_echo "$as_me:$LINENO: checking for ldap_bind in -lwldap32" >&5
+-$as_echo_n "checking for ldap_bind in -lwldap32... " >&6; }
+-if test "${ac_cv_lib_wldap32_ldap_bind+set}" = set; then
+-  $as_echo_n "(cached) " >&6
+-else
+-  ac_check_lib_save_LIBS=$LIBS
+-LIBS="-lwldap32  $LIBS"
+-cat >conftest.$ac_ext <<_ACEOF
+-/* confdefs.h.  */
+-_ACEOF
+-cat confdefs.h >>conftest.$ac_ext
+-cat >>conftest.$ac_ext <<_ACEOF
+-/* end confdefs.h.  */
+-
+-/* Override any GCC internal prototype to avoid an error.
+-   Use char because int might match the return type of a GCC
+-   builtin and then its argument prototype would still apply.  */
+-#ifdef __cplusplus
+-extern "C"
+-#endif
+-char ldap_bind ();
+-int
+-main ()
+-{
+-return ldap_bind ();
+-  ;
+-  return 0;
+-}
+-_ACEOF
+-rm -f conftest.$ac_objext conftest$ac_exeext
+-if { (ac_try="$ac_link"
+-case "(($ac_try" in
+-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+-  *) ac_try_echo=$ac_try;;
+-esac
+-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+-$as_echo "$ac_try_echo") >&5
+-  (eval "$ac_link") 2>conftest.er1
+-  ac_status=$?
+-  grep -v '^ *+' conftest.er1 >conftest.err
+-  rm -f conftest.er1
+-  cat conftest.err >&5
+-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+-  (exit $ac_status); } && {
+-	 test -z "$ac_c_werror_flag" ||
+-	 test ! -s conftest.err
+-       } && test -s conftest$ac_exeext && {
+-	 test "$cross_compiling" = yes ||
+-	 $as_test_x conftest$ac_exeext
+-       }; then
+-  ac_cv_lib_wldap32_ldap_bind=yes
+-else
+-  $as_echo "$as_me: failed program was:" >&5
+-sed 's/^/| /' conftest.$ac_ext >&5
+-
+-	ac_cv_lib_wldap32_ldap_bind=no
+-fi
+-
+-rm -rf conftest.dSYM
+-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+-      conftest$ac_exeext conftest.$ac_ext
+-LIBS=$ac_check_lib_save_LIBS
+-fi
+-{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_wldap32_ldap_bind" >&5
+-$as_echo "$ac_cv_lib_wldap32_ldap_bind" >&6; }
+-if test "x$ac_cv_lib_wldap32_ldap_bind" = x""yes; then
+-  cat >>confdefs.h <<_ACEOF
+-#define HAVE_LIBWLDAP32 1
+-_ACEOF
+-
+-  LIBS="-lwldap32 $LIBS"
+-
+-else
+-  { { $as_echo "$as_me:$LINENO: error: library 'wldap32' is required for LDAP" >&5
+-$as_echo "$as_me: error: library 'wldap32' is required for LDAP" >&2;}
+-   { (exit 1); exit 1; }; }
+-fi
+-
+-    LDAP_LIBS_FE="-lwldap32"
+-    LDAP_LIBS_BE="-lwldap32"
++    LDAP_LIBS_FE=
++    LDAP_LIBS_BE=
+   fi
+   LIBS="$_LIBS"
+ fi
 --- misc/postgresql-9.1.1/src/interfaces/libpq/win32.mak	2011-09-22 23:57:57.000000000 +0200
 +++ misc/build/postgresql-9.1.1/src/interfaces/libpq/win32.mak	2011-12-12 11:21:08.796898284 +0100
 @@ -11,18 +11,19 @@
@@ -65,7 +442,7 @@
   /D "FRONTEND" $(DEBUGDEF) \
   /D "WIN32" /D "_WINDOWS" /Fp"$(INTDIR)\libpq.pch" \
   /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /c  \
-@@ -189,6 +183,11 @@
+@@ -189,6 +183,15 @@
  SSL_LIBS=ssleay32.lib libeay32.lib gdi32.lib
  !ENDIF
  
@@ -74,6 +451,10 @@
 +LDAP_LIBS=wldap32.lib
 +!ENDIF
 +
++!IFDEF USE_MOZLDAP
++CPP_PROJ=$(CPP_PROJ) /D USE_MOZLDAP
++!ENDIF
++
  !IFDEF USE_KFW
  CPP_PROJ=$(CPP_PROJ) /D KRB5
  KFW_LIBS=krb5_32.lib comerr32.lib gssapi32.lib


More information about the Libreoffice-commits mailing list