You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@perl.apache.org by Fred Moyer <fr...@redhotpenguin.com> on 2010/10/17 20:50:31 UTC

Fwd: svn commit: r1023553 - in /perl/modperl/trunk: Changes Makefile.PL lib/Apache2/Build.pm lib/ModPerl/BuildOptions.pm

Please take a look at the last 4 commits I did; any feedback welcome.
These commits are meant to clear up build issues with mod_perl and
friends.  The build system is very flexible and powerful - and at the
same time encounters random problems as a result of that flexibility.
I've attempting to eliminate those issues, so that clean builds will
result when you have a clean toolchain (which almost everyone seems to
have when building mod_perl, those with 10 different perl binaries
installed are rare and capable of figuring things out themselves.

If you could take a few minutes to svn update mod_perl trunk and run
the tests, that would be extremely helpful.  I've tested on 2
different platforms so far, OS X and Linux, and all tests are passing.


---------- Forwarded message ----------
From:  <ph...@apache.org>
Date: Sun, Oct 17, 2010 at 11:45 AM
Subject: svn commit: r1023553 - in /perl/modperl/trunk: Changes
Makefile.PL lib/Apache2/Build.pm lib/ModPerl/BuildOptions.pm
To: modperl-cvs@perl.apache.org


Author: phred
Date: Sun Oct 17 18:45:16 2010
New Revision: 1023553

URL: http://svn.apache.org/viewvc?rev=1023553&view=rev
Log:
Look for a usable apxs in $ENV{PATH} if all other options fail, then
prompt the user for one.

Work around bootstrap warnings when Apache2::BuildConfig has not been
created yet.

Remove Apache::test compatibility (part of mod_perl 1.2.7), that code
causes build issues and is 4 versions out of date.

Modified:
   perl/modperl/trunk/Changes
   perl/modperl/trunk/Makefile.PL
   perl/modperl/trunk/lib/Apache2/Build.pm
   perl/modperl/trunk/lib/ModPerl/BuildOptions.pm

Modified: perl/modperl/trunk/Changes
URL: http://svn.apache.org/viewvc/perl/modperl/trunk/Changes?rev=1023553&r1=1023552&r2=1023553&view=diff
==============================================================================
--- perl/modperl/trunk/Changes (original)
+++ perl/modperl/trunk/Changes Sun Oct 17 18:45:16 2010
@@ -12,6 +12,15 @@ Also refer to the Apache::Test changes l

 =item 2.0.5-dev

+Look for a usable apxs in $ENV{PATH} if all other options fail, then
prompt the user for one.
+[Phred]
+
+Work around bootstrap warnings when Apache2::BuildConfig has not been
created yet.
+[Phred]
+
+Remove Apache::test compatibility (part of mod_perl 1.2.7), that code
causes build issues and is 4 versions out of date.
+[Phred]
+
 Make sure perl is built either with multiplicity and ithreads or without
 both [Theory, Torsten]


Modified: perl/modperl/trunk/Makefile.PL
URL: http://svn.apache.org/viewvc/perl/modperl/trunk/Makefile.PL?rev=1023553&r1=1023552&r2=1023553&view=diff
==============================================================================
--- perl/modperl/trunk/Makefile.PL (original)
+++ perl/modperl/trunk/Makefile.PL Sun Oct 17 18:45:16 2010
@@ -21,6 +21,7 @@ BEGIN {
            $old_Apache2_pm = delete $INC{'Apache2.pm'};
        }
    };
+
 }

 use lib qw(lib Apache-Test/lib);
@@ -629,13 +630,6 @@ use Config;
 use constant WIN32 => $^O eq 'MSWin32';
 use constant BUILD_APREXT => Apache2::Build::BUILD_APREXT;

-my $apache_test_install;
-BEGIN {
-    $apache_test_install = -e 'Apache-Test';
-    use lib './Apache-Test';
-    require 'install-pl' if $apache_test_install;
-}
-
 sub MY::top_targets {
    my $self = shift;
    my $string = $self->ModPerl::BuildMM::MY::top_targets;
@@ -729,9 +723,6 @@ modperl_banner:

 EOF

-    $string .= Apache::Test::install::nuke_Apache__test_target()
-        if $apache_test_install;
-
    $string;
 }

@@ -747,9 +738,6 @@ sub MY::install {
       # ModPerl::MM::add_dep(\$string, "pure${kind}_install" =>
'aprext_install')
       #    if BUILD_APREXT;

-       ModPerl::MM::add_dep(\$string, "pure${kind}_install" =>
'nuke_Apache__test')
-           if $apache_test_install;
-
       ModPerl::MM::add_dep_after(\$string, "install$kind",
"doc${kind}_install", 'modperl_banner');

       # glue_pods target must come first

