summaryrefslogtreecommitdiffstats
path: root/external/curl
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2017-09-06 23:28:46 +0200
committerStephan Bergmann <sbergman@redhat.com>2017-09-07 09:16:52 +0200
commit6a478cf43f647458e507de21c4c1edb70679ac74 (patch)
tree61e6268baf3cf3f0dac53e17cc487f3529aeb148 /external/curl
parentClean up passing CPPFLAGS/LDFLAGS into external/curl (diff)
downloadcore-6a478cf43f647458e507de21c4c1edb70679ac74.tar.gz
core-6a478cf43f647458e507de21c4c1edb70679ac74.zip
Pass --without-system-zlib into external/curl
For (implicit) --with-zlib, curl's configure would insist on calling pkg-config and insist on using -lz to link against the zlib library. None of that fits LO's --without-system-zlib option. So make curl's configure honor any passed in ZLIB_CLFAGS/LIBS (unless --without- zlib were explicitly specified; also, ZLIB_CLFAGS/LIBS would override any explicitly specified --with-zlib=PATH, which could be considered an error, but we do never explicitly specify --with-zlib=PATH in external/curl/ExternalProject_curl.mk, anyway). Both ZLIB_CLFAGS/LIBS are set in config_host.mk, so are always set as env vars, so would already be visible to curl's configure. I nevertheless pass them into curl's configure explicitly in external/curl/ExternalProject_curl.mk, to make that more obvious. With (implicit) --with-system-zlib, LO's configure.ac will set ZLIB_LIBS and leave ZLIB_CFLAGS empty (and checks that zlib.h is indeed available without any ZLIB_CLFAGS being necessary). And with --without-system-zlib, LO's configure.ac will set both ZLIB_CFLAGS/LIBS. So curl's configure, as invoked from external/curl/ExternalProject_curl.mk, will now always go into the newly added case honoring any passed in ZLIB_CLFAGS/LIBS, which should thus always work out nicely and use the same zlib settings as configured for LO itself. (For documentation purposes, external/curl/zlib.patch.0 also contains the changes to curl's configure.ac that are reflected in the changes to curl's configure.) Change-Id: Icf5eefe44a7f9beb8a43a9af381f46e5c8b98b04 Reviewed-on: https://gerrit.libreoffice.org/42032 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Diffstat (limited to 'external/curl')
-rw-r--r--external/curl/ExternalProject_curl.mk1
-rw-r--r--external/curl/UnpackedTarball_curl.mk1
-rw-r--r--external/curl/zlib.patch.0100
3 files changed, 102 insertions, 0 deletions
diff --git a/external/curl/ExternalProject_curl.mk b/external/curl/ExternalProject_curl.mk
index d6590c368193..bd03275d4888 100644
--- a/external/curl/ExternalProject_curl.mk
+++ b/external/curl/ExternalProject_curl.mk
@@ -60,6 +60,7 @@ $(call gb_ExternalProject_get_state_target,curl,build):
$(if $(filter MACOSX,$(OS)),--prefix=/@.__________________________________________________OOO) \
CPPFLAGS='$(curl_CPPFLAGS)' \
LDFLAGS='$(curl_LDFLAGS)' \
+ ZLIB_CFLAGS='$(ZLIB_CFLAGS)' ZLIB_LIBS='$(ZLIB_LIBS)' \
&& cd lib \
&& $(MAKE) \
)
diff --git a/external/curl/UnpackedTarball_curl.mk b/external/curl/UnpackedTarball_curl.mk
index 5eba91f73f17..b0d103204430 100644
--- a/external/curl/UnpackedTarball_curl.mk
+++ b/external/curl/UnpackedTarball_curl.mk
@@ -22,6 +22,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,curl,\
external/curl/curl-msvc-disable-protocols.patch.1 \
external/curl/curl-msvc-schannel.patch.1 \
external/curl/curl-7.26.0_win-proxy.patch \
+ external/curl/zlib.patch.0 \
))
ifeq ($(SYSTEM_NSS),)
diff --git a/external/curl/zlib.patch.0 b/external/curl/zlib.patch.0
new file mode 100644
index 000000000000..87614c7703f7
--- /dev/null
+++ b/external/curl/zlib.patch.0
@@ -0,0 +1,100 @@
+--- configure
++++ configure
+@@ -937,8 +937,8 @@
+ ZLIB_LIBS
+ HAVE_LIBZ_FALSE
+ HAVE_LIBZ_TRUE
+-HAVE_LIBZ
+ PKGCONFIG
++HAVE_LIBZ
+ CURL_DISABLE_GOPHER
+ CURL_DISABLE_SMTP
+ CURL_DISABLE_SMB
+@@ -20709,7 +20709,6 @@
+ clean_CPPFLAGS=$CPPFLAGS
+ clean_LDFLAGS=$LDFLAGS
+ clean_LIBS=$LIBS
+-ZLIB_LIBS=""
+
+ # Check whether --with-zlib was given.
+ if test "${with_zlib+set}" = set; then :
+@@ -20718,6 +20719,7 @@
+
+
+ if test "$OPT_ZLIB" = "no" ; then
++ ZLIB_LIBS=""
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: zlib disabled" >&5
+ $as_echo "$as_me: WARNING: zlib disabled" >&2;}
+ else
+@@ -20725,6 +20725,21 @@
+ OPT_ZLIB=""
+ fi
+
++ if test -n "$ZLIB_CFLAGS$ZLIB_LIBS"; then
++ CPPFLAGS="$CPPFLAGS $ZLIB_CFLAGS"
++ LIBS="$ZLIB_LIBS $LIBS"
++ HAVE_LIBZ="1"
++
++
++$as_echo "#define HAVE_ZLIB_H 1" >>confdefs.h
++
++
++$as_echo "#define HAVE_LIBZ 1" >>confdefs.h
++
++ AMFIXLIB="1"
++ else
++ ZLIB_LIBS=""
++
+
+ if test -n "$PKG_CONFIG"; then
+ PKGCONFIG="$PKG_CONFIG"
+@@ -21005,6 +21020,7 @@
+ $as_echo "$as_me: found both libz and libz.h header" >&6;}
+ curl_zlib_msg="enabled"
+ fi
++ fi
+ fi
+
+ if test x"$AMFIXLIB" = x1; then
+--- configure.ac
++++ configure.ac
+@@ -880,19 +880,30 @@
+ clean_CPPFLAGS=$CPPFLAGS
+ clean_LDFLAGS=$LDFLAGS
+ clean_LIBS=$LIBS
+-ZLIB_LIBS=""
+ AC_ARG_WITH(zlib,
+ AC_HELP_STRING([--with-zlib=PATH],[search for zlib in PATH])
+ AC_HELP_STRING([--without-zlib],[disable use of zlib]),
+ [OPT_ZLIB="$withval"])
+
+ if test "$OPT_ZLIB" = "no" ; then
++ ZLIB_LIBS=""
+ AC_MSG_WARN([zlib disabled])
+ else
+ if test "$OPT_ZLIB" = "yes" ; then
+ OPT_ZLIB=""
+ fi
+
++ if test -n "$ZLIB_CFLAGS$ZLIB_LIBS"; then
++ CPPFLAGS="$CPPFLAGS $ZLIB_CFLAGS"
++ LIBS="$ZLIB_LIBS $LIBS"
++ HAVE_LIBZ="1"
++ AC_SUBST(HAVE_LIBZ)
++ AC_DEFINE(HAVE_ZLIB_H, 1, [if you have the zlib.h header file])
++ AC_DEFINE(HAVE_LIBZ, 1, [if zlib is available])
++ AMFIXLIB="1"
++ else
++ ZLIB_LIBS=""
++
+ CURL_CHECK_PKGCONFIG(zlib)
+
+ if test "$PKGCONFIG" != "no" ; then
+@@ -975,6 +986,7 @@
+ AC_MSG_NOTICE([found both libz and libz.h header])
+ curl_zlib_msg="enabled"
+ fi
++ fi
+ fi
+
+ dnl set variable for use in automakefile(s)