Alexandre Julliard : configure: Use pkg-config to check for zlib.

Alexandre Julliard julliard at winehq.org
Tue Jun 4 16:28:12 CDT 2019


Module: wine
Branch: master
Commit: 7ac6cdfa000199930e7f8664825d6944e16ac1f6
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=7ac6cdfa000199930e7f8664825d6944e16ac1f6

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Tue Jun  4 12:28:50 2019 +0200

configure: Use pkg-config to check for zlib.

Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 configure                    | 53 ++++++++++++++++++++++++++++++++++++++------
 configure.ac                 | 18 ++++++++-------
 dlls/cabinet/Makefile.in     |  1 +
 dlls/dbghelp/Makefile.in     |  1 +
 dlls/opcservices/Makefile.in |  1 +
 dlls/wininet/Makefile.in     |  1 +
 6 files changed, 60 insertions(+), 15 deletions(-)

diff --git a/configure b/configure
index 910bb57..2981306 100755
--- a/configure
+++ b/configure
@@ -672,6 +672,7 @@ PULSE_LIBS
 PULSE_CFLAGS
 GETTEXTPO_LIBS
 Z_LIBS
+Z_CFLAGS
 FREETYPE_LIBS
 FREETYPE_CFLAGS
 LCMS2_LIBS
@@ -1837,6 +1838,8 @@ LCMS2_CFLAGS
 LCMS2_LIBS
 FREETYPE_CFLAGS
 FREETYPE_LIBS
+Z_CFLAGS
+Z_LIBS
 PULSE_CFLAGS
 PULSE_LIBS
 GSTREAMER_CFLAGS
@@ -2618,6 +2621,8 @@ Some influential environment variables:
               C compiler flags for freetype2, overriding pkg-config
   FREETYPE_LIBS
               Linker flags for freetype2, overriding pkg-config
+  Z_CFLAGS    C compiler flags for libz, overriding pkg-config
+  Z_LIBS      Linker flags for libz, overriding pkg-config
   PULSE_CFLAGS
               C compiler flags for libpulse, overriding pkg-config
   PULSE_LIBS  Linker flags for libpulse, overriding pkg-config
@@ -4162,7 +4167,7 @@ fi
 
 # Check whether --with-zlib was given.
 if test "${with_zlib+set}" = set; then :
-  withval=$with_zlib; if test "x$withval" = "xno"; then ac_cv_header_zlib_h=no; fi
+  withval=$with_zlib;
 fi
 
 
@@ -7479,8 +7484,7 @@ for ac_header in \
 	unistd.h \
 	utime.h \
 	valgrind/memcheck.h \
-	valgrind/valgrind.h \
-	zlib.h
+	valgrind/valgrind.h
 
 do :
   as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
@@ -14263,15 +14267,39 @@ done
 
 LIBS="$ac_wine_check_funcs_save_LIBS"
 
-if test "$ac_cv_header_zlib_h" = "yes"
+if test "x$with_zlib" != "xno"
 then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for inflate in -lz" >&5
