RepositoryExternal.mk | 26 download.lst | 34 external/curl/ExternalPackage_curl.mk | 4 external/curl/ExternalProject_curl.mk | 11 external/curl/curl-7.26.0_win-proxy.patch | 14 external/curl/curl-msvc-disable-protocols.patch.1 | 7 external/curl/zlib.patch.0 | 20 external/expat/expat-winapi.patch | 11 external/graphite/StaticLibrary_graphite.mk | 4 external/graphite/UnpackedTarball_graphite.mk | 7 external/graphite/graphite2.issue1115.patch.1 | 22 external/graphite/graphite2.win64.patch.1 | 60 - external/graphite/ubsan.patch | 51 external/libxml2/libxml2-config.patch.1 | 4 external/libxml2/libxml2-global-symbols.patch | 4 external/libxslt/UnpackedTarball_xslt.mk | 1 external/libxslt/e2584eed1c84c18f16e42188c30d2c3d8e3e8853.patch.1 | 69 - external/nss/nss-no-c99.patch | 44 external/nss/nss.aix.patch | 2 external/nss/nss.patch | 27 external/openldap/UnpackedTarball_openldap.mk | 2 external/openldap/openldap-2.4.44.patch.1 | 80 - external/openssl/UnpackedTarball_openssl.mk | 2 external/openssl/ccb0a11145ee72b042d10593a64eaf9e8a55ec12.patch.1 | 56 external/openssl/openssl-1.0.2k-cve-2020-1971.patch.1 | 578 ++++++++++ external/postgresql/ExternalPackage_postgresql.mk | 16 external/postgresql/ExternalProject_postgresql.mk | 20 external/postgresql/Module_postgresql.mk | 6 external/postgresql/UnpackedTarball_postgresql.mk | 8 external/postgresql/config.pl | 1 external/postgresql/postgres-msvc-build.patch.1 | 110 + external/postgresql/postgresql-9.2.1-autoreconf.patch | 521 --------- external/postgresql/postgresql-9.2.1-libreoffice.patch | 74 - external/postgresql/postgresql-libs-leak.patch | 40 external/python3/0001-3.6-closes-bpo-42938-Replace-snprintf-with-Python-un.patch.1 | 175 +++ external/python3/UnpackedTarball_python3.mk | 1 external/redland/UnpackedTarball_raptor.mk | 1 external/redland/raptor/0001-CVE-2020-25713-raptor2-malformed-input-file-can-lead.patch.1 | 33 shell/source/unix/exec/shellexec.cxx | 4 shell/source/win32/SysShExec.cxx | 32 40 files changed, 1203 insertions(+), 979 deletions(-)
New commits: commit d2739c413bb5b2aad871179d6bca0e92d6ffca6d Author: Michael Stahl <michael.st...@allotropia.de> AuthorDate: Thu May 12 11:43:59 2022 +0200 Commit: Gabor Kelemen <kelem...@ubuntu.com> CommitDate: Thu Jul 7 10:44:27 2022 +0200 curl: upgrade to release 7.83.1 Fixes CVE-2022-27774 CVE-2022-27775 CVE-2022-27776 CVE-2022-27781 plus 6 more CVEs that shouldn't affect LO. Remove obsolete configure-eval-fix.patch.0. Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134225 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.st...@allotropia.de> (cherry picked from commit 58a3bf5199818e30ef4207213f29692d81b519c6) upgrade to curl-7.81.0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128783 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caol...@redhat.com> (cherry picked from commit 40a84af1bdd7b3c414a8a78ca32b0951c03f9976) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134246 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caol...@redhat.com> (cherry picked from commit f668663d63d5b0f37d4727b54585c3b67ab92162) Change-Id: I0a34239bfb16bf19e25bf374c7f36c4cdf1776c1 fbd7ff5acf390df1d95d6b8be0dc7751e4753bbe diff --git a/download.lst b/download.lst index fd4d41e2415b..1969ee2c92d1 100644 --- a/download.lst +++ b/download.lst @@ -2,8 +2,8 @@ ABW_MD5SUM := 40fa48e03b1e28ae0325cc34b35bc46d export ABW_TARBALL := libabw-0.0.2.tar.bz2 CDR_MD5SUM := fbcd8619fc6646f41d527c1329102998 export CDR_TARBALL := libcdr-0.0.15.tar.bz2 -CURL_MD5SUM := 74d3c4ca8aaa6c0619806d6e246e65fb -export CURL_TARBALL := curl-7.79.1.tar.xz +CURL_MD5SUM := 08c6d9c25d9cf8d17be28363753e42ca +export CURL_TARBALL := curl-7.83.1.tar.xz EBOOK_MD5SUM := 2f1ceaf2ac8752ed278e175447d9b978 export EBOOK_TARBALL := libe-book-0.0.3.tar.bz2 ETONYEK_MD5SUM := 3c50bc60394d1f2675fbf9bd22581363 diff --git a/external/curl/ExternalPackage_curl.mk b/external/curl/ExternalPackage_curl.mk index 1fb360c85ca9..3308074b363c 100644 --- a/external/curl/ExternalPackage_curl.mk +++ b/external/curl/ExternalPackage_curl.mk @@ -20,7 +20,7 @@ $(eval $(call gb_ExternalPackage_add_file,curl,$(LIBO_LIB_FOLDER)/libcurl.4.dyli else ifeq ($(OS),AIX) $(eval $(call gb_ExternalPackage_add_file,curl,$(LIBO_LIB_FOLDER)/libcurl.so,lib/.libs/libcurl.so.4)) else -$(eval $(call gb_ExternalPackage_add_file,curl,$(LIBO_LIB_FOLDER)/libcurl.so.4,lib/.libs/libcurl.so.4.7.0)) +$(eval $(call gb_ExternalPackage_add_file,curl,$(LIBO_LIB_FOLDER)/libcurl.so.4,lib/.libs/libcurl.so.4.8.0)) endif endif # $(DISABLE_DYNLOADING) diff --git a/external/curl/ExternalProject_curl.mk b/external/curl/ExternalProject_curl.mk index 08d031fa8a9a..5e7d70f9f389 100644 --- a/external/curl/ExternalProject_curl.mk +++ b/external/curl/ExternalProject_curl.mk @@ -42,7 +42,7 @@ $(call gb_ExternalProject_get_state_target,curl,build): ./configure \ $(if $(filter IOS MACOSX,$(OS)),\ --with-secure-transport,\ - $(if $(ENABLE_NSS),--with-nss$(if $(SYSTEM_NSS),,="$(call gb_UnpackedTarball_get_dir,nss)/dist/out"),--without-nss)) \ + $(if $(ENABLE_NSS),--with-nss$(if $(SYSTEM_NSS),,="$(call gb_UnpackedTarball_get_dir,nss)/dist/out") --with-nss-deprecated,--without-nss)) \ --without-ssl --without-gnutls --without-polarssl --without-cyassl --without-axtls --without-mbedtls \ --enable-ftp --enable-http --enable-ipv6 \ --without-libidn2 --without-libpsl --without-librtmp \ diff --git a/external/curl/curl-7.26.0_win-proxy.patch b/external/curl/curl-7.26.0_win-proxy.patch index 5bb98fa04741..c5498c3fdebb 100644 --- a/external/curl/curl-7.26.0_win-proxy.patch +++ b/external/curl/curl-7.26.0_win-proxy.patch @@ -31,7 +31,7 @@ +{ + int bufSize; + char *out = NULL; -+ if(wStr != NULL) { ++ if(wStr) { + bufSize = WideCharToMultiByte( + CP_ACP, 0, wStr, -1, NULL, 0, NULL, NULL); + out = (char *)malloc(bufSize * sizeof(char)); @@ -63,10 +63,10 @@ + ieNoProxy = wstrToCstr(ieProxyConfig->lpszProxyBypass); + + /* Convert the ieNoProxy into a proper no_proxy value */ -+ if(NULL != ieNoProxy) { ++ if(ieNoProxy) { + no_proxy = strdup(ieNoProxy); + pos = strpbrk(no_proxy, "; "); -+ while(NULL != pos) { ++ while(pos) { + no_proxy[pos-no_proxy] = ','; + pos = strpbrk(no_proxy, "; "); + } @@ -77,9 +77,9 @@ + char *tok; + char *saveptr; + -+ if(NULL != ieProxy) { ++ if(ieProxy) { + tok = strtok_s(ieProxy, ";", &saveptr); -+ if(strchr(tok, '=') == NULL) { ++ if(!strchr(tok, '=')) { + proxy = strdup(ieProxy); + } + else { @@ -90,7 +90,7 @@ + } + tok = strtok_s(NULL, ";", &saveptr); + } -+ while(NULL != tok); ++ while(tok); + } + } + } commit ef25fc96fe209a6a49083b899bd1962457311669 Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Wed Oct 20 10:41:42 2021 +0100 Commit: Gabor Kelemen <kelem...@ubuntu.com> CommitDate: Thu Jul 7 10:14:26 2022 +0200 upgrade curl to 7.79.1 includes: CVE-2021-22945: clear the leftovers pointer when sending succeeds CVE-2021-22946: do not ignore --ssl-reqd CVE-2021-22947: reject STARTTLS server response pipelining Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123883 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caol...@redhat.com> (cherry picked from commit a08d1dc4ee904428ef6f78208cc2508d3fc3717b) Change-Id: I0047bdaa7e6e3aed1317eb014d2051a4d5ac5964 diff --git a/download.lst b/download.lst index 964163f3ab3c..fd4d41e2415b 100644 --- a/download.lst +++ b/download.lst @@ -2,8 +2,8 @@ ABW_MD5SUM := 40fa48e03b1e28ae0325cc34b35bc46d export ABW_TARBALL := libabw-0.0.2.tar.bz2 CDR_MD5SUM := fbcd8619fc6646f41d527c1329102998 export CDR_TARBALL := libcdr-0.0.15.tar.bz2 -CURL_MD5SUM := 419c2461366cf404160a820f7a902b7e -export CURL_TARBALL := curl-7.78.0.tar.xz +CURL_MD5SUM := 74d3c4ca8aaa6c0619806d6e246e65fb +export CURL_TARBALL := curl-7.79.1.tar.xz EBOOK_MD5SUM := 2f1ceaf2ac8752ed278e175447d9b978 export EBOOK_TARBALL := libe-book-0.0.3.tar.bz2 ETONYEK_MD5SUM := 3c50bc60394d1f2675fbf9bd22581363 diff --git a/external/curl/zlib.patch.0 b/external/curl/zlib.patch.0 index f4a0ad4b152f..e0f579f8675a 100644 --- a/external/curl/zlib.patch.0 +++ b/external/curl/zlib.patch.0 @@ -1,22 +1,22 @@ --- configure +++ configure -@@ -20709,7 +20709,6 @@ +@@ -22699,7 +22699,6 @@ clean_CPPFLAGS=$CPPFLAGS clean_LDFLAGS=$LDFLAGS clean_LIBS=$LIBS -ZLIB_LIBS="" # Check whether --with-zlib was given. - if test "${with_zlib+set}" = set; then : -@@ -20718,6 +20719,7 @@ + if test ${with_zlib+y} +@@ -22709,6 +22708,7 @@ if test "$OPT_ZLIB" = "no" ; then + ZLIB_LIBS="" - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: zlib disabled" >&5 - $as_echo "$as_me: WARNING: zlib disabled" >&2;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: zlib disabled" >&5 + printf "%s\n" "$as_me: WARNING: zlib disabled" >&2;} else -@@ -20725,6 +20725,21 @@ +@@ -22716,6 +22716,21 @@ OPT_ZLIB="" fi @@ -38,8 +38,8 @@ if test -z "$OPT_ZLIB" ; then if test -n "$PKG_CONFIG"; then -@@ -21005,6 +21020,7 @@ - $as_echo "$as_me: found both libz and libz.h header" >&6;} +@@ -23011,6 +23026,7 @@ + printf "%s\n" "$as_me: found both libz and libz.h header" >&6;} curl_zlib_msg="enabled" fi + fi commit fb2dba05d0569caaa198d8ad194711e738632ff7 Author: Michael Stahl <michael.st...@allotropia.de> AuthorDate: Wed May 4 10:42:36 2022 +0200 Commit: Gabor Kelemen <kelem...@ubuntu.com> CommitDate: Thu Jul 7 10:07:32 2022 +0200 libxml2: upgrade to release 2.9.14 Fixes CVE-2022-29824. Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133813 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.st...@allotropia.de> (cherry picked from commit f670422a01e7336ba8a554331f3781ec7f5c4e8c) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133831 Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org> (cherry picked from commit e2104950ccd738cde5865ace63af5b3501df7362) (cherry picked from commit 522d59947c0f952c1cf0c978a09cca06e78aaca3) Change-Id: I31d6ec794b01dee0bb17022ef2e18d2acd8255df diff --git a/download.lst b/download.lst index aaa3b8681380..964163f3ab3c 100644 --- a/download.lst +++ b/download.lst @@ -96,8 +96,8 @@ export LIBXMLSEC_TARBALL := 1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar. export LIBXSLT_MD5SUM := 5b3a634b77effd8a6268c21173575053 export LIBXSLT_VERSION_MICRO := 35 export LIBXSLT_TARBALL := libxslt-1.1.$(LIBXSLT_VERSION_MICRO).tar.xz -export LIBXML_MD5SUM := ebc20319e6475dc2ec5a29074a4ee718 -export LIBXML_VERSION_MICRO := 13 +export LIBXML_MD5SUM := 194c552f99f0f1af1f251a84dce559fe +export LIBXML_VERSION_MICRO := 14 export LIBXML_TARBALL := libxml2-2.9.$(LIBXML_VERSION_MICRO)_repack.tar.gz export LPSOLVE_TARBALL := 26b3e95ddf3d9c077c480ea45874b3b8-lp_solve_5.5.tar.gz export MARIADB_TARBALL := 05f84c95b610c21c5fd510d10debcabf-mariadb-native-client-1.0.0.tar.bz2 commit 1237e7b3d562c4f0d4090bab411c478f39ceb177 Author: Michael Stahl <michael.st...@allotropia.de> AuthorDate: Thu Mar 31 12:13:23 2022 +0200 Commit: Gabor Kelemen <kelem...@ubuntu.com> CommitDate: Thu Jul 7 09:59:18 2022 +0200 zlib: upgrade to release 1.2.12 Fixes CVE-2018-25032 external/zlib/ubsan.patch: remove, fixed upstream Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132358 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.st...@allotropia.de> (cherry picked from commit bfb6c4c65781a610d21409d974227d73f264f41a) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132191 Reviewed-by: Thorsten Behrens <thorsten.behr...@allotropia.de> (cherry picked from commit b91ebecaaa1582a7cbeda519eb6097a6a866135f) Change-Id: I2aa9a9008b9cf7efd970c5fff0df7029204204f8 diff --git a/download.lst b/download.lst index 5bf555b081d6..aaa3b8681380 100644 --- a/download.lst +++ b/download.lst @@ -40,8 +40,8 @@ PYTHON_MD5SUM := 803a75927f8f241ca78633890c798021 export PYTHON_TARBALL := Python-3.3.5.tgz OPENSSL_MD5SUM := 44279b8557c3247cbe324e2322ecd114 export OPENSSL_TARBALL := openssl-1.0.2o.tar.gz -ZLIB_MD5SUM := 85adef240c5f370b308da8c938951a68 -export ZLIB_TARBALL := zlib-1.2.11.tar.xz +ZLIB_MD5SUM := 28687d676c04e7103bb6ff2b9694c471 +export ZLIB_TARBALL := zlib-1.2.12.tar.xz PNG_MD5SUM := 6652e428d1d3fc3c6cb1362159b1cf3b export PNG_TARBALL := libpng-1.5.24.tar.gz commit 4b9793fb7179e525e692d084234a580289e27463 Author: Michael Stahl <michael.st...@allotropia.de> AuthorDate: Mon Feb 21 11:33:21 2022 +0100 Commit: Gabor Kelemen <kelem...@ubuntu.com> CommitDate: Thu Jul 7 09:48:18 2022 +0200 libxml2: upgrade to release 2.9.13 Fixes CVE-2022-23308 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130241 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.st...@allotropia.de> (cherry picked from commit d50a7151431335d1431bccef000ae39f84bdf135) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130259 Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org> Change-Id: I1b3bf5cf58d7d1f39c224b0d898176c95107fbf5 diff --git a/download.lst b/download.lst index be6b6624e979..5bf555b081d6 100644 --- a/download.lst +++ b/download.lst @@ -96,8 +96,8 @@ export LIBXMLSEC_TARBALL := 1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar. export LIBXSLT_MD5SUM := 5b3a634b77effd8a6268c21173575053 export LIBXSLT_VERSION_MICRO := 35 export LIBXSLT_TARBALL := libxslt-1.1.$(LIBXSLT_VERSION_MICRO).tar.xz -export LIBXML_MD5SUM := 90311833ea38efc9189a95ff14eb43c8 -export LIBXML_VERSION_MICRO := 12 +export LIBXML_MD5SUM := ebc20319e6475dc2ec5a29074a4ee718 +export LIBXML_VERSION_MICRO := 13 export LIBXML_TARBALL := libxml2-2.9.$(LIBXML_VERSION_MICRO)_repack.tar.gz export LPSOLVE_TARBALL := 26b3e95ddf3d9c077c480ea45874b3b8-lp_solve_5.5.tar.gz export MARIADB_TARBALL := 05f84c95b610c21c5fd510d10debcabf-mariadb-native-client-1.0.0.tar.bz2 commit 2aae1bc24e47a0f4f6fb1175ca6867e80829bd7e Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Sat Feb 19 16:53:58 2022 +0000 Commit: Gabor Kelemen <kelem...@ubuntu.com> CommitDate: Wed Jul 6 23:48:33 2022 +0200 upgrade to expat 2.4.6 CVE-2022-25235 CVE-2022-25236 CVE-2022-25313 CVE-2022-25314 CVE-2022-25315 Change-Id: I1cb0449411fe938fe47ab47cead685fd04e137dd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130157 Reviewed-by: Michael Stahl <michael.st...@allotropia.de> Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org> Reviewed-by: Christian Lohmaier <lohmaier+libreoff...@googlemail.com> Tested-by: Christian Lohmaier <lohmaier+libreoff...@googlemail.com> diff --git a/download.lst b/download.lst index f864dd6b2bbd..be6b6624e979 100644 --- a/download.lst +++ b/download.lst @@ -8,8 +8,8 @@ EBOOK_MD5SUM := 2f1ceaf2ac8752ed278e175447d9b978 export EBOOK_TARBALL := libe-book-0.0.3.tar.bz2 ETONYEK_MD5SUM := 3c50bc60394d1f2675fbf9bd22581363 export ETONYEK_TARBALL := libetonyek-0.0.4.tar.bz2 -EXPAT_MD5SUM := 888b85257c23006fe56e1173e4ea93be -export EXPAT_TARBALL := expat-2.4.4.tar.gz +EXPAT_MD5SUM := 22a30c888752fdda9f8dd1b7281c54b0 +export EXPAT_TARBALL := expat-2.4.6.tar.xz FREEHAND_MD5SUM := 496dd00028afcc19f896b01394769043 export FREEHAND_TARBALL := libfreehand-0.0.0.tar.bz2 GRAPHITE_MD5SUM := 861dc66dece78228c8069fa4e2f28f91 commit 1e7680829f9d7b41da7edf37bc3bd13b1c010586 Author: Michael Stahl <michael.st...@allotropia.de> AuthorDate: Thu Feb 17 11:04:01 2022 +0100 Commit: Gabor Kelemen <kelem...@ubuntu.com> CommitDate: Wed Jul 6 23:31:08 2022 +0200 libxslt: upgrade to release 1.1.35 Fixes CVE-2021-30560 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130023 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caol...@redhat.com> (cherry picked from commit d74fbedd96c9563e1f6bb245dc7e136b30bc5e84) Change-Id: I334662ddc40955780321133be9aee23858e04dc1 diff --git a/download.lst b/download.lst index b545a939c884..f864dd6b2bbd 100644 --- a/download.lst +++ b/download.lst @@ -93,9 +93,9 @@ export LCMS2_TARBALL := 861ef15fa0bc018f9ddc932c4ad8b6dd-lcms2-2.4.tar.gz export LIBEXTTEXTCAT_TARBALL := ae330b9493bd4503ac390106ff6060d7-libexttextcat-3.4.3.tar.bz2 export LIBLANGTAG_TARBALL := 36271d3fa0d9dec1632029b6d7aac925-liblangtag-0.5.1.tar.bz2 export LIBXMLSEC_TARBALL := 1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz -export LIBXSLT_MD5SUM := db8765c8d076f1b6caafd9f2542a304a -export LIBXSLT_VERSION_MICRO := 34 -export LIBXSLT_TARBALL := libxslt-1.1.$(LIBXSLT_VERSION_MICRO).tar.gz +export LIBXSLT_MD5SUM := 5b3a634b77effd8a6268c21173575053 +export LIBXSLT_VERSION_MICRO := 35 +export LIBXSLT_TARBALL := libxslt-1.1.$(LIBXSLT_VERSION_MICRO).tar.xz export LIBXML_MD5SUM := 90311833ea38efc9189a95ff14eb43c8 export LIBXML_VERSION_MICRO := 12 export LIBXML_TARBALL := libxml2-2.9.$(LIBXML_VERSION_MICRO)_repack.tar.gz diff --git a/external/libxslt/UnpackedTarball_xslt.mk b/external/libxslt/UnpackedTarball_xslt.mk index a739af5508be..4a8f231cdd1b 100644 --- a/external/libxslt/UnpackedTarball_xslt.mk +++ b/external/libxslt/UnpackedTarball_xslt.mk @@ -16,7 +16,6 @@ $(eval $(call gb_UnpackedTarball_add_patches,xslt,\ external/libxslt/libxslt-internal-symbols.patch.1 \ external/libxslt/libxslt-msvc.patch.2 \ external/libxslt/libxslt-1.1.26-memdump.patch \ - external/libxslt/e2584eed1c84c18f16e42188c30d2c3d8e3e8853.patch.1 \ )) # vim: set noet sw=4 ts=4: diff --git a/external/libxslt/e2584eed1c84c18f16e42188c30d2c3d8e3e8853.patch.1 b/external/libxslt/e2584eed1c84c18f16e42188c30d2c3d8e3e8853.patch.1 deleted file mode 100644 index f82c2e4f77ee..000000000000 --- a/external/libxslt/e2584eed1c84c18f16e42188c30d2c3d8e3e8853.patch.1 +++ /dev/null @@ -1,69 +0,0 @@ -From e2584eed1c84c18f16e42188c30d2c3d8e3e8853 Mon Sep 17 00:00:00 2001 -From: Chun-wei Fan <fanchun...@src.gnome.org> -Date: Tue, 12 Nov 2019 17:37:05 +0800 -Subject: [PATCH] win32: Add configuration for profiler - -Without this the generated xsltconfig.h will not be complete as there -will be a configuration variable that is left in the header, breaking -builds. - -This will allow one to enable or disable profiler support in Windows -builds, and the default is to enable this. ---- - win32/configure.js | 8 ++++++++ - 1 file changed, 8 insertions(+) - -diff --git a/win32/configure.js b/win32/configure.js -index 56694cce..12c99f30 100644 ---- a/win32/configure.js -+++ b/win32/configure.js -@@ -47,6 +47,7 @@ var withIconv = true; - var withZlib = false; - var withCrypto = true; - var withModules = false; -+var withProfiler = true; - /* Win32 build options. */ - var dirSep = "\\"; - var compiler = "msvc"; -@@ -106,6 +107,7 @@ function usage() - txt += " zlib: Use zlib library (" + (withZlib? "yes" : "no") + ")\n"; - txt += " crypto: Enable Crypto support (" + (withCrypto? "yes" : "no") + ")\n"; - txt += " modules: Enable Module support (" + (withModules? "yes" : "no") + ")\n"; -+ txt += " profiler: Enable Profiler support (" + (withProfiler? "yes" : "no") + ")\n"; - txt += "\nWin32 build options, default value given in parentheses:\n\n"; - txt += " compiler: Compiler to be used [msvc|mingw] (" + compiler + ")\n"; - txt += " cruntime: C-runtime compiler option (only msvc) (" + cruntime + ")\n"; -@@ -192,6 +194,7 @@ function discoverVersion() - vf.WriteLine("WITH_ZLIB=" + (withZlib? "1" : "0")); - vf.WriteLine("WITH_CRYPTO=" + (withCrypto? "1" : "0")); - vf.WriteLine("WITH_MODULES=" + (withModules? "1" : "0")); -+ vf.WriteLine("WITH_PROFILER=" + (withProfiler? "1" : "0")); - vf.WriteLine("DEBUG=" + (buildDebug? "1" : "0")); - vf.WriteLine("STATIC=" + (buildStatic? "1" : "0")); - vf.WriteLine("PREFIX=" + buildPrefix); -@@ -240,6 +243,8 @@ function configureXslt() - of.WriteLine(s.replace(/\@WITH_DEBUGGER\@/, withDebugger? "1" : "0")); - } else if (s.search(/\@WITH_MODULES\@/) != -1) { - of.WriteLine(s.replace(/\@WITH_MODULES\@/, withModules? "1" : "0")); -+ } else if (s.search(/\@WITH_PROFILER\@/) != -1) { -+ of.WriteLine(s.replace(/\@WITH_PROFILER\@/, withProfiler? "1" : "0")); - } else if (s.search(/\@LIBXSLT_DEFAULT_PLUGINS_PATH\@/) != -1) { - of.WriteLine(s.replace(/\@LIBXSLT_DEFAULT_PLUGINS_PATH\@/, "NULL")); - } else -@@ -343,6 +348,8 @@ for (i = 0; (i < WScript.Arguments.length) && (error == 0); i++) { - withCrypto = strToBool(arg.substring(opt.length + 1, arg.length)); - else if (opt == "modules") - withModules = strToBool(arg.substring(opt.length + 1, arg.length)); -+ else if (opt == "profiler") -+ withProfiler = strToBool(arg.substring(opt.length + 1, arg.length)); - else if (opt == "compiler") - compiler = arg.substring(opt.length + 1, arg.length); - else if (opt == "cruntime") -@@ -477,6 +484,7 @@ txtOut += " Use iconv: " + boolToStr(withIconv) + "\n"; - txtOut += " With zlib: " + boolToStr(withZlib) + "\n"; - txtOut += " Crypto: " + boolToStr(withCrypto) + "\n"; - txtOut += " Modules: " + boolToStr(withModules) + "\n"; -+txtOut += " Profiler: " + boolToStr(withProfiler) + "\n"; - txtOut += "\n"; - txtOut += "Win32 build configuration\n"; - txtOut += "-------------------------\n"; commit b4851b4f907297929ed01a1db37dd8df857c149a Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Fri Jan 28 19:40:40 2022 +0000 Commit: Gabor Kelemen <kelem...@ubuntu.com> CommitDate: Wed Jul 6 23:20:49 2022 +0200 upgrade expat to 2.4.4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129072 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.st...@allotropia.de> (cherry picked from commit 8b537d5b40c617c29cf7ca19e63ab882525cf3aa) Change-Id: I1f2694abd9f577e0b4fedbf27118b52be8a1a688 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129212 Tested-by: Michael Stahl <michael.st...@allotropia.de> Reviewed-by: Michael Stahl <michael.st...@allotropia.de> diff --git a/download.lst b/download.lst index 6ca92074b647..b545a939c884 100644 --- a/download.lst +++ b/download.lst @@ -8,8 +8,8 @@ EBOOK_MD5SUM := 2f1ceaf2ac8752ed278e175447d9b978 export EBOOK_TARBALL := libe-book-0.0.3.tar.bz2 ETONYEK_MD5SUM := 3c50bc60394d1f2675fbf9bd22581363 export ETONYEK_TARBALL := libetonyek-0.0.4.tar.bz2 -EXPAT_MD5SUM := 476cdf4b5e40280316fff36b2086a390 -export EXPAT_TARBALL := expat-2.4.1.tar.bz2 +EXPAT_MD5SUM := 888b85257c23006fe56e1173e4ea93be +export EXPAT_TARBALL := expat-2.4.4.tar.gz FREEHAND_MD5SUM := 496dd00028afcc19f896b01394769043 export FREEHAND_TARBALL := libfreehand-0.0.0.tar.bz2 GRAPHITE_MD5SUM := 861dc66dece78228c8069fa4e2f28f91 diff --git a/external/expat/expat-winapi.patch b/external/expat/expat-winapi.patch index bd4da1472fc8..7eae7d5d6139 100644 --- a/external/expat/expat-winapi.patch +++ b/external/expat/expat-winapi.patch @@ -13,15 +13,12 @@ --- misc/expat-2.1.0/lib/xmlparse.c 2021-05-23 16:56:25.000000000 +0100 +++ misc/build/expat-2.1.0/lib/xmlparse.c 2021-05-25 12:42:11.997173600 +0100 -@@ -92,6 +92,11 @@ +@@ -64,6 +64,8 @@ + #endif - #include <expat_config.h> - -+#ifdef _WIN32 + #ifdef _WIN32 +# undef HAVE_GETRANDOM +# undef HAVE_SYSCALL_GETRANDOM -+#endif -+ - #include "ascii.h" - #include "expat.h" - #include "siphash.h" + /* force stdlib to define rand_s() */ + # if ! defined(_CRT_RAND_S) + # define _CRT_RAND_S commit 13f1b003b88bd87b9008f00f5c9e7a2a2c5c331a Author: Michael Stahl <michael.st...@allotropia.de> AuthorDate: Tue Nov 16 14:41:57 2021 +0100 Commit: Gabor Kelemen <kelem...@ubuntu.com> CommitDate: Wed Jul 6 23:11:34 2022 +0200 postgresql: upgrade to release 13.5 Fixes CVE-2021-23222. Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125308 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.st...@allotropia.de> (cherry picked from commit 71b9369f1cc40143108e3f2189d96e402895e315) Change-Id: I4e16fcc60c634382a864f66b211d0e0170a06db0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125334 Tested-by: Michael Stahl <michael.st...@allotropia.de> Reviewed-by: Michael Stahl <michael.st...@allotropia.de> diff --git a/download.lst b/download.lst index a0541f10e0ed..6ca92074b647 100644 --- a/download.lst +++ b/download.lst @@ -109,7 +109,7 @@ export OPENLDAP_TARBALL := openldap-2.4.59.tgz export ORCUS_TARBALL := ea2acaf140ae40a87a952caa75184f4d-liborcus-0.5.1.tar.bz2 export PIXMAN_TARBALL := c63f411b3ad147db2bcce1bf262a0e02-pixman-0.24.4.tar.bz2 export POPPLER_TARBALL := 1cd27460f7e3379d1eb109cfd7bcdb39-poppler-0.22.5.tar.gz -export POSTGRESQL_TARBALL := postgresql-13.1.tar.bz2 +export POSTGRESQL_TARBALL := postgresql-13.5.tar.bz2 export RAPTOR_TARBALL := 4ceb9316488b0ea01acf011023cf7fff-raptor2-2.0.9.tar.gz export RASQAL_TARBALL := b12c5f9cfdb6b04efce5a4a186b8416b-rasqal-0.9.30.tar.gz export REDLAND_TARBALL := 32f8e1417a64d3c6f2c727f9053f55ea-redland-1.0.16.tar.gz commit 1fc923b1ca28f2cb80027216e2727d724fd0235f Author: Michael Stahl <michael.st...@allotropia.de> AuthorDate: Tue Nov 9 12:35:04 2021 +0100 Commit: Gabor Kelemen <kelem...@ubuntu.com> CommitDate: Wed Jul 6 22:28:05 2022 +0200 openldap: upgrade to release 2.4.59 Fixes CVE-2020-36230 and CVE-2020-36229 in libldap, plus lots of other CVEs that affect only the server. Unfortunately it looks like NSS support was removed in release 2.5.0. Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124914 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.st...@allotropia.de> (cherry picked from commit 9393325c1db9fa25037d208607b71adb567a8bbc) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124860 Reviewed-by: Caolán McNamara <caol...@redhat.com> (cherry picked from commit b7c670984e4af1c73fa05731ca8029cec487bd52) Change-Id: Ie43d7da1b9e92b5712f9cd22c4613648394c696f diff --git a/download.lst b/download.lst index 2661aac1304b..a0541f10e0ed 100644 --- a/download.lst +++ b/download.lst @@ -105,7 +105,7 @@ export MDDS_TARBALL := a67a46ec9d00d283a7cd8dbdd2906b59-mdds_0.11.0.tar.bz2 export MYSQLCPPCONN_TARBALL := 0981bda6548a8c8233ffce2b6e4b2a23-mysql-connector-c++-1.1.0.tar.gz export MYTHES_TARBALL := 46e92b68e31e858512b680b3b61dc4c1-mythes-1.2.3.tar.gz export NEON_TARBALL := ff369e69ef0f0143beb5626164e87ae2-neon-0.29.5.tar.gz -export OPENLDAP_TARBALL := openldap-2.4.44.tgz +export OPENLDAP_TARBALL := openldap-2.4.59.tgz export ORCUS_TARBALL := ea2acaf140ae40a87a952caa75184f4d-liborcus-0.5.1.tar.bz2 export PIXMAN_TARBALL := c63f411b3ad147db2bcce1bf262a0e02-pixman-0.24.4.tar.bz2 export POPPLER_TARBALL := 1cd27460f7e3379d1eb109cfd7bcdb39-poppler-0.22.5.tar.gz commit 8e5c93206b9e8c2528083191d8c185d06ab35c86 Author: Jochen Nitschke <j.nitschke+loger...@ok.de> AuthorDate: Thu Aug 25 17:58:38 2016 +0200 Commit: Gabor Kelemen <kelem...@ubuntu.com> CommitDate: Wed Jul 6 17:43:32 2022 +0200 openldap: upgrade to release 2.4.44 Change-Id: I9af1bedd06410bed17b37adc6213125e0c4f1f29 Reviewed-on: https://gerrit.libreoffice.org/28393 Tested-by: Jenkins <c...@libreoffice.org> Reviewed-by: Michael Stahl <mst...@redhat.com> diff --git a/download.lst b/download.lst index 66b46da38cae..2661aac1304b 100644 --- a/download.lst +++ b/download.lst @@ -105,7 +105,7 @@ export MDDS_TARBALL := a67a46ec9d00d283a7cd8dbdd2906b59-mdds_0.11.0.tar.bz2 export MYSQLCPPCONN_TARBALL := 0981bda6548a8c8233ffce2b6e4b2a23-mysql-connector-c++-1.1.0.tar.gz export MYTHES_TARBALL := 46e92b68e31e858512b680b3b61dc4c1-mythes-1.2.3.tar.gz export NEON_TARBALL := ff369e69ef0f0143beb5626164e87ae2-neon-0.29.5.tar.gz -export OPENLDAP_TARBALL := 804c6cb5698db30b75ad0ff1c25baefd-openldap-2.4.31.tgz +export OPENLDAP_TARBALL := openldap-2.4.44.tgz export ORCUS_TARBALL := ea2acaf140ae40a87a952caa75184f4d-liborcus-0.5.1.tar.bz2 export PIXMAN_TARBALL := c63f411b3ad147db2bcce1bf262a0e02-pixman-0.24.4.tar.bz2 export POPPLER_TARBALL := 1cd27460f7e3379d1eb109cfd7bcdb39-poppler-0.22.5.tar.gz diff --git a/external/openldap/UnpackedTarball_openldap.mk b/external/openldap/UnpackedTarball_openldap.mk index f22cb977752c..44c192e65dab 100644 --- a/external/openldap/UnpackedTarball_openldap.mk +++ b/external/openldap/UnpackedTarball_openldap.mk @@ -12,7 +12,7 @@ $(eval $(call gb_UnpackedTarball_UnpackedTarball,openldap)) $(eval $(call gb_UnpackedTarball_set_tarball,openldap,$(OPENLDAP_TARBALL),,openldap)) $(eval $(call gb_UnpackedTarball_add_patches,openldap,\ - external/openldap/openldap-2.4.31.patch \ + external/openldap/openldap-2.4.44.patch.1 \ )) # vim: set noet sw=4 ts=4: diff --git a/external/openldap/openldap-2.4.31.patch b/external/openldap/openldap-2.4.44.patch.1 similarity index 69% rename from external/openldap/openldap-2.4.31.patch rename to external/openldap/openldap-2.4.44.patch.1 index 656a2c9ebd2d..0d3cf5b70c3f 100644 --- a/external/openldap/openldap-2.4.31.patch +++ b/external/openldap/openldap-2.4.44.patch.1 @@ -1,24 +1,28 @@ ---- misc/openldap-2.4.31/Makefile.in 2012-04-22 22:25:08.000000000 +0200 -+++ misc/build/openldap-2.4.31/Makefile.in 2012-07-16 13:53:47.140541654 +0200 -@@ -13,7 +13,7 @@ - ## top-level directory of the distribution or, alternatively, at - ## <http://www.OpenLDAP.org/license.html>. - --SUBDIRS= include libraries clients servers tests doc -+SUBDIRS= include libraries - CLEANDIRS= - INSTALLDIRS= +--- openldap.org/configure ++++ openldap/configure +@@ -15735,7 +15735,7 @@ + $as_echo_n "(cached) " >&6 + else + ac_check_lib_save_LIBS=$LIBS +-LIBS="-lnss3 $LIBS" ++LIBS="-lnss3 -lssl3 -lsmime3 -lnss3 -lnssutil3 -lplds4 -lplc4 -lnspr4 $LIBS" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext + /* end confdefs.h. */ -@@ -32,7 +32,3 @@ - $(RM) config.status libtool stamp-h stamp-h.in +--- openldap.org/configure.in ++++ openldap/configure.in +@@ -1239,7 +1239,8 @@ + AC_CHECK_HEADERS([nssutil.h]) + if test "$ac_cv_header_nssutil_h" = yes ; then + AC_CHECK_LIB([nss3], [NSS_Initialize], +- [ have_moznss=yes ], [ have_moznss=no ]) ++ [ have_moznss=yes ], [ have_moznss=no ], ++ [ -lssl3 -lsmime3 -lnss3 -lnssutil3 -lplds4 -lplc4 -lnspr4 ]) + fi - distclean: veryclean FORCE -- --check: test --test: FORCE -- cd tests; make test ---- misc/openldap-2.4.31/libraries/libldap/tls_m.c 2012-04-22 22:25:08.000000000 +0200 -+++ misc/build/openldap-2.4.31/libraries/libldap/tls_m.c 2012-07-16 13:53:47.140541654 +0200 + if test "$have_moznss" = yes ; then +--- openldap.org/libraries/libldap/tls_m.c ++++ openldap/libraries/libldap/tls_m.c @@ -49,17 +49,17 @@ #include <termios.h> /* for echo on/off */ #endif @@ -48,26 +52,22 @@ #undef NSS_VERSION_INT #define NSS_VERSION_INT ((NSS_VMAJOR << 24) | (NSS_VMINOR << 16) | \ ---- misc/openldap-2.4.31/configure.in 2012-04-22 21:25:08.000000000 +0100 -+++ misc/build/openldap-2.4.31/configure.in 2012-07-16 13:56:24.000000000 +0100 -@@ -1232,7 +1232,8 @@ - AC_CHECK_HEADERS([nssutil.h]) - if test "$ac_cv_header_nssutil_h" = yes ; then - AC_CHECK_LIB([nss3], [NSS_Initialize], -- [ have_moznss=yes ], [ have_moznss=no ]) -+ [ have_moznss=yes ], [ have_moznss=no ], -+ [ -lssl3 -lsmime3 -lnss3 -lnssutil3 -lplds4 -lplc4 -lnspr4 ]) - fi +--- openldap.org/Makefile.in ++++ openldap/Makefile.in +@@ -13,7 +13,7 @@ + ## top-level directory of the distribution or, alternatively, at + ## <http://www.OpenLDAP.org/license.html>. - if test "$have_moznss" = yes ; then ---- misc/openldap-2.4.31/configure 2012-07-16 14:11:55.000000000 +0100 -+++ misc/build/openldap-2.4.31/configure 2012-07-16 13:56:24.000000000 +0100 -@@ -15718,7 +15718,7 @@ - $as_echo_n "(cached) " >&6 - else - ac_check_lib_save_LIBS=$LIBS --LIBS="-lnss3 $LIBS" -+LIBS="-lnss3 -lssl3 -lsmime3 -lnss3 -lnssutil3 -lplds4 -lplc4 -lnspr4 $LIBS" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext - /* end confdefs.h. */ +-SUBDIRS= include libraries clients servers tests doc ++SUBDIRS= include libraries + CLEANDIRS= + INSTALLDIRS= +@@ -32,7 +32,3 @@ + $(RM) config.status libtool stamp-h stamp-h.in + + distclean: veryclean FORCE +- +-check: test +-test: FORCE +- cd tests; $(MAKE) test commit f15b2720df69b159a07d2888a2a3f7b8f0c14cff Author: Miklos Vajna <vmik...@collabora.com> AuthorDate: Thu Dec 13 09:13:39 2018 +0100 Commit: Gabor Kelemen <kelem...@ubuntu.com> CommitDate: Wed Jul 6 17:02:16 2022 +0200 graphite: update to 1.3.12 Martin Hosken thinks all patches are redundant now, so drop them. Change-Id: I062168416a1289b7f4dd42d8ae58b7df56a37712 Reviewed-on: https://gerrit.libreoffice.org/65074 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmik...@collabora.com> diff --git a/download.lst b/download.lst index 7ac023329108..66b46da38cae 100644 --- a/download.lst +++ b/download.lst @@ -12,8 +12,8 @@ EXPAT_MD5SUM := 476cdf4b5e40280316fff36b2086a390 export EXPAT_TARBALL := expat-2.4.1.tar.bz2 FREEHAND_MD5SUM := 496dd00028afcc19f896b01394769043 export FREEHAND_TARBALL := libfreehand-0.0.0.tar.bz2 -GRAPHITE_MD5SUM := 9c499b8ec9f1b81fd0bb6a3b986f4b0f -export GRAPHITE_TARBALL := graphite2-minimal-1.3.10.tgz +GRAPHITE_MD5SUM := 861dc66dece78228c8069fa4e2f28f91 +export GRAPHITE_TARBALL := graphite2-minimal-1.3.12.tgz MSPUB_MD5SUM := 1120705cd0f0d9bd5506360bf57b6c2e export MSPUB_TARBALL := libmspub-0.0.6.tar.bz2 MWAW_MD5SUM := d794625f156a9fb1c53b3f8a8aa13b5e diff --git a/external/graphite/StaticLibrary_graphite.mk b/external/graphite/StaticLibrary_graphite.mk index ddbf9955e6d7..d58c4e9cf4fc 100644 --- a/external/graphite/StaticLibrary_graphite.mk +++ b/external/graphite/StaticLibrary_graphite.mk @@ -43,7 +43,6 @@ $(eval $(call gb_StaticLibrary_add_generated_cxxobjects,graphite,\ UnpackedTarball/graphite/src/gr_segment \ UnpackedTarball/graphite/src/gr_slot \ UnpackedTarball/graphite/src/json \ - UnpackedTarball/graphite/src/CachedFace \ UnpackedTarball/graphite/src/CmapCache \ UnpackedTarball/graphite/src/Code \ UnpackedTarball/graphite/src/Collider \ @@ -59,9 +58,6 @@ $(eval $(call gb_StaticLibrary_add_generated_cxxobjects,graphite,\ UnpackedTarball/graphite/src/NameTable \ UnpackedTarball/graphite/src/Pass \ UnpackedTarball/graphite/src/Position \ - UnpackedTarball/graphite/src/SegCache \ - UnpackedTarball/graphite/src/SegCacheEntry \ - UnpackedTarball/graphite/src/SegCacheStore \ UnpackedTarball/graphite/src/Segment \ UnpackedTarball/graphite/src/Silf \ UnpackedTarball/graphite/src/Slot \ diff --git a/external/graphite/UnpackedTarball_graphite.mk b/external/graphite/UnpackedTarball_graphite.mk index 28f22e0515dc..0abd4b657d91 100644 --- a/external/graphite/UnpackedTarball_graphite.mk +++ b/external/graphite/UnpackedTarball_graphite.mk @@ -11,11 +11,4 @@ $(eval $(call gb_UnpackedTarball_UnpackedTarball,graphite)) $(eval $(call gb_UnpackedTarball_set_tarball,graphite,$(GRAPHITE_TARBALL))) -$(eval $(call gb_UnpackedTarball_set_patchlevel,graphite,0)) - -$(eval $(call gb_UnpackedTarball_add_patches,graphite,\ - external/graphite/graphite2.issue1115.patch.1 \ - external/graphite/graphite2.win64.patch.1 \ -)) - # vim: set noet sw=4 ts=4: diff --git a/external/graphite/graphite2.issue1115.patch.1 b/external/graphite/graphite2.issue1115.patch.1 deleted file mode 100644 index 454114bb32c9..000000000000 --- a/external/graphite/graphite2.issue1115.patch.1 +++ /dev/null @@ -1,22 +0,0 @@ ---- graphite/src/Code.cpp -+++ graphite/src/Code.cpp -@@ -175,8 +175,8 @@ Machine::Code::Code(bool is_constraint, - bytecode_end, - pre_context, - rule_length, -- silf.numClasses(), -- face.glyphs().numAttrs(), -+ static_cast<uint16>(silf.numClasses()), -+ static_cast<uint16>(face.glyphs().numAttrs()), - face.numFeatures(), - {1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,255, -@@ -184,7 +184,7 @@ Machine::Code::Code(bool is_constraint, - 1,1,1,1,1,1,0,0, - 0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0, -- 0,0,0,0,0,0,0, silf.numUser()} -+ 0,0,0,0,0,0,0, static_cast<byte>(silf.numUser())} - }; - - decoder dec(lims, *this, pt); diff --git a/external/graphite/graphite2.win64.patch.1 b/external/graphite/graphite2.win64.patch.1 deleted file mode 100644 index d7cf11e63189..000000000000 --- a/external/graphite/graphite2.win64.patch.1 +++ /dev/null @@ -1,60 +0,0 @@ -diff -urN graphite2-1.3.4.orig/src/inc/json.h graphite2-1.3.4/src/inc/json.h ---- graphite2-1.3.4.orig/src/inc/json.h 2015-12-22 14:25:46.403566441 +0100 -+++ graphite2-1.3.4/src/inc/json.h 2015-12-22 14:26:13.439722846 +0100 -@@ -85,6 +85,9 @@ - json & operator << (string) throw(); - json & operator << (number) throw(); - json & operator << (integer) throw(); -+#ifdef _WIN64 -+ json & operator << (size_t) throw(); -+#endif - json & operator << (long unsigned int d) throw(); - json & operator << (boolean) throw(); - json & operator << (_null_t) throw(); -diff -urN graphite2-1.3.4.orig/src/inc/Main.h graphite2-1.3.4/src/inc/Main.h ---- graphite2-1.3.4.orig/src/inc/Main.h 2015-12-22 14:25:46.399566417 +0100 -+++ graphite2-1.3.4/src/inc/Main.h 2015-12-22 14:26:13.439722846 +0100 -@@ -25,6 +25,9 @@ - of the License or (at your option) any later version. - */ - #pragma once -+#ifdef _WIN32 -+#pragma warning(disable: 4510 4610) -+#endif - - #include <cstdlib> - #include "graphite2/Types.h" -diff -urN graphite2-1.3.4.orig/src/json.cpp graphite2-1.3.4/src/json.cpp ---- graphite2-1.3.4.orig/src/json.cpp 2015-12-22 14:25:46.399566417 +0100 -+++ graphite2-1.3.4/src/json.cpp 2015-12-22 14:26:13.439722846 +0100 -@@ -133,6 +133,9 @@ - } - json & json::operator << (json::integer d) throw() { context(seq); fprintf(_stream, "%ld", d); return *this; } - json & json::operator << (long unsigned d) throw() { context(seq); fprintf(_stream, "%ld", d); return *this; } -+#ifdef _WIN64 -+json & json::operator << (size_t d) throw() { context(seq); fprintf(_stream, "%ld", d); return *this; } -+#endif - json & json::operator << (json::boolean b) throw() { context(seq); fputs(b ? "true" : "false", _stream); return *this; } - json & json::operator << (json::_null_t) throw() { context(seq); fputs("null",_stream); return *this; } - -diff -urN graphite2-1.3.4.orig/src/Pass.cpp graphite2-1.3.4/src/Pass.cpp ---- graphite2-1.3.4.orig/src/Pass.cpp 2015-12-22 14:25:46.399566417 +0100 -+++ graphite2-1.3.4/src/Pass.cpp 2015-12-22 14:26:13.439722846 +0100 -@@ -568,7 +568,7 @@ - if (r->rule->preContext > fsm.slots.context()) - continue; - *fsm.dbgout << json::flat << json::object -- << "id" << r->rule - m_rules -+ << "id" << static_cast<size_t>(r->rule - m_rules) - << "failed" << true - << "input" << json::flat << json::object - << "start" << objectid(dslot(&fsm.slots.segment, input_slot(fsm.slots, -r->rule->preContext))) -@@ -582,7 +582,7 @@ - void Pass::dumpRuleEventOutput(const FiniteStateMachine & fsm, const Rule & r, Slot * const last_slot) const - { - *fsm.dbgout << json::item << json::flat << json::object -- << "id" << &r - m_rules -+ << "id" << static_cast<size_t>(&r - m_rules) - << "failed" << false - << "input" << json::flat << json::object - << "start" << objectid(dslot(&fsm.slots.segment, input_slot(fsm.slots, 0))) diff --git a/external/graphite/ubsan.patch b/external/graphite/ubsan.patch deleted file mode 100644 index b1617b138630..000000000000 --- a/external/graphite/ubsan.patch +++ /dev/null @@ -1,51 +0,0 @@ ---- src/Pass.cpp -+++ src/Pass.cpp -@@ -294,7 +294,7 @@ - s->rules = begin; - s->rules_end = (end - begin <= FiniteStateMachine::MAX_RULES)? end : - begin + FiniteStateMachine::MAX_RULES; -- qsort(begin, end - begin, sizeof(RuleEntry), &cmpRuleEntry); -+ if (end != begin) qsort(begin, end - begin, sizeof(RuleEntry), &cmpRuleEntry); - } - - return true; ---- src/gr_face.cpp -+++ src/gr_face.cpp -@@ -87,7 +87,7 @@ - - Face *res = new Face(appFaceHandle, *ops); - if (res && load_face(*res, faceOptions)) -- return static_cast<gr_face *>(res); -+ return reinterpret_cast<gr_face *>(res); - - delete res; - return 0; -@@ -195,7 +195,7 @@ - - void gr_face_destroy(gr_face *face) - { -- delete face; -+ delete static_cast<Face *>(face); - } - - ---- src/gr_font.cpp -+++ src/gr_font.cpp -@@ -50,7 +50,7 @@ - if (face == 0) return 0; - - Font * const res = new Font(ppm, *face, appFontHandle, font_ops); -- return static_cast<gr_font*>(res); -+ return reinterpret_cast<gr_font*>(res); - } - - gr_font* gr_make_font_with_advance_fn(float ppm/*pixels per em*/, const void* appFontHandle/*non-NULL*/, gr_advance_fn getAdvance, const gr_face * face/*needed for scaling*/) -@@ -61,7 +61,7 @@ - - void gr_font_destroy(gr_font *font) - { -- delete font; -+ delete static_cast<Font *>(font); - } - - commit a5198fe305119a66022d2787ce8a68b03665cc22 Author: Michael Stahl <michael.st...@allotropia.de> AuthorDate: Wed Aug 25 11:32:11 2021 +0200 Commit: Gabor Kelemen <kelem...@ubuntu.com> CommitDate: Wed Jul 6 11:17:39 2022 +0200 openssl: add patch for CVE-2021-3712 Change-Id: I4061cbac18ddf9c7f932a27bf2b54a2b1c2f9d99 diff --git a/external/openssl/UnpackedTarball_openssl.mk b/external/openssl/UnpackedTarball_openssl.mk index 3391e49ba051..1eb62cf995b4 100644 --- a/external/openssl/UnpackedTarball_openssl.mk +++ b/external/openssl/UnpackedTarball_openssl.mk @@ -21,6 +21,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,openssl,\ external/openssl/openssl-3650-masm.patch.1 \ external/openssl/openssl-fixbuild.patch.1 \ external/openssl/openssl-1.0.2k-cve-2020-1971.patch.1 \ + external/openssl/ccb0a11145ee72b042d10593a64eaf9e8a55ec12.patch.1 \ )) # vim: set noet sw=4 ts=4: diff --git a/external/openssl/ccb0a11145ee72b042d10593a64eaf9e8a55ec12.patch.1 b/external/openssl/ccb0a11145ee72b042d10593a64eaf9e8a55ec12.patch.1 new file mode 100644 index 000000000000..cf809750ecfb --- /dev/null +++ b/external/openssl/ccb0a11145ee72b042d10593a64eaf9e8a55ec12.patch.1 @@ -0,0 +1,56 @@ +From ccb0a11145ee72b042d10593a64eaf9e8a55ec12 Mon Sep 17 00:00:00 2001 +From: Matt Caswell <m...@openssl.org> +Date: Tue, 17 Aug 2021 14:41:48 +0100 +Subject: [PATCH] Fix a read buffer overrun in X509_CERT_AUX_print() + +This is a backport of commit c5dc9ab965f to 1.0.2. That commit fixed +the same bug but in master/1.1.1 it is in the function X509_aux_print(). +The original commit had the following description: + +Fix a read buffer overrun in X509_aux_print(). + +The ASN1_STRING_get0_data(3) manual explitely cautions the reader +that the data is not necessarily NUL-terminated, and the function +X509_alias_set1(3) does not sanitize the data passed into it in any +way either, so we must assume the return value from X509_alias_get0(3) +is merely a byte array and not necessarily a string in the sense +of the C language. + +I found this bug while writing manual pages for X509_print_ex(3) +and related functions. Theo Buehler <t...@openbsd.org> checked my +patch to fix the same bug in LibreSSL, see + +http://cvsweb.openbsd.org/src/lib/libcrypto/asn1/t_x509a.c#rev1.9 + +As an aside, note that the function still produces incomplete and +misleading results when the data contains a NUL byte in the middle +and that error handling is consistently absent throughout, even +though the function provides an "int" return value obviously intended +to be 1 for success and 0 for failure, and even though this function +is called by another function that also wants to return 1 for success +and 0 for failure and even does so in many of its code paths, though +not in others. But let's stay focussed. Many things would be nice +to have in the wide wild world, but a buffer overflow must not be +allowed to remain in our backyard. + +CVE-2021-3712 + +Reviewed-by: Paul Dale <pa...@openssl.org> +--- + crypto/asn1/t_x509a.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/crypto/asn1/t_x509a.c b/crypto/asn1/t_x509a.c +index d1b897a469fd..b1bc9d0cd28b 100644 +--- a/crypto/asn1/t_x509a.c ++++ b/crypto/asn1/t_x509a.c +@@ -104,7 +104,8 @@ int X509_CERT_AUX_print(BIO *out, X509_CERT_AUX *aux, int indent) + } else + BIO_printf(out, "%*sNo Rejected Uses.\n", indent, ""); + if (aux->alias) +- BIO_printf(out, "%*sAlias: %s\n", indent, "", aux->alias->data); ++ BIO_printf(out, "%*sAlias: %.*s\n", indent, "", aux->alias->length, ++ aux->alias->data); + if (aux->keyid) { + BIO_printf(out, "%*sKey Id: ", indent, ""); + for (i = 0; i < aux->keyid->length; i++) commit cd34cde567373458009ebae8a153bf69e1f3f4cc Author: Michael Stahl <michael.st...@allotropia.de> AuthorDate: Wed Jul 21 11:57:51 2021 +0200 Commit: Gabor Kelemen <kelem...@ubuntu.com> CommitDate: Wed Jul 6 11:16:36 2022 +0200 curl: upgrade to release 7.78.0 * Fixes CVE-2020-8284 CVE-2021-22924 * Also fixes these which don't look relevant to LO: CVE-2020-8231 CVE-2020-8285 CVE-2020-8286 CVE-2021-22876 CVE-2021-22890 CVE-2021-22897 CVE-2021-22898 CVE-2021-22901 CVE-2021-22922 CVE-2021-22923 CVE-2021-22925 CVE-2021-22926 * disable some new protocols and dependencies * remove curl-ios.patch.1 as the code no longer exists upstream Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119313 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.st...@allotropia.de> (cherry picked from commit 946f457c885bd10ff1a7281c351f3981f035f5a7) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119262 Reviewed-by: Thorsten Behrens <thorsten.behr...@allotropia.de> (cherry picked from commit 020eb3b363a5c9444c97075a2e15b63ccbe7bf2d) Change-Id: I12d5f87f4d503a5f9859226a05cfe2a07e46d993 diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk index f2d4dd62ce4e..965c2e964be4 100644 --- a/RepositoryExternal.mk +++ b/RepositoryExternal.mk @@ -2058,7 +2058,7 @@ $(call gb_LinkTarget_set_include,$(1),\ ifeq ($(COM),MSC) $(call gb_LinkTarget_add_libs,$(1),\ - $(call gb_UnpackedTarball_get_dir,curl)/builds/libcurl-vc12-$(if $(filter X86_64,$(CPUNAME)),x64,x86)-$(if $(MSVC_USE_DEBUG_RUNTIME),debug,release)-dll-ipv6-sspi-winssl/lib/libcurl$(if $(MSVC_USE_DEBUG_RUNTIME),_debug).lib \ + $(call gb_UnpackedTarball_get_dir,curl)/builds/libcurl-vc12-$(if $(filter X86_64,$(CPUNAME)),x64,x86)-$(if $(MSVC_USE_DEBUG_RUNTIME),debug,release)-dll-ipv6-sspi-schannel/lib/libcurl$(if $(MSVC_USE_DEBUG_RUNTIME),_debug).lib \ ) else $(call gb_LinkTarget_add_libs,$(1),\ diff --git a/download.lst b/download.lst index 60895d1a9fc2..7ac023329108 100644 --- a/download.lst +++ b/download.lst @@ -2,8 +2,8 @@ ABW_MD5SUM := 40fa48e03b1e28ae0325cc34b35bc46d export ABW_TARBALL := libabw-0.0.2.tar.bz2 CDR_MD5SUM := fbcd8619fc6646f41d527c1329102998 export CDR_TARBALL := libcdr-0.0.15.tar.bz2 -CURL_MD5SUM := 9a1f04044df1ddb0d764b2ccb4353215 -export CURL_TARBALL := curl-7.71.0.tar.xz +CURL_MD5SUM := 419c2461366cf404160a820f7a902b7e +export CURL_TARBALL := curl-7.78.0.tar.xz EBOOK_MD5SUM := 2f1ceaf2ac8752ed278e175447d9b978 export EBOOK_TARBALL := libe-book-0.0.3.tar.bz2 ETONYEK_MD5SUM := 3c50bc60394d1f2675fbf9bd22581363 diff --git a/external/curl/ExternalPackage_curl.mk b/external/curl/ExternalPackage_curl.mk index 8da569e3e0cf..1fb360c85ca9 100644 --- a/external/curl/ExternalPackage_curl.mk +++ b/external/curl/ExternalPackage_curl.mk @@ -14,13 +14,13 @@ $(eval $(call gb_ExternalPackage_use_external_project,curl,curl)) ifneq ($(DISABLE_DYNLOADING),TRUE) ifeq ($(COM),MSC) -$(eval $(call gb_ExternalPackage_add_file,curl,$(LIBO_LIB_FOLDER)/libcurl$(if $(MSVC_USE_DEBUG_RUNTIME),_debug).dll,builds/libcurl-vc12-$(if $(filter X86_64,$(CPUNAME)),x64,x86)-$(if $(MSVC_USE_DEBUG_RUNTIME),debug,release)-dll-ipv6-sspi-winssl/bin/libcurl$(if $(MSVC_USE_DEBUG_RUNTIME),_debug).dll)) +$(eval $(call gb_ExternalPackage_add_file,curl,$(LIBO_LIB_FOLDER)/libcurl$(if $(MSVC_USE_DEBUG_RUNTIME),_debug).dll,builds/libcurl-vc12-$(if $(filter X86_64,$(CPUNAME)),x64,x86)-$(if $(MSVC_USE_DEBUG_RUNTIME),debug,release)-dll-ipv6-sspi-schannel/bin/libcurl$(if $(MSVC_USE_DEBUG_RUNTIME),_debug).dll)) else ifeq ($(OS),MACOSX) $(eval $(call gb_ExternalPackage_add_file,curl,$(LIBO_LIB_FOLDER)/libcurl.4.dylib,lib/.libs/libcurl.4.dylib)) else ifeq ($(OS),AIX) $(eval $(call gb_ExternalPackage_add_file,curl,$(LIBO_LIB_FOLDER)/libcurl.so,lib/.libs/libcurl.so.4)) else -$(eval $(call gb_ExternalPackage_add_file,curl,$(LIBO_LIB_FOLDER)/libcurl.so.4,lib/.libs/libcurl.so.4.6.0)) +$(eval $(call gb_ExternalPackage_add_file,curl,$(LIBO_LIB_FOLDER)/libcurl.so.4,lib/.libs/libcurl.so.4.7.0)) endif endif # $(DISABLE_DYNLOADING) diff --git a/external/curl/ExternalProject_curl.mk b/external/curl/ExternalProject_curl.mk index da61a5a36790..08d031fa8a9a 100644 --- a/external/curl/ExternalProject_curl.mk +++ b/external/curl/ExternalProject_curl.mk @@ -35,11 +35,13 @@ ifeq ($(SYSTEM_NSS),NO) curl_CPPFLAGS += -I$(call gb_UnpackedTarball_get_dir,nss)/dist/public/nss endif +# use --with-secure-transport on Mac OS X >10.5 and iOS to get a native UI for SSL certs for CMIS usage +# use --with-nss only on platforms other than Mac OS X and iOS $(call gb_ExternalProject_get_state_target,curl,build): $(call gb_ExternalProject_run,build,\ ./configure \ $(if $(filter IOS MACOSX,$(OS)),\ - --with-darwinssl,\ + --with-secure-transport,\ $(if $(ENABLE_NSS),--with-nss$(if $(SYSTEM_NSS),,="$(call gb_UnpackedTarball_get_dir,nss)/dist/out"),--without-nss)) \ --without-ssl --without-gnutls --without-polarssl --without-cyassl --without-axtls --without-mbedtls \ --enable-ftp --enable-http --enable-ipv6 \ @@ -47,7 +49,8 @@ $(call gb_ExternalProject_get_state_target,curl,build): --without-libssh2 --without-metalink --without-nghttp2 \ --without-libssh --without-brotli \ --without-ngtcp2 --without-quiche \ - --disable-ares \ + --without-zstd --without-hyper --without-gsasl --without-gssapi \ + --disable-mqtt --disable-ares \ --disable-dict --disable-file --disable-gopher --disable-imap \ --disable-ldap --disable-ldaps --disable-manual --disable-pop3 \ --disable-rtsp --disable-smb --disable-smtp --disable-telnet \ @@ -71,7 +74,7 @@ else ifeq ($(COM),MSC) $(call gb_ExternalProject_get_state_target,curl,build): $(call gb_ExternalProject_run,build,\ - CC="$(shell cygpath -w $(filter-out -%,$(CC))) $(filter -%,$(CC))" \ + CC="$(shell cygpath -w $(filter-out -%,$(CC))) $(filter -%,$(CC))" \ MAKEFLAGS= LIB="$(ILIB)" nmake -f Makefile.vc \ mode=dll \ VC=12 \ diff --git a/external/curl/curl-7.26.0_win-proxy.patch b/external/curl/curl-7.26.0_win-proxy.patch index 5361433a917b..5bb98fa04741 100644 --- a/external/curl/curl-7.26.0_win-proxy.patch +++ b/external/curl/curl-7.26.0_win-proxy.patch @@ -114,7 +114,7 @@ @@ -4663,6 +4739,7 @@ } if(proxy) - infof(conn->data, "Uses proxy env variable %s == '%s'\n", envp, proxy); + infof(data, "Uses proxy env variable %s == '%s'", envp, proxy); +#endif /* WIN32 */ return proxy; diff --git a/external/curl/curl-msvc-disable-protocols.patch.1 b/external/curl/curl-msvc-disable-protocols.patch.1 index c8747a5fcc1d..a6d06c69b004 100644 --- a/external/curl/curl-msvc-disable-protocols.patch.1 +++ b/external/curl/curl-msvc-disable-protocols.patch.1 @@ -2,18 +2,19 @@ disable protocols nobody needs in MSVC build --- curl/lib/config-win32.h.orig 2017-08-09 16:43:29.464000000 +0200 +++ curl/lib/config-win32.h 2017-08-09 16:47:38.549200000 +0200 -@@ -733,4 +733,19 @@ +@@ -733,4 +733,20 @@ # define ENABLE_IPV6 1 #endif +#define CURL_DISABLE_DICT 1 +#define CURL_DISABLE_FILE 1 -+//#undef CURL_DISABLE_FTP ++#undef CURL_DISABLE_FTP +#define CURL_DISABLE_GOPHER 1 -+//#undef CURL_DISABLE_HTTP ++#undef CURL_DISABLE_HTTP +#define CURL_DISABLE_IMAP 1 +#define CURL_DISABLE_LDAP 1 +#define CURL_DISABLE_LDAPS 1 ++#define CURL_DISABLE_MQTT 1 +#define CURL_DISABLE_POP3 1 +#define CURL_DISABLE_RTSP 1 +#define CURL_DISABLE_SMB 1 diff --git a/external/curl/zlib.patch.0 b/external/curl/zlib.patch.0 index 189e820d1afa..f4a0ad4b152f 100644 --- a/external/curl/zlib.patch.0 +++ b/external/curl/zlib.patch.0 @@ -54,8 +54,8 @@ clean_LIBS=$LIBS -ZLIB_LIBS="" AC_ARG_WITH(zlib, - AC_HELP_STRING([--with-zlib=PATH],[search for zlib in PATH]) - AC_HELP_STRING([--without-zlib],[disable use of zlib]), + AS_HELP_STRING([--with-zlib=PATH],[search for zlib in PATH]) + AS_HELP_STRING([--without-zlib],[disable use of zlib]), [OPT_ZLIB="$withval"]) if test "$OPT_ZLIB" = "no" ; then commit 4392bdb529f05b8b65459e32290129381b48af67 Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Tue May 25 10:44:13 2021 +0100 Commit: Gabor Kelemen <kelem...@ubuntu.com> CommitDate: Wed Jul 6 11:03:36 2022 +0200 upgrade to Expat 2.4.1 drop ubsan patch in favour of fix applied as https://github.com/libexpat/libexpat/pull/398 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116102 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.st...@allotropia.de> (cherry picked from commit 740d12d8a8294d4bfd28e6c3e4cf1e0ed560b198) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119422 Tested-by: Thorsten Behrens <thorsten.behr...@allotropia.de> Reviewed-by: Thorsten Behrens <thorsten.behr...@allotropia.de> Change-Id: I59eb9e24206b9a4cf323b7f7d48d8df0792a1c46 diff --git a/download.lst b/download.lst index 91aaf61bf591..60895d1a9fc2 100644 --- a/download.lst +++ b/download.lst @@ -8,8 +8,8 @@ EBOOK_MD5SUM := 2f1ceaf2ac8752ed278e175447d9b978 export EBOOK_TARBALL := libe-book-0.0.3.tar.bz2 ETONYEK_MD5SUM := 3c50bc60394d1f2675fbf9bd22581363 export ETONYEK_TARBALL := libetonyek-0.0.4.tar.bz2 -EXPAT_MD5SUM := 00858041acfea5757af55e6ee6b86231 -export EXPAT_TARBALL := expat-2.2.8.tar.bz2 +EXPAT_MD5SUM := 476cdf4b5e40280316fff36b2086a390 +export EXPAT_TARBALL := expat-2.4.1.tar.bz2 FREEHAND_MD5SUM := 496dd00028afcc19f896b01394769043 export FREEHAND_TARBALL := libfreehand-0.0.0.tar.bz2 GRAPHITE_MD5SUM := 9c499b8ec9f1b81fd0bb6a3b986f4b0f diff --git a/external/expat/expat-winapi.patch b/external/expat/expat-winapi.patch index b33c12b83b4c..bd4da1472fc8 100644 --- a/external/expat/expat-winapi.patch +++ b/external/expat/expat-winapi.patch @@ -11,3 +11,17 @@ # endif #endif /* not defined XML_STATIC */ +--- misc/expat-2.1.0/lib/xmlparse.c 2021-05-23 16:56:25.000000000 +0100 ++++ misc/build/expat-2.1.0/lib/xmlparse.c 2021-05-25 12:42:11.997173600 +0100 +@@ -92,6 +92,11 @@ + + #include <expat_config.h> + ++#ifdef _WIN32 ++# undef HAVE_GETRANDOM ++# undef HAVE_SYSCALL_GETRANDOM ++#endif ++ + #include "ascii.h" + #include "expat.h" + #include "siphash.h" commit 31080ab09c96eec6ad9dbd5de35b67a95163b39d Author: Michael Stahl <michael.st...@allotropia.de> AuthorDate: Fri May 21 13:33:26 2021 +0200 Commit: Gabor Kelemen <kelem...@ubuntu.com> CommitDate: Wed Jul 6 01:12:31 2022 +0200 libxml2: upgrade to release 2.9.12 Fixes: CVE-2021-3516 CVE-2021-3517 CVE-2021-3518 CVE-2021-3537 CVE-2021-3541 * external/libxml2/ubsan.patch.0: remove, fixed upstream Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115913 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.st...@allotropia.de> (cherry picked from commit bf0c6a98ae38cd2188d7f7e94f1563e5ce6a8ce4) Change-Id: I347dc854b862e78bde87d3e57cf5fdb584ca5673 diff --git a/download.lst b/download.lst index 9d3a12a1d302..91aaf61bf591 100644 --- a/download.lst +++ b/download.lst @@ -96,8 +96,8 @@ export LIBXMLSEC_TARBALL := 1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar. export LIBXSLT_MD5SUM := db8765c8d076f1b6caafd9f2542a304a export LIBXSLT_VERSION_MICRO := 34 export LIBXSLT_TARBALL := libxslt-1.1.$(LIBXSLT_VERSION_MICRO).tar.gz -export LIBXML_MD5SUM := 52f4a18bcdbb167b0dd33c21c4c2094a -export LIBXML_VERSION_MICRO := 10 +export LIBXML_MD5SUM := 90311833ea38efc9189a95ff14eb43c8 +export LIBXML_VERSION_MICRO := 12 export LIBXML_TARBALL := libxml2-2.9.$(LIBXML_VERSION_MICRO)_repack.tar.gz export LPSOLVE_TARBALL := 26b3e95ddf3d9c077c480ea45874b3b8-lp_solve_5.5.tar.gz export MARIADB_TARBALL := 05f84c95b610c21c5fd510d10debcabf-mariadb-native-client-1.0.0.tar.bz2 diff --git a/external/libxml2/libxml2-config.patch.1 b/external/libxml2/libxml2-config.patch.1 index 7ad61923ebee..28ac8f2809a7 100644 --- a/external/libxml2/libxml2-config.patch.1 +++ b/external/libxml2/libxml2-config.patch.1 @@ -18,9 +18,9 @@ Hack the xml2-config to return paths into WORKDIR. +exec_prefix=${WORKDIR}/UnpackedTarball/xml2 +includedir=${WORKDIR}/UnpackedTarball/xml2/include +libdir=${WORKDIR}/UnpackedTarball/xml2/.libs + cflags= + libs= - usage() - { @@ -67,7 +72,8 @@ ;; diff --git a/external/libxml2/libxml2-global-symbols.patch b/external/libxml2/libxml2-global-symbols.patch index 49ee73731562..cfec9c530281 100644 --- a/external/libxml2/libxml2-global-symbols.patch +++ b/external/libxml2/libxml2-global-symbols.patch @@ -14,8 +14,8 @@ LIBXML2_2.6.32 { @@ -2231,3 +2231,43 @@ - xmlHashDefaultDeallocator; - } LIBXML2_2.9.1; + xmlPopOutputCallbacks; + } LIBXML2_2.9.8; +# HACK: export global variable accessor functions (globals.h) +LIBXML2_GLOBAL_VARIABLES { commit f6e6fd3bf3159581677f8556b7d2396ff09179b1 Author: Stephan Bergmann <sberg...@redhat.com> AuthorDate: Tue Feb 16 09:30:09 2021 +0100 Commit: Gabor Kelemen <kelem...@ubuntu.com> CommitDate: Wed Jul 6 00:29:52 2022 +0200 Improve checkExtension Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110970 Reviewed-by: Mike Kaganski <mike.kagan...@collabora.com> Tested-by: Jenkins (cherry picked from commit f456c4dacf700e064e112ef068ff7edb04239754) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110922 Reviewed-by: Michael Stahl <michael.st...@allotropia.de> (cherry picked from commit f19d95986756412e5d72047656eec17a720c5e57) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113088 Tested-by: Michael Stahl <michael.st...@allotropia.de> Change-Id: Iff416a9c5930ad5903f7ee51a2abbc94d5f40800 diff --git a/shell/source/win32/SysShExec.cxx b/shell/source/win32/SysShExec.cxx index 0cd5230cb7a2..d84a80cbaf27 100644 --- a/shell/source/win32/SysShExec.cxx +++ b/shell/source/win32/SysShExec.cxx @@ -395,22 +395,29 @@ void SAL_CALL CSysShExec::execute( const OUString& aCommand, const OUString& aPa static_cast< XSystemShellExecute* >( this ), 0); } } + pathname = SAL_U(path); + // ShellExecuteExW appears to ignore trailing dots, so remove them: + while (pathname.endsWith(".", &pathname)) {} auto const n = pathname.lastIndexOf('.'); if (n > pathname.lastIndexOf('\\')) { auto const ext = pathname.copy(n + 1); - OUString env; - if (osl_getEnvironment(OUString("PATHEXT").pData, &env.pData) != osl_Process_E_None) - { - SAL_INFO("shell", "osl_getEnvironment(PATHEXT) failed"); - } - if (!(checkExtension(ext, env) - && checkExtension( - ext, - ".COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.PY;.CLASS;.JAR"))) - { - throw css::lang::IllegalArgumentException( - "XSystemShellExecute.execute, cannot process <" + aCommand + ">", - static_cast< XSystemShellExecute* >( this ), 0); + if (!ext.isEmpty()) { + OUString env; + if (osl_getEnvironment(OUString("PATHEXT").pData, &env.pData) + != osl_Process_E_None) + { + SAL_INFO("shell", "osl_getEnvironment(PATHEXT) failed"); + } + if (!(checkExtension(ext, env) + && checkExtension( + ext, + ".COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.PY;.CLASS;" + ".JAR;.APPLICATION;.LNK;.SCR"))) + { + throw css::lang::IllegalArgumentException( + "XSystemShellExecute.execute, cannot process <" + aCommand + ">", {}, + 0); + } } } } commit 6b084dbd9d718583cac3a1cdd6a14d0ffc985a5e Author: Michael Stahl <michael.st...@allotropia.de> AuthorDate: Wed Feb 17 12:24:08 2021 +0100 Commit: Gabor Kelemen <kelem...@ubuntu.com> CommitDate: Wed Jul 6 00:03:03 2022 +0200 python3: add patch for CVE-2021-3177 Looks like Python 3.5 is EOL, so backport the patch. Change-Id: I9ba397b3ed7e5f4ee4f78b144d822ce260ca9fb4 diff --git a/external/python3/0001-3.6-closes-bpo-42938-Replace-snprintf-with-Python-un.patch.1 b/external/python3/0001-3.6-closes-bpo-42938-Replace-snprintf-with-Python-un.patch.1 new file mode 100644 index 000000000000..fdcc5cb65267 --- /dev/null +++ b/external/python3/0001-3.6-closes-bpo-42938-Replace-snprintf-with-Python-un.patch.1 @@ -0,0 +1,175 @@ +From 34df10a9a16b38d54421eeeaf73ec89828563be7 Mon Sep 17 00:00:00 2001 +From: Benjamin Peterson <benja...@python.org> +Date: Mon, 18 Jan 2021 15:11:46 -0600 +Subject: [PATCH] [3.6] closes bpo-42938: Replace snprintf with Python unicode + formatting in ctypes param reprs. (GH-24250) + +(cherry picked from commit 916610ef90a0d0761f08747f7b0905541f0977c7) + +Co-authored-by: Benjamin Peterson <benja...@python.org> +--- + Lib/ctypes/test/test_parameters.py | 43 +++++++++++++++ + .../2021-01-18-09-27-31.bpo-42938.4Zn4Mp.rst | 2 + + Modules/_ctypes/callproc.c | 55 +++++++------------ + 3 files changed, 66 insertions(+), 34 deletions(-) + create mode 100644 Misc/NEWS.d/next/Security/2021-01-18-09-27-31.bpo-42938.4Zn4Mp.rst + +diff --git a/Lib/ctypes/test/test_parameters.py b/Lib/ctypes/test/test_parameters.py +index e4c25fd880..531894fdec 100644 +--- a/Lib/ctypes/test/test_parameters.py ++++ b/Lib/ctypes/test/test_parameters.py +@@ -201,6 +201,49 @@ def __dict__(self): + self.assertRaises(ArgumentError, func, 99) + + ++ def test_parameter_repr(self): ++ from ctypes import ( ++ c_bool, ++ c_char, ++ c_wchar, ++ c_byte, ++ c_ubyte, ++ c_short, ++ c_ushort, ++ c_int, ++ c_uint, ++ c_long, ++ c_ulong, ++ c_longlong, ++ c_ulonglong, ++ c_float, ++ c_double, ++ c_longdouble, ++ c_char_p, ++ c_wchar_p, ++ c_void_p, ++ ) ++ self.assertRegex(repr(c_bool.from_param(True)), r"^<cparam '\?' at 0x[A-Fa-f0-9]+>$") ++ self.assertEqual(repr(c_char.from_param(97)), "<cparam 'c' ('a')>") ++ self.assertRegex(repr(c_wchar.from_param('a')), r"^<cparam 'u' at 0x[A-Fa-f0-9]+>$") ++ self.assertEqual(repr(c_byte.from_param(98)), "<cparam 'b' (98)>") ++ self.assertEqual(repr(c_ubyte.from_param(98)), "<cparam 'B' (98)>") ++ self.assertEqual(repr(c_short.from_param(511)), "<cparam 'h' (511)>") ++ self.assertEqual(repr(c_ushort.from_param(511)), "<cparam 'H' (511)>") ++ self.assertRegex(repr(c_int.from_param(20000)), r"^<cparam '[li]' \(20000\)>$") ++ self.assertRegex(repr(c_uint.from_param(20000)), r"^<cparam '[LI]' \(20000\)>$") ++ self.assertRegex(repr(c_long.from_param(20000)), r"^<cparam '[li]' \(20000\)>$") ++ self.assertRegex(repr(c_ulong.from_param(20000)), r"^<cparam '[LI]' \(20000\)>$") ++ self.assertRegex(repr(c_longlong.from_param(20000)), r"^<cparam '[liq]' \(20000\)>$") ++ self.assertRegex(repr(c_ulonglong.from_param(20000)), r"^<cparam '[LIQ]' \(20000\)>$") ++ self.assertEqual(repr(c_float.from_param(1.5)), "<cparam 'f' (1.5)>") ++ self.assertEqual(repr(c_double.from_param(1.5)), "<cparam 'd' (1.5)>") ++ self.assertEqual(repr(c_double.from_param(1e300)), "<cparam 'd' (1e+300)>") ++ self.assertRegex(repr(c_longdouble.from_param(1.5)), r"^<cparam ('d' \(1.5\)|'g' at 0x[A-Fa-f0-9]+)>$") ++ self.assertRegex(repr(c_char_p.from_param(b'hihi')), "^<cparam 'z' \(0x[A-Fa-f0-9]+\)>$") ++ self.assertRegex(repr(c_wchar_p.from_param('hihi')), "^<cparam 'Z' \(0x[A-Fa-f0-9]+\)>$") ++ self.assertRegex(repr(c_void_p.from_param(0x12)), r"^<cparam 'P' \(0x0*12\)>$") ++ + ################################################################ + + if __name__ == '__main__': +diff --git a/Misc/NEWS.d/next/Security/2021-01-18-09-27-31.bpo-42938.4Zn4Mp.rst b/Misc/NEWS.d/next/Security/2021-01-18-09-27-31.bpo-42938.4Zn4Mp.rst +new file mode 100644 +index 0000000000..7df65a156f +--- /dev/null ++++ b/Misc/NEWS.d/next/Security/2021-01-18-09-27-31.bpo-42938.4Zn4Mp.rst +@@ -0,0 +1,2 @@ ++Avoid static buffers when computing the repr of :class:`ctypes.c_double` and ++:class:`ctypes.c_longdouble` values. +diff --git a/Modules/_ctypes/callproc.c b/Modules/_ctypes/callproc.c +index 70e416b950..9fcf95f543 100644 +--- a/Modules/_ctypes/callproc.c ++++ b/Modules/_ctypes/callproc.c +@@ -451,54 +451,43 @@ PyCArg_dealloc(PyCArgObject *self) + static PyObject * + PyCArg_repr(PyCArgObject *self) + { +- char buffer[256]; + switch(self->tag) { + case 'b': + case 'B': +- sprintf(buffer, "<cparam '%c' (%d)>", ++ return PyUnicode_FromFormat("<cparam '%c' (%d)>", + self->tag, self->value.b); +- break; + case 'h': + case 'H': +- sprintf(buffer, "<cparam '%c' (%d)>", ++ return PyUnicode_FromFormat("<cparam '%c' (%d)>", + self->tag, self->value.h); +- break; + case 'i': + case 'I': +- sprintf(buffer, "<cparam '%c' (%d)>", ++ return PyUnicode_FromFormat("<cparam '%c' (%d)>", + self->tag, self->value.i); +- break; + case 'l': + case 'L': +- sprintf(buffer, "<cparam '%c' (%ld)>", ++ return PyUnicode_FromFormat("<cparam '%c' (%ld)>", + self->tag, self->value.l); +- break; + + #ifdef HAVE_LONG_LONG + case 'q': + case 'Q': +- sprintf(buffer, +-#ifdef MS_WIN32 +- "<cparam '%c' (%I64d)>", +-#else +- "<cparam '%c' (%qd)>", +-#endif ++ return PyUnicode_FromFormat("<cparam '%c' (%qd)>", + self->tag, self->value.q); +- break; + #endif + case 'd': +- sprintf(buffer, "<cparam '%c' (%f)>", +- self->tag, self->value.d); +- break; +- case 'f': +- sprintf(buffer, "<cparam '%c' (%f)>", +- self->tag, self->value.f); +- break; +- ++ case 'f': { ++ PyObject *f = PyFloat_FromDouble((self->tag == 'f') ? self->value.f : self->value.d); ++ if (f == NULL) { ++ return NULL; ++ } ++ { PyObject *result = PyUnicode_FromFormat("<cparam '%c' (%R)>", self->tag, f); ++ Py_DECREF(f); ++ return result; } ++ } + case 'c': +- sprintf(buffer, "<cparam '%c' (%c)>", ++ return PyUnicode_FromFormat("<cparam '%c' ('%c')>", + self->tag, self->value.c); +- break; + + /* Hm, are these 'z' and 'Z' codes useful at all? + Shouldn't they be replaced by the functionality of c_string +@@ -507,16 +495,14 @@ PyCArg_repr(PyCArgObject *self) + case 'z': + case 'Z': + case 'P': +- sprintf(buffer, "<cparam '%c' (%p)>", ++ return PyUnicode_FromFormat("<cparam '%c' (%p)>", + self->tag, self->value.p); + break; + + default: +- sprintf(buffer, "<cparam '%c' at %p>", +- self->tag, self); +- break; ++ return PyUnicode_FromFormat("<cparam '%c' at %p>", ++ (unsigned char)self->tag, (void *)self); + } +- return PyUnicode_FromString(buffer); + } + + static PyMemberDef PyCArgType_members[] = { +-- +2.29.2 + diff --git a/external/python3/UnpackedTarball_python3.mk b/external/python3/UnpackedTarball_python3.mk index 8b4d089c00a5..f57bc676fb82 100644 --- a/external/python3/UnpackedTarball_python3.mk +++ b/external/python3/UnpackedTarball_python3.mk @@ -31,6 +31,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,python3,\ external/python3/python-3.3.3-msvc2012-winxp.patch.1 \ external/python3/python-3.3.5-pyexpat-symbols.patch.1 \ external/python3/python-3.3.5-vs2013.patch.1 \ + external/python3/0001-3.6-closes-bpo-42938-Replace-snprintf-with-Python-un.patch.1 \ )) ifneq ($(filter DRAGONFLY FREEBSD LINUX NETBSD OPENBSD SOLARIS,$(OS)),) commit a4ae57188eda3f0426902bea9e1f9c1f9a18bc55 Author: Michael Stahl <michael.st...@allotropia.de> AuthorDate: Tue Jan 19 15:38:05 2021 +0100 Commit: Gabor Kelemen <kelem...@ubuntu.com> CommitDate: Tue Jul 5 23:20:41 2022 +0200 postgresql: upgrade to release 13.1 Fixes CVE-2020-25694, plus a bunch more CVE that don't look relevant. * --with-krb5 no longer exists, neither does --disable-shared * remove internal-zlib.patch.1: zlib is only used by pg_* tools / contrib/pgcrypto * remove postgresql-libs-leak.patch: some relic from pre-gbuild times, not clear what the point is for static libs * remove postgresql-9.2.1-libreoffice.patch: another dmake .mk file relic, and the win32 nmake build system was removed * add postgres-msvc-build.patch.1 to fix Cygwin perl and openssl * on WNT, libpq.dll is now built, no longer static lib postgresql: fix mistake in RepositoryExternal.mk Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109640 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.st...@allotropia.de> (cherry picked from commit 234833f7823a1424b62c93e145f0cfe2c6b6efd5) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109698 Reviewed-by: Thorsten Behrens <thorsten.behr...@allotropia.de> (cherry picked from commit 1362bf7fa2957d34a7cef18dd95ede22cc42787f) Change-Id: Ic0232a28801b2f604d9f4e33d5621ae3362defaa diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk index e78979bb4c7e..f2d4dd62ce4e 100644 --- a/RepositoryExternal.mk +++ b/RepositoryExternal.mk @@ -2333,9 +2333,15 @@ endef else # !SYSTEM_POSTGRESQL +ifeq ($(OS),WNT) +$(eval $(call gb_Helper_register_packages_for_install,postgresqlsdbc,\ + postgresql \ +)) +endif # WNT + define gb_LinkTarget__use_postgresql -$(call gb_LinkTarget_use_external_project,$(1),postgresql) +$(call gb_LinkTarget_use_external_project,$(1),postgresql,full) $(call gb_LinkTarget_set_include,$(1),\ -I$(call gb_UnpackedTarball_get_dir,postgresql)/src/include \ @@ -2343,19 +2349,21 @@ $(call gb_LinkTarget_set_include,$(1),\ $$(INCLUDE) \ ) +ifeq ($(OS),WNT) + $(call gb_LinkTarget_add_libs,$(1),\ - $(call gb_UnpackedTarball_get_dir,postgresql)/src/interfaces/libpq/libpq$(gb_StaticLibrary_PLAINEXT) \ + $(call gb_UnpackedTarball_get_dir,postgresql)/$(if $(MSVC_USE_DEBUG_RUNTIME),Debug,Release)/libpq/libpq.lib \ ) -ifeq ($(OS)$(COM),WNTMSC) -$(call gb_LinkTarget_use_external,$(1),openssl) +else # WNT -$(call gb_LinkTarget_use_system_win32_libs,$(1),\ - secur32 \ - ws2_32 \ +$(call gb_LinkTarget_add_libs,$(1),\ + $(call gb_UnpackedTarball_get_dir,postgresql)/src/interfaces/libpq/libpq$(gb_StaticLibrary_PLAINEXT) \ + $(call gb_UnpackedTarball_get_dir,postgresql)/src/common/libpgcommon$(gb_StaticLibrary_PLAINEXT) \ + $(call gb_UnpackedTarball_get_dir,postgresql)/src/port/libpgport$(gb_StaticLibrary_PLAINEXT) \ ) -endif +endif # WNT endef diff --git a/download.lst b/download.lst index 32d64c381c21..9d3a12a1d302 100644 --- a/download.lst +++ b/download.lst @@ -109,7 +109,7 @@ export OPENLDAP_TARBALL := 804c6cb5698db30b75ad0ff1c25baefd-openldap-2.4.31.tgz export ORCUS_TARBALL := ea2acaf140ae40a87a952caa75184f4d-liborcus-0.5.1.tar.bz2 export PIXMAN_TARBALL := c63f411b3ad147db2bcce1bf262a0e02-pixman-0.24.4.tar.bz2 export POPPLER_TARBALL := 1cd27460f7e3379d1eb109cfd7bcdb39-poppler-0.22.5.tar.gz -export POSTGRESQL_TARBALL := c0b4799ea9850eae3ead14f0a60e9418-postgresql-9.2.1.tar.bz2 +export POSTGRESQL_TARBALL := postgresql-13.1.tar.bz2 export RAPTOR_TARBALL := 4ceb9316488b0ea01acf011023cf7fff-raptor2-2.0.9.tar.gz export RASQAL_TARBALL := b12c5f9cfdb6b04efce5a4a186b8416b-rasqal-0.9.30.tar.gz export REDLAND_TARBALL := 32f8e1417a64d3c6f2c727f9053f55ea-redland-1.0.16.tar.gz diff --git a/external/postgresql/ExternalPackage_postgresql.mk b/external/postgresql/ExternalPackage_postgresql.mk new file mode 100644 index 000000000000..f6c9a9bb6deb --- /dev/null +++ b/external/postgresql/ExternalPackage_postgresql.mk @@ -0,0 +1,16 @@ +# -*- 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_ExternalPackage_ExternalPackage,postgresql,postgresql)) + +$(eval $(call gb_ExternalPackage_use_external_project,postgresql,postgresql)) + +$(eval $(call gb_ExternalPackage_add_file,postgresql,$(LIBO_LIB_FOLDER)/libpq.dll,$(if $(MSVC_USE_DEBUG_RUNTIME),Debug,Release)/libpq/libpq.dll)) + +# vim: set noet sw=4 ts=4: diff --git a/external/postgresql/ExternalProject_postgresql.mk b/external/postgresql/ExternalProject_postgresql.mk index 3afa7b80ff28..d0c6c34e768f 100644 --- a/external/postgresql/ExternalProject_postgresql.mk +++ b/external/postgresql/ExternalProject_postgresql.mk @@ -12,7 +12,6 @@ $(eval $(call gb_ExternalProject_ExternalProject,postgresql)) $(eval $(call gb_ExternalProject_use_externals,postgresql,\ openldap \ openssl \ - zlib \ )) $(eval $(call gb_ExternalProject_register_targets,postgresql,\ @@ -23,8 +22,9 @@ 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) + MSBFLAGS=/p:Platform=$(if $(filter X86_64,$(CPUNAME)),x64,Win32) \ + $(PERL) build.pl $(if $(MSVC_USE_DEBUG_RUNTIME),Debug,Release) libpq \ + ,src/tools/msvc) else @@ -49,20 +49,24 @@ postgresql_LDFLAGS += \ endif +# note: as of 13.1, zlib is not needed by libpq +# passing MAKELEVEL=0 is required to find internal headers $(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)) \ + --without-readline \ + --without-zlib \ + --with-ldap \ + $(if $(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)) \ + $(if $(WITH_GSSAPI),--with-gssapi)) \ + CFLAGS="-fPIC" \ 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) + && MAKEFLAGS= && $(MAKE) MAKELEVEL=0 all-static-lib) endif diff --git a/external/postgresql/Module_postgresql.mk b/external/postgresql/Module_postgresql.mk index 80c835639717..a6155349daaa 100644 --- a/external/postgresql/Module_postgresql.mk +++ b/external/postgresql/Module_postgresql.mk @@ -18,4 +18,10 @@ $(eval $(call gb_Module_add_targets,postgresql,\ endif +ifeq ($(OS),WNT) +$(eval $(call gb_Module_add_targets,postgresql,\ + ExternalPackage_postgresql \ +)) +endif # WNT + # vim: set noet sw=4 ts=4: diff --git a/external/postgresql/UnpackedTarball_postgresql.mk b/external/postgresql/UnpackedTarball_postgresql.mk index 3d0fe6cf6c26..c95aef25f663 100644 --- a/external/postgresql/UnpackedTarball_postgresql.mk +++ b/external/postgresql/UnpackedTarball_postgresql.mk @@ -11,12 +11,10 @@ $(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 \ + external/postgresql/postgres-msvc-build.patch.1 \ )) +$(eval $(call gb_UnpackedTarball_add_file,postgresql,src/tools/msvc/config.pl,external/postgresql/config.pl)) + # vim: set noet sw=4 ts=4: diff --git a/external/postgresql/config.pl b/external/postgresql/config.pl new file mode 100644 index 000000000000..ae163ebbd166 --- /dev/null +++ b/external/postgresql/config.pl @@ -0,0 +1 @@ +$config->{openssl} = "$ENV{WORKDIR}/UnpackedTarball/openssl"; diff --git a/external/postgresql/postgres-msvc-build.patch.1 b/external/postgresql/postgres-msvc-build.patch.1 new file mode 100644 index 000000000000..4ccd82aa28fb --- /dev/null +++ b/external/postgresql/postgres-msvc-build.patch.1 @@ -0,0 +1,110 @@ +Cygwin perl calls /bin/sh which can't resolve to .exe + +Also Cygwin perl has $Config{osname} different from MSWin32, and why even check that? + +--- postgresql/src/tools/msvc/build.pl.orig 2021-01-19 17:36:09.801463500 +0100 ++++ postgresql/src/tools/msvc/build.pl 2021-01-19 17:36:20.426821300 +0100 +@@ -55,13 +55,13 @@ + if ($buildwhat) + { + system( +- "msbuild $buildwhat.vcxproj /verbosity:normal $msbflags /p:Configuration=$bconf" ++ "msbuild.exe $buildwhat.vcxproj /verbosity:normal $msbflags /p:Configuration=$bconf" + ); + } + else + { + system( +- "msbuild pgsql.sln /verbosity:normal $msbflags /p:Configuration=$bconf" ++ "msbuild.exe pgsql.sln /verbosity:normal $msbflags /p:Configuration=$bconf" + ); + } + +--- postgresql/src/tools/msvc/Project.pm.orig 2021-01-19 17:59:18.799237700 +0100 ++++ postgresql/src/tools/msvc/Project.pm 2021-01-19 17:59:48.487711700 +0100 +@@ -22,7 +22,7 @@ + my $self = { + name => $name, + type => $type, +- guid => $^O eq "MSWin32" ? Win32::GuidGen() : 'FAKE', ++ guid => Win32::GuidGen(), + files => {}, + references => [], + libraries => [], +--- postgresql/src/tools/msvc/Solution.pm.orig 2021-01-19 18:03:04.594229100 +0100 ++++ postgresql/src/tools/msvc/Solution.pm 2021-01-19 18:04:13.677610100 +0100 +@@ -59,7 +59,7 @@ + { + my $self = shift; + +- if ($^O eq "MSWin32") ++ if (1) #($^O eq "MSWin32") + { + # Examine CL help output to determine if we are in 32 or 64-bit mode. + my $output = `cl /? 2>&1`; +@@ -1081,7 +1081,7 @@ + } + if ($fld ne "") + { +- $flduid{$fld} = $^O eq "MSWin32" ? Win32::GuidGen() : 'FAKE'; ++ $flduid{$fld} = Win32::GuidGen(); + print $sln <<EOF; + Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "$fld", "$fld", "$flduid{$fld}" + EndProject +--- postgresql/src/tools/msvc/VSObjectFactory.pm.orig 2021-01-19 18:06:42.633421700 +0100 ++++ postgresql/src/tools/msvc/VSObjectFactory.pm 2021-01-19 18:06:28.663523200 +0100 +@@ -111,7 +111,7 @@ + + sub DetermineVisualStudioVersion + { +- if ($^O eq "MSWin32") ++ if (1) # ($^O eq "MSWin32") + { + # To determine version of Visual Studio we use nmake as it has + # existed for a long time and still exists in current Visual +--- postgresql/src/tools/msvc/Mkvcbuild.pm.orig 2021-01-19 18:23:59.830153900 +0100 ++++ postgresql/src/tools/msvc/Mkvcbuild.pm 2021-01-19 18:24:04.095411300 +0100 +@@ -9,7 +9,7 @@ + use warnings; + + use Carp; +-use if ($^O eq "MSWin32"), 'Win32'; ++use Win32; + use Project; + use Solution; + use Cwd; +--- postgresql/src/tools/msvc/Solution.pm.orig 2021-01-19 20:27:21.366237600 +0100 ++++ postgresql/src/tools/msvc/Solution.pm 2021-01-19 20:28:17.773662900 +0100 +@@ -126,7 +126,8 @@ + # openssl.exe is in the specified directory. + # Quote the .exe name in case it has spaces + my $opensslcmd = +- qq("$self->{options}->{openssl}\\bin\\openssl.exe" version 2>&1); ++ qq("$self->{options}->{openssl}\\out32dll\\openssl.exe" version 2>&1); ++ print "$opensslcmd"; + my $sslout = `$opensslcmd`; + + $? >> 8 == 0 +@@ -964,8 +964,8 @@ + # On both Win32 and Win64 the same library + # names are used without a debugging context. + $dbgsuffix = 0; +- $libsslpath = '\lib\libssl.lib'; +- $libcryptopath = '\lib\libcrypto.lib'; ++ $libsslpath = '\libssl.lib'; ++ $libcryptopath = '\libcrypto.lib'; + } + + $proj->AddLibrary($self->{options}->{openssl} . $libsslpath, +@@ -990,9 +990,9 @@ + # to be here, so don't ask for it in last + # parameter. + $proj->AddLibrary( +- $self->{options}->{openssl} . '\lib\ssleay32.lib', 0); ++ $self->{options}->{openssl} . '\out32dll\ssleay32.lib', 0); + $proj->AddLibrary( +- $self->{options}->{openssl} . '\lib\libeay32.lib', 0); ++ $self->{options}->{openssl} . '\out32dll\libeay32.lib', 0); + } + } + } diff --git a/external/postgresql/postgresql-9.2.1-autoreconf.patch b/external/postgresql/postgresql-9.2.1-autoreconf.patch deleted file mode 100644 index 9cbf84f252c8..000000000000 --- a/external/postgresql/postgresql-9.2.1-autoreconf.patch +++ /dev/null @@ -1,521 +0,0 @@ ---- 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 deleted file mode 100644 index 174ee8551a78..000000000000 --- a/external/postgresql/postgresql-9.2.1-libreoffice.patch +++ /dev/null @@ -1,74 +0,0 @@ ---- 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,14 +11,12 @@ - !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 - -@@ -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 -@@ -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 deleted file mode 100644 index 8224137f1f97..000000000000 --- a/external/postgresql/postgresql-libs-leak.patch +++ /dev/null @@ -1,40 +0,0 @@ -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 ... etc. - the rest is truncated