diff options
Diffstat (limited to 'external')
-rw-r--r-- | external/Module_external.mk | 1 | ||||
-rw-r--r-- | external/postgresql/ExternalProject_postgresql.mk | 69 | ||||
-rw-r--r-- | external/postgresql/Makefile | 7 | ||||
-rw-r--r-- | external/postgresql/Module_postgresql.mk | 21 | ||||
-rw-r--r-- | external/postgresql/README | 3 | ||||
-rw-r--r-- | external/postgresql/UnpackedTarball_postgresql.mk | 22 | ||||
-rw-r--r-- | external/postgresql/postgresql-9.2.1-autoreconf.patch | 521 | ||||
-rw-r--r-- | external/postgresql/postgresql-9.2.1-libreoffice.patch | 113 | ||||
-rw-r--r-- | external/postgresql/postgresql-libs-leak.patch | 40 |
9 files changed, 797 insertions, 0 deletions
diff --git a/external/Module_external.mk b/external/Module_external.mk index 481f46e76d61..d7b041b02d4b 100644 --- a/external/Module_external.mk +++ b/external/Module_external.mk @@ -69,6 +69,7 @@ $(eval $(call gb_Module_add_moduledirs,external,\ $(call gb_Helper_optional,OPENSSL,openssl) \ $(call gb_Helper_optional,ORCUS,liborcus) \ $(call gb_Helper_optional,POPPLER,poppler) \ + $(call gb_Helper_optional,POSTGRESQL,postgresql) \ $(call gb_Helper_optional,VISIO,libvisio) \ $(call gb_Helper_optional,WPD,libwpd) \ $(call gb_Helper_optional,WPG,libwpg) \ diff --git a/external/postgresql/ExternalProject_postgresql.mk b/external/postgresql/ExternalProject_postgresql.mk new file mode 100644 index 000000000000..afa7ff3162b7 --- /dev/null +++ b/external/postgresql/ExternalProject_postgresql.mk @@ -0,0 +1,69 @@ +# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# + +$(eval $(call gb_ExternalProject_ExternalProject,postgresql)) + +$(eval $(call gb_ExternalProject_use_externals,postgresql,\ + openldap \ + openssl \ + zlib \ +)) + +$(eval $(call gb_ExternalProject_register_targets,postgresql,\ + build \ +)) + +ifeq ($(OS)$(COM),WNTMSC) + +$(call gb_ExternalProject_get_state_target,postgresql,build) : + $(call gb_ExternalProject_run,build,\ + MAKEFLAGS= && nmake -f win32.mak USE_SSL=1 USE_LDAP=1 \ + ,src) + +else + +postgresql_CPPFLAGS := $(ZLIB_CFLAGS) +postgresql_LDFLAGS := + +ifeq ($(DISABLE_OPENSSL),) +ifeq ($(SYSTEM_OPENSSL),NO) +postgresql_CPPFLAGS += -I$(call gb_UnpackedTarball_get_dir,openssl)/include +postgresql_LDFLAGS += -L$(call gb_UnpackedTarball_get_dir,openssl)/ +endif +endif + +ifeq ($(SYSTEM_OPENLDAP),NO) +postgresql_CPPFLAGS += -I$(call gb_UnpackedTarball_get_dir,openldap)/include +postgresql_LDFLAGS += \ + -L$(call gb_UnpackedTarball_get_dir,openldap)/libraries/libldap_r/.libs \ + -L$(call gb_UnpackedTarball_get_dir,openldap)/libraries/libldap/.libs \ + -L$(call gb_UnpackedTarball_get_dir,openldap)/libraries/liblber/.libs \ + $(if $(filter NO,$(SYSTEM_NSS)),\ + -L$(call gb_UnpackedTarball_get_dir,nss)/mozilla/dist/out/lib) \ + +endif + + +$(call gb_ExternalProject_get_state_target,postgresql,build) : + $(call gb_ExternalProject_run,build,\ + ./configure \ + --without-readline --disable-shared --with-ldap \ + $(if $(filter YES,$(CROSS_COMPILING)),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)) \ + $(if $(DISABLE_OPENSSL),,--with-openssl \ + $(if $(filter YES,$(WITH_KRB5)), --with-krb5) \ + $(if $(filter YES,$(WITH_GSSAPI)),--with-gssapi)) \ + CPPFLAGS="$(postgresql_CPPFLAGS)" \ + LDFLAGS="$(postgresql_LDFLAGS)" \ + EXTRA_LDAP_LIBS="-llber -lssl3 -lsmime3 -lnss3 -lnssutil3 -lplds4 -lplc4 -lnspr4" \ + && cd src/interfaces/libpq \ + && MAKEFLAGS= && $(MAKE) all-static-lib) + +endif + +# vim: set noet sw=4 ts=4: diff --git a/external/postgresql/Makefile b/external/postgresql/Makefile new file mode 100644 index 000000000000..e4968cf85fb6 --- /dev/null +++ b/external/postgresql/Makefile @@ -0,0 +1,7 @@ +# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- + +module_directory:=$(dir $(realpath $(firstword $(MAKEFILE_LIST)))) + +include $(module_directory)/../../solenv/gbuild/partial_build.mk + +# vim: set noet sw=4 ts=4: diff --git a/external/postgresql/Module_postgresql.mk b/external/postgresql/Module_postgresql.mk new file mode 100644 index 000000000000..80c835639717 --- /dev/null +++ b/external/postgresql/Module_postgresql.mk @@ -0,0 +1,21 @@ +# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# + +$(eval $(call gb_Module_Module,postgresql)) + +ifeq ($(SYSTEM_POSTGRESQL),NO) + +$(eval $(call gb_Module_add_targets,postgresql,\ + ExternalProject_postgresql \ + UnpackedTarball_postgresql \ +)) + +endif + +# vim: set noet sw=4 ts=4: diff --git a/external/postgresql/README b/external/postgresql/README new file mode 100644 index 000000000000..edc3d5df2781 --- /dev/null +++ b/external/postgresql/README @@ -0,0 +1,3 @@ +PostgreSQL object-relational database management system + +We use some pieces of this code for the postgresql database connector.
\ No newline at end of file diff --git a/external/postgresql/UnpackedTarball_postgresql.mk b/external/postgresql/UnpackedTarball_postgresql.mk new file mode 100644 index 000000000000..3d0fe6cf6c26 --- /dev/null +++ b/external/postgresql/UnpackedTarball_postgresql.mk @@ -0,0 +1,22 @@ +# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# + +$(eval $(call gb_UnpackedTarball_UnpackedTarball,postgresql)) + +$(eval $(call gb_UnpackedTarball_set_tarball,postgresql,$(POSTGRESQL_TARBALL),,postgresql)) + +$(eval $(call gb_UnpackedTarball_set_patchlevel,postgresql,3)) + +$(eval $(call gb_UnpackedTarball_add_patches,postgresql, \ + external/postgresql/postgresql-libs-leak.patch \ + external/postgresql/postgresql-9.2.1-autoreconf.patch \ + external/postgresql/postgresql-9.2.1-libreoffice.patch \ +)) + +# vim: set noet sw=4 ts=4: diff --git a/external/postgresql/postgresql-9.2.1-autoreconf.patch b/external/postgresql/postgresql-9.2.1-autoreconf.patch new file mode 100644 index 000000000000..9cbf84f252c8 --- /dev/null +++ b/external/postgresql/postgresql-9.2.1-autoreconf.patch @@ -0,0 +1,521 @@ +--- misc/build/postgresql-9.1.1/configure 2011-09-22 23:57:57.000000000 +0200 ++++ misc/build/postgresql-9.1.1.patched/configure 2012-02-03 11:50:07.000000000 +0100 +@@ -830,6 +830,7 @@ + with_krb_srvnam + with_pam + with_ldap ++with_mozldap + with_bonjour + with_openssl + with_selinux +@@ -1527,6 +1528,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 +@@ -5412,6 +5414,42 @@ + + + ++{ $as_echo "$as_me:$LINENO: checking whether to use Mozilla C SDK for LDAP support" >&5 ++$as_echo_n "checking whether to use Mozilla C SDK for LDAP support... " >&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; } ++ ++ + + # + # Kerberos configuration parameters +@@ -8627,11 +8665,11 @@ + *** Not using spinlocks will cause poor performance." >&2;} + fi + +-if test "$with_gssapi" = yes ; then ++if test "$with_krb5" = yes ; then + if test "$PORTNAME" != "win32"; then +- { $as_echo "$as_me:$LINENO: checking for library containing gss_init_sec_context" >&5 +-$as_echo_n "checking for library containing gss_init_sec_context... " >&6; } +-if test "${ac_cv_search_gss_init_sec_context+set}" = set; then ++ { $as_echo "$as_me:$LINENO: checking for library containing com_err" >&5 ++$as_echo_n "checking for library containing com_err... " >&6; } ++if test "${ac_cv_search_com_err+set}" = set; then + $as_echo_n "(cached) " >&6 + else + ac_func_search_save_LIBS=$LIBS +@@ -8648,16 +8686,16 @@ + #ifdef __cplusplus + extern "C" + #endif +-char gss_init_sec_context (); ++char com_err (); + int + main () + { +-return gss_init_sec_context (); ++return com_err (); + ; + return 0; + } + _ACEOF +-for ac_lib in '' gssapi_krb5 gss 'gssapi -lkrb5 -lcrypto'; do ++for ac_lib in '' com_err 'com_err -lssl -lcrypto' krb5 'krb5 -lcrypto -ldes -lasn1 -lroken'; do + if test -z "$ac_lib"; then + ac_res="none required" + else +@@ -8685,7 +8723,7 @@ + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then +- ac_cv_search_gss_init_sec_context=$ac_res ++ ac_cv_search_com_err=$ac_res + else + $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 +@@ -8696,40 +8734,33 @@ + rm -rf conftest.dSYM + rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext +- if test "${ac_cv_search_gss_init_sec_context+set}" = set; then ++ if test "${ac_cv_search_com_err+set}" = set; then + break + fi + done +-if test "${ac_cv_search_gss_init_sec_context+set}" = set; then ++if test "${ac_cv_search_com_err+set}" = set; then + : + else +- ac_cv_search_gss_init_sec_context=no ++ ac_cv_search_com_err=no + fi + rm conftest.$ac_ext + LIBS=$ac_func_search_save_LIBS + fi +-{ $as_echo "$as_me:$LINENO: result: $ac_cv_search_gss_init_sec_context" >&5 +-$as_echo "$ac_cv_search_gss_init_sec_context" >&6; } +-ac_res=$ac_cv_search_gss_init_sec_context ++{ $as_echo "$as_me:$LINENO: result: $ac_cv_search_com_err" >&5 ++$as_echo "$ac_cv_search_com_err" >&6; } ++ac_res=$ac_cv_search_com_err + if test "$ac_res" != no; then + test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" + + else +- { { $as_echo "$as_me:$LINENO: error: could not find function 'gss_init_sec_context' required for GSSAPI" >&5 +-$as_echo "$as_me: error: could not find function 'gss_init_sec_context' required for GSSAPI" >&2;} ++ { { $as_echo "$as_me:$LINENO: error: could not find function 'com_err' required for Kerberos 5" >&5 ++$as_echo "$as_me: error: could not find function 'com_err' required for Kerberos 5" >&2;} + { (exit 1); exit 1; }; } + fi + +- else +- LIBS="$LIBS -lgssapi32" +- fi +-fi +- +-if test "$with_krb5" = yes ; then +- if test "$PORTNAME" != "win32"; then +- { $as_echo "$as_me:$LINENO: checking for library containing com_err" >&5 +-$as_echo_n "checking for library containing com_err... " >&6; } +-if test "${ac_cv_search_com_err+set}" = set; then ++ { $as_echo "$as_me:$LINENO: checking for library containing krb5_sendauth" >&5 ++$as_echo_n "checking for library containing krb5_sendauth... " >&6; } ++if test "${ac_cv_search_krb5_sendauth+set}" = set; then + $as_echo_n "(cached) " >&6 + else + ac_func_search_save_LIBS=$LIBS +@@ -8746,16 +8777,16 @@ + #ifdef __cplusplus + extern "C" + #endif +-char com_err (); ++char krb5_sendauth (); + int + main () + { +-return com_err (); ++return krb5_sendauth (); + ; + return 0; + } + _ACEOF +-for ac_lib in '' krb5 'krb5 -lcrypto -ldes -lasn1 -lroken' com_err 'com_err -lssl -lcrypto'; do ++for ac_lib in '' krb5 'krb5 -lcrypto -ldes -lasn1 -lroken'; do + if test -z "$ac_lib"; then + ac_res="none required" + else +@@ -8783,7 +8814,7 @@ + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then +- ac_cv_search_com_err=$ac_res ++ ac_cv_search_krb5_sendauth=$ac_res + else + $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 +@@ -8794,33 +8825,34 @@ + rm -rf conftest.dSYM + rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext +- if test "${ac_cv_search_com_err+set}" = set; then ++ if test "${ac_cv_search_krb5_sendauth+set}" = set; then + break + fi + done +-if test "${ac_cv_search_com_err+set}" = set; then ++if test "${ac_cv_search_krb5_sendauth+set}" = set; then + : + else +- ac_cv_search_com_err=no ++ ac_cv_search_krb5_sendauth=no + fi + rm conftest.$ac_ext + LIBS=$ac_func_search_save_LIBS + fi +-{ $as_echo "$as_me:$LINENO: result: $ac_cv_search_com_err" >&5 +-$as_echo "$ac_cv_search_com_err" >&6; } +-ac_res=$ac_cv_search_com_err ++{ $as_echo "$as_me:$LINENO: result: $ac_cv_search_krb5_sendauth" >&5 ++$as_echo "$ac_cv_search_krb5_sendauth" >&6; } ++ac_res=$ac_cv_search_krb5_sendauth + if test "$ac_res" != no; then + test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" + + else +- { { $as_echo "$as_me:$LINENO: error: could not find function 'com_err' required for Kerberos 5" >&5 +-$as_echo "$as_me: error: could not find function 'com_err' required for Kerberos 5" >&2;} ++ { { $as_echo "$as_me:$LINENO: error: could not find function 'krb5_sendauth' required for Kerberos 5" >&5 ++$as_echo "$as_me: error: could not find function 'krb5_sendauth' required for Kerberos 5" >&2;} + { (exit 1); exit 1; }; } + fi + +- { $as_echo "$as_me:$LINENO: checking for library containing krb5_sendauth" >&5 +-$as_echo_n "checking for library containing krb5_sendauth... " >&6; } +-if test "${ac_cv_search_krb5_sendauth+set}" = set; then ++ else ++ { $as_echo "$as_me:$LINENO: checking for library containing com_err" >&5 ++$as_echo_n "checking for library containing com_err... " >&6; } ++if test "${ac_cv_search_com_err+set}" = set; then + $as_echo_n "(cached) " >&6 + else + ac_func_search_save_LIBS=$LIBS +@@ -8837,16 +8869,16 @@ + #ifdef __cplusplus + extern "C" + #endif +-char krb5_sendauth (); ++char com_err (); + int + main () + { +-return krb5_sendauth (); ++return com_err (); + ; + return 0; + } + _ACEOF +-for ac_lib in '' krb5 'krb5 -lcrypto -ldes -lasn1 -lroken'; do ++for ac_lib in '' 'comerr32 -lkrb5_32'; do + if test -z "$ac_lib"; then + ac_res="none required" + else +@@ -8874,7 +8906,7 @@ + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then +- ac_cv_search_krb5_sendauth=$ac_res ++ ac_cv_search_com_err=$ac_res + else + $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 +@@ -8885,34 +8917,38 @@ + rm -rf conftest.dSYM + rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext +- if test "${ac_cv_search_krb5_sendauth+set}" = set; then ++ if test "${ac_cv_search_com_err+set}" = set; then + break + fi + done +-if test "${ac_cv_search_krb5_sendauth+set}" = set; then ++if test "${ac_cv_search_com_err+set}" = set; then + : + else +- ac_cv_search_krb5_sendauth=no ++ ac_cv_search_com_err=no + fi + rm conftest.$ac_ext + LIBS=$ac_func_search_save_LIBS + fi +-{ $as_echo "$as_me:$LINENO: result: $ac_cv_search_krb5_sendauth" >&5 +-$as_echo "$ac_cv_search_krb5_sendauth" >&6; } +-ac_res=$ac_cv_search_krb5_sendauth ++{ $as_echo "$as_me:$LINENO: result: $ac_cv_search_com_err" >&5 ++$as_echo "$ac_cv_search_com_err" >&6; } ++ac_res=$ac_cv_search_com_err + if test "$ac_res" != no; then + test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" + + else +- { { $as_echo "$as_me:$LINENO: error: could not find function 'krb5_sendauth' required for Kerberos 5" >&5 +-$as_echo "$as_me: error: could not find function 'krb5_sendauth' required for Kerberos 5" >&2;} ++ { { $as_echo "$as_me:$LINENO: error: could not find function 'com_err' required for Kerberos 5" >&5 ++$as_echo "$as_me: error: could not find function 'com_err' required for Kerberos 5" >&2;} + { (exit 1); exit 1; }; } + fi + +- else +- { $as_echo "$as_me:$LINENO: checking for library containing com_err" >&5 +-$as_echo_n "checking for library containing com_err... " >&6; } +-if test "${ac_cv_search_com_err+set}" = set; then ++ fi ++fi ++ ++if test "$with_gssapi" = yes ; then ++ if test "$PORTNAME" != "win32"; then ++ { $as_echo "$as_me:$LINENO: checking for library containing gss_init_sec_context" >&5 ++$as_echo_n "checking for library containing gss_init_sec_context... " >&6; } ++if test "${ac_cv_search_gss_init_sec_context+set}" = set; then + $as_echo_n "(cached) " >&6 + else + ac_func_search_save_LIBS=$LIBS +@@ -8929,16 +8965,16 @@ + #ifdef __cplusplus + extern "C" + #endif +-char com_err (); ++char gss_init_sec_context (); + int + main () + { +-return com_err (); ++return gss_init_sec_context (); + ; + return 0; + } + _ACEOF +-for ac_lib in '' 'comerr32 -lkrb5_32'; do ++for ac_lib in '' gssapi_krb5 gss 'gssapi -lkrb5 -lcrypto'; do + if test -z "$ac_lib"; then + ac_res="none required" + else +@@ -8966,7 +9002,7 @@ + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then +- ac_cv_search_com_err=$ac_res ++ ac_cv_search_gss_init_sec_context=$ac_res + else + $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 +@@ -8977,30 +9013,32 @@ + rm -rf conftest.dSYM + rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext +- if test "${ac_cv_search_com_err+set}" = set; then ++ if test "${ac_cv_search_gss_init_sec_context+set}" = set; then + break + fi + done +-if test "${ac_cv_search_com_err+set}" = set; then ++if test "${ac_cv_search_gss_init_sec_context+set}" = set; then + : + else +- ac_cv_search_com_err=no ++ ac_cv_search_gss_init_sec_context=no + fi + rm conftest.$ac_ext + LIBS=$ac_func_search_save_LIBS + fi +-{ $as_echo "$as_me:$LINENO: result: $ac_cv_search_com_err" >&5 +-$as_echo "$ac_cv_search_com_err" >&6; } +-ac_res=$ac_cv_search_com_err ++{ $as_echo "$as_me:$LINENO: result: $ac_cv_search_gss_init_sec_context" >&5 ++$as_echo "$ac_cv_search_gss_init_sec_context" >&6; } ++ac_res=$ac_cv_search_gss_init_sec_context + if test "$ac_res" != no; then + test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" + + else +- { { $as_echo "$as_me:$LINENO: error: could not find function 'com_err' required for Kerberos 5" >&5 +-$as_echo "$as_me: error: could not find function 'com_err' required for Kerberos 5" >&2;} ++ { { $as_echo "$as_me:$LINENO: error: could not find function 'gss_init_sec_context' required for GSSAPI" >&5 ++$as_echo "$as_me: error: could not find function 'gss_init_sec_context' required for GSSAPI" >&2;} + { (exit 1); exit 1; }; } + fi + ++ else ++ LIBS="$LIBS -lgssapi32" + fi + fi + +@@ -13598,7 +13636,7 @@ + fi + + if test "$with_ldap" = yes ; then +- if test "$PORTNAME" != "win32"; then ++ if test "$PORTNAME" != "win32" || test "$with_mozldap" = "yes"; then + + for ac_header in ldap.h + do +@@ -13823,6 +13861,11 @@ + + done + ++ ++cat >>confdefs.h <<\_ACEOF ++#define USE_MICROSOFT_LDAP 1 ++_ACEOF ++ + fi + fi + +@@ -23483,7 +23526,99 @@ + # We can test for libldap_r only after we know PTHREAD_LIBS + if test "$with_ldap" = yes ; then + _LIBS="$LIBS" ++ if test "$with_mozldap" = "yes"; then + if test "$PORTNAME" != "win32"; then ++ mozlibname=ldap50 ++ else ++ mozlibname=nsldap32v50 ++ fi ++ ++as_ac_Lib=`$as_echo "ac_cv_lib_$mozlibname''_ldap_bind" | $as_tr_sh` ++{ $as_echo "$as_me:$LINENO: checking for ldap_bind in -l$mozlibname" >&5 ++$as_echo_n "checking for ldap_bind in -l$mozlibname... " >&6; } ++if { as_var=$as_ac_Lib; eval "test \"\${$as_var+set}\" = set"; }; then ++ $as_echo_n "(cached) " >&6 ++else ++ ac_check_lib_save_LIBS=$LIBS ++LIBS="-l$mozlibname $PTHREAD_CFLAGS $PTHREAD_LIBS $EXTRA_LDAP_LIBS $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 ++ eval "$as_ac_Lib=yes" ++else ++ $as_echo "$as_me: failed program was:" >&5 ++sed 's/^/| /' conftest.$ac_ext >&5 ++ ++ eval "$as_ac_Lib=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 ++ac_res=`eval 'as_val=${'$as_ac_Lib'} ++ $as_echo "$as_val"'` ++ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 ++$as_echo "$ac_res" >&6; } ++as_val=`eval 'as_val=${'$as_ac_Lib'} ++ $as_echo "$as_val"'` ++ if test "x$as_val" = x""yes; then ++ cat >>confdefs.h <<_ACEOF ++#define `$as_echo "HAVE_LIB$mozlibname" | $as_tr_cpp` 1 ++_ACEOF ++ ++ LIBS="-l$mozlibname $LIBS" ++ ++else ++ { { $as_echo "$as_me:$LINENO: error: library \"$mozlibname\" is required for Mozilla LDAP" >&5 ++$as_echo "$as_me: error: library \"$mozlibname\" is required for Mozilla LDAP" >&2;} ++ { (exit 1); exit 1; }; } ++fi ++ ++ LDAP_LIBS_FE="-l$mozlibname $EXTRA_LDAP_LIBS" ++ LDAP_LIBS_BE="-l$mozlibname $EXTRA_LDAP_LIBS" ++ elif test "$PORTNAME" != "win32"; then + + { $as_echo "$as_me:$LINENO: checking for ldap_bind in -lldap" >&5 + $as_echo_n "checking for ldap_bind in -lldap... " >&6; } +--- misc/build/postgresql-9.1.1/src/include/pg_config.h.in 2011-09-22 23:57:57.000000000 +0200 ++++ misc/build/postgresql-9.1.1.patched/src/include/pg_config.h.in 2012-02-03 11:50:07.000000000 +0100 +@@ -758,6 +758,13 @@ + (--with-libxslt) */ + #undef USE_LIBXSLT + ++/* Defined when using Microsof LDAP */ ++#undef USE_MICROSOFT_LDAP ++ ++/* Define to 1 to use the Mozilla LDAP C SDK instead of platform default ++ (OpenLDAP or Microsoft LDAP). (--with-mozldap) */ ++#undef USE_MOZLDAP ++ + /* Define to select named POSIX semaphores. */ + #undef USE_NAMED_POSIX_SEMAPHORES + + diff --git a/external/postgresql/postgresql-9.2.1-libreoffice.patch b/external/postgresql/postgresql-9.2.1-libreoffice.patch new file mode 100644 index 000000000000..87d3da716644 --- /dev/null +++ b/external/postgresql/postgresql-9.2.1-libreoffice.patch @@ -0,0 +1,113 @@ +--- misc/build/postgresql-9.1.1/src/interfaces/libpq/Makefile 2011-09-22 23:57:57.000000000 +0200 ++++ misc/build/postgresql-9.1.1.patched/src/interfaces/libpq/Makefile 2011-12-15 09:02:18.000000000 +0100 +@@ -148,3 +148,6 @@ + maintainer-clean: distclean maintainer-clean-lib + $(MAKE) -C test $@ + rm -f libpq-dist.rc ++ ++libpq-flags.mk: ++ @printf '%s\n' 'LIBPQ_DEP_LIBS+=$(SHLIB_LINK)' > '$@' +--- misc/build/postgresql-9.1.1/src/interfaces/libpq/win32.mak 2011-12-14 14:28:59.000000000 +0100 ++++ misc/build/postgresql-9.1.1.patched/src/interfaces/libpq/win32.mak 2011-12-15 09:11:37.000000000 +0100 +@@ -11,30 +11,29 @@ + + # CPU="i386" or CPU environment of nmake.exe (AMD64 or IA64) + +-!IF ("$(CPU)" == "")||("$(CPU)" == "i386") +-CPU=i386 ++!IF ("$(CPU)" == "")||("$(CPU)" == "I") ++MACHINE=i386 + !MESSAGE Building the Win32 static library... + !MESSAGE +-!ELSEIF ("$(CPU)" == "IA64")||("$(CPU)" == "AMD64") ++!ELSEIF ("$(CPU)" == "X") ++MACHINE=AMD64 + ADD_DEFINES=/D "WIN64" /Wp64 /GS + ADD_SECLIB=bufferoverflowU.lib + !MESSAGE Building the Win64 static library... + !MESSAGE + !ELSE + !MESSAGE Please check a CPU=$(CPU) ? +-!MESSAGE CPU=i386 or AMD64 or IA64 ++!MESSAGE CPU=I or X + !ERROR Make aborted. + !ENDIF + + !IFDEF DEBUG +-OPT=/Od /Zi /MDd ++OPT=/Od /Zi + LOPT=/DEBUG +-DEBUGDEF=/D _DEBUG +-OUTFILENAME=libpqd ++OUTFILENAME=libpq + !ELSE + OPT=/O2 /MD + LOPT= +-DEBUGDEF=/D NDEBUG + OUTFILENAME=libpq + !ENDIF + +@@ -54,7 +53,7 @@ + !ENDIF + + !IF "$(KFW_LIB_PATH)" == "" +-KFW_LIB_PATH=C:\kfw-2.6.5\lib\$(CPU) ++KFW_LIB_PATH=C:\kfw-2.6.5\lib\$(MACHINE) + !MESSAGE Using default Kerberos Library directory: $(KFW_LIB_PATH) + !ENDIF + +@@ -67,18 +66,11 @@ + CPP=cl.exe + RSC=rc.exe + +-!IFDEF DEBUG +-OUTDIR=.\Debug +-INTDIR=.\Debug +-CPP_OBJS=.\Debug/ +-!ELSE +-OUTDIR=.\Release +-INTDIR=.\Release +-CPP_OBJS=.\Release/ +-!ENDIF +- ++OUTDIR=. ++INTDIR=. ++CPP_OBJS=./ + +-ALL : config "$(OUTDIR)\$(OUTFILENAME).lib" "$(OUTDIR)\$(OUTFILENAME).dll" ++ALL : config "$(OUTDIR)\$(OUTFILENAME).lib" + + CLEAN : + -@erase "$(INTDIR)\getaddrinfo.obj" +@@ -178,10 +170,11 @@ + "$(OUTDIR)" : + if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)" + +-CPP_PROJ=/nologo /W3 /EHsc $(OPT) /I "..\..\include" /I "..\..\include\port\win32" /I "..\..\include\port\win32_msvc" /I "..\..\port" /I. /I "$(SSL_INC)" \ ++CPP_PROJ=/nologo /W3 /EHsc $(OPT) /I "..\..\include" /I "..\..\include\port\win32" /I "..\..\include\port\win32_msvc" /I "..\..\port" /I. $(SOLARINC) /I $(WORKDIR)/UnpackedTarball/openssl/include \ + /D "FRONTEND" $(DEBUGDEF) \ + /D "WIN32" /D "_WINDOWS" /Fp"$(INTDIR)\libpq.pch" \ + /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /c \ ++ /D "_CRT_NONSTDC_NO_DEPRECATE" \ + /D "_CRT_SECURE_NO_DEPRECATE" $(ADD_DEFINES) + + !IFDEF USE_SSL +@@ -205,7 +198,7 @@ + LINK32=link.exe + LINK32_FLAGS=kernel32.lib user32.lib advapi32.lib shfolder.lib wsock32.lib ws2_32.lib secur32.lib $(SSL_LIBS) $(KFW_LIB) $(ADD_SECLIB) \ + /nologo /subsystem:windows /dll $(LOPT) /incremental:no \ +- /pdb:"$(OUTDIR)\libpqdll.pdb" /machine:$(CPU) \ ++ /pdb:"$(OUTDIR)\libpqdll.pdb" /machine:$(MACHINE) \ + /out:"$(OUTDIR)\$(OUTFILENAME).dll"\ + /implib:"$(OUTDIR)\$(OUTFILENAME)dll.lib" \ + /libpath:"$(SSL_LIB_PATH)" /libpath:"$(KFW_LIB_PATH)" \ +@@ -222,7 +215,7 @@ + << + + "$(INTDIR)\libpq.res" : "$(INTDIR)" libpq-dist.rc +- $(RSC) $(RSC_PROJ) libpq-dist.rc ++ $(RSC) $(SOLARINC) $(RSC_PROJ) libpq-dist.rc + + + "$(OUTDIR)\$(OUTFILENAME).dll" : "$(OUTDIR)" "$(INTDIR)\libpq.res" + diff --git a/external/postgresql/postgresql-libs-leak.patch b/external/postgresql/postgresql-libs-leak.patch new file mode 100644 index 000000000000..8224137f1f97 --- /dev/null +++ b/external/postgresql/postgresql-libs-leak.patch @@ -0,0 +1,40 @@ +diff --recursive -u misc/build/postgresql-9.1.1/configure.in misc/build/postgresql-9.1.1.patched/configure.in +--- misc/build/postgresql-9.1.1/configure.in 2011-09-22 23:57:57.000000000 +0200 ++++ misc/build/postgresql-9.1.1.patched/configure.in 2012-02-03 11:42:45.000000000 +0100 +@@ -903,18 +903,9 @@ + *** Not using spinlocks will cause poor performance.]) + fi + +-if test "$with_gssapi" = yes ; then +- if test "$PORTNAME" != "win32"; then +- AC_SEARCH_LIBS(gss_init_sec_context, [gssapi_krb5 gss 'gssapi -lkrb5 -lcrypto'], [], +- [AC_MSG_ERROR([could not find function 'gss_init_sec_context' required for GSSAPI])]) +- else +- LIBS="$LIBS -lgssapi32" +- fi +-fi +- + if test "$with_krb5" = yes ; then + if test "$PORTNAME" != "win32"; then +- AC_SEARCH_LIBS(com_err, [krb5 'krb5 -lcrypto -ldes -lasn1 -lroken' com_err 'com_err -lssl -lcrypto'], [], ++ AC_SEARCH_LIBS(com_err, [com_err 'com_err -lssl -lcrypto' krb5 'krb5 -lcrypto -ldes -lasn1 -lroken'], [], + [AC_MSG_ERROR([could not find function 'com_err' required for Kerberos 5])]) + AC_SEARCH_LIBS(krb5_sendauth, [krb5 'krb5 -lcrypto -ldes -lasn1 -lroken'], [], + [AC_MSG_ERROR([could not find function 'krb5_sendauth' required for Kerberos 5])]) +@@ -924,6 +915,15 @@ + fi + fi + ++if test "$with_gssapi" = yes ; then ++ if test "$PORTNAME" != "win32"; then ++ AC_SEARCH_LIBS(gss_init_sec_context, [gssapi_krb5 gss 'gssapi -lkrb5 -lcrypto'], [], ++ [AC_MSG_ERROR([could not find function 'gss_init_sec_context' required for GSSAPI])]) ++ else ++ LIBS="$LIBS -lgssapi32" ++ fi ++fi ++ + if test "$with_openssl" = yes ; then + dnl Order matters! + if test "$PORTNAME" != "win32"; then + |