[Libreoffice-commits] core.git: Branch 'distro/lhm/libreoffice-4-1-6+backports' - 9 commits - configure.ac curl/curl-7.26.0_mingw.patch curl/curl-7.26.0_nspr.patch curl/curl-7.26.0.patch curl/curl-7.26.0_win.patch curl/curl-7.26.0_win-proxy.patch curl/curl-aix.patch curl/curl-android.patch curl/ExternalPackage_curl.mk curl/ExternalProject_curl.mk curl/Makefile curl/Module_curl.mk curl/README curl/UnpackedTarball_curl.mk download.lst external/curl external/Module_external.mk Makefile.fetch RepositoryExternal.mk RepositoryModule_host.mk

Libreoffice Gerrit user logerrit at kemper.freedesktop.org
Wed Aug 15 03:45:29 UTC 2018


 Makefile.fetch                                    |    2 
 RepositoryExternal.mk                             |   11 ++
 RepositoryModule_host.mk                          |    1 
 configure.ac                                      |   35 -------
 curl/ExternalPackage_curl.mk                      |   43 ---------
 curl/curl-7.26.0.patch                            |   86 -------------------
 curl/curl-7.26.0_win.patch                        |   59 -------------
 curl/curl-aix.patch                               |   13 --
 download.lst                                      |    3 
 external/Module_external.mk                       |    4 
 external/curl/ExternalPackage_curl.mk             |   28 ++++++
 external/curl/ExternalProject_curl.mk             |   35 +++++--
 external/curl/Module_curl.mk                      |    2 
 external/curl/UnpackedTarball_curl.mk             |   15 +--
 external/curl/curl-7.26.0_win-proxy.patch         |   97 +++++++++-------------
 external/curl/curl-msvc-disable-protocols.patch.1 |   35 +++++++
 external/curl/curl-msvc.patch.1                   |   27 ++++++
 17 files changed, 185 insertions(+), 311 deletions(-)

New commits:
commit 6ef3401c4563e5c68483e4df08acbf86b6c01e2d
Author:     Thorsten Behrens <Thorsten.Behrens at CIB.de>
AuthorDate: Wed May 16 11:16:07 2018 +0200
Commit:     Thorsten Behrens <Thorsten.Behrens at CIB.de>
CommitDate: Wed Aug 15 05:42:13 2018 +0200

    curl: upgrade to release 7.60.0
    
    This fixes the following CVEs:
    * FTP: shutdown response buffer overflow CVE-2018-1000300
    * RTSP: bad headers buffer over-read CVE-2018-1000301
    
    Reviewed-on: https://gerrit.libreoffice.org/54418
    Reviewed-by: Thorsten Behrens <Thorsten.Behrens at CIB.de>
    Tested-by: Thorsten Behrens <Thorsten.Behrens at CIB.de>
    
    Conflicts:
            download.lst
    
    Change-Id: Ic3229577083286501162aa5979a94ce934739557

diff --git a/download.lst b/download.lst
index bdc34a08672b..4da89b81c87d 100644
--- a/download.lst
+++ b/download.lst
@@ -1,9 +1,9 @@
 CDR_MD5SUM := d88f9b94df880d2c05be943b000ca112
 export CDR_TARBALL := libcdr-0.0.14.tar.bz2
+CURL_MD5SUM := 48eb126345d3b0f0a71a486b7f5d0307
+export CURL_TARBALL := curl-7.60.0.tar.gz
 GRAPHITE_MD5SUM := 9c499b8ec9f1b81fd0bb6a3b986f4b0f
 export GRAPHITE_TARBALL := graphite2-minimal-1.3.10.tgz
-CURL_MD5SUM := 7e9e9d5405c61148d53035426f162b0a
-export CURL_TARBALL := curl-7.58.0.tar.gz
 MSPUB_MD5SUM := 1120705cd0f0d9bd5506360bf57b6c2e
 export MSPUB_TARBALL := libmspub-0.0.6.tar.bz2
 MWAW_MD5SUM := 828dd03510791fbe037081a2b4a1a8ff
diff --git a/external/curl/curl-7.26.0_win-proxy.patch b/external/curl/curl-7.26.0_win-proxy.patch
index e51c5d017818..5361433a917b 100644
--- a/external/curl/curl-7.26.0_win-proxy.patch
+++ b/external/curl/curl-7.26.0_win-proxy.patch
@@ -4,8 +4,8 @@
  
  CFLAGS_LIBCURL_STATIC  = /DCURL_STATICLIB
  
--WIN_LIBS    = ws2_32.lib wldap32.lib advapi32.lib
-+WIN_LIBS    = ws2_32.lib wldap32.lib advapi32.lib winhttp.lib
+-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
@@ -112,9 +112,9 @@
    const char *protop = conn->handler->scheme;
    char *envp = proxy_env;
 @@ -4663,6 +4739,7 @@
-     if(!proxy)
-       proxy = curl_getenv("ALL_PROXY");
    }
+   if(proxy)
+     infof(conn->data, "Uses proxy env variable %s == '%s'\n", envp, proxy);
 +#endif /* WIN32 */
  
    return proxy;
commit 2b08b967c39233fc21c5320325103ec41ca0632e
Author:     Michael Stahl <mstahl at redhat.com>
AuthorDate: Wed Jan 24 11:44:26 2018 +0100
Commit:     Thorsten Behrens <Thorsten.Behrens at CIB.de>
CommitDate: Wed Aug 15 05:42:13 2018 +0200

    curl: upgrade to release 7.58.0
    
    * fixes 2 CVEs
    * disable some new optional dependencies
    
    Change-Id: If7725d126e68de04b67969a83c0ea08573a43679
    Reviewed-on: https://gerrit.libreoffice.org/48493
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Michael Stahl <mstahl at redhat.com>
    (cherry picked from commit 5e3799a0c8a92918b9e1868c942f8918ff61c003)
    Reviewed-on: https://gerrit.libreoffice.org/48539
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>

diff --git a/download.lst b/download.lst
index 8ed122d00bbb..bdc34a08672b 100644
--- a/download.lst
+++ b/download.lst
@@ -2,8 +2,8 @@ CDR_MD5SUM := d88f9b94df880d2c05be943b000ca112
 export CDR_TARBALL := libcdr-0.0.14.tar.bz2
 GRAPHITE_MD5SUM := 9c499b8ec9f1b81fd0bb6a3b986f4b0f
 export GRAPHITE_TARBALL := graphite2-minimal-1.3.10.tgz
-CURL_MD5SUM := 7ce35f207562674e71dbada6891b37e3f043c1e7a82915cb9c2a17ad3a9d659b
-export CURL_TARBALL := curl-7.57.0.tar.gz
+CURL_MD5SUM := 7e9e9d5405c61148d53035426f162b0a
+export CURL_TARBALL := curl-7.58.0.tar.gz
 MSPUB_MD5SUM := 1120705cd0f0d9bd5506360bf57b6c2e
 export MSPUB_TARBALL := libmspub-0.0.6.tar.bz2
 MWAW_MD5SUM := 828dd03510791fbe037081a2b4a1a8ff
diff --git a/external/curl/ExternalProject_curl.mk b/external/curl/ExternalProject_curl.mk
index 3b70176c3ce9..9ee991aaa7e2 100644
--- a/external/curl/ExternalProject_curl.mk
+++ b/external/curl/ExternalProject_curl.mk
@@ -38,11 +38,21 @@ $(call gb_ExternalProject_get_state_target,curl,build):
 		CPPFLAGS="$(curl_CPPFLAGS)" \
 		LDFLAGS=$(curl_LDFLAGS) \
 		./configure \
