RepositoryExternal.mk | 13 bin/lo-all-static-libs | 1 config_host.mk.in | 2 configure.ac | 34 +- download.lst | 34 +- external/curl/ExternalPackage_curl.mk | 2 external/curl/ExternalProject_curl.mk | 3 external/curl/UnpackedTarball_curl.mk | 9 external/curl/asan-poison-nsspem.patch.0 | 11 external/curl/clang-cl.patch.0 | 2 external/curl/configurable-z-option.patch.0 | 20 + external/curl/curl-7.26.0_win-proxy.patch | 121 -------- external/curl/curl-msvc-disable-protocols.patch.1 | 4 external/curl/curl-msvc-zlib.patch.1 | 16 + external/curl/curl-msvc.patch.1 | 4 external/curl/curl-nss.patch.1 | 11 external/curl/zlib.patch.0 | 12 external/expat/expat-winapi.patch | 13 external/libjpeg-turbo/ExternalProject_libjpeg-turbo.mk | 43 --- external/libjpeg-turbo/Module_libjpeg-turbo.mk | 2 external/libjpeg-turbo/StaticLibrary_libjpeg-turbo.mk | 214 +++++++++++++++ external/libjpeg-turbo/UnpackedTarball_libjpeg-turbo.mk | 14 external/libjpeg-turbo/jconfig.h | 86 ++++++ external/libjpeg-turbo/jconfigint.h | 51 +++ external/libjpeg-turbo/jpeg-turbo.build.patch.1 | 58 ---- external/libjpeg-turbo/jpeg-turbo.win_build.patch.1 | 54 --- external/libjpeg-turbo/ubsan.patch | 39 -- external/libxml2/ExternalPackage_libxml2.mk | 2 external/libxml2/UnpackedTarball_libxml2.mk | 3 external/libxml2/libxml2-android.patch | 6 external/libxml2/libxml2-config.patch.1 | 43 --- external/libxml2/xml2-config.in | 28 + external/nss/UnpackedTarball_nss.mk | 3 external/nss/asan.patch.1 | 6 external/nss/clang-cl.patch.0 | 23 + external/nss/macos-dlopen.patch.0 | 2 external/nss/nss-3.13.5-zlib-werror.patch | 13 external/nss/nss-android.patch.1 | 8 external/nss/nss-bz1646594.patch.1 | 2 external/nss/nss-ios.patch | 44 +-- external/nss/nss-restore-manual-pre-dependencies.patch.1 | 2 external/nss/nss-win32-make.patch.1 | 4 external/nss/nss.aix.patch | 10 external/nss/nss.bzmozilla1238154.patch | 2 external/nss/nss.cygwin64.in32bit.patch | 2 external/nss/nss.nowerror.patch | 2 external/nss/nss.patch | 22 - external/nss/nss.utf8bom.patch.1 | 4 external/nss/nss.vs2015.patch | 2 external/nss/nss.vs2015.pdb.patch | 2 external/nss/nss.windows.patch | 6 external/nss/nss_macosx.patch | 12 external/nss/ubsan.patch.0 | 11 external/openssl/UnpackedTarball_openssl.mk | 2 external/openssl/configurable-z-option.patch.0 | 34 ++ external/openssl/openssl-no-_umul128-on-aarch64.patch.1 | 58 ++++ external/openssl/openssl-no-multilib.patch.0 | 4 external/openssl/opensslios.patch | 12 sc/source/core/tool/interpr7.cxx | 2 solenv/bin/concat-deps.c | 5 solenv/gbuild/LinkTarget.mk | 77 +++++ solenv/gbuild/StaticLibrary.mk | 2 solenv/gbuild/TargetLocations.mk | 3 solenv/gbuild/platform/android.mk | 1 solenv/gbuild/platform/com_MSC_class.mk | 1 solenv/gbuild/platform/iOS.mk | 2 solenv/gbuild/platform/macosx.mk | 2 solenv/gbuild/platform/solaris.mk | 2 solenv/gbuild/platform/unxgcc.mk | 2 test/source/xmltesttools.cxx | 2 ucb/source/ucp/ftp/ftpcontent.cxx | 15 + unoxml/source/xpath/xpathobject.cxx | 2 72 files changed, 826 insertions(+), 539 deletions(-)
New commits: commit 19cb0a5da0b4c93f7e5f6255985ee1e3e75600d5 Author: Michael Stahl <michael.st...@allotropia.de> AuthorDate: Wed Oct 26 14:58:09 2022 +0200 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Sat Mar 11 08:47:36 2023 +0000 ucb: FTP UCP: report CURLE_URL_MALFORMAT as IllegalIdentifierException With curl 7.86, the test JunitTest_ucb_complex starts to fail: .ftp://noname:nopasswd@*nohost.invalid now executing open com.sun.star.ucb.InteractiveAugmentedIOException: at com.sun.proxy.$Proxy15.execute(Unknown Source) at complex.ucb.UCB.executeCommand(UCB.java:63) at complex.ucb.UCB.checkWrongFtpConnection(UCB.java:119) because curl_easy_perform() now returns CURLE_URL_MALFORMAT where previously it was CURLE_COULDNT_RESOLVE_HOST. Map this to an exception the test expects. Change-Id: Ifdb672946726ddb4cb4d9426b7e70eefac63f040 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/141877 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.st...@allotropia.de> (cherry picked from commit 022e476af44c0dfc97403dc0f3a3b63e731903e6) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/141844 Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/148678 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoff...@gmail.com> Reviewed-by: Andras Timar <andras.ti...@collabora.com> diff --git a/ucb/source/ucp/ftp/ftpcontent.cxx b/ucb/source/ucp/ftp/ftpcontent.cxx index e655c6cbe162..dc6284976dfb 100644 --- a/ucb/source/ucp/ftp/ftpcontent.cxx +++ b/ucb/source/ucp/ftp/ftpcontent.cxx @@ -62,6 +62,7 @@ #include <com/sun/star/ucb/UnsupportedDataSinkException.hpp> #include <com/sun/star/ucb/OpenCommandArgument2.hpp> #include <com/sun/star/ucb/UnsupportedOpenModeException.hpp> +#include <com/sun/star/ucb/IllegalIdentifierException.hpp> #include <com/sun/star/ucb/InteractiveNetworkConnectException.hpp> #include <com/sun/star/ucb/InteractiveNetworkResolveNameException.hpp> #include <com/sun/star/ucb/InteractiveIOException.hpp> @@ -225,6 +226,7 @@ enum ACTION { NOACTION, THROWAUTHENTICATIONREQUEST, THROWACCESSDENIED, THROWINTERACTIVECONNECT, + THROWMALFORMED, THROWRESOLVENAME, THROWQUOTE, THROWNOFILE, @@ -343,6 +345,15 @@ Any SAL_CALL FTPContent::execute( const Command& aCommand, Environment); break; } + case THROWMALFORMED: + { + IllegalIdentifierException ex; + aRet <<= ex; + ucbhelper::cancelCommandExecution( + aRet, + Environment); + break; + } case THROWRESOLVENAME: { InteractiveNetworkResolveNameException excep; @@ -537,6 +548,10 @@ Any SAL_CALL FTPContent::execute( const Command& aCommand, { if(e.code() == CURLE_COULDNT_CONNECT) action = THROWINTERACTIVECONNECT; + else if (e.code() == CURLE_URL_MALFORMAT) + { + action = THROWMALFORMED; + } else if(e.code() == CURLE_COULDNT_RESOLVE_HOST ) action = THROWRESOLVENAME; else if(e.code() == CURLE_FTP_USER_PASSWORD_INCORRECT || commit ac8f98ffc2daa644bc46858e4093beb9856b78fb Author: Andras Timar <andras.ti...@collabora.com> AuthorDate: Fri Mar 10 12:09:59 2023 +0100 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Sat Mar 11 08:47:27 2023 +0000 update 3rd party libs * curl 7.88.1 * expat 2.5.0 * libjpeg-turbo 2.1.2 * libxml2 2.10.3 * nss 3.88.1 * openssl 1.1.1t * libpng 1.6.39 * zlib 1.2.13 Change-Id: I3ece36a221af44612519f964d580affa9004a0f9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/148612 Tested-by: Andras Timar <andras.ti...@collabora.com> Reviewed-by: Andras Timar <andras.ti...@collabora.com> diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk index 7bd24aa31801..40e45964078b 100644 --- a/RepositoryExternal.mk +++ b/RepositoryExternal.mk @@ -397,6 +397,10 @@ endif # SYSTEM_ZLIB ifneq ($(SYSTEM_LIBJPEG),) define gb_LinkTarget__use_libjpeg +$(call gb_LinkTarget_set_include,$(1),\ + $$(INCLUDE) \ + $(LIBJPEG_CFLAGS) \ +) $(call gb_LinkTarget_add_libs,$(1),$(LIBJPEG_LIBS)) $(call gb_LinkTarget_set_ldflags,$(1),\ $$(filter-out -L/usr/lib/jvm%,$$(T_LDFLAGS)) \ @@ -410,16 +414,15 @@ else define gb_LinkTarget__use_libjpeg $(call gb_LinkTarget_set_include,$(1),\ - $(LIBJPEG_CFLAGS) \ + -I$(call gb_UnpackedTarball_get_dir,libjpeg-turbo) \ $$(INCLUDE) \ ) -$(call gb_LinkTarget_add_libs,$(1),$(LIBJPEG_LIBS)) -$(call gb_LinkTarget_use_external_project,$(1),libjpeg-turbo,full) +$(call gb_LinkTarget_use_static_libraries,$(1),libjpeg-turbo) endef define gb_ExternalProject__use_libjpeg -$(call gb_ExternalProject_use_external_project,$(1),libjpeg-turbo) +$(call gb_ExternalProject_use_static_libraries,$(1),libjpeg-turbo) endef @@ -2819,7 +2822,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-$(gb_MSBUILD_PLATFORM)-$(gb_MSBUILD_CONFIG)-dll-ipv6-sspi-schannel/lib/libcurl$(if $(MSVC_USE_DEBUG_RUNTIME),_debug).lib \ + $(call gb_UnpackedTarball_get_dir,curl)/builds/libcurl-vc12-$(gb_MSBUILD_PLATFORM)-$(gb_MSBUILD_CONFIG)-dll-zlib-static-ipv6-sspi-schannel/lib/libcurl$(if $(MSVC_USE_DEBUG_RUNTIME),_debug).lib \ ) else $(call gb_LinkTarget_add_libs,$(1),\ diff --git a/bin/lo-all-static-libs b/bin/lo-all-static-libs index 455861da5a73..fbe6d7010624 100755 --- a/bin/lo-all-static-libs +++ b/bin/lo-all-static-libs @@ -111,7 +111,6 @@ echo $INSTDIR/$LIBO_LIB_FOLDER/lib*.a \ $WORKDIR/LinkTarget/StaticLibrary/lib*.a \ $oslibs \ $WORKDIR/UnpackedTarball/icu/source/lib/*.a \ - $WORKDIR/UnpackedTarball/libjpeg-turbo/.libs/*.a \ $WORKDIR/UnpackedTarball/liblangtag/liblangtag/.libs/*.a \ $WORKDIR/UnpackedTarball/lcms2/src/.libs/*.a \ $WORKDIR/UnpackedTarball/libabw/src/lib/.libs/*.a \ diff --git a/config_host.mk.in b/config_host.mk.in index 96723061447c..a8a292fba2df 100644 --- a/config_host.mk.in +++ b/config_host.mk.in @@ -447,6 +447,7 @@ export MWAW_LIBS=$(gb_SPACE)@MWAW_LIBS@ export MYTHES_CFLAGS=$(gb_SPACE)@MYTHES_CFLAGS@ export MYTHES_LIBS=$(gb_SPACE)@MYTHES_LIBS@ export NASM=@NASM@ +export NAFLAGS=@NAFLAGS@ export NEON_CFLAGS=$(gb_SPACE)@NEON_CFLAGS@ export NEON_LIBS=$(gb_SPACE)@NEON_LIBS@ export NEON_VERSION=@NEON_VERSION@ @@ -540,6 +541,7 @@ export SERF_CFLAGS=$(gb_SPACE)@SERF_CFLAGS@ export SERF_LIBS=$(gb_SPACE)@SERF_LIBS@ export SHA256SUM=@SHA256SUM@ export SHOWINCLUDES_PREFIX=@SHOWINCLUDES_PREFIX@ +export SIZEOF_SIZE_T=@SIZEOF_SIZE_T@ export SOLARINC=@SOLARINC@ export SORT=@SORT@ export SPLIT_APP_MODULES=@SPLIT_APP_MODULES@ diff --git a/configure.ac b/configure.ac index e82845bcbc83..f62e782dd859 100644 --- a/configure.ac +++ b/configure.ac @@ -6697,12 +6697,14 @@ if test "$_os" != "WINNT"; then AC_CHECK_SIZEOF(long long) AC_CHECK_SIZEOF(double) AC_CHECK_SIZEOF(void*) + AC_CHECK_SIZEOF(size_t) SAL_TYPES_SIZEOFSHORT=$ac_cv_sizeof_short SAL_TYPES_SIZEOFINT=$ac_cv_sizeof_int SAL_TYPES_SIZEOFLONG=$ac_cv_sizeof_long SAL_TYPES_SIZEOFLONGLONG=$ac_cv_sizeof_long_long SAL_TYPES_SIZEOFPOINTER=$ac_cv_sizeof_voidp + SIZEOF_SIZE_T=$ac_cv_sizeof_size_t dnl Allow build without AC_CHECK_ALIGNOF, grrr m4_pattern_allow([AC_CHECK_ALIGNOF]) @@ -6764,8 +6766,10 @@ else SAL_TYPES_SIZEOFLONGLONG=8 if test $WIN_HOST_BITS -eq 32; then SAL_TYPES_SIZEOFPOINTER=4 + SIZEOF_SIZE_T=4 else SAL_TYPES_SIZEOFPOINTER=8 + SIZEOF_SIZE_T=8 fi SAL_TYPES_ALIGNMENT2=2 SAL_TYPES_ALIGNMENT4=4 @@ -6773,6 +6777,7 @@ else LFS_CFLAGS='' fi AC_SUBST(LFS_CFLAGS) +AC_SUBST(SIZEOF_SIZE_T) AC_DEFINE_UNQUOTED(SAL_TYPES_SIZEOFSHORT,$SAL_TYPES_SIZEOFSHORT) AC_DEFINE_UNQUOTED(SAL_TYPES_SIZEOFINT,$SAL_TYPES_SIZEOFINT) @@ -8936,12 +8941,6 @@ else SYSTEM_LIBJPEG= AC_MSG_RESULT([internal, libjpeg-turbo]) BUILD_TYPE="$BUILD_TYPE LIBJPEG_TURBO" - LIBJPEG_CFLAGS="-I${WORKDIR}/UnpackedTarball/libjpeg-turbo" - if test "$COM" = "MSC"; then - LIBJPEG_LIBS="${WORKDIR}/UnpackedTarball/libjpeg-turbo/.libs/libjpeg.lib" - else - LIBJPEG_LIBS="-L${WORKDIR}/UnpackedTarball/libjpeg-turbo/.libs -ljpeg" - fi case "$host_cpu" in x86_64 | amd64 | i*86 | x86 | ia32) @@ -9036,17 +9035,17 @@ else AC_MSG_CHECKING([for object file format specifier (NAFLAGS) ]) case "$objfmt" in - MSOMF) NAFLAGS='-fobj -DOBJ32';; - Win32-COFF) NAFLAGS='-fwin32 -DWIN32';; - Win64-COFF) NAFLAGS='-fwin64 -DWIN64 -D__x86_64__';; - COFF) NAFLAGS='-fcoff -DCOFF';; - a.out) NAFLAGS='-faout -DAOUT';; - BSD-a.out) NAFLAGS='-faoutb -DAOUT';; - ELF) NAFLAGS='-felf -DELF';; - ELF64) NAFLAGS='-felf64 -DELF -D__x86_64__';; - RDF) NAFLAGS='-frdf -DRDF';; - Mach-O) NAFLAGS='-fmacho -DMACHO';; - Mach-O64) NAFLAGS='-fmacho64 -DMACHO -D__x86_64__';; + MSOMF) NAFLAGS='-fobj -DOBJ32 -DPIC';; + Win32-COFF) NAFLAGS='-fwin32 -DWIN32 -DPIC';; + Win64-COFF) NAFLAGS='-fwin64 -DWIN64 -D__x86_64__ -DPIC';; + COFF) NAFLAGS='-fcoff -DCOFF -DPIC';; + a.out) NAFLAGS='-faout -DAOUT -DPIC';; + BSD-a.out) NAFLAGS='-faoutb -DAOUT -DPIC';; + ELF) NAFLAGS='-felf -DELF -DPIC';; + ELF64) NAFLAGS='-felf64 -DELF -D__x86_64__ -DPIC';; + RDF) NAFLAGS='-frdf -DRDF -DPIC';; + Mach-O) NAFLAGS='-fmacho -DMACHO -DPIC';; + Mach-O64) NAFLAGS='-fmacho64 -DMACHO -D__x86_64__ -DPIC';; esac AC_MSG_RESULT([$NAFLAGS]) @@ -9112,6 +9111,7 @@ _EOS fi AC_SUBST(NASM) +AC_SUBST(NAFLAGS) AC_SUBST(LIBJPEG_CFLAGS) AC_SUBST(LIBJPEG_LIBS) AC_SUBST(SYSTEM_LIBJPEG) diff --git a/download.lst b/download.lst index 359f5b8c6b9a..273e577fbdf8 100644 --- a/download.lst +++ b/download.lst @@ -39,8 +39,8 @@ export CPPUNIT_SHA256SUM := 89c5c6665337f56fd2db36bc3805a5619709d51fb136e5193707 export CPPUNIT_TARBALL := cppunit-1.15.1.tar.gz export CT2N_SHA256SUM := 71b238efd2734be9800af07566daea8d6685aeed28db5eb5fa0e6453f4d85de3 export CT2N_TARBALL := 1f467e5bb703f12cbbb09d5cf67ecf4a-converttexttonumber-1-5-0.oxt -export CURL_SHA256SUM := 2cb9c2356e7263a1272fd1435ef7cdebf2cd21400ec287b068396deb705c22c4 -export CURL_TARBALL := curl-7.83.1.tar.xz +export CURL_SHA256SUM := 1dae31b2a7c1fe269de99c0c31bb488346aab3459b5ffca909d6938249ae415f +export CURL_TARBALL := curl-7.88.1.tar.xz export EBOOK_SHA256SUM := 7e8d8ff34f27831aca3bc6f9cc532c2f90d2057c778963b884ff3d1e34dfe1f9 export EBOOK_TARBALL := libe-book-0.1.3.tar.xz export EPOXY_SHA256SUM := 002958c5528321edd53440235d3c44e71b5b1e09b9177e8daf677450b6c4433d @@ -52,8 +52,8 @@ export EPUBGEN_TARBALL := libepubgen-0.1.1.tar.xz export ETONYEK_SHA256SUM := b430435a6e8487888b761dc848b7981626eb814884963ffe25eb26a139301e9a export ETONYEK_VERSION_MICRO := 10 export ETONYEK_TARBALL := libetonyek-0.1.$(ETONYEK_VERSION_MICRO).tar.xz -export EXPAT_SHA256SUM := de55794b7a9bc214852fdc075beaaecd854efe1361597e6268ee87946951289b -export EXPAT_TARBALL := expat-2.4.6.tar.xz +export EXPAT_SHA256SUM := ef2420f0232c087801abf705e89ae65f6257df6b7931d37846a193ef2e8cdcbe +export EXPAT_TARBALL := expat-2.5.0.tar.xz export FIREBIRD_SHA256SUM := 6994be3555e23226630c587444be19d309b25b0fcf1f87df3b4e3f88943e5860 export FIREBIRD_TARBALL := Firebird-3.0.0.32483-0.tar.bz2 export FONTCONFIG_SHA256SUM := 19e5b1bc9d013a52063a44e1307629711f0bfef35b9aca16f9c793971e2eb1e5 @@ -162,8 +162,8 @@ export JFREEREPORT_LIBXML_SHA256SUM := 7d2797fe9f79a77009721e3f14fa4a1dec17a6d70 export JFREEREPORT_LIBXML_TARBALL := ace6ab49184e329db254e454a010f56d-libxml-1.1.7.zip export JFREEREPORT_SAC_SHA256SUM := 085f2112c51fa8c1783fac12fbd452650596415121348393bb51f0f7e85a9045 export JFREEREPORT_SAC_TARBALL := 39bb3fcea1514f1369fcfc87542390fd-sacjava-1.3.zip -export LIBJPEG_TURBO_SHA256SUM := b24890e2bb46e12e72a79f7e965f409f4e16466d00e1dd15d93d73ee6b592523 -export LIBJPEG_TURBO_TARBALL := libjpeg-turbo-1.5.3.tar.gz +export LIBJPEG_TURBO_SHA256SUM := 09b96cb8cbff9ea556a9c2d173485fd19488844d55276ed4f42240e1e2073ce5 +export LIBJPEG_TURBO_TARBALL := libjpeg-turbo-2.1.2.tar.gz export LANGTAGREG_SHA256SUM := ce80e8face06bf2ada363e0c159e3f990c4116fdae9232ca43e6369aa82bf16a export LANGTAGREG_TARBALL := language-subtag-registry-2021-03-05.tar.bz2 export LANGUAGETOOL_SHA256SUM := 48c87e41636783bba438b65fd895821e369ed139e1465fac654323ad93c5a82d @@ -192,9 +192,9 @@ export LIBWEBP_SHA256SUM := 808b98d2f5b84e9b27fdef6c5372dac769c3bda4502febbfa503 export LIBWEBP_TARBALL := libwebp-1.2.1.tar.gz export XMLSEC_SHA256SUM := 2d84360b03042178def1d9ff538acacaed2b3a27411db7b2874f1612ed71abc8 export XMLSEC_TARBALL := xmlsec1-1.2.30.tar.gz -export LIBXML_SHA256SUM := 60d74a257d1ccec0475e749cba2f21559e48139efba6ff28224357c7c798dfee -export LIBXML_VERSION_MICRO := 14 -export LIBXML_TARBALL := libxml2-2.9.$(LIBXML_VERSION_MICRO).tar.xz +export LIBXML_SHA256SUM := 5d2cc3d78bec3dbe212a9d7fa629ada25a7da928af432c93060ff5c17ee28a9c +export LIBXML_VERSION_MICRO := 3 +export LIBXML_TARBALL := libxml2-2.10.$(LIBXML_VERSION_MICRO).tar.xz export LIBXSLT_SHA256SUM := 8247f33e9a872c6ac859aa45018bc4c4d00b97e2feac9eebc10c93ce1f34dd79 export LIBXSLT_VERSION_MICRO := 35 export LIBXSLT_TARBALL := libxslt-1.1.$(LIBXSLT_VERSION_MICRO).tar.xz @@ -217,8 +217,8 @@ export MYTHES_SHA256SUM := 1e81f395d8c851c3e4e75b568e20fa2fa549354e75ab397f9de4b export MYTHES_TARBALL := a8c2c5b8f09e7ede322d5c602ff6a4b6-mythes-1.2.4.tar.gz export NEON_SHA256SUM := cf1ee3ac27a215814a9c80803fcee4f0ede8466ebead40267a9bd115e16a8678 export NEON_TARBALL := neon-0.31.2.tar.gz -export NSS_SHA256SUM := 07a9e5b70f121a62706140d4cacc3006d3efb869da40f3a2bf7a65d37847f4d9 -export NSS_TARBALL := nss-3.73-with-nspr-4.32.tar.gz +export NSS_SHA256SUM := fcfa26d2738ec5b0cf72ab4be784eac832a75132cda2e295799c04d62a93607a +export NSS_TARBALL := nss-3.88.1-with-nspr-4.35.tar.gz export ODFGEN_SHA256SUM := 55200027fd46623b9bdddd38d275e7452d1b0ff8aeddcad6f9ae6dc25f610625 export ODFGEN_VERSION_MICRO := 8 export ODFGEN_TARBALL := libodfgen-0.1.$(ODFGEN_VERSION_MICRO).tar.xz @@ -228,8 +228,8 @@ export OFFICEOTRON_SHA256SUM := f2443f27561af52324eee03a1892d9f569adc8db9e7bca55 export OFFICEOTRON_JAR := 8249374c274932a21846fa7629c2aa9b-officeotron-0.7.4-master.jar export OPENLDAP_SHA256SUM := 99f37d6747d88206c470067eda624d5e48c1011e943ec0ab217bae8712e22f34 export OPENLDAP_TARBALL := openldap-2.4.59.tgz -export OPENSSL_SHA256SUM := d7939ce614029cdff0b6c20f0e2e5703158a489a72b2507b8bd51bf8c8fd10ca -export OPENSSL_TARBALL := openssl-1.1.1q.tar.gz +export OPENSSL_SHA256SUM := 8dee9b24bdb1dcbf0c3d1e9b02fb8f6bf22165e807f45adeb7c9677536859d3b +export OPENSSL_TARBALL := openssl-1.1.1t.tar.gz export ORCUS_SHA256SUM := c700d1325f744104d9fca0d5a019434901e9d51a16eedfb05792f90a298587a4 export ORCUS_TARBALL := liborcus-0.16.1.tar.bz2 export OWNCLOUD_ANDROID_LIB_SHA256SUM := b18b3e3ef7fae6a79b62f2bb43cc47a5346b6330f6a383dc4be34439aca5e9fb @@ -240,8 +240,8 @@ export PDFIUM_SHA256SUM := eca406d47ac7e2a84dcc86f93c08f96e591d409589e881477fa75 export PDFIUM_TARBALL := pdfium-4306.tar.bz2 export PIXMAN_SHA256SUM := 21b6b249b51c6800dc9553b65106e1e37d0e25df942c90531d4c3997aa20a88e export PIXMAN_TARBALL := e80ebae4da01e77f68744319f01d52a3-pixman-0.34.0.tar.gz -export LIBPNG_SHA256SUM := 505e70834d35383537b6491e7ae8641f1a4bed1876dbfe361201fc80868d88ca -export LIBPNG_TARBALL := libpng-1.6.37.tar.xz +export LIBPNG_SHA256SUM := 1f4696ce70b4ee5f85f1e1623dc1229b210029fa4b7aee573df3e2ba7b036937 +export LIBPNG_TARBALL := libpng-1.6.39.tar.xz export POPPLER_SHA256SUM := 016dde34e5f868ea98a32ca99b643325a9682281500942b7113f4ec88d20e2f3 export POPPLER_TARBALL := poppler-21.01.0.tar.xz export POSTGRESQL_SHA256SUM := 9b81067a55edbaabc418aacef457dd8477642827499560b00615a6ea6c13f6b3 @@ -289,8 +289,8 @@ export WPS_VERSION_MICRO := 12 export WPS_TARBALL := libwps-0.4.$(WPS_VERSION_MICRO).tar.xz export XSLTML_SHA256SUM := 75823776fb51a9c526af904f1503a7afaaab900fba83eda64f8a41073724c870 export XSLTML_TARBALL := a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip -export ZLIB_SHA256SUM := 7db46b8d7726232a621befaab4a1c870f00a90805511c0e0090441dac57def18 -export ZLIB_TARBALL := zlib-1.2.12.tar.xz +export ZLIB_SHA256SUM := d14c38e313afc35a9a8760dadf26042f51ea0f5d154b0630a31da0540107fb98 +export ZLIB_TARBALL := zlib-1.2.13.tar.xz export ZMF_SHA256SUM := 27051a30cb057fdb5d5de65a1f165c7153dc76e27fe62251cbb86639eb2caf22 export ZMF_TARBALL := libzmf-0.0.2.tar.xz diff --git a/external/curl/ExternalPackage_curl.mk b/external/curl/ExternalPackage_curl.mk index bda925939f46..ee0cf4501478 100644 --- a/external/curl/ExternalPackage_curl.mk +++ b/external/curl/ExternalPackage_curl.mk @@ -14,7 +14,7 @@ $(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-$(gb_MSBUILD_PLATFORM)-$(gb_MSBUILD_CONFIG)-dll-ipv6-sspi-schannel/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-$(gb_MSBUILD_PLATFORM)-$(gb_MSBUILD_CONFIG)-dll-zlib-static-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) diff --git a/external/curl/ExternalProject_curl.mk b/external/curl/ExternalProject_curl.mk index 4f4e87b318f7..0cd16eebe405 100644 --- a/external/curl/ExternalProject_curl.mk +++ b/external/curl/ExternalProject_curl.mk @@ -44,7 +44,7 @@ $(call gb_ExternalProject_get_state_target,curl,build): $(if $(filter iOS MACOSX,$(OS)),\ --with-secure-transport,\ $(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 \ + --without-openssl --without-gnutls --without-polarssl --without-cyassl --without-axtls --without-mbedtls \ --enable-ftp --enable-http --enable-ipv6 \ --without-libidn2 --without-libpsl --without-librtmp \ --without-libssh2 --without-metalink --without-nghttp2 \ @@ -88,6 +88,7 @@ $(call gb_ExternalProject_get_state_target,curl,build): ENABLE_IPV6=yes \ ENABLE_SSPI=yes \ ENABLE_WINSSL=yes \ + WITH_ZLIB=static \ ,winbuild) $(call gb_Trace_EndRange,curl,EXTERNAL) diff --git a/external/curl/UnpackedTarball_curl.mk b/external/curl/UnpackedTarball_curl.mk index 2cdfbfc08632..e78adabb8d07 100644 --- a/external/curl/UnpackedTarball_curl.mk +++ b/external/curl/UnpackedTarball_curl.mk @@ -21,9 +21,10 @@ $(eval $(call gb_UnpackedTarball_fix_end_of_line,curl,\ $(eval $(call gb_UnpackedTarball_add_patches,curl,\ external/curl/curl-msvc.patch.1 \ + external/curl/curl-msvc-zlib.patch.1 \ external/curl/curl-msvc-disable-protocols.patch.1 \ - external/curl/curl-7.26.0_win-proxy.patch \ external/curl/zlib.patch.0 \ + external/curl/configurable-z-option.patch.0 \ )) ifeq ($(SYSTEM_NSS),) @@ -38,4 +39,10 @@ $(eval $(call gb_UnpackedTarball_add_patches,curl, \ )) endif +ifneq ($(filter -fsanitize=%,$(CC)),) +$(eval $(call gb_UnpackedTarball_add_patches,curl, \ + external/curl/asan-poison-nsspem.patch.0 \ +)) +endif + # vim: set noet sw=4 ts=4: diff --git a/external/curl/asan-poison-nsspem.patch.0 b/external/curl/asan-poison-nsspem.patch.0 new file mode 100644 index 000000000000..b348d44ee573 --- /dev/null +++ b/external/curl/asan-poison-nsspem.patch.0 @@ -0,0 +1,11 @@ +--- lib/vtls/nss.c ++++ lib/vtls/nss.c +@@ -1926,7 +1926,7 @@ + + PK11_SetPasswordFunc(nss_get_password); + +- result = nss_load_module(&pem_module, pem_library, "PEM"); ++ result = CURLE_FAILED_INIT; + PR_Unlock(nss_initlock); + if(result == CURLE_FAILED_INIT) + infof(data, "WARNING: failed to load NSS PEM library %s. Using " diff --git a/external/curl/clang-cl.patch.0 b/external/curl/clang-cl.patch.0 index 2fbb10c2a9aa..5dfb19d5ba59 100644 --- a/external/curl/clang-cl.patch.0 +++ b/external/curl/clang-cl.patch.0 @@ -1,6 +1,6 @@ --- winbuild/MakefileBuild.vc +++ winbuild/MakefileBuild.vc -@@ -60,7 +60,7 @@ +@@ -52,7 +52,7 @@ !ELSE CC_NODEBUG = $(CC) /O2 /DNDEBUG CC_DEBUG = $(CC) /Od /D_DEBUG /RTC1 /Z7 /LDd diff --git a/external/curl/configurable-z-option.patch.0 b/external/curl/configurable-z-option.patch.0 new file mode 100644 index 000000000000..84516ad21917 --- /dev/null +++ b/external/curl/configurable-z-option.patch.0 @@ -0,0 +1,20 @@ +--- winbuild/MakefileBuild.vc.sav 2021-11-13 11:43:40.756226600 +0000 ++++ winbuild/MakefileBuild.vc 2021-11-13 11:52:08.921692300 +0000 +@@ -47,7 +47,7 @@ + + !IF "$(VC)"=="6" + CC_NODEBUG = $(CC) /O2 /DNDEBUG +-CC_DEBUG = $(CC) /Od /Gm /Zi /D_DEBUG /GZ ++CC_DEBUG = $(CC) /Od /Gm $(DEBUG_FLAGS_VALUE) /D_DEBUG /GZ + CFLAGS = /I. /I../lib /I../include /nologo /W4 /GX /DWIN32 /YX /FD /c /DBUILDING_LIBCURL + !ELSE + CC_NODEBUG = $(CC) /O2 /DNDEBUG +@@ -64,7 +64,7 @@ + # Instead of id: just create an archive, that contains all objects + LNKLIB = lib.exe + +-CFLAGS_PDB = /Zi ++CFLAGS_PDB = $(DEBUG_FLAGS_VALUE) + LFLAGS_PDB = /incremental:no /opt:ref,icf /DEBUG + + CFLAGS_LIBCURL_STATIC = /DCURL_STATICLIB diff --git a/external/curl/curl-7.26.0_win-proxy.patch b/external/curl/curl-7.26.0_win-proxy.patch deleted file mode 100644 index 1c5469a35479..000000000000 --- a/external/curl/curl-7.26.0_win-proxy.patch +++ /dev/null @@ -1,121 +0,0 @@ ---- curl/winbuild/MakefileBuild.vc.orig 2017-10-23 17:15:22.969492548 +0200 -+++ curl/winbuild/MakefileBuild.vc 2017-10-23 17:16:38.491490679 +0200 -@@ -72,7 +72,7 @@ - - CFLAGS_LIBCURL_STATIC = /DCURL_STATICLIB - --WIN_LIBS = ws2_32.lib wldap32.lib advapi32.lib crypt32.lib -+WIN_LIBS = ws2_32.lib wldap32.lib advapi32.lib crypt32.lib winhttp.lib - - BASE_NAME = libcurl - BASE_NAME_DEBUG = $(BASE_NAME)_debug ---- curl-7.26.0/lib/url.c -+++ misc/build/curl-7.26.0/lib/url.c -@@ -78,6 +78,10 @@ - bool curl_win32_idn_to_ascii(const char *in, char **out); - #endif /* USE_LIBIDN2 */ - -+#ifdef _WIN32 -+#include <WinHttp.h> -+#endif -+ - #include "urldata.h" - #include "netrc.h" - -@@ -4586,6 +4590,21 @@ - } - - #ifndef CURL_DISABLE_HTTP -+#ifdef _WIN32 -+static char *wstrToCstr(LPWSTR wStr) -+{ -+ int bufSize; -+ char *out = NULL; -+ if(wStr) { -+ bufSize = WideCharToMultiByte( -+ CP_ACP, 0, wStr, -1, NULL, 0, NULL, NULL); -+ out = (char *)malloc(bufSize * sizeof(char)); -+ WideCharToMultiByte(CP_ACP, 0, wStr, -1, out, bufSize, NULL, NULL); -+ } -+ return out; -+} -+#endif -+ - /**************************************************************** - * Detect what (if any) proxy to use. Remember that this selects a host - * name and is not limited to HTTP proxies only. -@@ -4613,6 +4633,66 @@ - * For compatibility, the all-uppercase versions of these variables are - * checked if the lowercase versions don't exist. - */ -+#ifdef _WIN32 -+ char *no_proxy = NULL; -+ WINHTTP_CURRENT_USER_IE_PROXY_CONFIG *ieProxyConfig; -+ ieProxyConfig = (WINHTTP_CURRENT_USER_IE_PROXY_CONFIG *) -+ malloc(sizeof(WINHTTP_CURRENT_USER_IE_PROXY_CONFIG)); -+ if(WinHttpGetIEProxyConfigForCurrentUser(ieProxyConfig)) { -+ if(!ieProxyConfig->fAutoDetect) { -+ char *ieProxy; -+ char *ieNoProxy; -+ char *pos; -+ -+ ieProxy = wstrToCstr(ieProxyConfig->lpszProxy); -+ ieNoProxy = wstrToCstr(ieProxyConfig->lpszProxyBypass); -+ -+ /* Convert the ieNoProxy into a proper no_proxy value */ -+ if(ieNoProxy) { -+ no_proxy = strdup(ieNoProxy); -+ pos = strpbrk(no_proxy, "; "); -+ while(pos) { -+ no_proxy[pos-no_proxy] = ','; -+ pos = strpbrk(no_proxy, "; "); -+ } -+ } -+ -+ if(!check_noproxy(conn->host.name, no_proxy)) { -+ /* Look for the http proxy setting */ -+ char *tok; -+ char *saveptr; -+ -+ if(ieProxy) { -+ tok = strtok_s(ieProxy, ";", &saveptr); -+ if(!strchr(tok, '=')) { -+ proxy = strdup(ieProxy); -+ } -+ else { -+ do { -+ if(strncmp(tok, "http=", 5) == 0) { -+ /* We found HTTP proxy value, then use it */ -+ proxy = strdup(tok + 5); -+ } -+ tok = strtok_s(NULL, ";", &saveptr); -+ } -+ while(tok); -+ } -+ } -+ } -+ -+ free(ieProxy); -+ free(ieNoProxy); -+ } -+ else { -+ /* TODO Handle the Proxy config Auto Detection case */ -+ } -+ -+ GlobalFree(ieProxyConfig->lpszAutoConfigUrl); -+ GlobalFree(ieProxyConfig->lpszProxy); -+ GlobalFree(ieProxyConfig->lpszProxyBypass); -+ } -+ free(no_proxy); -+#else /* !_WIN32 */ - char proxy_env[128]; - const char *protop = conn->handler->scheme; - char *envp = proxy_env; -@@ -4663,6 +4739,7 @@ - } - if(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 a6d06c69b004..71ff0c01a028 100644 --- a/external/curl/curl-msvc-disable-protocols.patch.1 +++ b/external/curl/curl-msvc-disable-protocols.patch.1 @@ -2,7 +2,7 @@ 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,20 @@ +@@ -654,4 +654,20 @@ # define ENABLE_IPV6 1 #endif @@ -25,7 +25,7 @@ disable protocols nobody needs in MSVC build #endif /* HEADER_CURL_CONFIG_WIN32_H */ --- curl/winbuild/MakefileBuild.vc.orig 2017-10-23 23:41:21.393200000 +0200 +++ curl/winbuild/MakefileBuild.vc 2017-10-23 23:34:16.028000000 +0200 -@@ -431,7 +431,7 @@ +@@ -562,7 +562,7 @@ EXE_OBJS = $(CURL_OBJS) $(CURL_DIROBJ)\curl.res diff --git a/external/curl/curl-msvc-zlib.patch.1 b/external/curl/curl-msvc-zlib.patch.1 new file mode 100644 index 000000000000..a9ee0013d50b --- /dev/null +++ b/external/curl/curl-msvc-zlib.patch.1 @@ -0,0 +1,16 @@ +find internal zlib in nmake buildsystem + +--- curl/winbuild/MakefileBuild.vc.orig2 2021-10-27 20:44:48.685237000 +0200 ++++ curl/winbuild/MakefileBuild.vc 2021-10-27 20:47:23.792407400 +0200 +@@ -244,8 +244,9 @@ + ZLIB_LIB_DIR = $(ZLIB_PATH)\lib + ZLIB_LFLAGS = $(ZLIB_LFLAGS) "/LIBPATH:$(ZLIB_LIB_DIR)" + !ELSE +-ZLIB_INC_DIR = $(DEVEL_INCLUDE) +-ZLIB_LIB_DIR = $(DEVEL_LIB) ++ZLIB_INC_DIR = $(WORKDIR)/UnpackedTarball/zlib ++ZLIB_LIB_DIR = $(WORKDIR)/LinkTarget/StaticLibrary ++ZLIB_LFLAGS = $(ZLIB_LFLAGS) "/LIBPATH:$(ZLIB_LIB_DIR)" + !ENDIF + + # Depending on how zlib is built the libraries have different names, we diff --git a/external/curl/curl-msvc.patch.1 b/external/curl/curl-msvc.patch.1 index a5b79a8e9c49..54ad026ec8c7 100644 --- a/external/curl/curl-msvc.patch.1 +++ b/external/curl/curl-msvc.patch.1 @@ -2,7 +2,7 @@ MSVC: using SOLARINC --- curl/winbuild/MakefileBuild.vc.orig 2017-10-23 16:36:07.713550851 +0200 +++ curl/winbuild/MakefileBuild.vc 2017-10-23 16:38:19.301547594 +0200 -@@ -60,7 +60,7 @@ +@@ -52,7 +52,7 @@ !ELSE CC_NODEBUG = $(CC) /O2 /DNDEBUG CC_DEBUG = $(CC) /Od /D_DEBUG /RTC1 /Z7 /LDd @@ -11,7 +11,7 @@ MSVC: using SOLARINC !ENDIF LFLAGS = /nologo /machine:$(MACHINE) -@@ -300,11 +300,11 @@ +@@ -426,11 +426,11 @@ # CURL_XX macros are for the curl.exe command !IF "$(DEBUG)"=="yes" diff --git a/external/curl/curl-nss.patch.1 b/external/curl/curl-nss.patch.1 index d4dad7eba77e..2e8766b3d45f 100644 --- a/external/curl/curl-nss.patch.1 +++ b/external/curl/curl-nss.patch.1 @@ -1,12 +1,17 @@ diff -ur curl.org/configure curl/configure ---- curl.org/configure 2016-03-13 15:14:07.177000076 +0100 -+++ curl/configure 2016-03-13 15:16:44.132000076 +0100 -@@ -28216,7 +28216,7 @@ +--- curl.orig/configure 2023-02-20 16:11:55.000000000 +0900 ++++ curl/configure 2023-02-23 15:40:58.617432471 +0900 +@@ -28675,7 +28675,12 @@ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Using hard-wired libraries and compilation flags for NSS." >&5 printf "%s\n" "$as_me: WARNING: Using hard-wired libraries and compilation flags for NSS." >&2;} addld="-L$OPT_NSS/lib" - addlib="-lssl3 -lsmime3 -lnss3 -lplds4 -lplc4 -lnspr4" + addlib="-lssl3 -lsmime3 -lnss3 -lplds4 -lplc4 -lnspr4 -lnssutil3" ++ case $host_os in ++ *android*) ++ addlib="${addlib} -llog" ++ ;; ++ esac addcflags="-I$OPT_NSS/include" version="unknown" nssprefix=$OPT_NSS diff --git a/external/curl/zlib.patch.0 b/external/curl/zlib.patch.0 index e0f579f8675a..b4442ba262d1 100644 --- a/external/curl/zlib.patch.0 +++ b/external/curl/zlib.patch.0 @@ -1,6 +1,6 @@ --- configure +++ configure -@@ -22699,7 +22699,6 @@ +@@ -23035,7 +23035,6 @@ clean_CPPFLAGS=$CPPFLAGS clean_LDFLAGS=$LDFLAGS clean_LIBS=$LIBS @@ -8,7 +8,7 @@ # Check whether --with-zlib was given. if test ${with_zlib+y} -@@ -22709,6 +22708,7 @@ +@@ -23045,6 +23044,7 @@ if test "$OPT_ZLIB" = "no" ; then @@ -16,7 +16,7 @@ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: zlib disabled" >&5 printf "%s\n" "$as_me: WARNING: zlib disabled" >&2;} else -@@ -22716,6 +22716,21 @@ +@@ -23052,6 +23052,21 @@ OPT_ZLIB="" fi @@ -38,7 +38,7 @@ if test -z "$OPT_ZLIB" ; then if test -n "$PKG_CONFIG"; then -@@ -23011,6 +23026,7 @@ +@@ -23344,6 +23359,7 @@ printf "%s\n" "$as_me: found both libz and libz.h header" >&6;} curl_zlib_msg="enabled" fi @@ -48,7 +48,7 @@ if test x"$AMFIXLIB" = x1; then --- configure.ac +++ configure.ac -@@ -880,19 +880,30 @@ +@@ -1243,19 +1243,30 @@ clean_CPPFLAGS=$CPPFLAGS clean_LDFLAGS=$LDFLAGS clean_LIBS=$LIBS @@ -80,7 +80,7 @@ if test -z "$OPT_ZLIB" ; then CURL_CHECK_PKGCONFIG(zlib) -@@ -975,6 +986,7 @@ +@@ -1336,6 +1347,7 @@ AC_MSG_NOTICE([found both libz and libz.h header]) curl_zlib_msg="enabled" fi diff --git a/external/expat/expat-winapi.patch b/external/expat/expat-winapi.patch index 7eae7d5d6139..fed65644a732 100644 --- a/external/expat/expat-winapi.patch +++ b/external/expat/expat-winapi.patch @@ -1,6 +1,6 @@ ---- misc/expat-2.1.0/lib/expat_external.h 2009-11-16 08:53:17.375000000 +0000 -+++ misc/build/expat-2.1.0/lib/expat_external.h 2009-11-16 08:53:34.703125000 +0000 -@@ -81,10 +81,6 @@ +--- misc/expat-2.5.0/lib/expat_external.h 2022-10-25 01:32:54.000000000 +0900 ++++ misc/build/expat-2.5.0/lib/expat_external.h 2022-10-30 23:09:47.339459134 +0900 +@@ -88,10 +88,6 @@ # ifndef XML_BUILDING_EXPAT /* using Expat from an application */ @@ -11,12 +11,13 @@ # 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 -@@ -64,6 +64,8 @@ +--- misc/expat-2.5.0/lib/xmlparse.c 2022-10-26 00:09:08.000000000 +0900 ++++ misc/build/expat-2.5.0/lib/xmlparse.c 2022-10-30 23:09:01.843006341 +0900 +@@ -67,6 +67,9 @@ #endif #ifdef _WIN32 ++# undef HAVE_ARC4RANDOM_BUF +# undef HAVE_GETRANDOM +# undef HAVE_SYSCALL_GETRANDOM /* force stdlib to define rand_s() */ diff --git a/external/libjpeg-turbo/ExternalProject_libjpeg-turbo.mk b/external/libjpeg-turbo/ExternalProject_libjpeg-turbo.mk deleted file mode 100644 index a5cd4c57ddc7..000000000000 --- a/external/libjpeg-turbo/ExternalProject_libjpeg-turbo.mk +++ /dev/null @@ -1,43 +0,0 @@ -# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- -# -# This file is part of the LibreOffice project. -# -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. -# - -$(eval $(call gb_ExternalProject_ExternalProject,libjpeg-turbo)) - -$(eval $(call gb_ExternalProject_use_autoconf,libjpeg-turbo,configure)) -$(eval $(call gb_ExternalProject_use_autoconf,libjpeg-turbo,build)) - -$(eval $(call gb_ExternalProject_register_targets,libjpeg-turbo,\ - configure \ - build \ -)) - -$(call gb_ExternalProject_get_state_target,libjpeg-turbo,build) : $(call gb_ExternalProject_get_state_target,libjpeg-turbo,configure) - $(call gb_Trace_StartRange,libjpeg-turbo,EXTERNAL) - +$(call gb_ExternalProject_run,build,\ - $(MAKE) \ - ) - $(call gb_Trace_EndRange,libjpeg-turbo,EXTERNAL) - -$(call gb_ExternalProject_get_state_target,libjpeg-turbo,configure) : - $(call gb_Trace_StartRange,libjpeg-turbo,EXTERNAL) - $(call gb_ExternalProject_run,configure,\ - MAKE=$(MAKE) ./configure \ - --build=$(BUILD_PLATFORM) \ - --host=$(HOST_PLATFORM) \ - --with-pic \ - --enable-static \ - --disable-shared \ - --without-java \ - --without-turbojpeg \ - $(if $(NASM),,--without-simd) \ - CFLAGS='$(if $(debug),$(gb_DEBUGINFO_FLAGS)) $(if $(ENABLE_OPTIMIZED),$(gb_COMPILEROPTFLAGS),$(gb_COMPILERNOOPTFLAGS)) $(CFLAGS) $(gb_VISIBILITY_FLAGS)' \ - ) - $(call gb_Trace_EndRange,libjpeg-turbo,EXTERNAL) - -# vim: set noet sw=4 ts=4: diff --git a/external/libjpeg-turbo/Module_libjpeg-turbo.mk b/external/libjpeg-turbo/Module_libjpeg-turbo.mk index 137e7557bacf..29be90155880 100644 --- a/external/libjpeg-turbo/Module_libjpeg-turbo.mk +++ b/external/libjpeg-turbo/Module_libjpeg-turbo.mk @@ -10,8 +10,8 @@ $(eval $(call gb_Module_Module,libjpeg-turbo)) $(eval $(call gb_Module_add_targets,libjpeg-turbo,\ - ExternalProject_libjpeg-turbo \ UnpackedTarball_libjpeg-turbo \ + StaticLibrary_libjpeg-turbo \ )) # vim: set noet sw=4 ts=4: diff --git a/external/libjpeg-turbo/StaticLibrary_libjpeg-turbo.mk b/external/libjpeg-turbo/StaticLibrary_libjpeg-turbo.mk new file mode 100644 index 000000000000..0b6b3044d1b2 --- /dev/null +++ b/external/libjpeg-turbo/StaticLibrary_libjpeg-turbo.mk @@ -0,0 +1,214 @@ +# -*- 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://mozillarg/MPL/2.0/. +# + +$(eval $(call gb_StaticLibrary_StaticLibrary,libjpeg-turbo)) + +$(eval $(call gb_StaticLibrary_use_unpacked,libjpeg-turbo,libjpeg-turbo)) + +$(eval $(call gb_StaticLibrary_set_warnings_disabled,libjpeg-turbo)) + +$(eval $(call gb_StaticLibrary_set_include,libjpeg-turbo,\ + -I$(call gb_UnpackedTarball_get_dir,libjpeg-turbo) \ + $$(INCLUDE) \ +)) + +ifeq ($(OS),WNT) +$(eval $(call gb_StaticLibrary_add_cflags,libjpeg-turbo,\ + -DHAVE_INTRIN_H=1 \ +)) +endif + +$(eval $(call gb_StaticLibrary_add_cflags,libjpeg-turbo,\ + -DSIZEOF_SIZE_T=$(SIZEOF_SIZE_T) \ +)) + +ifeq ($(COM),GCC) +ifneq ($(ENABLE_OPTIMIZED),) +$(eval $(call gb_StaticLibrary_add_cflags,libjpeg-turbo,\ + -O3 \ +)) +endif +endif + +$(eval $(call gb_StaticLibrary_add_generated_cobjects,libjpeg-turbo,\ + UnpackedTarball/libjpeg-turbo/jcapimin \ + UnpackedTarball/libjpeg-turbo/jcapistd \ + UnpackedTarball/libjpeg-turbo/jccoefct \ + UnpackedTarball/libjpeg-turbo/jccolor \ + UnpackedTarball/libjpeg-turbo/jcdctmgr \ + UnpackedTarball/libjpeg-turbo/jchuff \ + UnpackedTarball/libjpeg-turbo/jcicc \ + UnpackedTarball/libjpeg-turbo/jcinit \ + UnpackedTarball/libjpeg-turbo/jcmainct \ + UnpackedTarball/libjpeg-turbo/jcmarker \ + UnpackedTarball/libjpeg-turbo/jcmaster \ + UnpackedTarball/libjpeg-turbo/jcomapi \ + UnpackedTarball/libjpeg-turbo/jcparam \ + UnpackedTarball/libjpeg-turbo/jcphuff \ + UnpackedTarball/libjpeg-turbo/jcprepct \ + UnpackedTarball/libjpeg-turbo/jcsample \ + UnpackedTarball/libjpeg-turbo/jctrans \ + UnpackedTarball/libjpeg-turbo/jdapimin \ + UnpackedTarball/libjpeg-turbo/jdapistd \ + UnpackedTarball/libjpeg-turbo/jdatadst \ + UnpackedTarball/libjpeg-turbo/jdatasrc \ + UnpackedTarball/libjpeg-turbo/jdcoefct \ + UnpackedTarball/libjpeg-turbo/jdcolor \ + UnpackedTarball/libjpeg-turbo/jddctmgr \ + UnpackedTarball/libjpeg-turbo/jdhuff \ + UnpackedTarball/libjpeg-turbo/jdicc \ + UnpackedTarball/libjpeg-turbo/jdinput \ + UnpackedTarball/libjpeg-turbo/jdmainct \ + UnpackedTarball/libjpeg-turbo/jdmarker \ + UnpackedTarball/libjpeg-turbo/jdmaster \ + UnpackedTarball/libjpeg-turbo/jdmerge \ + UnpackedTarball/libjpeg-turbo/jdphuff \ + UnpackedTarball/libjpeg-turbo/jdpostct \ + UnpackedTarball/libjpeg-turbo/jdsample \ + UnpackedTarball/libjpeg-turbo/jdtrans \ + UnpackedTarball/libjpeg-turbo/jerror \ + UnpackedTarball/libjpeg-turbo/jfdctflt \ + UnpackedTarball/libjpeg-turbo/jfdctfst \ + UnpackedTarball/libjpeg-turbo/jfdctint \ + UnpackedTarball/libjpeg-turbo/jidctflt \ + UnpackedTarball/libjpeg-turbo/jidctfst \ + UnpackedTarball/libjpeg-turbo/jidctint \ + UnpackedTarball/libjpeg-turbo/jidctred \ + UnpackedTarball/libjpeg-turbo/jquant1 \ + UnpackedTarball/libjpeg-turbo/jquant2 \ + UnpackedTarball/libjpeg-turbo/jutils \ + UnpackedTarball/libjpeg-turbo/jmemmgr \ + UnpackedTarball/libjpeg-turbo/jmemnobs \ + UnpackedTarball/libjpeg-turbo/jaricom \ + UnpackedTarball/libjpeg-turbo/jcarith \ + UnpackedTarball/libjpeg-turbo/jdarith \ +)) + +ifneq ($(NASM),) + +$(eval $(call gb_StaticLibrary_add_nasmflags,libjpeg-turbo,\ + -I$(call gb_UnpackedTarball_get_dir,libjpeg-turbo)/simd/nasm/ \ + -I$(dir $(call gb_UnpackedTarball_get_dir,libjpeg-turbo)/$(1)) \ +)) + +ifeq ($(CPUNAME),X86_64) + +$(eval $(call gb_StaticLibrary_add_cflags,libjpeg-turbo,\ + -DWITH_SIMD \ +)) + +$(eval $(call gb_StaticLibrary_add_generated_cobjects,libjpeg-turbo,\ + UnpackedTarball/libjpeg-turbo/simd/x86_64/jsimd \ +)) + +$(eval $(call gb_StaticLibrary_add_generated_nasmobjects,libjpeg-turbo,\ + UnpackedTarball/libjpeg-turbo/simd/x86_64/jsimdcpu.asm \ + UnpackedTarball/libjpeg-turbo/simd/x86_64/jfdctflt-sse.asm \ + UnpackedTarball/libjpeg-turbo/simd/x86_64/jccolor-sse2.asm \ + UnpackedTarball/libjpeg-turbo/simd/x86_64/jcgray-sse2.asm \ + UnpackedTarball/libjpeg-turbo/simd/x86_64/jchuff-sse2.asm \ + UnpackedTarball/libjpeg-turbo/simd/x86_64/jcphuff-sse2.asm \ + UnpackedTarball/libjpeg-turbo/simd/x86_64/jcsample-sse2.asm \ + UnpackedTarball/libjpeg-turbo/simd/x86_64/jdcolor-sse2.asm \ + UnpackedTarball/libjpeg-turbo/simd/x86_64/jdmerge-sse2.asm \ + UnpackedTarball/libjpeg-turbo/simd/x86_64/jdsample-sse2.asm \ + UnpackedTarball/libjpeg-turbo/simd/x86_64/jfdctfst-sse2.asm \ + UnpackedTarball/libjpeg-turbo/simd/x86_64/jfdctint-sse2.asm \ + UnpackedTarball/libjpeg-turbo/simd/x86_64/jidctflt-sse2.asm \ + UnpackedTarball/libjpeg-turbo/simd/x86_64/jidctfst-sse2.asm \ + UnpackedTarball/libjpeg-turbo/simd/x86_64/jidctint-sse2.asm \ + UnpackedTarball/libjpeg-turbo/simd/x86_64/jidctred-sse2.asm \ + UnpackedTarball/libjpeg-turbo/simd/x86_64/jquantf-sse2.asm \ + UnpackedTarball/libjpeg-turbo/simd/x86_64/jquanti-sse2.asm \ + UnpackedTarball/libjpeg-turbo/simd/x86_64/jccolor-avx2.asm \ + UnpackedTarball/libjpeg-turbo/simd/x86_64/jcgray-avx2.asm \ + UnpackedTarball/libjpeg-turbo/simd/x86_64/jcsample-avx2.asm \ + UnpackedTarball/libjpeg-turbo/simd/x86_64/jdcolor-avx2.asm \ + UnpackedTarball/libjpeg-turbo/simd/x86_64/jdmerge-avx2.asm \ + UnpackedTarball/libjpeg-turbo/simd/x86_64/jdsample-avx2.asm \ + UnpackedTarball/libjpeg-turbo/simd/x86_64/jfdctint-avx2.asm \ + UnpackedTarball/libjpeg-turbo/simd/x86_64/jidctint-avx2.asm \ + UnpackedTarball/libjpeg-turbo/simd/x86_64/jquanti-avx2.asm \ +)) + +else ifeq ($(CPUNAME),INTEL) + +$(eval $(call gb_StaticLibrary_add_cflags,libjpeg-turbo,\ + -DWITH_SIMD \ +)) + +$(eval $(call gb_StaticLibrary_add_generated_cobjects,libjpeg-turbo,\ + UnpackedTarball/libjpeg-turbo/simd/i386/jsimd \ +)) + +$(eval $(call gb_StaticLibrary_add_generated_nasmobjects,libjpeg-turbo,\ + UnpackedTarball/libjpeg-turbo/simd/i386/jsimdcpu.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jfdctflt-3dn.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jidctflt-3dn.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jquant-3dn.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jccolor-mmx.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jcgray-mmx.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jcsample-mmx.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jdcolor-mmx.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jdmerge-mmx.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jdsample-mmx.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jfdctfst-mmx.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jfdctint-mmx.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jidctfst-mmx.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jidctint-mmx.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jidctred-mmx.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jquant-mmx.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jfdctflt-sse.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jidctflt-sse.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jquant-sse.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jccolor-sse2.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jcgray-sse2.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jchuff-sse2.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jcphuff-sse2.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jcsample-sse2.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jdcolor-sse2.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jdmerge-sse2.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jdsample-sse2.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jfdctfst-sse2.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jfdctint-sse2.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jidctflt-sse2.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jidctfst-sse2.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jidctint-sse2.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jidctred-sse2.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jquantf-sse2.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jquanti-sse2.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jccolor-avx2.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jcgray-avx2.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jcsample-avx2.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jdcolor-avx2.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jdmerge-avx2.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jdsample-avx2.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jfdctint-avx2.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jidctint-avx2.asm \ + UnpackedTarball/libjpeg-turbo/simd/i386/jquanti-avx2.asm \ +)) + +else + +$(eval $(call gb_StaticLibrary_add_generated_cobjects,libjpeg-turbo,\ + UnpackedTarball/libjpeg-turbo/jsimd_none \ +)) + +endif + +else + +$(eval $(call gb_StaticLibrary_add_generated_cobjects,libjpeg-turbo,\ + UnpackedTarball/libjpeg-turbo/jsimd_none \ +)) + +endif + + +# vim: set noet sw=4 ts=4: diff --git a/external/libjpeg-turbo/UnpackedTarball_libjpeg-turbo.mk b/external/libjpeg-turbo/UnpackedTarball_libjpeg-turbo.mk index 5440d16ecfc1..22777b863e4c 100644 --- a/external/libjpeg-turbo/UnpackedTarball_libjpeg-turbo.mk +++ b/external/libjpeg-turbo/UnpackedTarball_libjpeg-turbo.mk @@ -11,15 +11,13 @@ $(eval $(call gb_UnpackedTarball_UnpackedTarball,libjpeg-turbo)) $(eval $(call gb_UnpackedTarball_set_tarball,libjpeg-turbo,$(LIBJPEG_TURBO_TARBALL))) -$(eval $(call gb_UnpackedTarball_update_autoconf_configs,libjpeg-turbo)) - $(eval $(call gb_UnpackedTarball_set_patchlevel,libjpeg-turbo,0)) -$(eval $(call gb_UnpackedTarball_add_patches,libjpeg-turbo,\ - external/libjpeg-turbo/jpeg-turbo.build.patch.1 \ - $(if $(filter WNT,$(OS)),external/libjpeg-turbo/jpeg-turbo.win_build.patch.1) \ - external/libjpeg-turbo/ubsan.patch \ - external/libjpeg-turbo/c76f4a08263b0cea40d2967560ac7c21f6959079.patch.1 \ -)) +# jconfigint.h and jconfig.h generated via +# cmake -DENABLE_STATIC:BOOL=ON -DENABLE_SHARED:BOOL=NO -DWITH_JAVA:BOOL=OFF -DWITH_TURBOJPEG:BOOL=OFF -DWITH_SIMD:BOOL=ON +# and then tweaking + +$(eval $(call gb_UnpackedTarball_add_file,libjpeg-turbo,jconfigint.h,external/libjpeg-turbo/jconfigint.h)) +$(eval $(call gb_UnpackedTarball_add_file,libjpeg-turbo,jconfig.h,external/libjpeg-turbo/jconfig.h)) # vim: set noet sw=4 ts=4: diff --git a/external/libjpeg-turbo/jconfig.h b/external/libjpeg-turbo/jconfig.h new file mode 100644 index 000000000000..7cff688125a9 --- /dev/null +++ b/external/libjpeg-turbo/jconfig.h @@ -0,0 +1,86 @@ +/* Version ID for the JPEG library. + * Might be useful for tests like "#if JPEG_LIB_VERSION >= 60". + */ +#define JPEG_LIB_VERSION 62 + +/* libjpeg-turbo version */ +#define LIBJPEG_TURBO_VERSION 2.1.1 + +/* libjpeg-turbo version in integer form */ +#define LIBJPEG_TURBO_VERSION_NUMBER 2001001 + +/* Support arithmetic encoding */ +#define C_ARITH_CODING_SUPPORTED 1 + +/* Support arithmetic decoding */ +#define D_ARITH_CODING_SUPPORTED 1 + +/* Support in-memory source/destination managers */ +#define MEM_SRCDST_SUPPORTED 1 + +/* Use accelerated SIMD routines. */ +/* #undef WITH_SIMD */ + +/* + * Define BITS_IN_JSAMPLE as either + * 8 for 8-bit sample values (the usual setting) + * 12 for 12-bit sample values + * Only 8 and 12 are legal data precisions for lossy JPEG according to the + * JPEG standard, and the IJG code does not support anything else! + * We do not support run-time selection of data precision, sorry. + */ + +#define BITS_IN_JSAMPLE 8 /* use 8 or 12 */ + +/* Define to 1 if you have the <locale.h> header file. */ +/* undef HAVE_LOCALE_H */ + +/* Define to 1 if you have the <stddef.h> header file. */ +#define HAVE_STDDEF_H 1 + +/* Define to 1 if you have the <stdlib.h> header file. */ +#define HAVE_STDLIB_H 1 + +/* Define if you need to include <sys/types.h> to get size_t. */ +#define NEED_SYS_TYPES_H 1 + +/* Define if you have BSD-like bzero and bcopy in <strings.h> rather than + memset/memcpy in <string.h>. */ +/* #undef NEED_BSD_STRINGS */ + +/* Define to 1 if the system has the type `unsigned char'. */ +#define HAVE_UNSIGNED_CHAR 1 + +/* Define to 1 if the system has the type `unsigned short'. */ +#define HAVE_UNSIGNED_SHORT 1 + +/* Compiler does not support pointers to undefined structures. */ +/* #undef INCOMPLETE_TYPES_BROKEN */ + +/* Define if your (broken) compiler shifts signed values as if they were + unsigned. */ +/* #undef RIGHT_SHIFT_IS_UNSIGNED */ + +/* Define to empty if `const' does not conform to ANSI C. */ +/* #undef const */ + +/* Define to `unsigned int' if <sys/types.h> does not define. */ +/* #undef size_t */ + +/* Extra Libreoffice config for windows */ +#ifdef _MSC_VER + +/* Define "boolean" as unsigned char, not int, per Windows custom */ +#ifndef __RPCNDR_H__ /* don't conflict if rpcndr.h already read */ +typedef unsigned char boolean; +#endif +#define HAVE_BOOLEAN /* prevent jmorecfg.h from redefining it */ + +/* Define "INT32" as int, not long, per Windows custom */ +#if !(defined(_BASETSD_H_) || defined(_BASETSD_H)) /* don't conflict if basetsd.h already read */ +typedef short INT16; +typedef signed int INT32; +#endif +#define XMD_H /* prevent jmorecfg.h from redefining it */ + +#endif /* _MSC_VER */ diff --git a/external/libjpeg-turbo/jconfigint.h b/external/libjpeg-turbo/jconfigint.h new file mode 100644 index 000000000000..478a4d338b30 --- /dev/null +++ b/external/libjpeg-turbo/jconfigint.h @@ -0,0 +1,51 @@ +#include <sal/types.h> + +/* libjpeg-turbo build number */ +#define BUILD "20211020" + +/* Compiler's inline keyword */ +#undef inline + +/* How to obtain function inlining. */ +#if defined _MSC_VER +#define INLINE __forceinline +#elif defined __GNUC__ +#define INLINE __attribute__((always_inline)) inline +#else +#define INLINE inline +#endif + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "libjpeg-turbo" + +/* Version number of package */ +#define VERSION "2.1.1" + +/* The size of `size_t', as computed by sizeof. */ +/* #undef SIZEOF_SIZE_T */ + +#if defined(__GNUC__) && SAL_TYPES_SIZEOFLONG == SIZEOF_SIZE_T +/* Define if your compiler has __builtin_ctzl() and sizeof(unsigned long) == sizeof(size_t). */ +#define HAVE_BUILTIN_CTZL +#endif + +/* Define to 1 if you have the <intrin.h> header file. */ +/* #undef HAVE_INTRIN_H */ + +#if defined(_MSC_VER) && defined(HAVE_INTRIN_H) +#if (SIZEOF_SIZE_T == 8) +#define HAVE_BITSCANFORWARD64 +#elif (SIZEOF_SIZE_T == 4) +#define HAVE_BITSCANFORWARD +#endif +#endif + +#if defined(__has_attribute) +#if __has_attribute(fallthrough) +#define FALLTHROUGH __attribute__((fallthrough)); +#else +#define FALLTHROUGH +#endif +#else +#define FALLTHROUGH +#endif diff --git a/external/libjpeg-turbo/jpeg-turbo.build.patch.1 b/external/libjpeg-turbo/jpeg-turbo.build.patch.1 deleted file mode 100644 index 4d01ad4b9aed..000000000000 --- a/external/libjpeg-turbo/jpeg-turbo.build.patch.1 +++ /dev/null @@ -1,58 +0,0 @@ -diff -ur jpeg.org/Makefile.am jpeg/Makefile.am ---- jpeg.org/Makefile.am 2014-11-14 12:05:43.349386578 +0100 -+++ jpeg/Makefile.am 2014-11-14 12:06:21.005387021 +0100 -@@ -174,8 +174,6 @@ - rm -rf `find $(distdir) -name .svn` - - --SUBDIRS += md5 -- - if WITH_12BIT - - TESTORIG = testorig12.jpg -diff -ru jpeg-turbo.orig/Makefile.in jpeg-turbo/Makefile.in ---- jpeg-turbo.orig/Makefile.in 2015-09-21 20:48:45.000000000 +0200 -+++ jpeg-turbo/Makefile.in 2015-11-22 16:17:10.326527000 +0100 -@@ -405,7 +405,7 @@ - ETAGS = etags - CTAGS = ctags - CSCOPE = cscope --DIST_SUBDIRS = java simd md5 -+DIST_SUBDIRS = java simd - am__DIST_COMMON = $(dist_man1_MANS) $(srcdir)/Makefile.in \ - $(srcdir)/config.h.in $(srcdir)/jconfig.h.in \ - $(srcdir)/jconfigint.h.in $(srcdir)/libjpeg.map.in \ -@@ -622,7 +622,7 @@ - jidctflt.c jidctfst.c jidctint.c jidctred.c jquant1.c \ - jquant2.c jutils.c jmemmgr.c jmemnobs.c $(am__append_4) \ - $(am__append_5) $(am__append_6) $(am__append_11) --SUBDIRS = java $(am__append_10) md5 -+SUBDIRS = java $(am__append_10) - @WITH_TURBOJPEG_TRUE@libturbojpeg_la_SOURCES = $(libjpeg_la_SOURCES) \ - @WITH_TURBOJPEG_TRUE@ turbojpeg.c turbojpeg.h transupp.c \ - @WITH_TURBOJPEG_TRUE@ transupp.h jdatadst-tj.c jdatasrc-tj.c \ -diff -ru jpeg-turbo.orig/configure jpeg-turbo/configure ---- jpeg-turbo.orig/configure 2015-09-21 20:48:41.000000000 +0200 -+++ jpeg-turbo/configure 2015-11-22 15:23:25.387071000 +0100 -@@ -14630,9 +14630,7 @@ - $as_echo "yes" >&6; } - else - rm -rf conftest* -- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 --$as_echo "no" >&6; } -- as_fn_error $? "configuration problem: maybe object file format mismatch." "$LINENO" 5 -+ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 - fi - - -@@ -14828,9 +14826,7 @@ - $as_echo "yes" >&6; } - else - rm -rf conftest* -- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 --$as_echo "no" >&6; } -- as_fn_error $? "configuration problem: maybe object file format mismatch." "$LINENO" 5 -+ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 - fi - - diff --git a/external/libjpeg-turbo/jpeg-turbo.win_build.patch.1 b/external/libjpeg-turbo/jpeg-turbo.win_build.patch.1 deleted file mode 100644 index 00b642703f3a..000000000000 --- a/external/libjpeg-turbo/jpeg-turbo.win_build.patch.1 +++ /dev/null @@ -1,54 +0,0 @@ -Copy definitions of "boolean", "INT16", "INT32" from win/jconfig.h.in - -... into jconfig.h.in, which is the one we use via configure. - -diff -ru jpeg-turbo.orig/simd/Makefile.in jpeg-turbo/simd/Makefile.in ---- jpeg-turbo.orig/simd/Makefile.in 2015-09-21 20:48:45.000000000 +0200 -+++ jpeg-turbo/simd/Makefile.in 2015-11-22 10:52:46.975285184 +0100 -@@ -769,8 +769,8 @@ - .asm.lo: - $(AM_V_GEN) $(LIBTOOL) $(AM_V_lt) --mode=compile --tag NASM $(srcdir)/nasm_lt.sh $(AM_V_lt) $(NASM) $(NAFLAGS) -I$(srcdir) -I. $< -o $@ - --jsimdcfg.inc: $(srcdir)/jsimdcfg.inc.h ../jpeglib.h ../jconfig.h ../jmorecfg.h -- $(AM_V_GEN) $(CPP) -I$(top_builddir) -I$(top_builddir)/simd $(srcdir)/jsimdcfg.inc.h | $(EGREP) "^[\;%]|^\ %" | sed 's%_cpp_protection_%%' | sed 's@% define@%define@g' > $@ -+jsimdcfg.inc: $(top_srcdir)/win/jsimdcfg.inc -+ cp $< $@ - - # Tell versions [3.59,3.63) of GNU make to not export all variables. - # Otherwise a system limit (for SysV at least) may be exceeded. -diff -ru jpeg-turbo.orig/configure jpeg-turbo/configure ---- jpeg-turbo.orig/configure 2015-11-22 15:57:23.702656000 +0100 -+++ jpeg-turbo/configure 2015-11-22 15:59:37.084285000 +0100 -@@ -13931,7 +13931,7 @@ - - else - --$as_echo "#define NEED_BSD_STRINGS 1" >>confdefs.h -+$as_echo "#undef NEED_BSD_STRINGS" >>confdefs.h - - fi - done ---- jpeg-turbo/jconfig.h.in.orig 2016-11-02 22:43:55.012600000 +0100 -+++ jpeg-turbo/jconfig.h.in 2016-11-02 22:45:01.905400000 +0100 -@@ -71,3 +71,21 @@ - - /* Define to `unsigned int' if <sys/types.h> does not define. */ - #undef size_t -+ -+#ifdef _MSC_VER -+ -+/* Define "boolean" as unsigned char, not int, per Windows custom */ -+#ifndef __RPCNDR_H__ /* don't conflict if rpcndr.h already read */ -+typedef unsigned char boolean; -+#endif -+#define HAVE_BOOLEAN /* prevent jmorecfg.h from redefining it */ -+ -+/* Define "INT32" as int, not long, per Windows custom */ -+#if !(defined(_BASETSD_H_) || defined(_BASETSD_H)) /* don't conflict if basetsd.h already read */ -+typedef short INT16; -+typedef signed int INT32; -+#endif -+#define XMD_H /* prevent jmorecfg.h from redefining it */ -+ -+#endif /* _MSC_VER */ -+ diff --git a/external/libjpeg-turbo/ubsan.patch b/external/libjpeg-turbo/ubsan.patch deleted file mode 100644 index 33d3c15a8b3c..000000000000 --- a/external/libjpeg-turbo/ubsan.patch +++ /dev/null @@ -1,39 +0,0 @@ ---- jcphuff.c -+++ jcphuff.c -@@ -14,6 +14,7 @@ - * suspension. - */ - -+#include <stdint.h> - #define JPEG_INTERNALS - #include "jinclude.h" - #include "jpeglib.h" -@@ -255,7 +256,7 @@ - if (c == 0xFF) { /* need to stuff a zero byte? */ - emit_byte(entropy, 0); - } -- put_buffer <<= 8; -+ put_buffer = (uint_least32_t) put_buffer << 8; - put_bits -= 8; - } - ---- jdarith.c -+++ jdarith.c -@@ -306,7 +306,7 @@ - while (m >>= 1) - if (arith_decode(cinfo, st)) v |= m; - v += 1; if (sign) v = -v; -- entropy->last_dc_val[ci] += v; -+ entropy->last_dc_val[ci] = (entropy->last_dc_val[ci] + v) & 0xffff; - } - - /* Scale and output the DC coefficient (assumes jpeg_natural_order[0]=0) */ -@@ -564,7 +564,7 @@ - while (m >>= 1) - if (arith_decode(cinfo, st)) v |= m; - v += 1; if (sign) v = -v; -- entropy->last_dc_val[ci] += v; -+ entropy->last_dc_val[ci] = (entropy->last_dc_val[ci] + v) & 0xffff; - } - - if (block) diff --git a/external/libxml2/ExternalPackage_libxml2.mk b/external/libxml2/ExternalPackage_libxml2.mk index d38eb68df0cb..6338fb20b9df 100644 --- a/external/libxml2/ExternalPackage_libxml2.mk +++ b/external/libxml2/ExternalPackage_libxml2.mk @@ -21,7 +21,7 @@ else # COM=MSC $(eval $(call gb_ExternalPackage_add_file,libxml2,$(LIBO_URE_LIB_FOLDER)/libxml2.dll,win32/bin.msvc/libxml2.dll)) endif else # OS!=WNT -$(eval $(call gb_ExternalPackage_add_file,libxml2,$(LIBO_URE_LIB_FOLDER)/libxml2.so.2,.libs/libxml2.so.2.9.$(LIBXML_VERSION_MICRO))) +$(eval $(call gb_ExternalPackage_add_file,libxml2,$(LIBO_URE_LIB_FOLDER)/libxml2.so.2,.libs/libxml2.so.2.10.$(LIBXML_VERSION_MICRO))) endif endif # DISABLE_DYNLOADING diff --git a/external/libxml2/UnpackedTarball_libxml2.mk b/external/libxml2/UnpackedTarball_libxml2.mk index 83df02849cb3..8c81c3d26e4c 100644 --- a/external/libxml2/UnpackedTarball_libxml2.mk +++ b/external/libxml2/UnpackedTarball_libxml2.mk @@ -14,7 +14,6 @@ $(eval $(call gb_UnpackedTarball_set_tarball,libxml2,$(LIBXML_TARBALL),,libxml2) $(eval $(call gb_UnpackedTarball_update_autoconf_configs,libxml2)) $(eval $(call gb_UnpackedTarball_add_patches,libxml2,\ - external/libxml2/libxml2-config.patch.1 \ external/libxml2/libxml2-global-symbols.patch \ external/libxml2/libxml2-vc10.patch \ $(if $(filter ANDROID,$(OS)),external/libxml2/libxml2-android.patch) \ @@ -23,4 +22,6 @@ $(eval $(call gb_UnpackedTarball_add_patches,libxml2,\ external/libxml2/libxml2-icu.patch.0) \ )) +$(eval $(call gb_UnpackedTarball_add_file,libxml2,xml2-config.in,external/libxml2/xml2-config.in)) + # vim: set noet sw=4 ts=4: diff --git a/external/libxml2/libxml2-android.patch b/external/libxml2/libxml2-android.patch index 42af83274026..acf9b17e02db 100644 --- a/external/libxml2/libxml2-android.patch +++ b/external/libxml2/libxml2-android.patch @@ -2,9 +2,9 @@ +++ misc/build/libxml2-2.7.6/Makefile.in @@ -1635,7 +1635,7 @@ $(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS) - check: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) check-recursive --all-am: Makefile $(PROGRAMS) $(LTLIBRARIES) $(SCRIPTS) $(MANS) $(DATA) \ + $(MAKE) $(AM_MAKEFLAGS) check-local + check: check-recursive +-all-am: Makefile $(PROGRAMS) $(LTLIBRARIES) $(SCRIPTS) $(DATA) \ +all-am: Makefile $(LTLIBRARIES) \ config.h install-binPROGRAMS: install-libLTLIBRARIES diff --git a/external/libxml2/libxml2-config.patch.1 b/external/libxml2/libxml2-config.patch.1 deleted file mode 100644 index 5a2ef1485e92..000000000000 --- a/external/libxml2/libxml2-config.patch.1 +++ /dev/null @@ -1,43 +0,0 @@ -Hack the xml2-config to return paths into WORKDIR. - ---- a/xml2-config.in 2009-12-17 11:45:20.000000000 +0000 -+++ b/xml2-config.in 2009-12-17 11:45:36.000000000 +0000 -@@ -1,9 +1,14 @@ - #! /bin/sh - --prefix=@prefix@ --exec_prefix=@exec_prefix@ --includedir=@includedir@ --libdir=@libdir@ -+#prefix=@prefix@ -+#exec_prefix=@exec_prefix@ -+#includedir=@includedir@ -+#libdir=@libdir@ -+ -+prefix=${WORKDIR}/UnpackedTarball/libxml2 -+exec_prefix=${WORKDIR}/UnpackedTarball/libxml2 -+includedir=${WORKDIR}/UnpackedTarball/libxml2/include -+libdir=${WORKDIR}/UnpackedTarball/libxml2/.libs - cflags= - libs= - -@@ -67,7 +72,8 @@ - ;; - - --cflags) -- cflags="@XML_INCLUDEDIR@ @XML_CFLAGS@" -+ #cflags="@XML_INCLUDEDIR@ @XML_CFLAGS@" -+ cflags="-I${includedir}" - ;; - - --libtool-libs) -@@ -91,7 +96,8 @@ - libs="@XML_LIBDIR@ $libs" - fi - -- libs="$libs @WIN32_EXTRA_LIBADD@" -+ #libs="$libs @WIN32_EXTRA_LIBADD@" -+ libs="-L${libdir} -lxml2 -lm" - ;; - - *) diff --git a/external/libxml2/xml2-config.in b/external/libxml2/xml2-config.in new file mode 100644 index 000000000000..164508e47e67 --- /dev/null +++ b/external/libxml2/xml2-config.in @@ -0,0 +1,28 @@ +#! /bin/sh + +while test $# -gt 0; do + case "$1" in + -*=*) optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;; + *) optarg= ;; + esac + + case "$1" in + --version) + echo @VERSION@ + exit 0 + ;; + --cflags) + cflags="$LIBXML_CFLAGS" + ;; + --libs) + libs="$LIBXML_LIBS" + ;; + esac + shift +done + +if test -n "$cflags$libs"; then + echo $cflags $libs +fi + +exit 0 diff --git a/external/nss/UnpackedTarball_nss.mk b/external/nss/UnpackedTarball_nss.mk index 4f8499e8a835..ab64f95de36a 100644 --- a/external/nss/UnpackedTarball_nss.mk +++ b/external/nss/UnpackedTarball_nss.mk @@ -16,7 +16,6 @@ $(eval $(call gb_UnpackedTarball_update_autoconf_configs,nss,nspr/build/autoconf $(eval $(call gb_UnpackedTarball_add_patches,nss,\ external/nss/nss.patch \ external/nss/nss.aix.patch \ - external/nss/nss-3.13.5-zlib-werror.patch \ external/nss/nss_macosx.patch \ external/nss/nss-win32-make.patch.1 \ external/nss/ubsan.patch.0 \ @@ -24,7 +23,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,nss,\ external/nss/nss.vs2015.patch \ external/nss/nss.vs2015.pdb.patch \ external/nss/nss.bzmozilla1238154.patch \ - external/nss/nss-bz1646594.patch.1 \ + external/nss/nss-bz1646594.patch.1 \ external/nss/macos-dlopen.patch.0 \ external/nss/nss-restore-manual-pre-dependencies.patch.1 \ $(if $(filter iOS,$(OS)), \ diff --git a/external/nss/asan.patch.1 b/external/nss/asan.patch.1 index 7dfd6ed4e782..ccabd446ebac 100644 --- a/external/nss/asan.patch.1 +++ b/external/nss/asan.patch.1 @@ -1,12 +1,12 @@ diff -ur nss.org/nss/coreconf/Linux.mk nss/nss/coreconf/Linux.mk --- nss.org/nss/coreconf/Linux.mk 2014-05-06 04:36:01.817838877 +0200 +++ nss/nss/coreconf/Linux.mk 2014-05-06 04:37:25.387835456 +0200 -@@ -146,7 +146,7 @@ +@@ -157,7 +157,7 @@ # we don't use -z defs there. # Also, -z defs conflicts with Address Sanitizer, which emits relocations # against the libsanitizer runtime built into the main executable. -ZDEFS_FLAG = -Wl,-z,defs +ZDEFS_FLAG = - DSO_LDOPTS += $(if $(findstring 2.11.90.0.8,$(shell ld -v)),,$(ZDEFS_FLAG)) $(if $(filter-out $(OS),ANDROID),-Wl$(COMMA)-z$(COMMA)origin '-Wl$(COMMA)-rpath$(COMMA)$$ORIGIN') - LDFLAGS += $(ARCHFLAG) -z noexecstack + DSO_LDOPTS += $(if $(findstring 2.11.90.0.8,$(shell $(LD) -v)),,$(ZDEFS_FLAG)) $(if $(filter-out $(OS),ANDROID),-Wl$(COMMA)-z$(COMMA)origin '-Wl$(COMMA)-rpath$(COMMA)$$ORIGIN') + LDFLAGS += $(ARCHFLAG) -z noexecstack diff --git a/external/nss/clang-cl.patch.0 b/external/nss/clang-cl.patch.0 index 1d615c2397d8..e20aab3b9ff1 100644 --- a/external/nss/clang-cl.patch.0 +++ b/external/nss/clang-cl.patch.0 @@ -14,7 +14,7 @@ #pragma intrinsic(_InterlockedExchange) --- nspr/pr/include/prbit.h +++ nspr/pr/include/prbit.h -@@ -14,7 +14,7 @@ +@@ -15,7 +15,7 @@ */ #if defined(_WIN32) && (_MSC_VER >= 1300) && \ (defined(_M_IX86) || defined(_M_X64) || defined(_M_ARM) || \ @@ -23,7 +23,7 @@ # include <intrin.h> # pragma intrinsic(_BitScanForward,_BitScanReverse) __forceinline static int __prBitScanForward32(unsigned int val) -@@ -32,7 +32,7 @@ +@@ -33,7 +33,7 @@ # define pr_bitscan_ctz32(val) __prBitScanForward32(val) # define pr_bitscan_clz32(val) __prBitScanReverse32(val) # define PR_HAVE_BUILTIN_BITSCAN32 @@ -32,7 +32,7 @@ (defined(__i386__) || defined(__x86_64__) || defined(__arm__) || \ defined(__aarch64__)) # define pr_bitscan_ctz32(val) __builtin_ctz(val) -@@ -136,7 +136,7 @@ +@@ -138,7 +138,7 @@ */ #if defined(_MSC_VER) && (defined(_M_IX86) || defined(_M_AMD64) || \ @@ -61,9 +61,20 @@ #pragma deprecated(CERTDB_VALID_PEER) #endif #define CERTDB_VALID_PEER CERTDB_TERMINAL_RECORD +--- nss/lib/freebl/blapit.h ++++ nss/lib/freebl/blapit.h +@@ -53,7 +53,7 @@ + * Mark the old defines as deprecated. This will warn code that expected + * DSA1 only that they need to change if the are to support DSA2. + */ +-#if defined(__GNUC__) && (__GNUC__ > 3) ++#if defined(__GNUC__) && (__GNUC__ > 3) || defined __clang__ + /* make GCC warn when we use these #defines */ + typedef int __BLAPI_DEPRECATED __attribute__((deprecated)); + #define DSA_SUBPRIME_LEN ((__BLAPI_DEPRECATED)DSA1_SUBPRIME_LEN) --- nss/lib/util/pkcs11n.h +++ nss/lib/util/pkcs11n.h -@@ -426,7 +426,7 @@ +@@ -563,7 +563,7 @@ /* keep the old value for compatibility reasons*/ #define CKT_NSS_MUST_VERIFY ((__CKT_NSS_MUST_VERIFY)(CKT_NSS + 4)) #else @@ -80,7 +91,7 @@ # in the outer pkcs11t.h: --- nss/lib/util/pkcs11t.h +++ nss/lib/util/pkcs11t.h -@@ -72,7 +72,14 @@ +@@ -78,7 +78,14 @@ #define CK_INVALID_HANDLE 0 /* pack */ @@ -95,7 +106,7 @@ typedef struct CK_VERSION { CK_BYTE major; /* integer portion of version number */ -@@ -1795,6 +1802,13 @@ +@@ -2586,6 +2593,13 @@ #include "pkcs11n.h" /* undo packing */ diff --git a/external/nss/macos-dlopen.patch.0 b/external/nss/macos-dlopen.patch.0 index 1889b8df7cd3..e8abc8f59c69 100644 --- a/external/nss/macos-dlopen.patch.0 +++ b/external/nss/macos-dlopen.patch.0 @@ -1,6 +1,6 @@ --- nspr/pr/src/linking/prlink.c +++ nspr/pr/src/linking/prlink.c -@@ -799,7 +799,7 @@ +@@ -555,7 +555,7 @@ * The reason is that DARWIN's dlopen ignores the provided path * and checks for the plain filename in DYLD_LIBRARY_PATH, * which could load an unexpected version of a library. */ diff --git a/external/nss/nss-3.13.5-zlib-werror.patch b/external/nss/nss-3.13.5-zlib-werror.patch deleted file mode 100644 index 0cdbf7808f81..000000000000 --- a/external/nss/nss-3.13.5-zlib-werror.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- a/a/nss/lib/zlib/gzguts.h 2010-08-22 03:07:03.000000000 +0200 -+++ b/b/nss/lib/zlib/gzguts.h 2012-07-17 08:52:14.821552788 +0200 -@@ -26,6 +26,10 @@ - # define write _write - # define close _close - #endif -+ -+#ifndef _WIN32 -+#include <unistd.h> -+#endif - - #ifdef NO_DEFLATE /* for compatibility with old definition */ - # define NO_GZCOMPRESS diff --git a/external/nss/nss-android.patch.1 b/external/nss/nss-android.patch.1 index 05172eaad16a..707fcf99afe0 100644 --- a/external/nss/nss-android.patch.1 +++ b/external/nss/nss-android.patch.1 @@ -1,7 +1,7 @@ diff -ur nss.org/nspr/build/autoconf/config.sub nss/nspr/build/autoconf/config.sub --- nss.org/nspr/build/autoconf/config.sub 2017-09-07 15:29:45.031246453 +0200 +++ nss/nspr/build/autoconf/config.sub 2017-09-07 15:32:13.087235423 +0200 -@@ -111,6 +111,11 @@ +@@ -110,6 +110,11 @@ exit 1;; esac @@ -16,7 +16,7 @@ diff -ur nss.org/nspr/build/autoconf/config.sub nss/nspr/build/autoconf/config.s diff -ur nss.org/nspr/configure nss/nspr/configure --- nss.org/nspr/configure 2017-09-07 15:29:45.018246359 +0200 +++ nss/nspr/configure 2017-09-07 15:31:47.604075663 +0200 -@@ -2737,18 +2739,15 @@ +@@ -2728,18 +2728,15 @@ esac AS="$android_toolchain"/bin/"$android_tool_prefix"-as @@ -41,7 +41,7 @@ diff -ur nss.org/nspr/configure nss/nspr/configure diff -ur nss.org/nss/Makefile nss/nss/Makefile --- nss.org/nss/Makefile 2017-09-07 15:29:44.933245745 +0200 +++ nss/nss/Makefile 2017-09-07 15:32:04.347181076 +0200 -@@ -62,7 +62,7 @@ +@@ -65,7 +65,7 @@ ifeq ($(OS_TARGET),Android) NSPR_CONFIGURE_OPTS += --with-android-ndk=$(ANDROID_NDK) \ @@ -74,7 +74,7 @@ diff -ur nss.org/nss/Makefile nss/nss/Makefile diff -ur nss/nss/coreconf/arch.mk nss/nss/coreconf/arch.mk --- nss/nss/coreconf/arch.mk 2019-11-01 10:29:44.933245745 +0100 +++ nss/nss/coreconf/arch.mk 2019-11-01 10:32:04.347181076 +0100 -@@ -234,7 +234,15 @@ +@@ -213,7 +213,15 @@ # # this should be configurable from the user # diff --git a/external/nss/nss-bz1646594.patch.1 b/external/nss/nss-bz1646594.patch.1 index e6c75922a7dc..cffb9f5fe61d 100644 --- a/external/nss/nss-bz1646594.patch.1 +++ b/external/nss/nss-bz1646594.patch.1 @@ -2,7 +2,7 @@ regression from https://bugzilla.mozilla.org/show_bug.cgi?id=1646594 --- nss/nss/coreconf/arch.mk.orig2 2020-08-18 14:33:21.295252404 +0200 +++ nss/nss/coreconf/arch.mk 2020-08-18 14:33:46.360320806 +0200 -@@ -116,8 +116,10 @@ +@@ -94,8 +94,10 @@ OS_RELEASE := $(word 1,$(OS_RELEASE)).$(word 2,$(OS_RELEASE)) endif KERNEL = Linux diff --git a/external/nss/nss-ios.patch b/external/nss/nss-ios.patch index 4263ecbe5f3d..58239f718978 100644 --- a/external/nss/nss-ios.patch +++ b/external/nss/nss-ios.patch @@ -1,6 +1,6 @@ --- a/a/nss/Makefile +++ a/a/nss/Makefile -@@ -96,13 +96,11 @@ +@@ -91,13 +91,11 @@ ifdef NS_USE_GCC NSPR_CONFIGURE_ENV = CC=gcc CXX=g++ endif @@ -16,7 +16,7 @@ endif # -@@ -140,7 +140,6 @@ +@@ -140,7 +138,6 @@ build_nspr: $(NSPR_CONFIG_STATUS) $(MAKE) -C $(CORE_DEPTH)/../nspr/$(OBJDIR_NAME) @@ -37,7 +37,7 @@ --- a/a/nss/lib/nss/nssinit.c +++ a/a/nss/lib/nss/nssinit.c -@@ -278,6 +278,7 @@ +@@ -275,6 +275,7 @@ const char *secmodprefix, char **retoldpath, char **retnewpath) { @@ -45,7 +45,7 @@ char *path, *oldpath = NULL, *lastsep; int len, path_len, secmod_len, dll_len; -@@ -309,6 +309,10 @@ +@@ -309,6 +310,10 @@ } *retoldpath = oldpath; *retnewpath = path; @@ -58,7 +58,7 @@ --- a/a/nss/lib/pk11wrap/pk11load.c +++ a/a/nss/lib/pk11wrap/pk11load.c -@@ -389,6 +389,8 @@ +@@ -390,6 +390,8 @@ /* * load a new module into our address space and initialize it. */ @@ -67,15 +67,15 @@ SECStatus secmod_LoadPKCS11Module(SECMODModule *mod, SECMODModule **oldModule) { -@@ -465,6 +465,7 @@ - /* load the library. If this succeeds, then we have to remember to +@@ -468,6 +470,7 @@ + /* load the library. If this succeeds, then we have to remember to * unload the library if anything goes wrong from here on out... */ +#ifndef NSS_STATIC_PKCS11 // With NSS_STATIC_PKCS11, the only module wodule we load here is nssckbi - library = PR_LoadLibrary(mod->dllName); - mod->library = (void *)library; - -@@ -487,6 +487,11 @@ + #if defined(_WIN32) + if (nssUTF8_Length(mod->dllName, NULL)) { + wchar_t *dllNameWide = _NSSUTIL_UTF8ToWide(mod->dllName); +@@ -507,6 +510,11 @@ mod->moduleDBFunc = (void *) PR_FindSymbol(library, "NSS_ReturnModuleSpecData"); } @@ -87,7 +87,7 @@ if (mod->moduleDBFunc == NULL) mod->isModuleDB = PR_FALSE; if ((ientry == NULL) && (fentry == NULL)) { -@@ -624,10 +624,12 @@ +@@ -643,10 +651,12 @@ } fail: mod->functionList = NULL; @@ -124,7 +124,7 @@ PRLibrary *handle; const char *name = getLibName(); -@@ -47,32 +47,42 @@ +@@ -47,32 +48,42 @@ if (handle) { PRFuncPtr address = PR_FindFunctionSymbol(handle, "FREEBL_GetVector"); if (address) { @@ -168,7 +168,7 @@ } static const PRCallOnceType pristineCallOnce; -@@ -837,6 +837,7 @@ +@@ -860,6 +871,7 @@ void BL_Unload(void) { @@ -176,7 +176,7 @@ /* This function is not thread-safe, but doesn't need to be, because it is * only called from functions that are also defined as not thread-safe, * namely C_Finalize in softoken, and the SSL bypass shutdown callback called -@@ -852,6 +852,7 @@ +@@ -872,6 +884,7 @@ PR_UnloadLibrary(blLib); #endif } @@ -186,7 +186,7 @@ } --- a/a/nspr/build/autoconf/config.sub 2017-09-07 15:29:45.031246453 +0200 +++ a/a/nspr/build/autoconf/config.sub 2017-09-07 15:32:13.087235423 +0200 -@@ -111,6 +111,9 @@ +@@ -110,6 +110,9 @@ exit 1;; esac @@ -198,7 +198,7 @@ IFS="-" read field1 field2 field3 field4 <<EOF --- a/a/nspr/config/autoconf.mk.in +++ a/a/nspr/config/autoconf.mk.in -@@ -67,7 +67,7 @@ +@@ -69,7 +69,7 @@ MSC_VER = @MSC_VER@ AR = @AR@ AR_FLAGS = @AR_FLAGS@ @@ -209,7 +209,7 @@ RC = @RC@ --- a/a/nspr/configure +++ a/a/nspr/configure -@@ -755,7 +755,7 @@ +@@ -2507,7 +2507,7 @@ OBJDIR='$(OBJDIR_NAME)' OBJDIR_NAME=. OBJDIR_SUFFIX=OBJ @@ -218,7 +218,7 @@ NOSUCHFILE=/no-such-file LIBNSPR='-L$(dist_libdir) -lnspr$(MOD_MAJOR_VERSION)' LIBPLC='-L$(dist_libdir) -lplc$(MOD_MAJOR_VERSION)' -@@ -3060,7 +3060,7 @@ +@@ -5571,7 +5571,7 @@ LIB_SUFFIX=a DLL_SUFFIX=so ASM_SUFFIX=s @@ -227,7 +227,7 @@ PR_MD_ASFILES= PR_MD_CSRCS= PR_MD_ARCH_DIR=unix -@@ -3904,7 +3904,7 @@ +@@ -6485,7 +6485,7 @@ DSO_CFLAGS=-fPIC DSO_LDOPTS='-dynamiclib -compatibility_version 1 -current_version 1 -all_load -install_name @__________________________________________________OOO/$@ -headerpad_max_install_names' _OPTIMIZE_FLAGS=-O2 @@ -238,7 +238,7 @@ USE_PTHREADS=1 --- a/a/nss/coreconf/ruleset.mk +++ a/a/nss/coreconf/ruleset.mk -@@ -68,7 +68,7 @@ +@@ -45,7 +45,7 @@ endif ifeq ($(MKPROG),) @@ -249,7 +249,7 @@ # --- a/a/nss/coreconf/Darwin.mk +++ a/a/nss/coreconf/Darwin.mk -@@ -124,7 +124,7 @@ +@@ -116,7 +116,7 @@ DSO_LDOPTS += --coverage endif diff --git a/external/nss/nss-restore-manual-pre-dependencies.patch.1 b/external/nss/nss-restore-manual-pre-dependencies.patch.1 index 06691b1ec957..ea034f0dc80f 100644 --- a/external/nss/nss-restore-manual-pre-dependencies.patch.1 +++ b/external/nss/nss-restore-manual-pre-dependencies.patch.1 @@ -68,7 +68,7 @@ summary: Bug 1637083 Replace pre-dependency with shell hack r=rrelyea ck.h \ --- b/nss/manifest.mn Wed May 13 19:00:40 2020 +0000 +++ a/nss/manifest.mn Tue May 12 21:33:43 2020 +0000 -@@ -23,6 +23,12 @@ +@@ -24,6 +24,12 @@ # no real way to encode these in any sensible way $(MAKE) -C coreconf/nsinstall program $(MAKE) export diff --git a/external/nss/nss-win32-make.patch.1 b/external/nss/nss-win32-make.patch.1 index 7ba3df451ee6..6a3201a082a1 100644 --- a/external/nss/nss-win32-make.patch.1 +++ b/external/nss/nss-win32-make.patch.1 @@ -1,6 +1,6 @@ --- nss/nss/coreconf/rules.mk.orig2 2014-06-03 15:30:01.667200000 +0200 +++ nss/nss/coreconf/rules.mk 2014-06-03 15:30:14.537200000 +0200 -@@ -259,7 +259,7 @@ +@@ -174,7 +174,7 @@ $(LIBRARY): $(OBJS) | $$(@D)/d rm -f $@ ifeq (,$(filter-out _WIN%,$(NS_USE_GCC)_$(OS_TARGET))) @@ -9,7 +9,7 @@ else $(AR) cr $@ $(OBJS) endif -@@ -297,7 +297,7 @@ +@@ -214,7 +214,7 @@ ifdef NS_USE_GCC $(LINK_DLL) $(OBJS) $(SUB_SHLOBJS) $(EXTRA_LIBS) $(EXTRA_SHARED_LIBS) $(OS_LIBS) $(LD_LIBS) $(RES) else diff --git a/external/nss/nss.aix.patch b/external/nss/nss.aix.patch index 4b0c6bfb3261..10572f94717a 100644 --- a/external/nss/nss.aix.patch +++ b/external/nss/nss.aix.patch @@ -1,7 +1,7 @@ diff -ru a/nspr/configure b/nspr/configure --- a/a/nspr/configure 2014-09-29 16:47:42.984012225 +0100 +++ b/b/nspr/configure 2014-09-29 16:50:33.907375937 +0100 -@@ -6369,7 +6369,6 @@ +@@ -6325,7 +6325,6 @@ AIX_LINK_OPTS='-brtl -bnso -berok' ;; esac @@ -12,7 +12,7 @@ diff -ru a/nspr/configure b/nspr/configure diff -ru a/nspr/configure.in b/nspr/configure.in --- a/a/nspr/configure.in 2014-09-29 16:46:35.257394860 +0100 +++ b/b/nspr/configure.in 2014-09-29 16:50:33.908375942 +0100 -@@ -1229,7 +1229,8 @@ +@@ -1180,7 +1180,8 @@ AC_DEFINE(XP_UNIX) AC_DEFINE(AIX) AC_DEFINE(SYSV) @@ -22,7 +22,7 @@ diff -ru a/nspr/configure.in b/nspr/configure.in AC_CHECK_HEADER(sys/atomic_op.h, AC_DEFINE(AIX_HAVE_ATOMIC_OP_H)) case "${target_os}" in aix3.2*) -@@ -1269,10 +1270,9 @@ +@@ -1220,10 +1221,9 @@ AC_DEFINE(HAVE_SOCKLEN_T) AC_DEFINE(HAVE_FCNTL_FILE_LOCKING) USE_IPV6=1 @@ -48,7 +48,7 @@ diff -ru a/nspr/pr/src/Makefile.in b/nspr/pr/src/Makefile.in diff -ru a/nss/cmd/platlibs.mk b/nss/cmd/platlibs.mk --- a/a/nss/cmd/platlibs.mk 2014-09-29 16:47:42.987012253 +0100 +++ b/b/nss/cmd/platlibs.mk 2014-09-29 16:50:33.910375955 +0100 -@@ -134,7 +134,7 @@ +@@ -171,7 +171,7 @@ $(NULL) ifeq ($(OS_ARCH), AIX) @@ -57,7 +57,7 @@ diff -ru a/nss/cmd/platlibs.mk b/nss/cmd/platlibs.mk endif # $(PROGRAM) has NO explicit dependencies on $(EXTRA_SHARED_LIBS) -@@ -180,7 +180,7 @@ +@@ -217,7 +217,7 @@ $(NULL) ifeq ($(OS_ARCH), AIX) diff --git a/external/nss/nss.bzmozilla1238154.patch b/external/nss/nss.bzmozilla1238154.patch index 468ff810b9ca..425f38257892 100644 --- a/external/nss/nss.bzmozilla1238154.patch +++ b/external/nss/nss.bzmozilla1238154.patch @@ -1,7 +1,7 @@ diff -ru a/nspr/configure b/nspr/configure --- a/a/nspr/configure 2019-01-26 12:23:06.589389910 +0100 +++ b/b/nspr/configure 2019-01-26 12:26:56.566222293 +0100 -@@ -7127,7 +7127,7 @@ +@@ -6883,7 +6883,7 @@ # Determine compiler version diff --git a/external/nss/nss.cygwin64.in32bit.patch b/external/nss/nss.cygwin64.in32bit.patch index b00761a0e85b..bce0f1d09403 100644 --- a/external/nss/nss.cygwin64.in32bit.patch +++ b/external/nss/nss.cygwin64.in32bit.patch @@ -3,7 +3,7 @@ on Cygwin 64bit and in 32bit mode diff -ru nss.orig/nss/Makefile nss/nss/Makefile --- a/nss.orig/nss/Makefile 2016-02-26 01:00:52.146713100 +0100 +++ b/nss/nss/Makefile 2016-02-26 01:02:05.303560100 +0100 -@@ -59,6 +59,8 @@ +@@ -63,6 +63,8 @@ # Translate coreconf build options to NSPR configure options. # diff --git a/external/nss/nss.nowerror.patch b/external/nss/nss.nowerror.patch index ff81a9b33539..bdf7a33a874c 100644 --- a/external/nss/nss.nowerror.patch +++ b/external/nss/nss.nowerror.patch @@ -1,7 +1,7 @@ diff -ur nss.org/nss/coreconf/WIN32.mk nss/nss/coreconf/WIN32.mk --- a/nss.org/nss/coreconf/WIN32.mk 2016-04-13 11:33:09.322294523 +0200 +++ b/nss/nss/coreconf/WIN32.mk 2016-04-13 11:33:27.744323969 +0200 -@@ -127,7 +127,7 @@ +@@ -121,7 +121,7 @@ -D_CRT_NONSTDC_NO_WARNINGS OS_DLLFLAGS += -nologo -DLL -SUBSYSTEM:WINDOWS ifndef NSS_ENABLE_WERROR diff --git a/external/nss/nss.patch b/external/nss/nss.patch index d9aaee5199bb..cc9eeed1b009 100644 --- a/external/nss/nss.patch +++ b/external/nss/nss.patch @@ -1,6 +1,6 @@ --- a/a/nspr/configure 2017-08-29 23:44:13.686045013 +0530 +++ b/b/nspr/configure 2017-08-29 23:46:53.774768655 +0530 -@@ -7034,7 +7034,7 @@ +@@ -6794,7 +6794,7 @@ PR_MD_CSRCS=linux.c MKSHLIB='$(CC) $(DSO_LDOPTS) -o $@' DSO_CFLAGS=-fPIC @@ -11,7 +11,7 @@ # combo is not yet good at debugging inlined --- a/nss.orig/nspr/pr/src/misc/prnetdb.c 2017-08-29 23:44:13.690045031 +0530 +++ b/nss/nspr/pr/src/misc/prnetdb.c 2017-08-29 23:47:03.810814019 +0530 -@@ -438,7 +438,7 @@ +@@ -441,7 +441,7 @@ char *buf = *bufp; PRIntn buflen = *buflenp; @@ -51,7 +51,7 @@ --- a/nss.org/nss/coreconf/arch.mk 2017-08-29 23:44:13.646044832 +0530 +++ b/nss/nss/coreconf/arch.mk 2017-08-29 23:45:51.494487134 +0530 -@@ -305,11 +305,17 @@ +@@ -284,11 +284,17 @@ OBJDIR_NAME_COMPILER = $(COMPILER_TAG) endif OBJDIR_NAME_BASE = $(OS_TARGET)$(OS_RELEASE)$(CPU_TAG)$(OBJDIR_NAME_COMPILER)$(LIBC_TAG)$(IMPL_STRATEGY)$(OBJDIR_TAG) @@ -83,16 +83,16 @@ # The default implementation strategy for FreeBSD is pthreads. --- a/nss.org/nss/coreconf/Linux.mk 2017-08-29 23:44:13.642044814 +0530 +++ b/nss/nss/coreconf/Linux.mk 2017-08-29 23:47:26.318915759 +0530 -@@ -147,7 +147,7 @@ +@@ -158,7 +158,7 @@ # Also, -z defs conflicts with Address Sanitizer, which emits relocations # against the libsanitizer runtime built into the main executable. ZDEFS_FLAG = -Wl,-z,defs --DSO_LDOPTS += $(if $(findstring 2.11.90.0.8,$(shell ld -v)),,$(ZDEFS_FLAG)) -+DSO_LDOPTS += $(if $(findstring 2.11.90.0.8,$(shell ld -v)),,$(ZDEFS_FLAG)) $(if $(filter-out $(OS),ANDROID),-Wl$(COMMA)-z$(COMMA)origin '-Wl$(COMMA)-rpath$(COMMA)$$ORIGIN') - LDFLAGS += $(ARCHFLAG) -z noexecstack +-DSO_LDOPTS += $(if $(findstring 2.11.90.0.8,$(shell $(LD) -v)),,$(ZDEFS_FLAG)) ++DSO_LDOPTS += $(if $(findstring 2.11.90.0.8,$(shell $(LD) -v)),,$(ZDEFS_FLAG)) $(if $(filter-out $(OS),ANDROID),-Wl$(COMMA)-z$(COMMA)origin '-Wl$(COMMA)-rpath$(COMMA)$$ORIGIN') + LDFLAGS += $(ARCHFLAG) -z noexecstack # On Maemo, we need to use the -rpath-link flag for even the standard system -@@ -177,8 +177,13 @@ +@@ -188,8 +188,13 @@ endif endif @@ -108,7 +108,7 @@ # dependencies in the same directory where it resides. --- a/nss.org/nss/coreconf/rules.mk 2017-08-29 23:44:13.646044832 +0530 +++ b/nss/nss/coreconf/rules.mk 2017-08-29 23:47:37.442966042 +0530 -@@ -261,7 +261,7 @@ +@@ -176,7 +176,7 @@ ifeq (,$(filter-out _WIN%,$(NS_USE_GCC)_$(OS_TARGET))) $(AR) $(subst /,\\,$(OBJS)) else @@ -119,7 +119,7 @@ --- a/nss.org/nss/coreconf/SunOS5.mk 2017-08-29 23:44:13.646044832 +0530 +++ b/nss/nss/coreconf/SunOS5.mk 2017-08-29 23:45:00.902258445 +0530 -@@ -48,8 +48,11 @@ +@@ -46,8 +46,11 @@ # OPTIMIZER += -mno-omit-leaf-frame-pointer -fno-omit-frame-pointer endif else @@ -135,7 +135,7 @@ ifndef BUILD_OPT --- a/nss.org/nss/coreconf/Werror.mk 2017-08-29 23:44:13.646044832 +0530 +++ b/nss/nss/coreconf/Werror.mk 2017-08-29 23:44:23.994091608 +0530 -@@ -94,7 +94,8 @@ +@@ -96,7 +96,8 @@ endif #ndef NSS_ENABLE_WERROR ifeq ($(NSS_ENABLE_WERROR),1) diff --git a/external/nss/nss.utf8bom.patch.1 b/external/nss/nss.utf8bom.patch.1 index e8c56abefcde..f474adf6f932 100644 --- a/external/nss/nss.utf8bom.patch.1 +++ b/external/nss/nss.utf8bom.patch.1 @@ -1,7 +1,7 @@ diff -ur nss.org/nss/lib/ckfw/builtins/certdata.perl nss/nss/lib/ckfw/builtins/certdata.perl --- nss.org/nss/lib/ckfw/builtins/certdata.perl 2016-03-31 18:26:07.890190900 +0800 +++ nss/nss/lib/ckfw/builtins/certdata.perl 2016-03-31 19:16:16.727269600 +0800 -@@ -110,6 +110,9 @@ +@@ -122,6 +122,9 @@ sub doprint { my $i; @@ -11,7 +11,7 @@ diff -ur nss.org/nss/lib/ckfw/builtins/certdata.perl nss/nss/lib/ckfw/builtins/c print <<EOD /* THIS IS A GENERATED FILE */ /* This Source Code Form is subject to the terms of the Mozilla Public -@@ -119,6 +122,7 @@ +@@ -131,6 +134,7 @@ #ifndef BUILTINS_H #include "builtins.h" #endif /* BUILTINS_H */ diff --git a/external/nss/nss.vs2015.patch b/external/nss/nss.vs2015.patch index de4f8762fd5b..73cff7c833fb 100644 --- a/external/nss/nss.vs2015.patch +++ b/external/nss/nss.vs2015.patch @@ -1,7 +1,7 @@ diff -ru nss.org/nss/coreconf/WIN32.mk nss/nss/coreconf/WIN32.mk --- a/nss.org/nss/coreconf/WIN32.mk 2016-02-12 15:36:18.000000000 +0100 +++ b/nss/nss/coreconf/WIN32.mk 2016-02-26 00:42:43.170809600 +0100 -@@ -199,7 +199,7 @@ +@@ -192,7 +192,7 @@ # Disable C4244: conversion from 'type1' to 'type2', possible loss of data # Disable C4018: 'expression' : signed/unsigned mismatch # Disable C4312: 'type cast': conversion from 'type1' to 'type2' of greater size diff --git a/external/nss/nss.vs2015.pdb.patch b/external/nss/nss.vs2015.pdb.patch index c66940132cdd..3b498f976ac6 100644 --- a/external/nss/nss.vs2015.pdb.patch +++ b/external/nss/nss.vs2015.pdb.patch @@ -1,7 +1,7 @@ diff -ru nss.orig/nss/coreconf/WIN32.mk nss/nss/coreconf/WIN32.mk --- a/nss.orig/nss/coreconf/WIN32.mk 2016-03-04 08:30:16.306639400 +0100 +++ b/nss/nss/coreconf/WIN32.mk 2016-03-04 08:31:17.987233200 +0100 -@@ -169,15 +169,15 @@ +@@ -163,15 +163,15 @@ DLLFLAGS += -OUT:$@ ifdef MOZ_DEBUG_SYMBOLS ifdef MOZ_DEBUG_FLAGS diff --git a/external/nss/nss.windows.patch b/external/nss/nss.windows.patch index 901846e7bc1f..27a44045802e 100644 --- a/external/nss/nss.windows.patch +++ b/external/nss/nss.windows.patch @@ -1,6 +1,6 @@ --- a/a/nspr/config/rules.mk 2008-12-03 00:24:39.000000000 +0100 +++ b/b/nspr/config/rules.mk 2009-11-27 13:36:22.662753328 +0100 -@@ -415,7 +415,7 @@ +@@ -423,7 +423,7 @@ ifdef NEED_ABSOLUTE_PATH # The quotes allow absolute paths to contain spaces. @@ -11,7 +11,7 @@ $(OBJDIR)/%.$(OBJ_SUFFIX): %.cpp --- a/a/nss/coreconf/rules.mk 2008-12-03 00:24:39.000000000 +0100 +++ b/b/nss/coreconf/rules.mk 2009-11-27 13:36:22.662753328 +0100 -@@ -386,7 +386,7 @@ +@@ -280,7 +280,7 @@ endif # The quotes allow absolute paths to contain spaces. @@ -22,7 +22,7 @@ ifdef USE_NT_C_SYNTAX --- a/a/nspr/pr/include/md/_win95.h +++ b/b/nspr/pr/include/md/_win95.h -@@ -312,7 +312,7 @@ +@@ -317,7 +317,7 @@ #define _MD_ATOMIC_ADD(ptr,val) (InterlockedExchangeAdd((PLONG)ptr, (LONG)val) + val) #define _MD_ATOMIC_DECREMENT(x) InterlockedDecrement((PLONG)x) #endif /* x86 */ diff --git a/external/nss/nss_macosx.patch b/external/nss/nss_macosx.patch index 1e7599be6133..456bd62d509b 100644 --- a/external/nss/nss_macosx.patch +++ b/external/nss/nss_macosx.patch @@ -1,7 +1,7 @@ diff -ru a/nspr/configure b/nspr/configure --- a/a/nspr/configure 2014-09-29 16:50:33.907375937 +0100 +++ b/b/nspr/configure 2014-09-29 16:51:59.213931947 +0100 -@@ -6453,6 +6453,9 @@ +@@ -6448,6 +6448,9 @@ AS='$(CC) -x assembler-with-cpp' CFLAGS="$CFLAGS -Wall -fno-common" case "${target_cpu}" in @@ -11,7 +11,7 @@ diff -ru a/nspr/configure b/nspr/configure arm*) CPU_ARCH=arm ;; -@@ -6578,7 +6579,7 @@ +@@ -6483,7 +6486,7 @@ DSO_CFLAGS=-fPIC @@ -23,7 +23,7 @@ diff -ru a/nspr/configure b/nspr/configure diff -ru a/nss/coreconf/Darwin.mk b/nss/coreconf/Darwin.mk --- a/a/nss/coreconf/Darwin.mk 2014-09-29 16:50:22.992304799 +0100 +++ b/b/nss/coreconf/Darwin.mk 2014-09-29 16:51:59.214931953 +0100 -@@ -20,13 +24,17 @@ +@@ -20,13 +20,17 @@ ifeq (,$(filter-out i%86,$(CPU_ARCH))) ifdef USE_64 @@ -41,7 +41,7 @@ diff -ru a/nss/coreconf/Darwin.mk b/nss/coreconf/Darwin.mk override CPU_ARCH = x86 endif else -@@ -40,19 +48,20 @@ +@@ -33,19 +37,20 @@ ifeq (arm,$(CPU_ARCH)) # Nothing set for arm currently. else @@ -66,7 +66,7 @@ diff -ru a/nss/coreconf/Darwin.mk b/nss/coreconf/Darwin.mk # GCC <= 3 DARWIN_SDK_FRAMEWORKS = -F$(MACOS_SDK_DIR)/System/Library/Frameworks ifneq (,$(shell find $(MACOS_SDK_DIR)/Library/Frameworks -maxdepth 0)) -@@ -108,7 +120,7 @@ +@@ -108,7 +113,7 @@ # May override this with different compatibility and current version numbers. DARWIN_DYLIB_VERSIONS = -compatibility_version 1 -current_version 1 # May override this with -bundle to create a loadable module. @@ -78,7 +78,7 @@ diff -ru a/nss/coreconf/Darwin.mk b/nss/coreconf/Darwin.mk diff -ru a/nss/Makefile b/nss/Makefile --- a/a/nss/Makefile 2014-09-29 16:50:22.990304789 +0100 +++ b/b/nss/Makefile 2014-09-29 16:51:59.207931908 +0100 -@@ -72,6 +72,9 @@ +@@ -82,6 +82,9 @@ ifeq ($(OS_TARGET),WIN95) NSPR_CONFIGURE_OPTS += --enable-win32-target=WIN95 endif diff --git a/external/nss/ubsan.patch.0 b/external/nss/ubsan.patch.0 index 059a9f3b2c0a..5f97d3e9d24e 100644 --- a/external/nss/ubsan.patch.0 +++ b/external/nss/ubsan.patch.0 @@ -1,3 +1,12 @@ +--- nss/lib/base/item.c ++++ nss/lib/base/item.c +@@ -182,5 +182,5 @@ + return PR_FALSE; + } + +- return nsslibc_memequal(one->data, two->data, one->size, statusOpt); ++ return one->size == 0 || nsslibc_memequal(one->data, two->data, one->size, statusOpt); + } --- nss/lib/softoken/legacydb/pk11db.c +++ nss/lib/softoken/legacydb/pk11db.c @@ -65,7 +65,7 @@ @@ -18,7 +27,7 @@ count * sizeof(lgdbSlotData); data->data = (unsigned char *)PORT_ZAlloc(dataLen); -@@ -327,7 +327,7 @@ +@@ -329,7 +329,7 @@ } if ((encoded->major == LGDB_DB_EXT1_VERSION_MAJOR) && (encoded->minor >= LGDB_DB_EXT1_VERSION_MINOR)) { diff --git a/external/openssl/UnpackedTarball_openssl.mk b/external/openssl/UnpackedTarball_openssl.mk index 6f00cf7f7e44..82b4f593bd61 100644 --- a/external/openssl/UnpackedTarball_openssl.mk +++ b/external/openssl/UnpackedTarball_openssl.mk @@ -13,6 +13,8 @@ $(eval $(call gb_UnpackedTarball_set_tarball,openssl,$(OPENSSL_TARBALL),,openssl $(eval $(call gb_UnpackedTarball_add_patches,openssl,\ external/openssl/openssl-no-multilib.patch.0 \ + external/openssl/configurable-z-option.patch.0 \ + external/openssl/openssl-no-_umul128-on-aarch64.patch.1 \ )) # vim: set noet sw=4 ts=4: diff --git a/external/openssl/configurable-z-option.patch.0 b/external/openssl/configurable-z-option.patch.0 new file mode 100644 index 000000000000..99d46f75410d --- /dev/null +++ b/external/openssl/configurable-z-option.patch.0 @@ -0,0 +1,34 @@ +--- Configurations/10-main.conf.sav 2021-08-24 13:38:47.000000000 +0000 ++++ Configurations/10-main.conf 2021-11-02 22:20:44.377653700 +0000 +@@ -13,7 +13,7 @@ + } elsif ($disabled{asm}) { + # assembler is still used to compile uplink shim + $vc_win64a_info = { AS => "ml64", +- ASFLAGS => "/nologo /Zi", ++ ASFLAGS => "/nologo $$(DEBUG_FLAGS_VALUE)", + asflags => "/c /Cp /Cx", + asoutflag => "/Fo" }; + } else { +@@ -41,7 +41,7 @@ + } elsif ($disabled{asm}) { + # not actually used, uplink shim is inlined into C code + $vc_win32_info = { AS => "ml", +- ASFLAGS => "/nologo /Zi", ++ ASFLAGS => "/nologo $$(DEBUG_FLAGS_VALUE)", + asflags => "/Cp /coff /c /Cx", + asoutflag => "/Fo", + perlasm_scheme => "win32" }; +@@ -1252,10 +1252,10 @@ + "UNICODE", "_UNICODE", + "_CRT_SECURE_NO_DEPRECATE", + "_WINSOCK_DEPRECATED_NO_WARNINGS"), +- lib_cflags => add("/Zi /Fdossl_static.pdb"), ++ lib_cflags => add("\$(DEBUG_FLAGS_VALUE)"), + lib_defines => add("L_ENDIAN"), +- dso_cflags => "/Zi /Fddso.pdb", +- bin_cflags => "/Zi /Fdapp.pdb", ++ dso_cflags => "\$(DEBUG_FLAGS_VALUE)", ++ bin_cflags => "\$(DEBUG_FLAGS_VALUE)", + shared_ldflag => "/dll", + shared_target => "win-shared", # meaningless except it gives Configure a hint + thread_scheme => "winthreads", diff --git a/external/openssl/openssl-no-_umul128-on-aarch64.patch.1 b/external/openssl/openssl-no-_umul128-on-aarch64.patch.1 new file mode 100644 index 000000000000..c7ca53bc574c --- /dev/null +++ b/external/openssl/openssl-no-_umul128-on-aarch64.patch.1 @@ -0,0 +1,58 @@ +From 98f9a401c3964c7ff0e6ca048685e28a2a6401d4 Mon Sep 17 00:00:00 2001 +From: Hubert Kario <hka...@redhat.com> +Date: Wed, 8 Feb 2023 14:13:24 +0100 +Subject: [PATCH] rsa: add msvc intrinsic for non x64 platforms + +_umul128() is x86_64 (x64) only, while __umulh() works everywhere, but +doesn't generate optimal code on x64 + +Reviewed-by: Dmitry Belyavskiy <beld...@gmail.com> +Reviewed-by: Paul Dale <pa...@openssl.org> +Reviewed-by: Tomas Mraz <to...@openssl.org> +(Merged from https://github.com/openssl/openssl/pull/20244) + +(cherry picked from commit 075652f224479dad2e64b92e791b296177af8705) +--- + crypto/bn/rsa_sup_mul.c | 24 +++++++++++++++++++++++- + 1 file changed, 23 insertions(+), 1 deletion(-) + +diff --git a/crypto/bn/rsa_sup_mul.c b/crypto/bn/rsa_sup_mul.c +index 0e0d02e1946e..3b57161b4589 100644 +--- a/crypto/bn/rsa_sup_mul.c ++++ b/crypto/bn/rsa_sup_mul.c +@@ -110,12 +110,34 @@ static ossl_inline void _mul_limb(limb_t *hi, limb_t *lo, limb_t a, limb_t b) + *lo = (limb_t)t; + } + #elif (BN_BYTES == 8) && (defined _MSC_VER) +-/* https://learn.microsoft.com/en-us/cpp/intrinsics/umul128?view=msvc-170 */ ++# if defined(_M_X64) ++/* ++ * on x86_64 (x64) we can use the _umul128 intrinsic to get one `mul` ++ * instruction to get both high and low 64 bits of the multiplication. ++ * https://learn.microsoft.com/en-us/cpp/intrinsics/umul128?view=msvc-140 ++ */ ++#include <intrin.h> + #pragma intrinsic(_umul128) + static ossl_inline void _mul_limb(limb_t *hi, limb_t *lo, limb_t a, limb_t b) + { + *lo = _umul128(a, b, hi); + } ++# elif defined(_M_ARM64) || defined (_M_IA64) ++/* ++ * We can't use the __umulh() on x86_64 as then msvc generates two `mul` ++ * instructions; so use this more portable intrinsic on platforms that ++ * don't support _umul128 (like aarch64 (ARM64) or ia64) ++ * https://learn.microsoft.com/en-us/cpp/intrinsics/umulh?view=msvc-140 ++ */ ++#include <intrin.h> ++static ossl_inline void _mul_limb(limb_t *hi, limb_t *lo, limb_t a, limb_t b) ++{ ++ *lo = a * b; ++ *hi = __umulh(a, b); ++} ++# else ++# error Only x64, ARM64 and IA64 supported. ++# endif /* defined(_M_X64) */ + #else + /* + * if the compiler doesn't have either a 128bit data type nor a "return diff --git a/external/openssl/openssl-no-multilib.patch.0 b/external/openssl/openssl-no-multilib.patch.0 index 07c45318ac25..3d0083ed4793 100644 --- a/external/openssl/openssl-no-multilib.patch.0 +++ b/external/openssl/openssl-no-multilib.patch.0 @@ -17,7 +17,7 @@ # [no-]zlib [don't] compile support for zlib compression. # zlib-dynamic Like "zlib", but the zlib library is expected to be a shared # library and will be loaded in run-time by the OpenSSL library. -@@ -383,6 +384,7 @@ +@@ -393,6 +394,7 @@ "mdc2", "msan", "multiblock", @@ -25,7 +25,7 @@ "nextprotoneg", "pinshared", "ocb", -@@ -1754,6 +1756,10 @@ +@@ -1770,6 +1772,10 @@ if (-f catfile($srcdir, "test", $_, "build.info")); } diff --git a/external/openssl/opensslios.patch b/external/openssl/opensslios.patch deleted file mode 100644 index 28af92dd473b..000000000000 --- a/external/openssl/opensslios.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- misc/openssl-0.9.8v/Configure -+++ build/openssl-0.9.8v/Configure -@@ -530,6 +530,9 @@ - # iPhoneOS/iOS - "iphoneos-cross","llvm-gcc:-O3 -isysroot \$(CROSS_TOP)/SDKs/\$(CROSS_SDK) -fomit-frame-pointer -fno-common::-D_REENTRANT:iOS:-Wl,-search_paths_first%:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${no_asm}:dlfcn:darwin-shared:-fPIC -fno-common:-dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib", - -+##### iOS in the LibreOffice case -+"ios-aarch64","clang:-O3 -fomit-frame-pointer -DL_ENDIAN:::IOS::SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${aarch64_asm}:::::", -+ - ##### A/UX - "aux3-gcc","gcc:-O2 -DTERMIO::(unknown):AUX:-lbsd:RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:::", - diff --git a/sc/source/core/tool/interpr7.cxx b/sc/source/core/tool/interpr7.cxx index b615830e4e56..3ac21d2d10a4 100644 --- a/sc/source/core/tool/interpr7.cxx +++ b/sc/source/core/tool/interpr7.cxx @@ -222,6 +222,7 @@ void ScInterpreter::ScFilterXML() case XPATH_STRING: PushString(OUString::createFromAscii(reinterpret_cast<char*>(pXPathObj->stringval))); break; +#if LIBXML_VERSION < 21000 || defined(LIBXML_XPTR_LOCS_ENABLED) case XPATH_POINT: PushNoValue(); break; @@ -231,6 +232,7 @@ void ScInterpreter::ScFilterXML() case XPATH_LOCATIONSET: PushNoValue(); break; +#endif case XPATH_USERS: PushNoValue(); break; diff --git a/solenv/bin/concat-deps.c b/solenv/bin/concat-deps.c index 155328bf9360..102f7f5e4396 100644 --- a/solenv/bin/concat-deps.c +++ b/solenv/bin/concat-deps.c @@ -1076,6 +1076,11 @@ static int process(struct hash* dep_hash, char* fn) created_line = generate_phony_line(src_relative, "o"); rc = generate_phony_file(fn, created_line); } + else if(strncmp(src_relative, "GenNasmObject/", 14) == 0) + { + created_line = generate_phony_line(src_relative, "o"); + rc = generate_phony_file(fn, created_line); + } else if(strncmp(src_relative, "CxxClrObject/", 13) == 0) { created_line = generate_phony_line(src_relative, "o"); diff --git a/solenv/gbuild/LinkTarget.mk b/solenv/gbuild/LinkTarget.mk index 1585e59b4729..a18a355a8506 100644 --- a/solenv/gbuild/LinkTarget.mk +++ b/solenv/gbuild/LinkTarget.mk @@ -166,9 +166,9 @@ endef # Overview of dependencies and tasks of LinkTarget # # target task depends on -# LinkTarget linking AsmObject CObject CxxObject GenCObject GenCxxObject ObjCObject ObjCxxObject CxxClrObject GenCxxClrObject +# LinkTarget linking AsmObject CObject CxxObject GenCObject GenCxxObject ObjCObject ObjCxxObject CxxClrObject GenCxxClrObject GenNasmObject # LinkTarget/headers -# LinkTarget/dep joined dep file AsmObject/dep CObject/dep CxxObject/dep GenCObject/dep GenCxxObject/dep ObjCObject/dep ObjCxxObject/dep CxxClrObject/dep GenCxxClrObject/dep +# LinkTarget/dep joined dep file AsmObject/dep CObject/dep CxxObject/dep GenCObject/dep GenCxxObject/dep ObjCObject/dep ObjCxxObject/dep CxxClrObject/dep GenCxxClrObject/dep GenNasmObject/dep # | LinkTarget/headers # LinkTarget/headers all headers available # including own generated @@ -181,6 +181,8 @@ endef # generated source # ObjCObject objective c compile | LinkTarget/headers # ObjCxxObject objective c++ compile | LinkTarget/headers +# GenNasmObject nasm compile from | LinkTarget/headers +# generated source # CxxClrObject C++ CLR compile | LinkTarget/headers # GenCxxClrObject C++ CLR compile from | LinkTarget/headers # generated source @@ -193,6 +195,7 @@ endef # GenCxxObject/dep dependencies # ObjCObject/dep dependencies # ObjCxxObject/dep dependencies +# GenNasmObject/dep dependencies # CxxClrObject/dep dependencies # GenCxxClrObject/dep dependencies # AsmObject/dep dependencies @@ -510,6 +513,32 @@ $(call gb_ObjCObject_get_dep_target,%) : endif +# GenNasmObject class + +gb_GenNasmObject_get_source = $(WORKDIR)/$(1) + +$(call gb_GenNasmObject_get_target,%) : + $(call gb_Output_announce,$*,$(true),ASM,3) + $(call gb_Trace_StartRange,$*,ASM) + test -f $(call gb_GenNasmObject_get_source,$*) || (echo "Missing generated source file $(call gb_GenNasmObject_get_source,$*)" && false) + mkdir -p $(dir $@) $(dir $(call gb_GenNasmObject_get_dep_target,$*)) && cd $(SRCDIR) && \ + $(NASM) $(T_NASMFLAGS) $(T_NASMFLAGS_APPEND) -I$(dir $(call gb_GenNasmObject_get_source,$*)) \ + $(call gb_GenNasmObject_get_source,$*) -o $@ && \ + echo "$@ : $(call gb_GenNasmObject_get_source,$*)" > $(call gb_GenNasmObject_get_dep_target,$*) + $(call gb_Trace_EndRange,$*,ASM) + +ifeq ($(gb_FULLDEPS),$(true)) +$(dir $(call gb_GenNasmObject_get_dep_target,%)).dir : + $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@)) + +$(dir $(call gb_GenNasmObject_get_dep_target,%))%/.dir : + $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@)) + +$(call gb_GenNasmObject_get_dep_target,%) : + $(if $(wildcard $@),touch $@) + +endif + # CxxClrObject class # @@ -592,6 +621,9 @@ $(WORKDIR)/Clean/LinkTarget/% : $(foreach object,$(GENCXXOBJECTS),$(call gb_GenCxxObject_get_target,$(object))) \ $(foreach object,$(GENCXXOBJECTS),$(call gb_GenCxxObject_get_dep_target,$(object))) \ $(foreach object,$(GENCXXOBJECTS),$(call gb_GenCxxObject_get_dwo_target,$(object))) \ + $(foreach object,$(GENNASMOBJECTS),$(call gb_GenNasmObject_get_target,$(object))) \ + $(foreach object,$(GENNASMOBJECTS),$(call gb_GenNasmObject_get_dep_target,$(object))) \ + $(foreach object,$(GENNASMOBJECTS),$(call gb_GenNasmObject_get_dwo_target,$(object))) \ $(foreach object,$(GENCXXCLROBJECTS),$(call gb_GenCxxClrObject_get_target,$(object))) \ $(foreach object,$(GENCXXCLROBJECTS),$(call gb_GenCxxClrObject_get_dep_target,$(object))) \ $(foreach object,$(GENCXXCLROBJECTS),$(call gb_GenCxxClrObject_get_dwo_target,$(object))) \ ... etc. - the rest is truncated