Bug 44670

Summary: Apache httpd 2.2.8 : Cannot ./configure when current directory path has a space
Product: Apache httpd-2 Reporter: Matthew <matthew.franglen>
Component: BuildAssignee: Apache HTTPD Bugs Mailing List <bugs>
Status: NEW ---    
Severity: minor    
Priority: P3    
Version: 2.5-HEAD   
Target Milestone: ---   
Hardware: PC   
OS: Linux   
Attachments: The configure file which will not run.

Description Matthew 2008-03-25 05:04:21 UTC
Created attachment 21710 [details]
The configure file which will not run.

Ubuntu 7.10
httpd 2.2.8

Configure Output:
(from full path /home/matthew/Desktop/httpd install/httpd-2.2.8/)

>./configure
checking for chosen layout... Apache
checking for working mkdir -p... yes
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking target system type... i686-pc-linux-gnu

Configuring Apache Portable Runtime library ...

checking for APR... reconfig
configuring package in srclib/apr now
/bin/bash: /home/matthew/Desktop/httpd: No such file or directory
configure failed for srclib/apr

Issue:

If there is a path in the full directory path then the configure file will fail to complete because of said space.

Steps to Reproduce:

1) Create a directory that includes a space.
2) Download the latest apache httpd tar into this directory (2.2.8 downloaded from http://mirror.public-internet.co.uk/ftp/apache/httpd/httpd-2.2.8.tar.gz and signature verified)
3) Untar
4) Enter the directory created by the untarring using the command line
5) Run the ./configure command
Observe the error
6) Change the full path so that the space is replaced with an underscore
7) Run the ./configure command again
Observe that ./configure completes

Initial Investigation:

The error is clearly encountered with the configuration of srclib/apr. This section starts at line 3440 in the configuration file (found by searching for "configuring package in srclib/apr now"). The erroneous command appears to be:

if eval $SHELL $ac_abs_srcdir/configure $apr_configure_args --cache-file=$ac_sub_cache_file --srcdir=$ac_abs_srcdir $apache_apr_flags --prefix=$prefix --exec-prefix=$exec_prefix --libdir=$libdir --includedir=$includedir --bindir=$bindir --datadir=$datadir --with-installbuilddir=$installbuilddir

Using echos I have established that this is the problem command. However, quoting the two instances of $ac_abs_srcdir (or even all items that could possibly be paths) does not allow the configure file to proceed. I am no configure wizard, so this initial assessment may be rubbish.

Workaround:

Don't use a path with a space. Ultimately, it may be that the entire configuration file relies upon this, making it impractical to fix this issue. In that case, it may be helpful to add a note to the INSTALL file.