-			--with-nss$(if $(filter NO,$(SYSTEM_NSS)),="$(call gb_UnpackedTarball_get_dir,nss)/dist/out") \
-			--without-ssl \
-			--without-libidn --enable-ftp --enable-ipv6 --enable-http --disable-gopher \
-			--disable-file --disable-ldap --disable-telnet --disable-dict --without-libssh2 \
-			$(if $(filter YES,$(CROSS_COMPILING)),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)) \
+			$(if $(filter IOS MACOSX,$(OS)),\
+				--with-darwinssl,\
+				$(if $(ENABLE_NSS),--with-nss$(if $(SYSTEM_NSS),,="$(call gb_UnpackedTarball_get_dir,nss)/dist/out"),--without-nss)) \
+			--without-ssl --without-gnutls --without-polarssl --without-cyassl --without-axtls --without-mbedtls \
+			--enable-ftp --enable-http --enable-ipv6 \
+			--without-libidn2 --without-libpsl --without-librtmp \
+			--without-libssh2 --without-metalink --without-nghttp2 \
+			--without-libssh --without-brotli \
+			--disable-ares \
+			--disable-dict --disable-file --disable-gopher --disable-imap \
+			--disable-ldap --disable-ldaps --disable-manual --disable-pop3 \
+			--disable-rtsp --disable-smb --disable-smtp --disable-telnet  \
+			--disable-tftp  \
+			$(if $(filter LINUX,$(OS)),--without-ca-bundle --without-ca-path) \
+			$(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)) \
 			$(if $(filter TRUE,$(DISABLE_DYNLOADING)),--disable-shared,--disable-static) \
 			$(if $(filter TRUE,$(ENABLE_DEBUG)),--enable-debug) \
 		&& cd lib \
commit c67805fea15d7a3c335349905b3a646e2503ef6c
Author:     Michael Stahl <mstahl at redhat.com>
AuthorDate: Wed Nov 29 11:30:49 2017 +0100
Commit:     Thorsten Behrens <Thorsten.Behrens at CIB.de>
CommitDate: Wed Aug 15 05:42:12 2018 +0200

    curl: upgrade to release 7.57.0
    
    fixes 3 CVEs
    
    Change-Id: Idf5eee66fac399a2b338c2a9aaea2f56d2cb3a51
    Reviewed-on: https://gerrit.libreoffice.org/45480
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Michael Stahl <mstahl at redhat.com>
    (cherry picked from commit a16eb857f3497a5ac65a7c7e89d0d6b8614aeb5e)
    Reviewed-on: https://gerrit.libreoffice.org/45510

diff --git a/download.lst b/download.lst
index 24006d206301..8ed122d00bbb 100644
--- a/download.lst
+++ b/download.lst
@@ -2,8 +2,8 @@ CDR_MD5SUM := d88f9b94df880d2c05be943b000ca112
 export CDR_TARBALL := libcdr-0.0.14.tar.bz2
 GRAPHITE_MD5SUM := 9c499b8ec9f1b81fd0bb6a3b986f4b0f
 export GRAPHITE_TARBALL := graphite2-minimal-1.3.10.tgz
-CURL_SHA256SUM := 961a25531d72a843dfcce87b290e7a882f2d376f3b88de11df009710019c5b16
-export CURL_TARBALL := curl-7.56.1.tar.gz
+CURL_MD5SUM := 7ce35f207562674e71dbada6891b37e3f043c1e7a82915cb9c2a17ad3a9d659b
+export CURL_TARBALL := curl-7.57.0.tar.gz
 MSPUB_MD5SUM := 1120705cd0f0d9bd5506360bf57b6c2e
 export MSPUB_TARBALL := libmspub-0.0.6.tar.bz2
 MWAW_MD5SUM := 828dd03510791fbe037081a2b4a1a8ff
commit 976adefb10c9b6a6427c3d0844f892cdba6b459d
Author:     Michael Stahl <mstahl at redhat.com>
AuthorDate: Mon Oct 23 17:43:21 2017 +0200
Commit:     Thorsten Behrens <Thorsten.Behrens at CIB.de>
CommitDate: Wed Aug 15 05:42:12 2018 +0200

    curl: upgrade to release 7.56.1
    
    - fixes a very minor CVE: CVE-2017-1000254
    - the Windows nmakefiles we were previously using have been
      removed, so we use the *other* Windows nmake build system now
    - /EHs override is pointless, default /EHsc should work fine
    - the macros defined in ExternalProject are not needed any more
    - curl-msvc-schannel.patch.1: drop, not needed with new makefiles
    - curl-osx.patch.1: none of it applies, presumably fixed upstream
    
    Change-Id: I15c71b9c82c31d286d935b57543a1b0216123b66
    Reviewed-on: https://gerrit.libreoffice.org/43724
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Michael Stahl <mstahl at redhat.com>

diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
index a9cc70917489..8cf4ff51a199 100644
--- a/RepositoryExternal.mk
+++ b/RepositoryExternal.mk
@@ -1896,9 +1896,16 @@ $(call gb_LinkTarget_set_include,$(1),\
 	-I$(call gb_UnpackedTarball_get_dir,curl/include) \
 	$$(INCLUDE) \
 )
