You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by wr...@apache.org on 2006/02/04 03:41:06 UTC

svn commit: r374821 - in /httpd/httpd/trunk: CHANGES buildconf server/Makefile.in

Author: wrowe
Date: Fri Feb  3 18:41:02 2006
New Revision: 374821

URL: http://svn.apache.org/viewcvs?rev=374821&view=rev
Log:
  Solaris build proposal; don't fail on missing .h files within
  a VPATH build, and don't test trees with -d (simply -f the
  expected files) in case a tree such as srclib/apr is actually
  a symlink rather than a true directory in ./buildconf.

Modified:
    httpd/httpd/trunk/CHANGES
    httpd/httpd/trunk/buildconf
    httpd/httpd/trunk/server/Makefile.in

Modified: httpd/httpd/trunk/CHANGES
URL: http://svn.apache.org/viewcvs/httpd/httpd/trunk/CHANGES?rev=374821&r1=374820&r2=374821&view=diff
==============================================================================
--- httpd/httpd/trunk/CHANGES [utf-8] (original)
+++ httpd/httpd/trunk/CHANGES [utf-8] Fri Feb  3 18:41:02 2006
@@ -2,6 +2,11 @@
 Changes with Apache 2.3.0
   [Remove entries to the current 2.0 and 2.2 section below, when backported]
 
+  *) Modify apr[util] .h detection to avoid breakage on VPATH builds
+     using Solaris make (amoung others) and avoid breakage in ./buildconf
+     when srclib/apr[-util] are symlinks rather than directories proper.
+     [William Rowe]
+
   *) mod_speling: Stop crashing with certain non-file requests.  [Jeff Trawick]
 
   *) mod_proxy_ajp: Support common headers of the AJP protocol in responses.

Modified: httpd/httpd/trunk/buildconf
URL: http://svn.apache.org/viewcvs/httpd/httpd/trunk/buildconf?rev=374821&r1=374820&r2=374821&view=diff
==============================================================================
--- httpd/httpd/trunk/buildconf (original)
+++ httpd/httpd/trunk/buildconf Fri Feb  3 18:41:02 2006
@@ -58,7 +58,7 @@
 
 for dir in $apr_src_dir
 do
-    if [ -d "${dir}" -a -f "${dir}/build/apr_common.m4" ]; then
+    if [ -f "${dir}/build/apr_common.m4" ]; then
         echo "found apr source: ${dir}"
         apr_src_dir=$dir
         apr_found=1
@@ -80,7 +80,7 @@
 
 for dir in $apu_src_dir
 do
-    if [ -d "${dir}" -a -f "${dir}/Makefile.in" ]; then
+    if [ -f "${dir}/Makefile.in" ]; then
         echo "found apr-util source: ${dir}"
         apu_src_dir=$dir
         apu_found=1
@@ -128,7 +128,7 @@
 
 cross_compile_warning="warning: AC_TRY_RUN called without default to allow cross compiling"
 