+    if ${Z_CFLAGS:+false} :; then :
+  if ${PKG_CONFIG+:} false; then :
+  Z_CFLAGS=`$PKG_CONFIG --cflags libz 2>/dev/null`
+fi
+fi
+
+if ${Z_LIBS:+false} :; then :
+  if ${PKG_CONFIG+:} false; then :
+  Z_LIBS=`$PKG_CONFIG --libs libz 2>/dev/null`
+fi
+fi
+
+Z_LIBS=${Z_LIBS:-"-lz"}
+$as_echo "$as_me:${as_lineno-$LINENO}: libz cflags: $Z_CFLAGS" >&5
+$as_echo "$as_me:${as_lineno-$LINENO}: libz libs: $Z_LIBS" >&5
+ac_save_CPPFLAGS=$CPPFLAGS
+CPPFLAGS="$CPPFLAGS $Z_CFLAGS"
+for ac_header in zlib.h
+do :
+  ac_fn_c_check_header_mongrel "$LINENO" "zlib.h" "ac_cv_header_zlib_h" "$ac_includes_default"
+if test "x$ac_cv_header_zlib_h" = xyes; then :
+  cat >>confdefs.h <<_ACEOF
+#define HAVE_ZLIB_H 1
+_ACEOF
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for inflate in -lz" >&5
 $as_echo_n "checking for inflate in -lz... " >&6; }
 if ${ac_cv_lib_z_inflate+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   ac_check_lib_save_LIBS=$LIBS
-LIBS="-lz  $LIBS"
+LIBS="-lz $Z_LIBS $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -14305,10 +14333,20 @@ if test "x$ac_cv_lib_z_inflate" = xyes; then :
 
 $as_echo "#define HAVE_ZLIB 1" >>confdefs.h
 
-                            Z_LIBS="-lz"
+else
+  Z_LIBS=""
+fi
 
+else
+  Z_LIBS=""
 fi
 
+done
+
+CPPFLAGS=$ac_save_CPPFLAGS
+test -z "$Z_CFLAGS" || Z_CFLAGS=`echo " $Z_CFLAGS" | sed 's/ -I\([^/]\)/ -I\$(top_builddir)\/\1/g'`
+test -z "$Z_LIBS" || Z_LIBS=`echo " $Z_LIBS" | sed 's/ -L\([^/]\)/ -L\$(top_builddir)\/\1/g'`
+
 fi
 if test "x$Z_LIBS" = "x"; then :
   case "x$with_zlib" in
@@ -19636,6 +19674,7 @@ LCMS2_CFLAGS = $LCMS2_CFLAGS
 LCMS2_LIBS = $LCMS2_LIBS
 FREETYPE_CFLAGS = $FREETYPE_CFLAGS
 FREETYPE_LIBS = $FREETYPE_LIBS
+Z_CFLAGS = $Z_CFLAGS
 Z_LIBS = $Z_LIBS
 GETTEXTPO_LIBS = $GETTEXTPO_LIBS
 PULSE_CFLAGS = $PULSE_CFLAGS
diff --git a/configure.ac b/configure.ac
index be15cca..52c933e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -109,8 +109,7 @@ AC_ARG_WITH(xshm,      AS_HELP_STRING([--without-xshm],[do not use XShm (shared
 AC_ARG_WITH(xslt,      AS_HELP_STRING([--without-xslt],[do not use XSLT]))
 AC_ARG_WITH(xxf86vm,   AS_HELP_STRING([--without-xxf86vm],[do not use XFree video mode extension]),
             [if test "x$withval" = "xno"; then ac_cv_header_X11_extensions_xf86vmode_h=no; ac_cv_header_X11_extensions_xf86vmproto_h=no; fi])
-AC_ARG_WITH(zlib,      AS_HELP_STRING([--without-zlib],[do not use Zlib (data compression)]),
-            [if test "x$withval" = "xno"; then ac_cv_header_zlib_h=no; fi])
+AC_ARG_WITH(zlib,      AS_HELP_STRING([--without-zlib],[do not use Zlib (data compression)]))
 
 AC_ARG_WITH(wine-tools,AS_HELP_STRING([--with-wine-tools=DIR],[use Wine tools from directory DIR]))
 AC_ARG_WITH(wine64,    AS_HELP_STRING([--with-wine64=DIR],[use the 64-bit Wine in DIR for a Wow64 build]))
@@ -544,8 +543,7 @@ AC_CHECK_HEADERS(\
 	unistd.h \
 	utime.h \
 	valgrind/memcheck.h \
-	valgrind/valgrind.h \
-	zlib.h
+	valgrind/valgrind.h
 )
 WINE_HEADER_MAJOR()
 AC_HEADER_STAT()
@@ -1570,10 +1568,14 @@ WINE_CHECK_LIB_FUNCS(\
         [$PTHREAD_LIBS])
 
 dnl **** Check for zlib ****
-if test "$ac_cv_header_zlib_h" = "yes"
-then
-    AC_CHECK_LIB(z,inflate,[AC_DEFINE(HAVE_ZLIB,1,[Define to 1 if you have the `z' library (-lz).])
-                            AC_SUBST(Z_LIBS,"-lz")])
+if test "x$with_zlib" != "xno"
+then
+    WINE_PACKAGE_FLAGS(Z,[libz],[-lz],,,
+        [AC_CHECK_HEADERS(zlib.h,
+            [AC_CHECK_LIB(z,inflate,
+                          [AC_DEFINE(HAVE_ZLIB,1,[Define to 1 if you have the `z' library (-lz).])],
+                          [Z_LIBS=""],[$Z_LIBS])],
+            [Z_LIBS=""])])
 fi
 WINE_NOTICE_WITH(zlib,[test "x$Z_LIBS" = "x"],[libz ${notice_platform}development files not found, data compression won't be supported.])
 
diff --git a/dlls/cabinet/Makefile.in b/dlls/cabinet/Makefile.in
index 1abf09d..50cc564 100644
--- a/dlls/cabinet/Makefile.in
+++ b/dlls/cabinet/Makefile.in
@@ -1,5 +1,6 @@
 MODULE    = cabinet.dll
 IMPORTLIB = cabinet
+EXTRAINCL = $(Z_CFLAGS)
 EXTRALIBS = $(Z_LIBS)
 
 C_SRCS = \
diff --git a/dlls/dbghelp/Makefile.in b/dlls/dbghelp/Makefile.in
index 3e120e8..f08464c 100644
--- a/dlls/dbghelp/Makefile.in
+++ b/dlls/dbghelp/Makefile.in
@@ -2,6 +2,7 @@ MODULE    = dbghelp.dll
 IMPORTLIB = dbghelp
 EXTRADEFS = -D_IMAGEHLP_SOURCE_
 DELAYIMPORTS = version
+EXTRAINCL = $(Z_CFLAGS)
 EXTRALIBS = $(Z_LIBS) $(CORESERVICES_LIBS) $(COREFOUNDATION_LIBS)
 
 C_SRCS = \
diff --git a/dlls/opcservices/Makefile.in b/dlls/opcservices/Makefile.in
index 42b64b3..1b81db6 100644
--- a/dlls/opcservices/Makefile.in
+++ b/dlls/opcservices/Makefile.in
@@ -1,5 +1,6 @@
 MODULE  = opcservices.dll
 IMPORTS = uuid ole32 advapi32 urlmon xmllite oleaut32
+EXTRAINCL = $(Z_CFLAGS)
 EXTRALIBS = $(Z_LIBS)
 
 C_SRCS = \
diff --git a/dlls/wininet/Makefile.in b/dlls/wininet/Makefile.in
index 6789c9d..6eeb7cf 100644
--- a/dlls/wininet/Makefile.in
+++ b/dlls/wininet/Makefile.in
@@ -3,6 +3,7 @@ MODULE    = wininet.dll
 IMPORTLIB = wininet
 IMPORTS   = mpr shlwapi shell32 user32 ws2_32 advapi32
 DELAYIMPORTS = secur32 crypt32 cryptui
+EXTRAINCL = $(Z_CFLAGS)
 EXTRALIBS = $(CORESERVICES_LIBS) $(Z_LIBS)
 
 C_SRCS = \




More information about the wine-cvs mailing list