-$(call gb_LinkTarget_use_libraries,$(1),\
-	curl \
+
+ifeq ($(COM),MSC)
+$(call gb_LinkTarget_add_libs,$(1),\
+	$(call gb_UnpackedTarball_get_dir,curl)/builds/libcurl-vc11-$(if $(filter X86_64,$(CPUNAME)),x64,x86)-$(if $(MSVC_USE_DEBUG_RUNTIME),debug,release)-dll-ipv6-sspi-winssl/lib/libcurl$(if $(MSVC_USE_DEBUG_RUNTIME),_debug).lib \
 )
+else
+$(call gb_LinkTarget_add_libs,$(1),\
+	-L$(call gb_UnpackedTarball_get_dir,curl)/lib/.libs -lcurl \
+)
+endif
 
 endef
 
diff --git a/download.lst b/download.lst
index 32ed3e4180d7..24006d206301 100644
--- a/download.lst
+++ b/download.lst
@@ -2,8 +2,8 @@ CDR_MD5SUM := d88f9b94df880d2c05be943b000ca112
 export CDR_TARBALL := libcdr-0.0.14.tar.bz2
 GRAPHITE_MD5SUM := 9c499b8ec9f1b81fd0bb6a3b986f4b0f
 export GRAPHITE_TARBALL := graphite2-minimal-1.3.10.tgz
-CURL_MD5SUM := 4e1ef056e117b4d25f4ec42ac609c0d4
-export CURL_TARBALL := curl-7.52.1.tar.gz
+CURL_SHA256SUM := 961a25531d72a843dfcce87b290e7a882f2d376f3b88de11df009710019c5b16
+export CURL_TARBALL := curl-7.56.1.tar.gz
 MSPUB_MD5SUM := 1120705cd0f0d9bd5506360bf57b6c2e
 export MSPUB_TARBALL := libmspub-0.0.6.tar.bz2
 MWAW_MD5SUM := 828dd03510791fbe037081a2b4a1a8ff
diff --git a/external/Module_external.mk b/external/Module_external.mk
index 3905b5d090f1..5ce428d60e28 100644
--- a/external/Module_external.mk
+++ b/external/Module_external.mk
@@ -43,7 +43,6 @@ endif
 $(eval $(call gb_Module_add_moduledirs,external,\
 	$(call gb_Helper_optional,CURL,curl) \
 ))
-endif
 
 ifeq ($(HAVE_READDIR_R),NO)
 ifneq ($(OS),WNT)
diff --git a/external/curl/ExternalPackage_curl.mk b/external/curl/ExternalPackage_curl.mk
index e9cb7a10a127..56c418b6ef0c 100644
--- a/external/curl/ExternalPackage_curl.mk
+++ b/external/curl/ExternalPackage_curl.mk
@@ -11,33 +11,18 @@ $(eval $(call gb_ExternalPackage_ExternalPackage,curl,curl))
 
 $(eval $(call gb_ExternalPackage_use_external_project,curl,curl))
 
-ifneq ($(OS),WNT)
+ifneq ($(DISABLE_DYNLOADING),TRUE)
 
-ifeq ($(COM),GCC)
-$(eval $(call gb_ExternalPackage_add_file,curl,lib/pkgconfig/libcurl.pc,libcurl.pc))
-endif
-
-ifeq ($(DISABLE_DYNLOADING),TRUE)
-$(eval $(call gb_ExternalPackage_add_file,curl,lib/libcurl.a,lib/.libs/libcurl.a))
-else ifeq ($(OS),ANDROID)
-$(eval $(call gb_ExternalPackage_add_file,curl,lib/libcurl.so,lib/.libs/libcurl.so))
+ifeq ($(COM),MSC)
+$(eval $(call gb_ExternalPackage_add_file,curl,$(LIBO_LIB_FOLDER)/libcurl$(if $(MSVC_USE_DEBUG_RUNTIME),_debug).dll,builds/libcurl-vc12-$(if $(filter X86_64,$(CPUNAME)),x64,x86)-$(if $(MSVC_USE_DEBUG_RUNTIME),debug,release)-dll-ipv6-sspi-winssl/bin/libcurl$(if $(MSVC_USE_DEBUG_RUNTIME),_debug).dll))
+else ifeq ($(OS),MACOSX)
+$(eval $(call gb_ExternalPackage_add_file,curl,$(LIBO_LIB_FOLDER)/libcurl.4.dylib,lib/.libs/libcurl.4.dylib))
 else ifeq ($(OS),AIX)
-$(eval $(call gb_ExternalPackage_add_library_for_install,curl,lib/libcurl.so,lib/.libs/libcurl.so.4))
+$(eval $(call gb_ExternalPackage_add_file,curl,$(LIBO_LIB_FOLDER)/libcurl.so,lib/.libs/libcurl.so.4))
 else
-$(eval $(call gb_ExternalPackage_add_file,curl,lib/libcurl.so,lib/.libs/libcurl.so.4.2.0))
-$(eval $(call gb_ExternalPackage_add_library_for_install,curl,lib/libcurl.so.4,lib/.libs/libcurl.so.4.2.0))
+$(eval $(call gb_ExternalPackage_add_file,curl,$(LIBO_LIB_FOLDER)/libcurl.so.4,lib/.libs/libcurl.so.4.5.0))
 endif
 
-else ifeq ($(OS)$(COM),WNTGCC)
-
-$(eval $(call gb_ExternalPackage_add_file,curl,lib/libcurl.a,lib/.libs/libcurl.a))
-$(eval $(call gb_ExternalPackage_add_library_for_install,curl,bin/libcurl.dll,lib/.libs/libcurl.dll))
-
-else ifeq ($(COM),MSC)
-
-$(eval $(call gb_ExternalPackage_add_file,curl,lib/libcurl.lib,lib/libcurl.lib))
-$(eval $(call gb_ExternalPackage_add_library_for_install,curl,bin/libcurl.dll,lib/libcurl.dll))
-
-endif
+endif # $(DISABLE_DYNLOADING)
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/curl/ExternalProject_curl.mk b/external/curl/ExternalProject_curl.mk
index 80c54bf4696e..3b70176c3ce9 100644
--- a/external/curl/ExternalProject_curl.mk
+++ b/external/curl/ExternalProject_curl.mk
@@ -68,10 +68,17 @@ else ifeq ($(COM),MSC)
 
 $(call gb_ExternalProject_get_state_target,curl,build):
 	$(call gb_ExternalProject_run,build,\
-		MAKEFLAGS= LIB="$(ILIB)" nmake -f Makefile.vc11 \
-			cfg=$(if $(MSVC_USE_DEBUG_RUNTIME),debug-dll,release-dll) \
-			EXCFLAGS="/EHa /Zc:wchar_t- /D_CRT_SECURE_NO_DEPRECATE /DUSE_WINDOWS_SSPI $(SOLARINC)" $(if $(filter X86_64,$(CPUNAME)),MACHINE=X64) \
-	,lib)
+		CC="$(shell cygpath -w $(filter-out -%,$(CC))) $(filter -%,$(CC))" \
+		MAKEFLAGS= LIB="$(ILIB)" nmake -f Makefile.vc \
+			mode=dll \
+			VC=11 \
+			$(if $(filter X86_64,$(CPUNAME)),MACHINE=x64,MACHINE=x86) \
+			GEN_PDB=$(if $(gb_SYMBOL),yes,no) \
+			DEBUG=$(if $(MSVC_USE_DEBUG_RUNTIME),yes,no) \
+			ENABLE_IPV6=yes \
+			ENABLE_SSPI=yes \
+			ENABLE_WINSSL=yes \
+	,winbuild)
 
 endif
 
