Bug 52890

Summary: --with-included-apr doesn't work when srclib/apr and srclib/apr-util are symlinks
Product: Apache httpd-2 Reporter: Yann Droneaud <yann>
Component: BuildAssignee: Apache HTTPD Bugs Mailing List <bugs>
Status: NEEDINFO ---    
Severity: normal    
Priority: P2    
Version: 2.4.1   
Target Milestone: ---   
Hardware: PC   
OS: Linux   
Attachments: Full log of ./configure --with-included-apr
httpd-2.4.1/config.log
httpd-2.4.1/srclib/apr/config.log
httpd-2.4.1/srclib/apr-util/config.log

Description Yann Droneaud 2012-03-12 18:19:08 UTC
Created attachment 28452 [details]
Full log of ./configure --with-included-apr

I have downloaded httpd-2.4.1, apr-1.4.6 and apr-1.4.1 sources packages.
Then I have unpacked them in the same directory:

  apr-1.4.6/
  apr-util-1.4.1/
  httpd-2.4.1/

Then, in httpd-2.4.1/srclib, I have created symlinks:

  apr -> ../../apr-1.4.6
  apr-util -> ../../apr-util-1.4.1

Running ./configure --with-included-apr is working up to apr-util configuration step.
It fails with:

checking for APR... configure: error: the --with-apr parameter is incorrect. It must specify an install prefix, a build directory, or an apr-config file.
configure failed for srclib/apr-util
Comment 1 Yann Droneaud 2012-03-12 18:21:50 UTC
Created attachment 28453 [details]
httpd-2.4.1/config.log
Comment 2 Yann Droneaud 2012-03-12 18:22:15 UTC
Created attachment 28454 [details]
httpd-2.4.1/srclib/apr/config.log
Comment 3 Yann Droneaud 2012-03-12 18:22:34 UTC
Created attachment 28455 [details]
httpd-2.4.1/srclib/apr-util/config.log
Comment 4 Yann Droneaud 2012-03-12 18:24:01 UTC
Copying the apr and apr-util sources instead of symlinking them works better.

If this problem is not fixed in the build system, a little warning should be added in httpd-2.4.1/INSTALL.
Comment 5 Carl Furst 2012-05-21 22:57:29 UTC
You should also specify that the apr "bundle" should be extracted into srclib/apr. There is nothing, as least as far as I read that indicate this in the docs. I had to find out by reading this in configure:

if test "x$with_included_apr" = "xyes"; then
  apr_found=reconfig
  if test ! -d srclib/apr && test ! -d $srcdir/srclib/apr; then
    as_fn_error $? "Bundled APR requested but not found at ./srclib/. Download and unpack the corresponding apr and apr-util packages to ./srclib/." "$LINENO" 5
  fi


Not exactly correct.
Comment 6 inviteman3 2012-06-29 06:17:26 UTC
You need to rename your apr-1.4.6 to apr and possibly your apr-util-1.4.1 to apr-util. This is because apr-util looks back to ../apr somewhere, but it doesn't exist in your case. Then recreate the symlinks.