]> granicus.if.org Git - apache/commitdiff
Merge r1428184, r1429228 from trunk:
authorJim Jagielski <jim@apache.org>
Wed, 30 Jan 2013 16:25:31 +0000 (16:25 +0000)
committerJim Jagielski <jim@apache.org>
Wed, 30 Jan 2013 16:25:31 +0000 (16:25 +0000)
Improve pkg-config usage for mod_ssl/ab:

also use pkg-config for determining the -l flags (and fall back
to a hardcoded default of "-lssl -lcrypto")

add --static to pkg-config invocations, so that libraries for
static linking are also taken into account (PR 54252 - note that
the additional flags will only appear in modules/ssl/modules.mk
and ab_LDFLAGS, so potential side effects are limited)

separate --libs-only-L and --libs-only-other into two invocations
(can't be used concurrently, only the first takes effect)

use --silence-errors where applicable

mod_ssl/ab: only use "--static" for pkg-config when explicity requested
(by adding an "--enable-ssl-staticlib-deps" option to configure)

Submitted by: kbrand
Reviewed/backported by: jim

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1440507 13f79535-47bb-0310-9956-ffa450edef68

STATUS
acinclude.m4

diff --git a/STATUS b/STATUS
index eb4cd8a769aef8a8b770ee2812ab63791591b888..6b627a21debc173c665adfd6df244d280b7afa5a 100644 (file)
--- a/STATUS
+++ b/STATUS
@@ -187,14 +187,6 @@ PATCHES PROPOSED TO BACKPORT FROM TRUNK:
     2.4.x patch:  trunk patch works.
     +1: humbedooh, covener
 
-   * mod_ssl/ab: improve pkg-config usage in configure (addresses PR 54252)
-     trunk patch: https://svn.apache.org/viewvc/httpd/httpd/trunk/acinclude.m4?r1=1396440&r2=1429228
-     2.4.x patch: trunk patch works
-     +1: kbrand, jorton, jerenkrantz
-     -1: jim: patch doesn't apply (2 out of 2 hunks FAILED -- saving rejects to file acinclude.m4.rej)
-         kbrand: applying svn diff -r 1396440:1429228 https://svn.apache.org/repos/asf/httpd/httpd/trunk/acinclude.m4
-                 works for me - what patch did you apply? (note that it's the
-                 combination of two commits, namely r1428184 and r1429228)
 
 A list of further possible backports can be found at:
     http://people.apache.org/~rjung/patches/possible-backports-httpd-trunk-2_4.txt
index fc053903089fedbd716b1a042f0f58f5ca11d189..26b001df7b45f19e36a3bdb9c8e5f5e56cde1a0f 100644 (file)
@@ -517,14 +517,22 @@ AC_DEFUN(APACHE_CHECK_OPENSSL,[
         PKG_CONFIG_PATH="${ap_openssl_base}/lib/pkgconfig${PKG_CONFIG_PATH+:}${PKG_CONFIG_PATH}"
         export PKG_CONFIG_PATH
       fi
-      ap_openssl_libs="`$PKGCONFIG --libs-only-l openssl 2>&1`"
+      AC_ARG_ENABLE(ssl-staticlib-deps,APACHE_HELP_STRING(--enable-ssl-staticlib-deps,[link mod_ssl with dependencies of OpenSSL's static libraries (as indicated by "pkg-config --static"). Must be specified in addition to --enable-ssl.]), [
+        if test "$enableval" = "yes"; then
+          PKGCONFIG_LIBOPTS="--static"
+        fi
+      ])
+      ap_openssl_libs="`$PKGCONFIG $PKGCONFIG_LIBOPTS --libs-only-l --silence-errors openssl`"
       if test $? -eq 0; then
         ap_openssl_found="yes"
         pkglookup="`$PKGCONFIG --cflags-only-I openssl`"
         APR_ADDTO(CPPFLAGS, [$pkglookup])
         APR_ADDTO(MOD_CFLAGS, [$pkglookup])
         APR_ADDTO(ab_CFLAGS, [$pkglookup])
-        pkglookup="`$PKGCONFIG --libs-only-L --libs-only-other openssl`"
+        pkglookup="`$PKGCONFIG $PKGCONFIG_LIBOPTS --libs-only-L openssl`"
+        APR_ADDTO(LDFLAGS, [$pkglookup])
+        APR_ADDTO(MOD_LDFLAGS, [$pkglookup])
+        pkglookup="`$PKGCONFIG $PKGCONFIG_LIBOPTS --libs-only-other openssl`"
         APR_ADDTO(LDFLAGS, [$pkglookup])
         APR_ADDTO(MOD_LDFLAGS, [$pkglookup])
       fi
@@ -557,7 +565,7 @@ AC_DEFUN(APACHE_CHECK_OPENSSL,[
       [AC_MSG_RESULT(FAILED)])
 
     if test "x$ac_cv_openssl" = "xyes"; then
-      ap_openssl_libs="-lssl -lcrypto `$apr_config --libs`"
+      ap_openssl_libs="${ap_openssl_libs:--lssl -lcrypto} `$apr_config --libs`"
       APR_ADDTO(MOD_LDFLAGS, [$ap_openssl_libs])
       APR_ADDTO(LIBS, [$ap_openssl_libs])
       APR_SETVAR(ab_LDFLAGS, [$MOD_LDFLAGS])