diff --git a/external/curl/UnpackedTarball_curl.mk b/external/curl/UnpackedTarball_curl.mk
index e97d52dc135e..a08086610fa9 100644
--- a/external/curl/UnpackedTarball_curl.mk
+++ b/external/curl/UnpackedTarball_curl.mk
@@ -14,7 +14,7 @@ $(eval $(call gb_UnpackedTarball_set_tarball,curl,$(CURL_TARBALL)))
 $(eval $(call gb_UnpackedTarball_set_patchlevel,curl,1))
 
 $(eval $(call gb_UnpackedTarball_fix_end_of_line,curl,\
-	lib/Makefile.vc11 \
+	winbuild/MakefileBuild.vc \
 ))
 $(eval $(call gb_UnpackedTarball_add_patches,curl,\
 	external/curl/curl-7.26.0_nspr.patch \
diff --git a/external/curl/curl-7.26.0_win-proxy.patch b/external/curl/curl-7.26.0_win-proxy.patch
index a3ec3245f518..e51c5d017818 100644
--- a/external/curl/curl-7.26.0_win-proxy.patch
+++ b/external/curl/curl-7.26.0_win-proxy.patch
@@ -1,11 +1,121 @@
---- curl-7.26.0/lib/Makefile.vc9
-+++ misc/build/curl-7.26.0/lib/Makefile.vc9
-@@ -116,7 +116,7 @@ LFLAGS     = /nologo /machine:$(MACHINE)
- SSLLIBS    = libeay32.lib ssleay32.lib
- ZLIBLIBSDLL= zdll.lib
- ZLIBLIBS   = zlib.lib
--WINLIBS    = ws2_32.lib wldap32.lib
-+WINLIBS    = ws2_32.lib wldap32.lib winhttp.lib
- CFLAGS     = $(CFLAGS) $(EXCFLAGS)
- 
- CFGSET     = FALSE
+--- 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
++WIN_LIBS    = ws2_32.lib wldap32.lib advapi32.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 != NULL) {
++    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(NULL != ieNoProxy) {
++        no_proxy = strdup(ieNoProxy);
++        pos = strpbrk(no_proxy, "; ");
++        while(NULL != 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(NULL != ieProxy) {
++          tok = strtok_s(ieProxy, ";", &saveptr);
++          if(strchr(tok, '=') == NULL) {
++            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(NULL != 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)
+       proxy = curl_getenv("ALL_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
new file mode 100644
index 000000000000..c8747a5fcc1d
--- /dev/null
+++ b/external/curl/curl-msvc-disable-protocols.patch.1
@@ -0,0 +1,35 @@
+disable protocols nobody needs in MSVC build
+
+--- curl/lib/config-win32.h.orig	2017-08-09 16:43:29.464000000 +0200
++++ curl/lib/config-win32.h	2017-08-09 16:47:38.549200000 +0200
+@@ -733,4 +733,19 @@
+ #  define ENABLE_IPV6 1
+ #endif
+ 
++#define CURL_DISABLE_DICT 1
++#define CURL_DISABLE_FILE 1
++//#undef CURL_DISABLE_FTP
++#define CURL_DISABLE_GOPHER 1
++//#undef CURL_DISABLE_HTTP
++#define CURL_DISABLE_IMAP 1
++#define CURL_DISABLE_LDAP 1
++#define CURL_DISABLE_LDAPS 1
++#define CURL_DISABLE_POP3 1
++#define CURL_DISABLE_RTSP 1
++#define CURL_DISABLE_SMB 1
++#define CURL_DISABLE_SMTP 1
++#define CURL_DISABLE_TELNET 1
++#define CURL_DISABLE_TFTP 1
++
+ #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 @@
+ 
+ EXE_OBJS = $(CURL_OBJS) $(CURL_DIROBJ)\curl.res
+ 
+-all : $(TARGET) $(PROGRAM_NAME)
++all : $(TARGET)
+ 
+ package: $(TARGET)
+ 	@cd $(DIRDIST)
diff --git a/external/curl/curl-msvc.patch.1 b/external/curl/curl-msvc.patch.1
index 6e1df90ef68e..80160958c99d 100644
--- a/external/curl/curl-msvc.patch.1
+++ b/external/curl/curl-msvc.patch.1
@@ -1,27 +1,27 @@
-MSVC: using SOLARINC and EXCFLAGS
+MSVC: using SOLARINC
 
---- curl/lib/Makefile.vc11	2012-05-24 12:07:02.000000000 -0400
-+++ curl/lib/Makefile.vc11	2012-10-29 11:53:44.658809300 -0400
-@@ -117,7 +117,7 @@
- ZLIBLIBSDLL  = zdll.lib
- ZLIBLIBS     = zlib.lib
- WINLIBS      = ws2_32.lib wldap32.lib advapi32.lib
--CFLAGS       = $(CFLAGS)
-+CFLAGS       = $(CFLAGS) $(EXCFLAGS)
+--- 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 @@
+ !ELSE
+ CC_NODEBUG  = $(CC) /O2 /DNDEBUG
+ CC_DEBUG    = $(CC) /Od /D_DEBUG /RTC1 /Z7 /LDd
+-CFLAGS      = /I. /I ../lib /I../include /nologo /W4 /wd4127 /EHsc /DWIN32 /FD /c /DBUILDING_LIBCURL
++CFLAGS      = /I. /I ../lib /I../include /nologo /W4 /wd4127 /EHsc /DWIN32 /FD /c /DBUILDING_LIBCURL $(SOLARINC)
+ !ENDIF
  
- CFGSET       = FALSE
+ LFLAGS     = /nologo /machine:$(MACHINE)
+@@ -300,11 +300,11 @@
+ # CURL_XX macros are for the curl.exe command
  
-@@ -620,11 +620,11 @@
- debug-dll-ssl-dll\libcurl.res \
- debug-dll-zlib-dll\libcurl.res \
- debug-dll-ssl-dll-zlib-dll\libcurl.res: libcurl.rc
--	rc /dDEBUGBUILD=1 /Fo $@ libcurl.rc
-+	rc $(SOLARINC) /dDEBUGBUILD=1 /Fo $@ libcurl.rc
-
- release-dll\libcurl.res \
- release-dll-ssl-dll\libcurl.res \
- release-dll-zlib-dll\libcurl.res \
- release-dll-ssl-dll-zlib-dll\libcurl.res: libcurl.rc
--	rc /dDEBUGBUILD=0 /Fo $@ libcurl.rc
-+	rc $(SOLARINC) /dDEBUGBUILD=0 /Fo $@ libcurl.rc
- !ENDIF  # End of case where a config was provided.
+ !IF "$(DEBUG)"=="yes"
+-RC_FLAGS = /dDEBUGBUILD=1 /Fo $@ $(LIBCURL_SRC_DIR)\libcurl.rc
++RC_FLAGS = $(SOLARINC) /dDEBUGBUILD=1 /Fo $@ $(LIBCURL_SRC_DIR)\libcurl.rc
+ CURL_CC       = $(CC_DEBUG) $(RTLIB_DEBUG)
+ CURL_RC_FLAGS = /i../include /dDEBUGBUILD=1 /Fo $@ $(CURL_SRC_DIR)\curl.rc
+ !ELSE
+-RC_FLAGS = /dDEBUGBUILD=0 /Fo $@ $(LIBCURL_SRC_DIR)\libcurl.rc
++RC_FLAGS = $(SOLARINC) /dDEBUGBUILD=0 /Fo $@ $(LIBCURL_SRC_DIR)\libcurl.rc
+ CURL_CC       = $(CC_NODEBUG) $(RTLIB)
+ CURL_RC_FLAGS = /i../include /dDEBUGBUILD=0 /Fo $@ $(CURL_SRC_DIR)\curl.rc
+ !ENDIF
commit 19c6092c8cd54dae67d706ed8cdf529d05e23284
Author:     Thorsten Behrens <Thorsten.Behrens at CIB.de>
AuthorDate: Mon Jan 23 15:32:36 2017 +0100
Commit:     Thorsten Behrens <Thorsten.Behrens at CIB.de>
CommitDate: Wed Aug 15 05:42:11 2018 +0200

    curl: upgrade to version 7.52.1
    
    - fixes some four CVEs
    - and a ton of other fixes & improvements
    
    Change-Id: I2312f30f72c914c7e930c59ddbe44fb8a282c0a5
    Reviewed-on: https://gerrit.libreoffice.org/33471
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Thorsten Behrens <Thorsten.Behrens at CIB.de>

diff --git a/download.lst b/download.lst
index 3d4c40f845db..32ed3e4180d7 100644
--- a/download.lst
+++ b/download.lst
@@ -2,8 +2,8 @@ CDR_MD5SUM := d88f9b94df880d2c05be943b000ca112
 export CDR_TARBALL := libcdr-0.0.14.tar.bz2
 GRAPHITE_MD5SUM := 9c499b8ec9f1b81fd0bb6a3b986f4b0f
 export GRAPHITE_TARBALL := graphite2-minimal-1.3.10.tgz
-CURL_MD5SUM := 490e19a8ccd1f4a244b50338a0eb9456
-export CURL_TARBALL := curl-7.51.0.tar.gz
+CURL_MD5SUM := 4e1ef056e117b4d25f4ec42ac609c0d4
+export CURL_TARBALL := curl-7.52.1.tar.gz
 MSPUB_MD5SUM := 1120705cd0f0d9bd5506360bf57b6c2e
 export MSPUB_TARBALL := libmspub-0.0.6.tar.bz2
 MWAW_MD5SUM := 828dd03510791fbe037081a2b4a1a8ff
diff --git a/external/curl/curl-7.26.0_win-proxy.patch b/external/curl/curl-7.26.0_win-proxy.patch
index 2faab5a1d6ad..a3ec3245f518 100644
--- a/external/curl/curl-7.26.0_win-proxy.patch
+++ b/external/curl/curl-7.26.0_win-proxy.patch
@@ -9,120 +9,3 @@
  CFLAGS     = $(CFLAGS) $(EXCFLAGS)
  
  CFGSET     = FALSE
---- curl-7.26.0/lib/url.c
-+++ misc/build/curl-7.26.0/lib/url.c
-@@ -80,6 +80,10 @@ void idn_free (void *ptr);
- int curl_win32_idn_to_ascii(const char *in, char **out);
- #endif  /* USE_LIBIDN */
- 
-+#ifdef WIN32
-+#include <WinHttp.h>
-+#endif
-+
- #include "urldata.h"
- #include "netrc.h"
- 
-@@ -4111,6 +4115,21 @@ static bool check_noproxy(const char* name, const char* no_proxy)
-   return FALSE;
- }
- 
-+#ifdef WIN32
-+static char* wstrToCstr( LPWSTR wStr )
-+{
-+  int bufSize;
-+  char* out = NULL;
-+  if(wStr != NULL) {
-+    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.
-@@ -4119,6 +4138,7 @@ static bool check_noproxy(const char* name, const char* no_proxy)
- static char *detect_proxy(struct connectdata *conn)
- {
-   char *proxy = NULL;
-+  char *no_proxy=NULL;
- 
- #ifndef CURL_DISABLE_HTTP
-   /* If proxy was not specified, we check for default proxy environment
-@@ -4138,7 +4158,63 @@ static char *detect_proxy(struct connectdata *conn)
-    * For compatibility, the all-uppercase versions of these variables are
-    * checked if the lowercase versions don't exist.
-    */
--  char *no_proxy=NULL;
-+#ifdef WIN32
-+  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(NULL != ieNoProxy) {
-+        no_proxy = strdup(ieNoProxy);
-+        pos = strpbrk(no_proxy, "; ");
-+        while(NULL != 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(NULL != ieProxy) {
-+          tok = strtok_s(ieProxy, ";", &saveptr);
-+          if(strchr(tok, '=') == NULL) {
-+            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(NULL != tok);
-+          }
-+        }
-+      }
-+
-+      free(ieProxy);
-+      free(ieNoProxy);
-+    }
-+    else {
-+      /* TODO Handle the Proxy config Auto Detection case */
-+    }
-+
-+    GlobalFree( ieProxyConfig->lpszAutoConfigUrl );
-+    GlobalFree( ieProxyConfig->lpszProxy );
-+    GlobalFree( ieProxyConfig->lpszProxyBypass );
-+  }
-+#else /* !WIN32 */
-   char proxy_env[128];
- 
-   no_proxy=curl_getenv("no_proxy");
-@@ -4189,6 +4265,7 @@ static char *detect_proxy(struct connectdata *conn)
-     }
-   } /* if(!check_noproxy(conn->host.name, no_proxy)) - it wasn't specified
-        non-proxy */
-+#endif /* WIN32 */
-   free(no_proxy);
- 
- #else /* !CURL_DISABLE_HTTP */
commit 2feda2493ab2a95b367989499d77510c692b2fc7
Author:     Michael Stahl <mstahl at redhat.com>
AuthorDate: Wed Nov 2 11:48:21 2016 +0100
Commit:     Thorsten Behrens <Thorsten.Behrens at CIB.de>
CommitDate: Wed Aug 15 05:42:10 2018 +0200

    curl: upgrade to version 7.51.0
    
    - fixes about a dozen CVEs
    - tweak curl-7.26.0_win-proxy.patch:
      there is a "checksrc" thing now in curl that fails the build with:
        warning: use of strtok is banned (BANNEDFUNC)
      so use strtok_s instead (which is MSVC's name for standard strtok_r)
    - use Makefile.vc12 instead of Makefile.vc10
    - remove strequal.obj from Makefile.vc12, it does not actually exist
    
    Change-Id: Ie2da64980d88c72b0c902376ffc01abf97a7bc91
    Reviewed-on: https://gerrit.libreoffice.org/30484
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Michael Stahl <mstahl at redhat.com>

diff --git a/download.lst b/download.lst
index 4d9d907ea761..3d4c40f845db 100644
--- a/download.lst
+++ b/download.lst
@@ -2,8 +2,8 @@ CDR_MD5SUM := d88f9b94df880d2c05be943b000ca112
 export CDR_TARBALL := libcdr-0.0.14.tar.bz2
 GRAPHITE_MD5SUM := 9c499b8ec9f1b81fd0bb6a3b986f4b0f
 export GRAPHITE_TARBALL := graphite2-minimal-1.3.10.tgz
-CURL_MD5SUM := 11bddbb452a8b766b932f859aaeeed39
-export CURL_TARBALL := curl-7.43.0.tar.bz2
+CURL_MD5SUM := 490e19a8ccd1f4a244b50338a0eb9456
+export CURL_TARBALL := curl-7.51.0.tar.gz
 MSPUB_MD5SUM := 1120705cd0f0d9bd5506360bf57b6c2e
 export MSPUB_TARBALL := libmspub-0.0.6.tar.bz2
 MWAW_MD5SUM := 828dd03510791fbe037081a2b4a1a8ff
diff --git a/external/curl/ExternalProject_curl.mk b/external/curl/ExternalProject_curl.mk
index 12bb1782a6cf..80c54bf4696e 100644
--- a/external/curl/ExternalProject_curl.mk
+++ b/external/curl/ExternalProject_curl.mk
@@ -68,7 +68,7 @@ else ifeq ($(COM),MSC)
 
 $(call gb_ExternalProject_get_state_target,curl,build):
 	$(call gb_ExternalProject_run,build,\
-		MAKEFLAGS= LIB="$(ILIB)" nmake -f Makefile.vc9 \
+		MAKEFLAGS= LIB="$(ILIB)" nmake -f Makefile.vc11 \
 			cfg=$(if $(MSVC_USE_DEBUG_RUNTIME),debug-dll,release-dll) \
 			EXCFLAGS="/EHa /Zc:wchar_t- /D_CRT_SECURE_NO_DEPRECATE /DUSE_WINDOWS_SSPI $(SOLARINC)" $(if $(filter X86_64,$(CPUNAME)),MACHINE=X64) \
 	,lib)
diff --git a/external/curl/UnpackedTarball_curl.mk b/external/curl/UnpackedTarball_curl.mk
index e0e1a6e9ad3a..e97d52dc135e 100644
--- a/external/curl/UnpackedTarball_curl.mk
+++ b/external/curl/UnpackedTarball_curl.mk
@@ -14,8 +14,7 @@ $(eval $(call gb_UnpackedTarball_set_tarball,curl,$(CURL_TARBALL)))
 $(eval $(call gb_UnpackedTarball_set_patchlevel,curl,1))
 
 $(eval $(call gb_UnpackedTarball_fix_end_of_line,curl,\
-	Makefile.msvc.names \
-	lib/Makefile.vc9 \
+	lib/Makefile.vc11 \
 ))
 $(eval $(call gb_UnpackedTarball_add_patches,curl,\
 	external/curl/curl-7.26.0_nspr.patch \
diff --git a/external/curl/curl-7.26.0_win-proxy.patch b/external/curl/curl-7.26.0_win-proxy.patch
index 455101be014a..2faab5a1d6ad 100644
--- a/external/curl/curl-7.26.0_win-proxy.patch
+++ b/external/curl/curl-7.26.0_win-proxy.patch
@@ -83,9 +83,10 @@
 +      if(!check_noproxy(conn->host.name, no_proxy)) {
 +        /* Look for the http proxy setting */
 +        char* tok;
++        char *saveptr;
 +
 +        if(NULL != ieProxy) {
-+          tok = strtok(ieProxy, ";");
++          tok = strtok_s(ieProxy, ";", &saveptr);
 +          if(strchr(tok, '=') == NULL) {
 +            proxy = strdup(ieProxy);
 +          }
@@ -95,7 +96,7 @@
 +                /* We found HTTP proxy value, then use it */
 +                proxy = strdup( tok + 5 );
 +              }
-+              tok = strtok(NULL, ";");
++              tok = strtok_s(NULL, ";", &saveptr);
 +            }
 +            while(NULL != tok);
 +          }
diff --git a/external/curl/curl-msvc.patch.1 b/external/curl/curl-msvc.patch.1
new file mode 100644
index 000000000000..6e1df90ef68e
--- /dev/null
+++ b/external/curl/curl-msvc.patch.1
@@ -0,0 +1,27 @@
+MSVC: using SOLARINC and EXCFLAGS
+
+--- curl/lib/Makefile.vc11	2012-05-24 12:07:02.000000000 -0400
++++ curl/lib/Makefile.vc11	2012-10-29 11:53:44.658809300 -0400
+@@ -117,7 +117,7 @@
+ ZLIBLIBSDLL  = zdll.lib
+ ZLIBLIBS     = zlib.lib
+ WINLIBS      = ws2_32.lib wldap32.lib advapi32.lib
+-CFLAGS       = $(CFLAGS)
++CFLAGS       = $(CFLAGS) $(EXCFLAGS)
+ 
+ CFGSET       = FALSE
+ 
+@@ -620,11 +620,11 @@
+ debug-dll-ssl-dll\libcurl.res \
+ debug-dll-zlib-dll\libcurl.res \
+ debug-dll-ssl-dll-zlib-dll\libcurl.res: libcurl.rc
+-	rc /dDEBUGBUILD=1 /Fo $@ libcurl.rc
++	rc $(SOLARINC) /dDEBUGBUILD=1 /Fo $@ libcurl.rc
+
+ release-dll\libcurl.res \
+ release-dll-ssl-dll\libcurl.res \
+ release-dll-zlib-dll\libcurl.res \
+ release-dll-ssl-dll-zlib-dll\libcurl.res: libcurl.rc
+-	rc /dDEBUGBUILD=0 /Fo $@ libcurl.rc
++	rc $(SOLARINC) /dDEBUGBUILD=0 /Fo $@ libcurl.rc
+ !ENDIF  # End of case where a config was provided.
commit a2c5b92535896b4a1571b55b10356dde258db749
Author:     Michael Stahl <mstahl at redhat.com>
AuthorDate: Wed Jul 1 00:04:32 2015 +0200
Commit:     Thorsten Behrens <Thorsten.Behrens at CIB.de>
CommitDate: Wed Aug 15 05:42:10 2018 +0200

    curl: upgrade to release 7.43.0
    
    Change-Id: Ic16111f21625fc510e79bba8122eaa60662f7a59

diff --git a/Makefile.fetch b/Makefile.fetch
index fdf39e3acda7..1c0214242b1e 100644
--- a/Makefile.fetch
+++ b/Makefile.fetch
@@ -75,6 +75,7 @@ $(WORKDIR)/download: $(BUILDDIR)/config_host.mk $(SRCDIR)/download.lst $(SRCDIR)
 	@date >> $(fetch_LOGFILE)
 	$(foreach item, \
 		$(call fetch_Optional,CDR,CDR_TARBALL) \
+		$(call fetch_Optional,CURL,CURL_TARBALL) \
 		$(call fetch_Optional,EXPAT,EXPAT_TARBALL) \
 		$(call fetch_Optional,GRAPHITE,GRAPHITE_TARBALL) \
 		$(call fetch_Optional,MSPUB,MSPUB_TARBALL) \
@@ -96,7 +97,6 @@ $(WORKDIR)/download: $(BUILDDIR)/config_host.mk $(SRCDIR)/download.lst $(SRCDIR)
 		$(call fetch_Optional,CMIS,$(CMIS_TARBALL)) \
 		$(call fetch_Optional,CPPUNIT,$(CPPUNIT_TARBALL)) \
 		$(call fetch_Optional,CT2N,$(CT2N_TARBALL)) \
-		$(call fetch_Optional,CURL,$(CURL_TARBALL)) \
 		$(call fetch_Optional,EPM,$(EPM_TARBALL)) \
 		$(call fetch_Optional,MARIADB,$(MARIADB_TARBALL)) \
 		$(call fetch_Optional,MORE_FONTS,$(FONT_CALADEA_TARBALL)) \
diff --git a/download.lst b/download.lst
index e757c49f82ed..4d9d907ea761 100644
--- a/download.lst
+++ b/download.lst
@@ -2,6 +2,8 @@ CDR_MD5SUM := d88f9b94df880d2c05be943b000ca112
 export CDR_TARBALL := libcdr-0.0.14.tar.bz2
 GRAPHITE_MD5SUM := 9c499b8ec9f1b81fd0bb6a3b986f4b0f
 export GRAPHITE_TARBALL := graphite2-minimal-1.3.10.tgz
+CURL_MD5SUM := 11bddbb452a8b766b932f859aaeeed39
+export CURL_TARBALL := curl-7.43.0.tar.bz2
 MSPUB_MD5SUM := 1120705cd0f0d9bd5506360bf57b6c2e
 export MSPUB_TARBALL := libmspub-0.0.6.tar.bz2
 MWAW_MD5SUM := 828dd03510791fbe037081a2b4a1a8ff
@@ -25,7 +27,6 @@ export CLUCENE_TARBALL := 48d647fbd8ef8889e5a7f422c1bfda94-clucene-core-2.3.3.4.
 export CMIS_TARBALL := b2371dc7cf4811c9d32146eec913d296-libcmis-0.3.0.tar.gz
 export CPPUNIT_TARBALL := ac4781e01619be13461bb2d562b94a7b-cppunit-1.13.1.tar.gz
 export CT2N_TARBALL := 451ccf439a36a568653b024534669971-ConvertTextToNumber-1.3.2.oxt
-export CURL_TARBALL := 3fa4d5236f2a36ca5c3af6715e837691-curl-7.26.0.tar.gz
 export DBGHELP_DLL := 13fbc2e8b37ddf28181dd6d8081c2b8e-dbghelp.dll
 export EPM_TARBALL := 3ade8cfe7e59ca8e65052644fed9fca4-epm-3.7.tar.gz
 export EXPAT_MD5SUM := f053af63ef5f39bd9b78d01fbc203334
diff --git a/external/curl/curl-7.26.0_win-proxy.patch b/external/curl/curl-7.26.0_win-proxy.patch
index e3beb4004885..455101be014a 100644
--- a/external/curl/curl-7.26.0_win-proxy.patch
+++ b/external/curl/curl-7.26.0_win-proxy.patch
@@ -117,14 +117,11 @@
    char proxy_env[128];
  
    no_proxy=curl_getenv("no_proxy");
-@@ -4189,9 +4265,9 @@ static char *detect_proxy(struct connectdata *conn)
+@@ -4189,6 +4265,7 @@ static char *detect_proxy(struct connectdata *conn)
      }
    } /* if(!check_noproxy(conn->host.name, no_proxy)) - it wasn't specified
         non-proxy */
 +#endif /* WIN32 */
-   if(no_proxy)
-     free(no_proxy);
--
- #else /* !CURL_DISABLE_HTTP */
+   free(no_proxy);
  
-   (void)conn;
+ #else /* !CURL_DISABLE_HTTP */
commit aa0384d21e201f10bc1e5b00d4c2fad88f03c249
Author:     Khaled Hosny <khaledhosny at eglug.org>
AuthorDate: Thu Oct 17 19:28:04 2013 +0200
Commit:     Thorsten Behrens <Thorsten.Behrens at CIB.de>
CommitDate: Wed Aug 15 05:42:09 2018 +0200

    fdo#70393: move curl to a subdir of external
    
    Change-Id: I76401636aab7d4de198912b154d6ec3da35a711d
    Reviewed-on: https://gerrit.libreoffice.org/6298
    Reviewed-by: David Tardon <dtardon at redhat.com>
    Tested-by: David Tardon <dtardon at redhat.com>

diff --git a/RepositoryModule_host.mk b/RepositoryModule_host.mk
index b9e64f2aea90..8cff2b2aadf9 100644
--- a/RepositoryModule_host.mk
+++ b/RepositoryModule_host.mk
@@ -47,7 +47,6 @@ $(eval $(call gb_Module_add_moduledirs,libreoffice,\
 	$(call gb_Helper_optional,CRASHREP,crashrep) \
 	$(call gb_Helper_optional,CT2N,ct2n) \
 	cui \
-	$(call gb_Helper_optional,CURL,curl) \
 	dbaccess \
 	desktop \
 	$(call gb_Helper_optional,DICTIONARIES,dictionaries) \
diff --git a/curl/curl-7.26.0.patch b/curl/curl-7.26.0.patch
deleted file mode 100644
index 6cebdc17bbd7..000000000000
--- a/curl/curl-7.26.0.patch
+++ /dev/null
@@ -1,86 +0,0 @@
-diff -ur curl-7.26.0/configure misc/build/curl-7.26.0/configure
---- curl-7.26.0/configure	2012-07-02 13:28:51.327994494 +0200
-+++ misc/build/curl-7.26.0/configure	2012-07-02 13:32:38.754006822 +0200
-@@ -2693,8 +2693,8 @@
- 
- ac_ext=c
- ac_cpp='$CPP $CPPFLAGS'
--ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
--ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-+ac_compile='$CC -c $ADDCFLAGS $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-+ac_link='$CC -o conftest$ac_exeext $ADDCFLAGS $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
- ac_compiler_gnu=$ac_cv_c_compiler_gnu
- 
- 
-@@ -3855,8 +3855,8 @@
-   ac_save_CPPFLAGS="$CPPFLAGS"
-   ac_ext=c
- ac_cpp='$CPP $CPPFLAGS'
--ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
--ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-+ac_compile='$CC -c $ADDCFLAGS $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-+ac_link='$CC -o conftest$ac_exeext $ADDCFLAGS $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
- ac_compiler_gnu=$ac_cv_c_compiler_gnu
- if test -n "$ac_tool_prefix"; then
-   # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
-@@ -4506,15 +4506,15 @@
-   CFLAGS=$ac_save_CFLAGS
- elif test $ac_cv_prog_cc_g = yes; then
-   if test "$GCC" = yes; then
--    CFLAGS="-g -O2"
-+    CFLAGS="$ADDCFLAGS -g -O2"
-   else
--    CFLAGS="-g"
-+    CFLAGS="$ADDCFLAGS -g"
-   fi
- else
-   if test "$GCC" = yes; then
--    CFLAGS="-O2"
-+    CFLAGS="$ADDCFLAGS -O2"
-   else
--    CFLAGS=
-+    CFLAGS="$ADDCFLAGS"
-   fi
- fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
-diff -ur curl-7.26.0/lib/setup.h misc/build/curl-7.26.0/lib/setup.h
---- curl-7.26.0/lib/setup.h	2012-07-02 13:28:51.322994494 +0200
-+++ misc/build/curl-7.26.0/lib/setup.h	2012-07-02 13:41:15.652034841 +0200
-@@ -231,6 +231,7 @@
- #    include <winsock2.h>
- #    ifdef HAVE_WS2TCPIP_H
- #       include <ws2tcpip.h>
-+#       include <wspiapi.h>
- #    endif
- #  else
- #    ifdef HAVE_WINSOCK_H
-diff -ur curl-7.26.0/ltmain.sh misc/build/curl-7.26.0/ltmain.sh
---- curl-7.26.0/ltmain.sh	2012-07-02 13:28:51.298994493 +0200
-+++ misc/build/curl-7.26.0/ltmain.sh	2012-07-02 13:42:46.511039769 +0200
-@@ -7334,13 +7334,13 @@
- 	  #
- 	  case $version_type in
- 	  # correct linux to gnu/linux during the next big refactor
--	  darwin|linux|osf|windows|none)
-+	  darwin|linux|osf|windows|freebsd-aout|freebsd-elf|none)
- 	    func_arith $number_major + $number_minor
- 	    current=$func_arith_result
- 	    age="$number_minor"
- 	    revision="$number_revision"
- 	    ;;
--	  freebsd-aout|freebsd-elf|qnx|sunos)
-+	  qnx|sunos)
- 	    current="$number_major"
- 	    revision="$number_minor"
- 	    age="0"
-@@ -7420,8 +7420,8 @@
- 	  ;;
- 
- 	freebsd-elf)
--	  major=".$current"
--	  versuffix=".$current"
-+	  major=.`expr $current - $age`
-+	  versuffix="$major"
- 	  ;;
- 
- 	irix | nonstopux)
diff --git a/curl/curl-7.26.0_win.patch b/curl/curl-7.26.0_win.patch
deleted file mode 100644
index 0b3eed2d2eb6..000000000000
--- a/curl/curl-7.26.0_win.patch
+++ /dev/null
@@ -1,59 +0,0 @@
---- curl-7.26.0/Makefile.msvc.names	2011-03-19 09:17:12.000000000 -0600
-+++ misc/build/curl-7.26.0/Makefile.msvc.names	2012-07-02 07:20:39.323448800 -0600
-@@ -43,7 +43,7 @@
- !ENDIF
- 
- !IF !DEFINED(LIB_NAME_STA_DBG) || "$(LIB_NAME_STA_DBG)" == ""
--LIB_NAME_STA_DBG = $(LIB_NAME_STA_REL)d
-+LIB_NAME_STA_DBG = $(LIB_NAME_STA_REL)
- !ENDIF
- 
- !IF !DEFINED(LIB_NAME_DYN_REL) || "$(LIB_NAME_DYN_REL)" == ""
-@@ -51,7 +51,7 @@
- !ENDIF
- 
- !IF !DEFINED(LIB_NAME_DYN_DBG) || "$(LIB_NAME_DYN_DBG)" == ""
--LIB_NAME_DYN_DBG = $(LIB_NAME_DYN_REL)d
-+LIB_NAME_DYN_DBG = $(LIB_NAME_DYN_REL)
- !ENDIF
- 
- # --------------------------------------------
-@@ -59,11 +59,11 @@
- # --------------------------------------------
- 
- !IF !DEFINED(LIB_NAME_IMP_REL) || "$(LIB_NAME_IMP_REL)" == ""
--LIB_NAME_IMP_REL = $(LIB_NAME_DYN_REL)_imp
-+LIB_NAME_IMP_REL = $(LIB_NAME_DYN_REL)
- !ENDIF
- 
- !IF !DEFINED(LIB_NAME_IMP_DBG) || "$(LIB_NAME_IMP_DBG)" == ""
--LIB_NAME_IMP_DBG = $(LIB_NAME_DYN_DBG)_imp
-+LIB_NAME_IMP_DBG = $(LIB_NAME_DYN_DBG)
- !ENDIF
- 
- # --------------------------------------
---- curl/lib/Makefile.vc9	2012-05-24 12:07:02.000000000 -0400
-+++ curl/lib/Makefile.vc9	2012-10-29 11:53:44.658809300 -0400
-@@ -117,7 +117,7 @@
- ZLIBLIBSDLL= zdll.lib
- ZLIBLIBS   = zlib.lib
- WINLIBS    = ws2_32.lib wldap32.lib
--CFLAGS     = $(CFLAGS)
-+CFLAGS     = $(CFLAGS) $(EXCFLAGS)
- 
- CFGSET     = FALSE
- 
-@@ -620,11 +620,11 @@
- debug-dll-ssl-dll\libcurl.res \
- debug-dll-zlib-dll\libcurl.res \
- debug-dll-ssl-dll-zlib-dll\libcurl.res: libcurl.rc
--	rc /dDEBUGBUILD=1 /Fo $@ libcurl.rc
-+	rc $(SOLARINC) /dDEBUGBUILD=1 /Fo $@ libcurl.rc
-
- release-dll\libcurl.res \
- release-dll-ssl-dll\libcurl.res \
- release-dll-zlib-dll\libcurl.res \
- release-dll-ssl-dll-zlib-dll\libcurl.res: libcurl.rc
--	rc /dDEBUGBUILD=0 /Fo $@ libcurl.rc
-+	rc $(SOLARINC) /dDEBUGBUILD=0 /Fo $@ libcurl.rc
- !ENDIF  # End of case where a config was provided.
diff --git a/curl/curl-aix.patch b/curl/curl-aix.patch
deleted file mode 100644
index 708411ccf1ef..000000000000
--- a/curl/curl-aix.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff -ur curl-7.26.0/config.guess misc/build/curl-7.26.0/config.guess
---- curl-7.26.0/config.guess	2012-07-02 13:46:52.428053096 +0200
-+++ misc/build/curl-7.26.0/config.guess	2012-07-02 13:48:13.644057499 +0200
-@@ -565,6 +565,9 @@
- 	else
- 		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
- 	fi
-+	if [ "$IBM_REV" == "V7BETA" ]; then
-+		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
-+	fi
- 	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
- 	exit ;;
-     *:AIX:*:*)
diff --git a/external/Module_external.mk b/external/Module_external.mk
index 646a6d25d8bc..3905b5d090f1 100644
--- a/external/Module_external.mk
+++ b/external/Module_external.mk
@@ -40,6 +40,11 @@ $(eval $(call gb_Module_add_targets,external,\
 ))
 endif
 
+$(eval $(call gb_Module_add_moduledirs,external,\
+	$(call gb_Helper_optional,CURL,curl) \
+))
+endif
+
 ifeq ($(HAVE_READDIR_R),NO)
 ifneq ($(OS),WNT)
 $(eval $(call gb_Module_add_targets,external,\
diff --git a/curl/ExternalPackage_curl.mk b/external/curl/ExternalPackage_curl.mk
similarity index 100%
rename from curl/ExternalPackage_curl.mk
rename to external/curl/ExternalPackage_curl.mk
diff --git a/curl/ExternalProject_curl.mk b/external/curl/ExternalProject_curl.mk
similarity index 100%
rename from curl/ExternalProject_curl.mk
rename to external/curl/ExternalProject_curl.mk
diff --git a/curl/Makefile b/external/curl/Makefile
similarity index 100%
rename from curl/Makefile
rename to external/curl/Makefile
diff --git a/curl/Module_curl.mk b/external/curl/Module_curl.mk
similarity index 94%
rename from curl/Module_curl.mk
rename to external/curl/Module_curl.mk
index 2f9c4b2a9403..2b4c61c04ac9 100644
--- a/curl/Module_curl.mk
+++ b/external/curl/Module_curl.mk
@@ -9,12 +9,10 @@
 
 $(eval $(call gb_Module_Module,curl))
 
-ifeq ($(SYSTEM_CURL),NO)
 $(eval $(call gb_Module_add_targets,curl,\
 	UnpackedTarball_curl \
 	ExternalPackage_curl \
 	ExternalProject_curl \
 ))
-endif
 
 # vim: set noet sw=4 ts=4:
diff --git a/curl/README b/external/curl/README
similarity index 100%
rename from curl/README
rename to external/curl/README
diff --git a/curl/UnpackedTarball_curl.mk b/external/curl/UnpackedTarball_curl.mk
similarity index 78%
rename from curl/UnpackedTarball_curl.mk
rename to external/curl/UnpackedTarball_curl.mk
index e6a8cacb0717..e0e1a6e9ad3a 100644
--- a/curl/UnpackedTarball_curl.mk
+++ b/external/curl/UnpackedTarball_curl.mk
@@ -18,16 +18,14 @@ $(eval $(call gb_UnpackedTarball_fix_end_of_line,curl,\
 	lib/Makefile.vc9 \
 ))
 $(eval $(call gb_UnpackedTarball_add_patches,curl,\
-	curl/curl-7.26.0.patch \
-	curl/curl-7.26.0_nspr.patch \
-	curl/curl-aix.patch \
-	curl/curl-7.26.0_win.patch \
-	curl/curl-7.26.0_mingw.patch \
-	curl/curl-7.26.0_win-proxy.patch \
+	external/curl/curl-7.26.0_nspr.patch \
+	external/curl/curl-msvc.patch.1 \
+	external/curl/curl-msvc-disable-protocols.patch.1 \
+	external/curl/curl-7.26.0_win-proxy.patch \
 ))
 ifeq ($(OS),ANDROID)
 $(eval $(call gb_UnpackedTarball_add_patches,curl,\
-	curl/curl-android.patch \
+	external/curl/curl-android.patch \
 ))
 endif
 # vim: set noet sw=4 ts=4:
diff --git a/curl/curl-7.26.0_mingw.patch b/external/curl/curl-7.26.0_mingw.patch
similarity index 100%
rename from curl/curl-7.26.0_mingw.patch
rename to external/curl/curl-7.26.0_mingw.patch
diff --git a/curl/curl-7.26.0_nspr.patch b/external/curl/curl-7.26.0_nspr.patch
similarity index 100%
rename from curl/curl-7.26.0_nspr.patch
rename to external/curl/curl-7.26.0_nspr.patch
diff --git a/curl/curl-7.26.0_win-proxy.patch b/external/curl/curl-7.26.0_win-proxy.patch
similarity index 100%
rename from curl/curl-7.26.0_win-proxy.patch
rename to external/curl/curl-7.26.0_win-proxy.patch
diff --git a/curl/curl-android.patch b/external/curl/curl-android.patch
similarity index 100%
rename from curl/curl-android.patch
rename to external/curl/curl-android.patch
commit 2a6175baec12e4a75e1d33e7355bddc105c46e35
Author:     Thorsten Behrens <Thorsten.Behrens at CIB.de>
AuthorDate: Wed Aug 15 03:07:28 2018 +0200
Commit:     Thorsten Behrens <Thorsten.Behrens at CIB.de>
CommitDate: Wed Aug 15 03:07:28 2018 +0200

    poppler: outdated, disable pdf import
    
    Change-Id: Ieb43b1dd26b0c1e37f87b3164738f3dd25e4fed8

diff --git a/configure.ac b/configure.ac
index 3adb84736052..fa97cbbf812f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -9722,38 +9722,9 @@ AC_SUBST(ENABLE_MINIMIZER)
 
 # pdf import?
 AC_MSG_CHECKING([whether to build the PDF import])
-if test "$_os" != Android -a "$_os" != iOS -a "$ENABLE_PDFIMPORT" != FALSE; then
-  AC_MSG_RESULT([yes])
-  ENABLE_PDFIMPORT=TRUE
-
-  dnl ===================================================================
-  dnl Check for system poppler
-  dnl ===================================================================
-  AC_MSG_CHECKING([which pdf backend to use])
-  if test "$with_system_poppler" = "yes"; then
-      AC_MSG_RESULT([external])
-      SYSTEM_POPPLER=YES
-      PKG_CHECK_MODULES( POPPLER, poppler >= 0.8.0 )
-      AC_LANG_PUSH([C++])
-      save_CXXFLAGS=$CXXFLAGS
-      save_CPPFLAGS=$CPPFLAGS
-      CXXFLAGS="$CXXFLAGS $POPPLER_CFLAGS"
-      CPPFLAGS="$CPPFLAGS $POPPLER_CFLAGS"
-      AC_CHECK_HEADER([cpp/poppler-version.h], [],
-                   [AC_MSG_ERROR([cpp/poppler-version.h not found. Install poppler])], [])
-      CXXFLAGS=$save_CXXFLAGS
-      CPPFLAGS=$save_CPPFLAGS
-      AC_LANG_POP([C++])
-      libo_MINGW_CHECK_DLL([libpoppler])
-  else
-      AC_MSG_RESULT([internal])
-      SYSTEM_POPPLER=NO
-      BUILD_TYPE="$BUILD_TYPE XPDF"
-  fi
-else
-  AC_MSG_RESULT([no])
-  ENABLE_PDFIMPORT=FALSE
-fi
+AC_MSG_RESULT([no - disabled])
+ENABLE_PDFIMPORT=FALSE
+
 AC_SUBST(ENABLE_PDFIMPORT)
 AC_SUBST(SYSTEM_POPPLER)
 AC_SUBST(POPPLER_CFLAGS)


More information about the Libreoffice-commits mailing list