httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Sander Temme <>
Subject [semi-PATCH] Allow out-of-tree apr/apu source
Date Mon, 12 Sep 2005 06:26:04 GMT

Trying to scratch a personal itch tonight. I'd like to build my  
checked out tree against a checkout of {apr,apu}, which sit somewhere  
else on my system. As far as I can tell, this is currently not  
possible. I tried to point buildconf to my working copies: it borks.  
The following patch to buildconf (also attached) unborks:

Index: buildconf
--- buildconf    (revision 280240)
+++ buildconf    (working copy)
@@ -128,22 +128,22 @@
cross_compile_warning="warning: AC_TRY_RUN called without default to  
allow cross compiling"
-if [ -d srclib/apr ]; then
+if [ -d ${apr_src_dir} ]; then
      echo rebuilding $apr_configure
-    (cd srclib/apr && ./buildconf) || {
+    (cd ${apr_src_dir} && ./buildconf) || {
          echo "./buildconf failed for apr"
          exit 1
-    rm -f srclib/apr/apr.spec
+    rm -f ${apr_src_dir}/apr.spec
-if [ -d srclib/apr-util ]; then
+if [ -d ${apu_src_dir} ]; then
      echo rebuilding $aprutil_configure
-    (cd srclib/apr-util && ./buildconf) || {
+    (cd ${apu_src_dir} && ./buildconf --with-apr=${apr_src_dir}) || {
          echo "./buildconf failed for apr-util"
          exit 1
-    rm -f srclib/apr-util/apr-util.spec
+    rm -f ${apu_src_dir}/apr-util.spec
echo copying build files

I'm simply removing the hardcoded references to srclib/ap{r,u}.  
However, this is only part of the fix: httpd's configure also needs  
to know where to find apr and apu. Perhaps there's more, deeper down.  
I have to meditate on my m4-fu before I attempt this, but first I'd  
like to run the use cases by the community. Yes, that's you.

Where could APR and APR-Util be?

1) In-tree. This is the case for released tarballs.
    Builder may still want to override.

2) Installed on the system. Httpd should not depend on in-tree APR or
    APR-Util at any level. The buildconf script of httpd should
    gracefully deal with absence of in-tree APR and APR-Util. Httpd's
    ./configure has to point to APR and APR-Util, or find in
    usual location (/usr/local/apr, /usr/local, /usr, ...)

3) Unbuilt source tree in arbitrary directory. These have valid
    ./configure scripts. Httpd's ./configure has to point to APR and
    APR-Util and roll with it.

4) Checked out tree in arbitary directory. Httpd's buildconf script
    should point to APR and APR-Util source trees and run their
    buildconf scripts. Resulting httpd ./configure should inherit APR
    and APR-Util locations.

5) ...

Please comment/embellish.



PGP FP: 51B4 8727 466A 0BC3 69F4  B7B8 B2BE BC40 1529 24AF

View raw message