httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Rainer Jung <rainer.j...@kippdata.de>
Subject Re: svn commit: r730717 - /httpd/httpd/trunk/modules/session/config.m4
Date Sat, 03 Jan 2009 16:03:51 GMT
On 03.01.2009 16:02, Graham Leggett wrote:
> rjung@apache.org wrote:
>
>> URL: http://svn.apache.org/viewvc?rev=730717&view=rev
>> Log:
>> Add a header check for apr_ssl.h to mod_session_crypto.
>>
>> The modules needs the header which is at the moment
>> only part of the ssl-evp branch of APR.
>
> I have just finished updating session_crypto to depend on the
> apr_crypto.h API instead of the deprecated apr_ssl.h API, however the
> check below, once changed to apr_crypto.h, doesn't seem to detect the
> header properly.
>
> Can you verify whether this works for you against apr_crypto.h?

I see, I forgot to add the APR and APU include paths to CPPFLAGS before 
testing the header. Autoconf does not only look for the file, it also 
processes it via CPP and compiles it.

I tested it now with apr_ssl.h and apr_crypto.h. The following change 
should do it for you:

1) Cleanup of apu_errno.h
-------------------------

--- apu_errno.h 2009-01-03 16:52:53.000000000 +0100
+++ apu_errno.h 2009-01-03 16:49:53.000000000 +0100
@@ -22,8 +22,8 @@
   * @brief APR-Util Error Codes
   */

-#include <apr.h>
-#include <apr_errno.h>
+#include "apr.h"
+#include "apr_errno.h"

  #ifdef __cplusplus
  extern "C" {

2) Changing the feature test
----------------------------

--- modules/session/config.m4   (revision 730878)
+++ modules/session/config.m4   (working copy)
@@ -18,8 +18,11 @@
  APACHE_MODULE(session, session module, , , most)
  APACHE_MODULE(session_cookie, session cookie module, , , 
$session_mods_enable)
  APACHE_MODULE(session_crypto, session crypto module, , , no, [
-  AC_CHECK_HEADERS(apr_ssl.h, [ap_HAVE_APR_SSL_H="yes"], 
[ap_HAVE_APR_SSL_H="no"])
-  if test $ap_HAVE_APR_SSL_H = "no"; then
+  saved_CPPFLAGS="$CPPFLAGS"
+  CPPFLAGS="$CPPFLAGS -I$APR_INCLUDEDIR -I$APU_INCLUDEDIR"
+  AC_CHECK_HEADERS(apr_crypto.h, [ap_HAVE_APR_CRYPTO="yes"], 
[ap_HAVE_APR_CRYPTO="no"])
+  CPPFLAGS="$saved_CPPFLAGS"
+  if test $ap_HAVE_APR_CRYPTO = "no"; then
      AC_MSG_WARN([Your APR does not include SSL/EVP support.])
      enable_session_crypto="no"
    fi

As you can see I switched to apr_crypto.h, but also added paths 
temporarily to CPPFLAGS.

3) Resulting changes to configure
---------------------------------

The resulting changes to configure are:

--- configure.kpdt_orig 2009-01-03 13:59:32.000000000 +0100
+++ configure   2009-01-03 16:58:24.000000000 +0100
@@ -18946,8 +18946,10 @@
              { echo "$as_me:$LINENO: result: checking dependencies" >&5
  echo "${ECHO_T}checking dependencies" >&6; }

+  saved_CPPFLAGS="$CPPFLAGS"
+  CPPFLAGS="$CPPFLAGS -I$APR_INCLUDEDIR -I$APU_INCLUDEDIR"

-for ac_header in apr_ssl.h
+for ac_header in apr_crypto.h
  do
  as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
  if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
@@ -19081,14 +19083,15 @@
    cat >>confdefs.h <<_ACEOF
  #define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
  _ACEOF
- ap_HAVE_APR_SSL_H="yes"
+ ap_HAVE_APR_CRYPTO="yes"
  else
-  ap_HAVE_APR_SSL_H="no"
+  ap_HAVE_APR_CRYPTO="no"
  fi

  done

-  if test $ap_HAVE_APR_SSL_H = "no"; then
+  CPPFLAGS="$saved_CPPFLAGS"
+  if test $ap_HAVE_APR_CRYPTO = "no"; then
      { echo "$as_me:$LINENO: WARNING: Your APR does not include SSL/EVP 
support." >&5
  echo "$as_me: WARNING: Your APR does not include SSL/EVP support." >&2;}
      enable_session_crypto="no"


If the feature test worked for your with apr_ssl.h, then it's possible, 
that you can fix it with 1). I will apply 2), because that's cleaner, 
but you might nevertheless add 1) to apr-util.

If it doesn't work for you, look inside config.log. You'll find some 
more info there, which part of the test failed, and why.

Regards,

Rainer

Mime
View raw message