Modified: perl/modperl/trunk/lib/Apache2/Build.pm
URL: http://svn.apache.org/viewvc/perl/modperl/trunk/lib/Apache2/Build.pm?rev=1023553&r1=1023552&r2=1023553&view=diff
==============================================================================
--- perl/modperl/trunk/lib/Apache2/Build.pm (original)
+++ perl/modperl/trunk/lib/Apache2/Build.pm Sun Oct 17 18:45:16 2010
@@ -897,6 +897,10 @@ sub default_file {

 sub file_path {
    my $self = shift;
+
+    # work around when Apache2::BuildConfig has not been created yet
+    return unless $self && $self->{cwd};
+
    my @files = map { m:^/: ? $_ : join('/', $self->{cwd}, $_) } @_;
    return wantarray ? @files : $files[0];
 }

Modified: perl/modperl/trunk/lib/ModPerl/BuildOptions.pm
URL: http://svn.apache.org/viewvc/perl/modperl/trunk/lib/ModPerl/BuildOptions.pm?rev=1023553&r1=1023552&r2=1023553&view=diff
==============================================================================
--- perl/modperl/trunk/lib/ModPerl/BuildOptions.pm (original)
+++ perl/modperl/trunk/lib/ModPerl/BuildOptions.pm Sun Oct 17 18:45:16 2010
@@ -66,6 +66,24 @@ sub init {
    $build->{MP_COMPAT_1X} = 1
        unless exists $build->{MP_COMPAT_1X} && !$build->{MP_COMPAT_1X};

+    # make a last ditch effort to find apxs in $ENV{PATH}
+    if (!$build->{MP_AP_PREFIX} && !$build->{MP_APXS}) {
+
+        my @paths = split(/:/, $ENV{PATH});
+        my $potential_apxs;
+        while (!$potential_apxs) {
+
+            last if scalar(@paths) == 0; # don't loop endlessly
+            $potential_apxs = File::Spec->catfile(shift @paths, 'apxs');
+            if (-e $potential_apxs && -x $potential_apxs) {
+
+                $build->{MP_APXS} = $potential_apxs;
+                print "MP_APXS unspecified, using $potential_apxs\n\n";
+            } else {
+                undef $potential_apxs;
+            }
+        }
+    }
 }

 sub parse {

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org


Re: Fwd: svn commit: r1023553 - in /perl/modperl/trunk: Changes Makefile.PL lib/Apache2/Build.pm lib/ModPerl/BuildOptions.pm

Posted by Clinton Gormley <cl...@traveljury.com>.
> Can you run the failing test with verbose output?
> 
> mod_perl-2.0/ModPerl-Registry $  ./t/TEST t/closure.t -verbose=1

Under perl 5.12.1:

# Running under perl version 5.012001 for linux
# Current time local: Thu Oct 21 10:15:10 2010
# Current time GMT:   Thu Oct 21 08:15:10 2010
# Using Test.pm version 1.25_02
# Using Apache/Test.pm version 1.34
# testing : never the closure problem
# expected: 0
# received: 0
ok 1
# testing : never the closure problem
# expected: 1
# received: 1
ok 2
# testing : the closure problem should exist
# expected: 1
# received: 1
ok 3
# testing : no closure on the first request
# expected: 1
# received: 4
not ok 4
# Failed test 4 in t/closure.t at line 89
# testing : the closure problem should exist
# expected: 1
# received: 1
ok 5
# testing : no reload on modification, the closure problem persists
# expected: 1
# received: 1
ok 6
Failed 1/6 subtests 


error log attached

clint

Re: Fwd: svn commit: r1023553 - in /perl/modperl/trunk: Changes Makefile.PL lib/Apache2/Build.pm lib/ModPerl/BuildOptions.pm

Posted by Fred Moyer <fr...@redhotpenguin.com>.
2010/10/19 Clinton Gormley <cl...@traveljury.com>:
> I'm new to this, so I thought I'd provide more information rather than
> less.
>
> There were build problems with trunk - see attached logs.

Can you run the failing test with verbose output?

mod_perl-2.0/ModPerl-Registry $  ./t/TEST t/closure.t -verbose=1


>
> My platform:
>
> openSUSE 11.3 (x86_64)
> VERSION = 11.3
>
> Linux balrog.traveljury.com 2.6.34.7-0.3-desktop #1 SMP PREEMPT
> 2010-09-20 15:27:38 +0200 x86_64 x86_64 x86_64 GNU/Linux
>
> Server version: Apache/2.2.17 (Unix)
> Server built:   Oct 19 2010 19:08:42
> Server's Module Magic Number: 20051115:25
> Server loaded:  APR 1.4.2, APR-Util 1.3.10
> Compiled using: APR 1.4.2, APR-Util 1.3.10
> Architecture:   64-bit
> Server MPM:     Prefork
>  threaded:     no
>    forked:     yes (variable process count)
> Server compiled with....
>  -D APACHE_MPM_DIR="server/mpm/prefork"
>  -D APR_HAS_SENDFILE
>  -D APR_HAS_MMAP
>  -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
>  -D APR_USE_SYSVSEM_SERIALIZE
>  -D APR_USE_PTHREAD_SERIALIZE
>  -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
>  -D APR_HAS_OTHER_CHILD
>  -D AP_HAVE_RELIABLE_PIPED_LOGS
>  -D DYNAMIC_MODULE_LIMIT=128
>  -D
> HTTPD_ROOT="/opt/httpd-2.2.17_mod_perl-2.0_20101019151954_libapreq-2.12_perl-5.12.1-unthreaded/"
>  -D
> SUEXEC_BIN="/opt/httpd-2.2.17_mod_perl-2.0_20101019151954_libapreq-2.12_perl-5.12.1-unthreaded//bin/suexec"
>  -D DEFAULT_PIDLOG="/opt/apache/logs/httpd.pid"
>  -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
>  -D DEFAULT_LOCKFILE="/opt/apache/logs/accept.lock"
>  -D DEFAULT_ERRORLOG="logs/error_log"
>  -D AP_TYPES_CONFIG_FILE="/opt/apache/conf/mime.types"
>  -D SERVER_CONFIG_FILE="/opt/apache/conf/httpd.conf"
>
>
> clint
>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org


Re: Fwd: svn commit: r1023553 - in /perl/modperl/trunk: Changes Makefile.PL lib/Apache2/Build.pm lib/ModPerl/BuildOptions.pm

Posted by Clinton Gormley <cl...@traveljury.com>.
I'm new to this, so I thought I'd provide more information rather than
less.

There were build problems with trunk - see attached logs.

My platform:

openSUSE 11.3 (x86_64)
VERSION = 11.3

Linux balrog.traveljury.com 2.6.34.7-0.3-desktop #1 SMP PREEMPT
2010-09-20 15:27:38 +0200 x86_64 x86_64 x86_64 GNU/Linux

Server version: Apache/2.2.17 (Unix)
Server built:   Oct 19 2010 19:08:42
Server's Module Magic Number: 20051115:25
Server loaded:  APR 1.4.2, APR-Util 1.3.10
Compiled using: APR 1.4.2, APR-Util 1.3.10
Architecture:   64-bit
Server MPM:     Prefork
  threaded:     no
    forked:     yes (variable process count)
Server compiled with....
 -D APACHE_MPM_DIR="server/mpm/prefork"
 -D APR_HAS_SENDFILE
 -D APR_HAS_MMAP
 -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
 -D APR_USE_SYSVSEM_SERIALIZE
 -D APR_USE_PTHREAD_SERIALIZE
 -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
 -D APR_HAS_OTHER_CHILD
 -D AP_HAVE_RELIABLE_PIPED_LOGS
 -D DYNAMIC_MODULE_LIMIT=128
 -D
HTTPD_ROOT="/opt/httpd-2.2.17_mod_perl-2.0_20101019151954_libapreq-2.12_perl-5.12.1-unthreaded/"
 -D
SUEXEC_BIN="/opt/httpd-2.2.17_mod_perl-2.0_20101019151954_libapreq-2.12_perl-5.12.1-unthreaded//bin/suexec"
 -D DEFAULT_PIDLOG="/opt/apache/logs/httpd.pid"
 -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
 -D DEFAULT_LOCKFILE="/opt/apache/logs/accept.lock"
 -D DEFAULT_ERRORLOG="logs/error_log"
 -D AP_TYPES_CONFIG_FILE="/opt/apache/conf/mime.types"
 -D SERVER_CONFIG_FILE="/opt/apache/conf/httpd.conf"


clint

Re: Fwd: svn commit: r1023553 - in /perl/modperl/trunk: Changes Makefile.PL lib/Apache2/Build.pm lib/ModPerl/BuildOptions.pm

Posted by Fred Moyer <fr...@redhotpenguin.com>.
2010/10/19 Torsten Förtsch <to...@gmx.net>:
> On Tuesday, October 19, 2010 08:40:26 Fred Moyer wrote:
>> Torsten, can you pull svn trunk and test against your
>> setup?
>
> When built inside the modperl tree I don't see any problems.
>
> But outside ...
>
> $ rm -rf Apache-Test/
> $ svn export https://svn.apache.org/repos/asf/perl/Apache-Test/trunk Apache-Test
> ...
> Exported revision 1024307.
> $ perl Makefile.PL
> Subroutine MY::test redefined at Makefile.PL line 168.
> ...
> Checking if your kit is complete...
> Warning: the following files are missing in your kit:
>        t/htdocs/index.html
> Please inform the author.

Fixed, thanks for the spot.

I'm not sure what to do about the test more tests right now, they
haven't been bundled with releases until with this next version.  I'm
tempted to go with what we have even though it isn't perfect.

> ...
> $ make test
> ...
> [   info] adding source lib /home/r2/work/mp2/trunk/Apache-Test/../Apache-Test/lib to @INC
> [   info] adding source lib /home/r2/work/mp2/trunk/Apache-Test/../Apache-Test/lib to @INC
> [   info] adding source lib /home/r2/work/mp2/trunk/Apache-Test/../Apache-Test/lib to @INC
> t/alltest/all.t .......... skipped: testing all.t
> t/alltest2/all.t ......... skipped: testing more than one all.t
> ...
> t/more/03testpm.t ........ All 1 subtests passed
> ...
> t/more/03testpm.t      (Wstat: 0 Tests: 1 Failed: 0)
>  Parse errors: Tests out of sequence.  Found (2) but expected (1)
>
> and in the error_log:
>
> Prototype mismatch: sub Apache::Test::ok ($;$$) vs ($;$) at /home/r2/work/mp2/trunk/Apache-
> Test/t/../lib/Apache/Test.pm line 88
> Prototype mismatch: sub Apache::Test::skip ($;$$$) vs none at /home/r2/work/mp2/trunk/Apache-
> Test/t/../lib/Apache/Test.pm line 88
>
>
> Torsten Förtsch
>
> --
> Need professional modperl support? Hire me! (http://foertsch.name)
>
> Like fantasy? http://kabatinte.net
>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org


Re: Fwd: svn commit: r1023553 - in /perl/modperl/trunk: Changes Makefile.PL lib/Apache2/Build.pm lib/ModPerl/BuildOptions.pm

Posted by Torsten Förtsch <to...@gmx.net>.
On Tuesday, October 19, 2010 08:40:26 Fred Moyer wrote:
> Torsten, can you pull svn trunk and test against your
> setup?

When built inside the modperl tree I don't see any problems.

But outside ...

$ rm -rf Apache-Test/
$ svn export https://svn.apache.org/repos/asf/perl/Apache-Test/trunk Apache-Test
...
Exported revision 1024307.
$ perl Makefile.PL 
Subroutine MY::test redefined at Makefile.PL line 168.
...
Checking if your kit is complete...
Warning: the following files are missing in your kit:
        t/htdocs/index.html
Please inform the author.
...
$ make test
...
[   info] adding source lib /home/r2/work/mp2/trunk/Apache-Test/../Apache-Test/lib to @INC
[   info] adding source lib /home/r2/work/mp2/trunk/Apache-Test/../Apache-Test/lib to @INC
[   info] adding source lib /home/r2/work/mp2/trunk/Apache-Test/../Apache-Test/lib to @INC
t/alltest/all.t .......... skipped: testing all.t
t/alltest2/all.t ......... skipped: testing more than one all.t
...   
t/more/03testpm.t ........ All 1 subtests passed
...
t/more/03testpm.t      (Wstat: 0 Tests: 1 Failed: 0)
  Parse errors: Tests out of sequence.  Found (2) but expected (1)

and in the error_log:

Prototype mismatch: sub Apache::Test::ok ($;$$) vs ($;$) at /home/r2/work/mp2/trunk/Apache-
Test/t/../lib/Apache/Test.pm line 88
Prototype mismatch: sub Apache::Test::skip ($;$$$) vs none at /home/r2/work/mp2/trunk/Apache-
Test/t/../lib/Apache/Test.pm line 88


Torsten Förtsch

-- 
Need professional modperl support? Hire me! (http://foertsch.name)

Like fantasy? http://kabatinte.net

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org


Re: Fwd: svn commit: r1023553 - in /perl/modperl/trunk: Changes Makefile.PL lib/Apache2/Build.pm lib/ModPerl/BuildOptions.pm

Posted by Fred Moyer <fr...@redhotpenguin.com>.
On Mon, Oct 18, 2010 at 10:33 AM, Adam Prime <ad...@utoronto.ca> wrote:
> On 10-10-17 02:50 PM, Fred Moyer wrote:
>> If you could take a few minutes to svn update mod_perl trunk and run
>> the tests, that would be extremely helpful.  I've tested on 2
>> different platforms so far, OS X and Linux, and all tests are passing.
>
> I've updated and run tests on 2 linux boxes as well as a solaris x86 box and
> everything ran fine.  All three are running perl 5.8.8.

Thanks Adam.  Torsten, can you pull svn trunk and test against your
setup?  I think we might have a winner for releasing another version
of all modules, and then 2.0.5.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org


Re: Fwd: svn commit: r1023553 - in /perl/modperl/trunk: Changes Makefile.PL lib/Apache2/Build.pm lib/ModPerl/BuildOptions.pm

Posted by Adam Prime <ad...@utoronto.ca>.
On 10-10-17 02:50 PM, Fred Moyer wrote:
> Please take a look at the last 4 commits I did; any feedback welcome.
> These commits are meant to clear up build issues with mod_perl and
> friends.  The build system is very flexible and powerful - and at the
> same time encounters random problems as a result of that flexibility.
> I've attempting to eliminate those issues, so that clean builds will
> result when you have a clean toolchain (which almost everyone seems to
> have when building mod_perl, those with 10 different perl binaries
> installed are rare and capable of figuring things out themselves.
>
> If you could take a few minutes to svn update mod_perl trunk and run
> the tests, that would be extremely helpful.  I've tested on 2
> different platforms so far, OS X and Linux, and all tests are passing.

I've updated and run tests on 2 linux boxes as well as a solaris x86 box 
and everything ran fine.  All three are running perl 5.8.8.

Adam

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org


Re: Fwd: svn commit: r1023553 - in /perl/modperl/trunk: Changes Makefile.PL lib/Apache2/Build.pm lib/ModPerl/BuildOptions.pm

Posted by Ryan Gies <ry...@livesite.net>.
Script written to assist testing.  If these procedures are not correct, 
please let me know.  This is designed for a fresh linux install, i.e., I 
use a clean machine image each time.  If there is any potential with 
this I imagine posting it to CPAN would be appropriate, please let me 
know.  Cheers, -Ryan

#!/bin/bash

# mp2test - Helper script for testing mod_perl-2.0 compiles
#
# Red Hat specific.
#
# This script will prompt (y/n) to execute each command.  When the exit status
# is unsuccessful, this script will stop.
#
# Privided as-is, no warranty. -Ryan Gies<ry...@cpan.org>


info_filename="$HOME/mp2test_results.txt"
path_to_httpd="/usr/sbin/httpd"

function ask_yn () {
   local yn=false;
   prompt="$1 [n] "
   while true; do
     read -p "$prompt" chr
     case $chr in
       [Yy]* ) yn=true; break;;
       * ) yn=false; break;;
     esac
   done
   if ($yn); then
     return 0
   else
     return 1
   fi
}

function write_platform_info () {
   cat /etc/redhat-release>  $info_filename
   echo "">>  $info_filename
   uname -a>>  $info_filename
   echo "">>  $info_filename
   $path_to_httpd -V>>  $info_filename
   echo "Wrote: $info_filename"
}

commands=(
   "su root -c 'yum install -y subversion httpd httpd-devel'"
   "svn checkout https://svn.apache.org/repos/asf/perl/modperl/trunk/ mod_perl-2.0"
   "svn update mod_perl-2.0"
   "cd mod_perl-2.0"
   "perl Makefile.PL"
   "make"
   "make test"
   "write_platform_info"
)

IFS_BAK=$IFS
IFS='$'
for cmd in ${commands[@]}; do
   if (ask_yn "$cmd"); then
     IFS=$IFS_BAK
     $cmd
     rc=$?
     if [ $rc -gt 0 ]; then
       echo "Command failed [$rc]: $cmd"
       break
     fi
   fi
done


On 10/17/2010 02:50 PM, Fred Moyer wrote:
> Please take a look at the last 4 commits I did; any feedback welcome.
> These commits are meant to clear up build issues with mod_perl and
> friends.  The build system is very flexible and powerful - and at the
> same time encounters random problems as a result of that flexibility.
> I've attempting to eliminate those issues, so that clean builds will
> result when you have a clean toolchain (which almost everyone seems to
> have when building mod_perl, those with 10 different perl binaries
> installed are rare and capable of figuring things out themselves.
>
> If you could take a few minutes to svn update mod_perl trunk and run
> the tests, that would be extremely helpful.  I've tested on 2
> different platforms so far, OS X and Linux, and all tests are passing.
>
>
> ---------- Forwarded message ----------
> From:<ph...@apache.org>
> Date: Sun, Oct 17, 2010 at 11:45 AM
> Subject: svn commit: r1023553 - in /perl/modperl/trunk: Changes
> Makefile.PL lib/Apache2/Build.pm lib/ModPerl/BuildOptions.pm
> To: modperl-cvs@perl.apache.org
>
>
> Author: phred
> Date: Sun Oct 17 18:45:16 2010
> New Revision: 1023553
>
> URL: http://svn.apache.org/viewvc?rev=1023553&view=rev
> Log:
> Look for a usable apxs in $ENV{PATH} if all other options fail, then
> prompt the user for one.
>
> Work around bootstrap warnings when Apache2::BuildConfig has not been
> created yet.
>
> Remove Apache::test compatibility (part of mod_perl 1.2.7), that code
> causes build issues and is 4 versions out of date.
>
> Modified:
>     perl/modperl/trunk/Changes
>     perl/modperl/trunk/Makefile.PL
>     perl/modperl/trunk/lib/Apache2/Build.pm
>     perl/modperl/trunk/lib/ModPerl/BuildOptions.pm
>
> Modified: perl/modperl/trunk/Changes
> URL: http://svn.apache.org/viewvc/perl/modperl/trunk/Changes?rev=1023553&r1=1023552&r2=1023553&view=diff
> ==============================================================================
> --- perl/modperl/trunk/Changes (original)
> +++ perl/modperl/trunk/Changes Sun Oct 17 18:45:16 2010
> @@ -12,6 +12,15 @@ Also refer to the Apache::Test changes l
>
>   =item 2.0.5-dev
>
> +Look for a usable apxs in $ENV{PATH} if all other options fail, then
> prompt the user for one.
> +[Phred]
> +
> +Work around bootstrap warnings when Apache2::BuildConfig has not been
> created yet.
> +[Phred]
> +
> +Remove Apache::test compatibility (part of mod_perl 1.2.7), that code
> causes build issues and is 4 versions out of date.
> +[Phred]
> +
>   Make sure perl is built either with multiplicity and ithreads or without
>   both [Theory, Torsten]
>
>
> Modified: perl/modperl/trunk/Makefile.PL
> URL: http://svn.apache.org/viewvc/perl/modperl/trunk/Makefile.PL?rev=1023553&r1=1023552&r2=1023553&view=diff
> ==============================================================================
> --- perl/modperl/trunk/Makefile.PL (original)
> +++ perl/modperl/trunk/Makefile.PL Sun Oct 17 18:45:16 2010
> @@ -21,6 +21,7 @@ BEGIN {
>              $old_Apache2_pm = delete $INC{'Apache2.pm'};
>          }
>      };
> +
>   }
>
>   use lib qw(lib Apache-Test/lib);
> @@ -629,13 +630,6 @@ use Config;
>   use constant WIN32 =>  $^O eq 'MSWin32';
>   use constant BUILD_APREXT =>  Apache2::Build::BUILD_APREXT;
>
> -my $apache_test_install;
> -BEGIN {
> -    $apache_test_install = -e 'Apache-Test';
> -    use lib './Apache-Test';
> -    require 'install-pl' if $apache_test_install;
> -}
> -
>   sub MY::top_targets {
>      my $self = shift;
>      my $string = $self->ModPerl::BuildMM::MY::top_targets;
> @@ -729,9 +723,6 @@ modperl_banner:
>
>   EOF
>
> -    $string .= Apache::Test::install::nuke_Apache__test_target()
> -        if $apache_test_install;
> -
>      $string;
>   }
>
> @@ -747,9 +738,6 @@ sub MY::install {
>         # ModPerl::MM::add_dep(\$string, "pure${kind}_install" =>
> 'aprext_install')
>         #    if BUILD_APREXT;
>
> -       ModPerl::MM::add_dep(\$string, "pure${kind}_install" =>
> 'nuke_Apache__test')
> -           if $apache_test_install;
> -
>         ModPerl::MM::add_dep_after(\$string, "install$kind",
> "doc${kind}_install", 'modperl_banner');
>
>         # glue_pods target must come first
>
> Modified: perl/modperl/trunk/lib/Apache2/Build.pm
> URL: http://svn.apache.org/viewvc/perl/modperl/trunk/lib/Apache2/Build.pm?rev=1023553&r1=1023552&r2=1023553&view=diff
> ==============================================================================
> --- perl/modperl/trunk/lib/Apache2/Build.pm (original)
> +++ perl/modperl/trunk/lib/Apache2/Build.pm Sun Oct 17 18:45:16 2010
> @@ -897,6 +897,10 @@ sub default_file {
>
>   sub file_path {
>      my $self = shift;
> +
> +    # work around when Apache2::BuildConfig has not been created yet
> +    return unless $self&&  $self->{cwd};
> +
>      my @files = map { m:^/: ? $_ : join('/', $self->{cwd}, $_) } @_;
>      return wantarray ? @files : $files[0];
>   }
>
> Modified: perl/modperl/trunk/lib/ModPerl/BuildOptions.pm
> URL: http://svn.apache.org/viewvc/perl/modperl/trunk/lib/ModPerl/BuildOptions.pm?rev=1023553&r1=1023552&r2=1023553&view=diff
> ==============================================================================
> --- perl/modperl/trunk/lib/ModPerl/BuildOptions.pm (original)
> +++ perl/modperl/trunk/lib/ModPerl/BuildOptions.pm Sun Oct 17 18:45:16 2010
> @@ -66,6 +66,24 @@ sub init {
>      $build->{MP_COMPAT_1X} = 1
>          unless exists $build->{MP_COMPAT_1X}&&  !$build->{MP_COMPAT_1X};
>
> +    # make a last ditch effort to find apxs in $ENV{PATH}
> +    if (!$build->{MP_AP_PREFIX}&&  !$build->{MP_APXS}) {
> +
> +        my @paths = split(/:/, $ENV{PATH});
> +        my $potential_apxs;
> +        while (!$potential_apxs) {
> +
> +            last if scalar(@paths) == 0; # don't loop endlessly
> +            $potential_apxs = File::Spec->catfile(shift @paths, 'apxs');
> +            if (-e $potential_apxs&&  -x $potential_apxs) {
> +
> +                $build->{MP_APXS} = $potential_apxs;
> +                print "MP_APXS unspecified, using $potential_apxs\n\n";
> +            } else {
> +                undef $potential_apxs;
> +            }
> +        }
> +    }
>   }
>
>   sub parse {
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
> For additional commands, e-mail: dev-help@perl.apache.org
>
>    


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org


Re: Fwd: svn commit: r1023553 - in /perl/modperl/trunk: Changes Makefile.PL lib/Apache2/Build.pm lib/ModPerl/BuildOptions.pm

Posted by Ryan Gies <ry...@livesite.net>.
+1

CentOS release 5.5 (Final)

Linux localhost.localdomain 2.6.18-194.el5 #1 SMP Fri Apr 2 14:58:35 EDT 2010 i686 i686 i386 GNU/Linux

Server version: Apache/2.2.3
Server built:   Aug 30 2010 12:32:08
Server's Module Magic Number: 20051115:3
Server loaded:  APR 1.2.7, APR-Util 1.2.7
Compiled using: APR 1.2.7, APR-Util 1.2.7
Architecture:   32-bit
Server MPM:     Prefork
   threaded:     no
     forked:     yes (variable process count)
Server compiled with....
  -D APACHE_MPM_DIR="server/mpm/prefork"
  -D APR_HAS_SENDFILE
  -D APR_HAS_MMAP
  -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
  -D APR_USE_SYSVSEM_SERIALIZE
  -D APR_USE_PTHREAD_SERIALIZE
  -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
  -D APR_HAS_OTHER_CHILD
  -D AP_HAVE_RELIABLE_PIPED_LOGS
  -D DYNAMIC_MODULE_LIMIT=128
  -D HTTPD_ROOT="/etc/httpd"
  -D SUEXEC_BIN="/usr/sbin/suexec"
  -D DEFAULT_PIDLOG="run/httpd.pid"
  -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
  -D DEFAULT_LOCKFILE="logs/accept.lock"
  -D DEFAULT_ERRORLOG="logs/error_log"
  -D AP_TYPES_CONFIG_FILE="conf/mime.types"
  -D SERVER_CONFIG_FILE="conf/httpd.conf"



On 10/17/2010 02:50 PM, Fred Moyer wrote:
> Please take a look at the last 4 commits I did; any feedback welcome.
> These commits are meant to clear up build issues with mod_perl and
> friends.  The build system is very flexible and powerful - and at the
> same time encounters random problems as a result of that flexibility.
> I've attempting to eliminate those issues, so that clean builds will
> result when you have a clean toolchain (which almost everyone seems to
> have when building mod_perl, those with 10 different perl binaries
> installed are rare and capable of figuring things out themselves.
>
> If you could take a few minutes to svn update mod_perl trunk and run
> the tests, that would be extremely helpful.  I've tested on 2
> different platforms so far, OS X and Linux, and all tests are passing.
>
>
> ---------- Forwarded message ----------
> From:<ph...@apache.org>
> Date: Sun, Oct 17, 2010 at 11:45 AM
> Subject: svn commit: r1023553 - in /perl/modperl/trunk: Changes
> Makefile.PL lib/Apache2/Build.pm lib/ModPerl/BuildOptions.pm
> To: modperl-cvs@perl.apache.org
>
>
> Author: phred
> Date: Sun Oct 17 18:45:16 2010
> New Revision: 1023553
>
> URL: http://svn.apache.org/viewvc?rev=1023553&view=rev
> Log:
> Look for a usable apxs in $ENV{PATH} if all other options fail, then
> prompt the user for one.
>
> Work around bootstrap warnings when Apache2::BuildConfig has not been
> created yet.
>
> Remove Apache::test compatibility (part of mod_perl 1.2.7), that code
> causes build issues and is 4 versions out of date.
>
> Modified:
>     perl/modperl/trunk/Changes
>     perl/modperl/trunk/Makefile.PL
>     perl/modperl/trunk/lib/Apache2/Build.pm
>     perl/modperl/trunk/lib/ModPerl/BuildOptions.pm
>
> Modified: perl/modperl/trunk/Changes
> URL: http://svn.apache.org/viewvc/perl/modperl/trunk/Changes?rev=1023553&r1=1023552&r2=1023553&view=diff
> ==============================================================================
> --- perl/modperl/trunk/Changes (original)
> +++ perl/modperl/trunk/Changes Sun Oct 17 18:45:16 2010
> @@ -12,6 +12,15 @@ Also refer to the Apache::Test changes l
>
>   =item 2.0.5-dev
>
> +Look for a usable apxs in $ENV{PATH} if all other options fail, then
> prompt the user for one.
> +[Phred]
> +
> +Work around bootstrap warnings when Apache2::BuildConfig has not been
> created yet.
> +[Phred]
> +
> +Remove Apache::test compatibility (part of mod_perl 1.2.7), that code
> causes build issues and is 4 versions out of date.
> +[Phred]
> +
>   Make sure perl is built either with multiplicity and ithreads or without
>   both [Theory, Torsten]
>
>
> Modified: perl/modperl/trunk/Makefile.PL
> URL: http://svn.apache.org/viewvc/perl/modperl/trunk/Makefile.PL?rev=1023553&r1=1023552&r2=1023553&view=diff
> ==============================================================================
> --- perl/modperl/trunk/Makefile.PL (original)
> +++ perl/modperl/trunk/Makefile.PL Sun Oct 17 18:45:16 2010
> @@ -21,6 +21,7 @@ BEGIN {
>              $old_Apache2_pm = delete $INC{'Apache2.pm'};
>          }
>      };
> +
>   }
>
>   use lib qw(lib Apache-Test/lib);
> @@ -629,13 +630,6 @@ use Config;
>   use constant WIN32 =>  $^O eq 'MSWin32';
>   use constant BUILD_APREXT =>  Apache2::Build::BUILD_APREXT;
>
> -my $apache_test_install;
> -BEGIN {
> -    $apache_test_install = -e 'Apache-Test';
> -    use lib './Apache-Test';
> -    require 'install-pl' if $apache_test_install;
> -}
> -
>   sub MY::top_targets {
>      my $self = shift;
>      my $string = $self->ModPerl::BuildMM::MY::top_targets;
> @@ -729,9 +723,6 @@ modperl_banner:
>
>   EOF
>
> -    $string .= Apache::Test::install::nuke_Apache__test_target()
> -        if $apache_test_install;
> -
>      $string;
>   }
>
> @@ -747,9 +738,6 @@ sub MY::install {
>         # ModPerl::MM::add_dep(\$string, "pure${kind}_install" =>
> 'aprext_install')
>         #    if BUILD_APREXT;
>
> -       ModPerl::MM::add_dep(\$string, "pure${kind}_install" =>
> 'nuke_Apache__test')
> -           if $apache_test_install;
> -
>         ModPerl::MM::add_dep_after(\$string, "install$kind",
> "doc${kind}_install", 'modperl_banner');
>
>         # glue_pods target must come first
>
> Modified: perl/modperl/trunk/lib/Apache2/Build.pm
> URL: http://svn.apache.org/viewvc/perl/modperl/trunk/lib/Apache2/Build.pm?rev=1023553&r1=1023552&r2=1023553&view=diff
> ==============================================================================
> --- perl/modperl/trunk/lib/Apache2/Build.pm (original)
> +++ perl/modperl/trunk/lib/Apache2/Build.pm Sun Oct 17 18:45:16 2010
> @@ -897,6 +897,10 @@ sub default_file {
>
>   sub file_path {
>      my $self = shift;
> +
> +    # work around when Apache2::BuildConfig has not been created yet
> +    return unless $self&&  $self->{cwd};
> +
>      my @files = map { m:^/: ? $_ : join('/', $self->{cwd}, $_) } @_;
>      return wantarray ? @files : $files[0];
>   }
>
> Modified: perl/modperl/trunk/lib/ModPerl/BuildOptions.pm
> URL: http://svn.apache.org/viewvc/perl/modperl/trunk/lib/ModPerl/BuildOptions.pm?rev=1023553&r1=1023552&r2=1023553&view=diff
> ==============================================================================
> --- perl/modperl/trunk/lib/ModPerl/BuildOptions.pm (original)
> +++ perl/modperl/trunk/lib/ModPerl/BuildOptions.pm Sun Oct 17 18:45:16 2010
> @@ -66,6 +66,24 @@ sub init {
>      $build->{MP_COMPAT_1X} = 1
>          unless exists $build->{MP_COMPAT_1X}&&  !$build->{MP_COMPAT_1X};
>
> +    # make a last ditch effort to find apxs in $ENV{PATH}
> +    if (!$build->{MP_AP_PREFIX}&&  !$build->{MP_APXS}) {
> +
> +        my @paths = split(/:/, $ENV{PATH});
> +        my $potential_apxs;
> +        while (!$potential_apxs) {
> +
> +            last if scalar(@paths) == 0; # don't loop endlessly
> +            $potential_apxs = File::Spec->catfile(shift @paths, 'apxs');
> +            if (-e $potential_apxs&&  -x $potential_apxs) {
> +
> +                $build->{MP_APXS} = $potential_apxs;
> +                print "MP_APXS unspecified, using $potential_apxs\n\n";
> +            } else {
> +                undef $potential_apxs;
> +            }
> +        }
> +    }
>   }
>
>   sub parse {
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
> For additional commands, e-mail: dev-help@perl.apache.org
>
>    


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org