-if [ -d srclib/apr ]; then
+if [ "$apr_src_dir" = "srclib/apr" ]; then
     echo rebuilding $apr_configure
     (cd srclib/apr && ./buildconf) || {
         echo "./buildconf failed for apr"
@@ -137,14 +137,18 @@
     rm -f srclib/apr/apr.spec
 fi
 
-if [ -d srclib/apr-util ]; then
+apr_src_dir=`cd $apr_src_dir && pwd` 
+
+if [ "$apu_src_dir" = "srclib/apr-util" ]; then
     echo rebuilding $aprutil_configure
-    (cd srclib/apr-util && ./buildconf) || {
+    (cd srclib/apr-util && ./buildconf --with-apr=$apr_src_dir) || {
         echo "./buildconf failed for apr-util" 
         exit 1
     }
     rm -f srclib/apr-util/apr-util.spec
 fi
+
+apu_src_dir=`cd $apu_src_dir && pwd` 
 
 echo copying build files
 cp $apr_src_dir/build/config.guess $apr_src_dir/build/config.sub \

Modified: httpd/httpd/trunk/server/Makefile.in
URL: http://svn.apache.org/viewcvs/httpd/httpd/trunk/server/Makefile.in?rev=374821&r1=374820&r2=374821&view=diff
==============================================================================
--- httpd/httpd/trunk/server/Makefile.in (original)
+++ httpd/httpd/trunk/server/Makefile.in Fri Feb  3 18:41:02 2006
@@ -59,8 +59,7 @@
 	    ls $$dir/*.h >> $$tmp; \
 	done; \
 	for dir in $(EXPORT_DIRS_APR); do \
-	    ls $$dir/ap[ru].h >> $$tmp; \
-	    ls $$dir/ap[ru]_*.h >> $$tmp; \
+	    (ls $$dir/ap[ru].h $$dir/ap[ru]_*.h >> $$tmp 2>/dev/null); \
 	done; \
 	sort -u $$tmp > $@; \
 	rm -f $$tmp



Re: svn commit: r374821 - in /httpd/httpd/trunk: CHANGES buildconf server/Makefile.in

Posted by "William A. Rowe, Jr." <wr...@rowe-clan.net>.
Joe Orton wrote:
> On Sat, Feb 04, 2006 at 02:41:06AM -0000, William Rowe wrote:
> 
>>Author: wrowe
>>Date: Fri Feb  3 18:41:02 2006
>>New Revision: 374821
>>
>>URL: http://svn.apache.org/viewcvs?rev=374821&view=rev
>>Log:
>>  Solaris build proposal; don't fail on missing .h files within
>>  a VPATH build, and don't test trees with -d (simply -f the
>>  expected files) in case a tree such as srclib/apr is actually
>>  a symlink rather than a true directory in ./buildconf.
> 
> 
> What's the below change for, is it related to the rest of these changes?  
> Losing stderr does not look sensible.

Well I've explained this now three times, let me try a different way...

Given vpath srcdir /asf/apr[-util]-svn and builddir /asf/buildapr[-util]

>>--- httpd/httpd/trunk/server/Makefile.in (original)
>>+++ httpd/httpd/trunk/server/Makefile.in Fri Feb  3 18:41:02 2006
>>@@ -59,8 +59,7 @@
>> 	    ls $$dir/*.h >> $$tmp; \
>> 	done; \
>> 	for dir in $(EXPORT_DIRS_APR); do \
>>-	    ls $$dir/ap[ru].h >> $$tmp; \
>>-	    ls $$dir/ap[ru]_*.h >> $$tmp; \
>>+	    (ls $$dir/ap[ru].h $$dir/ap[ru]_*.h >> $$tmp 2>/dev/null); \

expands to

       ls /asf/apr-svn/ap[ru].h /asf/apr-svn/ap[ru]_*.h
       ls /asf/buildapr/ap[ru].h /asf/buildapr/ap[ru]_*.h
       ls /asf/apr-util-svn/ap[ru].h /asf/apr-util-svn/ap[ru]_*.h
       ls /asf/buildapr-util/ap[ru].h /asf/buildapr-util/ap[ru]_*.h

each concatinating to the file list.

Lines 1 and 3 above fail for apr.h / apu.h, those aren't in svn, they are
generated targets.

On solaris shell, using solaris make, the lines that fail cause the make
to croak.  We don't want to croak, there's no error here.  So encapsulating
this into a subshell invocation allows make to ignore this 'fault'.

What stderr don't you like loosing?  "File not found"?  If we hit that point
it's deliberate, or I assure you the build fails long before that point.
There is no reason to emit white noise at this point in the build.

Bill

Re: svn commit: r374821 - in /httpd/httpd/trunk: CHANGES buildconf server/Makefile.in

Posted by Joe Orton <jo...@redhat.com>.
On Sat, Feb 04, 2006 at 02:41:06AM -0000, William Rowe wrote:
> Author: wrowe
> Date: Fri Feb  3 18:41:02 2006
> New Revision: 374821
> 
> URL: http://svn.apache.org/viewcvs?rev=374821&view=rev
> Log:
>   Solaris build proposal; don't fail on missing .h files within
>   a VPATH build, and don't test trees with -d (simply -f the
>   expected files) in case a tree such as srclib/apr is actually
>   a symlink rather than a true directory in ./buildconf.

What's the below change for, is it related to the rest of these changes?  
Losing stderr does not look sensible.

> Modified: httpd/httpd/trunk/server/Makefile.in
> URL: http://svn.apache.org/viewcvs/httpd/httpd/trunk/server/Makefile.in?rev=374821&r1=374820&r2=374821&view=diff
> ==============================================================================
> --- httpd/httpd/trunk/server/Makefile.in (original)
> +++ httpd/httpd/trunk/server/Makefile.in Fri Feb  3 18:41:02 2006
> @@ -59,8 +59,7 @@
>  	    ls $$dir/*.h >> $$tmp; \
>  	done; \
>  	for dir in $(EXPORT_DIRS_APR); do \
> -	    ls $$dir/ap[ru].h >> $$tmp; \
> -	    ls $$dir/ap[ru]_*.h >> $$tmp; \
> +	    (ls $$dir/ap[ru].h $$dir/ap[ru]_*.h >> $$tmp 2>/dev/null); \
>  	done; \
>  	sort -u $$tmp > $@; \
>  	rm -f $$tmp
>