bug-wget
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug-wget] [patch] configure: try pkg-config first for newer openssl's


From: Mike Frysinger
Subject: [Bug-wget] [patch] configure: try pkg-config first for newer openssl's
Date: Tue, 20 Dec 2011 11:41:46 -0500
User-agent: KMail/1.13.7 (Linux/3.1.0-atsc; KDE/4.6.5; x86_64; ; )

sorry, i have no idea htf to use bzr.  it doesn't make sending e-mail simple
like git, so there's something below that hopefully people can use.
-------------------------
revno: 2578
committer: Mike Frysinger <address@hidden>
branch nick: wget
timestamp: Tue 2011-12-20 11:08:20 -0500
message:
  configure: try pkg-config first for newer openssl's
  
  The latest releases of OpenSSL (1.0.0+) include pkg-config files which
  we can query to get the answer right away without having to prob/guess
  for libraries/includes.  So try that first before falling back to the
  old logic.  This diff is largish, but it is mostly indenting the old
  code to match the new if check.
-------------------------

# Bazaar merge directive format 2 (Bazaar 0.90)
# revision_id: address@hidden
# target_branch: http://bzr.savannah.gnu.org/r/wget/trunk/
# testament_sha1: 3ac38e1bfc9796c88fc4a918db15148cb4499fda
# timestamp: 2011-12-20 11:39:53 -0500
# base_revision_id: address@hidden
# 
# Begin patch
=== modified file 'configure.ac'
--- configure.ac        2011-11-04 21:25:00 +0000
+++ configure.ac        2011-12-20 16:08:20 +0000
@@ -234,66 +234,81 @@
 dnl Checks for libraries.
 dnl
 
+PKG_PROG_PKG_CONFIG
+
 AS_IF([test x"$with_ssl" = xopenssl], [
-    dnl some versions of openssl use zlib compression
-    AC_CHECK_LIB(z, compress)
-
-    dnl As of this writing (OpenSSL 0.9.6), the libcrypto shared library
-    dnl doesn't record its dependency on libdl, so we need to make sure
-    dnl -ldl ends up in LIBS on systems that have it.  Most OSes use
-    dnl dlopen(), but HP-UX uses shl_load().
-    AC_CHECK_LIB(dl, dlopen, [], [
-      AC_CHECK_LIB(dl, shl_load)
+    ssl_found=no
+
+    dnl First try using the pkg-config files from newer OpenSSL versions.
+    PKG_CHECK_MODULES([OPENSSL], [openssl], [
+        AC_MSG_NOTICE([compiling in support for SSL via OpenSSL])
+        AC_LIBOBJ([openssl])
+        LIBS="$OPENSSL_LIBS $LIBS"
+        CFLAGS="$OPENSSL_CFLAGS -DHAVE_LIBSSL $CFLAGS"
+        ssl_found=yes
+    ], [
+
+        dnl some versions of openssl use zlib compression
+        AC_CHECK_LIB(z, compress)
+
+        dnl As of this writing (OpenSSL 0.9.6), the libcrypto shared library
+        dnl doesn't record its dependency on libdl, so we need to make sure
+        dnl -ldl ends up in LIBS on systems that have it.  Most OSes use
+        dnl dlopen(), but HP-UX uses shl_load().
+        AC_CHECK_LIB(dl, dlopen, [], [
+          AC_CHECK_LIB(dl, shl_load)
+        ])
+
+        case $host_os in
+          *mingw32* )
+            dnl prefer link to openssl dlls if possible. if not then fallback 
on static libs. if not then error
+
+            AC_CHECK_LIB(eay32, EVP_MD_CTX_init)
+            if test x"$ac_cv_lib_eay32_EVP_MD_CTX_init" != xno
+            then
+              AC_CHECK_LIB(ssl32, SSL_connect, [
+                ssl_found=yes
+                AC_MSG_NOTICE([Enabling support for SSL via OpenSSL (shared)])
+              ],
+              AC_MSG_ERROR([openssl not found: shared lib eay32 found but 
ssl32 not found]))
+
+            else
+              LIBS+=' -lgdi32'
+              dnl fallback and test static libs
+            fi
+            dnl add zdll lib as dep for above tests?
+          ;;
+        esac
+
+        AS_IF([test x$ssl_found != xyes],
+        [
+          dnl Now actually check for -lssl if it wasn't already found
+            AC_LIB_HAVE_LINKFLAGS([ssl], [crypto z], [
+          #include <openssl/ssl.h>
+          #include <openssl/x509.h>
+          #include <openssl/err.h>
+          #include <openssl/rand.h>
+          #include <openssl/des.h>
+          #include <openssl/md4.h>
+          #include <openssl/md5.h>
+            ], [SSL_library_init ()])
+            if test x"$LIBSSL" != x
+            then
+              AC_MSG_NOTICE([compiling in support for SSL via OpenSSL])
+              AC_LIBOBJ([openssl])
+              LIBS="$LIBSSL $LIBS"
+              ssl_found=yes
+            elif test x"$with_ssl" != x
+            then
+              AC_MSG_ERROR([--with-ssl=openssl was given, but SSL is not 
available.])
+            fi
+
+            AC_LIBOBJ([openssl])
+
+        ])
+
     ])
 
-    ssl_found=no
-    case $host_os in
-      *mingw32* )
-        dnl prefer link to openssl dlls if possible. if not then fallback on 
static libs. if not then error
-        
-        AC_CHECK_LIB(eay32, EVP_MD_CTX_init)
-        if test x"$ac_cv_lib_eay32_EVP_MD_CTX_init" != xno
-        then
-          AC_CHECK_LIB(ssl32, SSL_connect, [
-            ssl_found=yes
-            AC_MSG_NOTICE([Enabling support for SSL via OpenSSL (shared)])
-          ],
-          AC_MSG_ERROR([openssl not found: shared lib eay32 found but ssl32 
not found]))
-          
-        else
-          LIBS+=' -lgdi32'
-          dnl fallback and test static libs
-        fi
-        dnl add zdll lib as dep for above tests?
-      ;;
-    esac
-
-AS_IF([test x$ssl_found != xyes],
-[
-  dnl Now actually check for -lssl if it wasn't already found
-    AC_LIB_HAVE_LINKFLAGS([ssl], [crypto z], [
-  #include <openssl/ssl.h>
-  #include <openssl/x509.h>
-  #include <openssl/err.h>
-  #include <openssl/rand.h>
-  #include <openssl/des.h>
-  #include <openssl/md4.h>
-  #include <openssl/md5.h>
-    ], [SSL_library_init ()])
-    if test x"$LIBSSL" != x
-    then
-      AC_MSG_NOTICE([compiling in support for SSL via OpenSSL])
-      AC_LIBOBJ([openssl])
-      LIBS="$LIBSSL $LIBS"
-    elif test x"$with_ssl" != x
-    then
-      AC_MSG_ERROR([--with-ssl=openssl was given, but SSL is not available.])
-    fi
-
-    AC_LIBOBJ([openssl])
-
-])
-
 ], [
   # --with-ssl is not gnutls: check if it's no
   AS_IF([test x"$with_ssl" != xno], [
@@ -321,7 +336,7 @@
 ]) # endif: --with-ssl == openssl?
 
 dnl Enable NTLM if requested and if SSL is available.
-if test x"$LIBSSL" != x
+if test x"$ssl_found" = xyes
 then
   if test x"$ENABLE_NTLM" != xno
   then

# Begin bundle
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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]