This queue is for tickets about the mod_perl CPAN distribution.

Report information
The Basics
Id:
84732
Status:
open
Priority:
Low/Low
Queue:

People
Owner:
Nobody in particular
Requestors:
jeppe [...] ioslo.net
Cc:
AdminCc:

BugTracker
Severity:
(no value)
Broken in:
  • 2.0.7
  • 2.0.8
Fixed in:
(no value)



Subject: MP_APXS environment variable is not checked for
Hi, I'm having trouble performing a non-parameterized build of mod_perl2 with a custom perl and a custom apache. [root@centos6-builder ~]# cd /tmp/ [root@centos6-builder tmp]# tar zxf mod_perl-2.0.8.tar.gz [root@centos6-builder tmp]# cd mod_perl-2.0.8 [root@centos6-builder mod_perl-2.0.8]# export MP_APXS=/opt/apache/bin/apxs [root@centos6-builder mod_perl-2.0.8]# stat $MP_APXS File: «/opt/apache/bin/apxs» Size: 22646 Blocks: 48 IO Block: 4096 regular file Device: fd00h/64768d Inode: 142400 Links: 1 Access: (0755/-rwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2013-04-18 16:43:03.042998090 +0200 Modify: 2013-03-22 13:29:12.000000000 +0100 Change: 2013-04-18 16:31:34.687999018 +0200 [root@centos6-builder mod_perl-2.0.8]# /opt/perl/bin/perl Makefile.PL no conflicting prior mod_perl version found - good. Next we need to know where the 'apxs' script is located. This script provides a lot of information about the Apache installation, and makes it easier to find things on your system. Normally it's located in the same directory as the 'httpd' executable. If you don't yet have Apache installed you can build Apache against the Apache source code, but you won't be able to run the test suite (a very important step). Therefore you may want to install Apache before proceeding. Please provide a full path to 'apxs' executable (press Enter if you don't have it installed): It looks from glancing through Makefile.PL and Apache2::Build that this should work. I'll continue to look into the issue and will provide a patch if I can. Best regards, Jens-Petter Salvesen
Subject: Re: [rt.cpan.org #84732] MP_APXS environment variable is not checked for
Date: Fri, 19 Apr 2013 00:18:24 -0700
To: bug-mod_perl@rt.cpan.org
From: Fred Moyer <fred@redhotpenguin.com>
Can you try:

MP_APXS=/opt/apache/bin/apxs /opt/perl/bin/perl Makefile.PL


On Fri, Apr 19, 2013 at 12:15 AM, jeppe@ioslo.net via RT <bug-mod_perl@rt.cpan.org> wrote:
Show quoted text
Fri Apr 19 03:15:07 2013: Request 84732 was acted upon.
Transaction: Ticket created by jeppe@ioslo.net
       Queue: mod_perl
     Subject: MP_APXS environment variable is not checked for
   Broken in: 2.0.7, 2.0.8
    Severity: (no value)
       Owner: Nobody
  Requestors: jeppe@ioslo.net
      Status: new
 Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=84732 >


Hi,

I'm having trouble performing a non-parameterized build of mod_perl2 with a custom perl and a custom apache.

[root@centos6-builder ~]# cd /tmp/
[root@centos6-builder tmp]# tar zxf mod_perl-2.0.8.tar.gz
[root@centos6-builder tmp]# cd mod_perl-2.0.8
[root@centos6-builder mod_perl-2.0.8]# export MP_APXS=/opt/apache/bin/apxs
[root@centos6-builder mod_perl-2.0.8]# stat $MP_APXS
  File: «/opt/apache/bin/apxs»
  Size: 22646           Blocks: 48         IO Block: 4096   regular file
Device: fd00h/64768d    Inode: 142400      Links: 1
Access: (0755/-rwxr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2013-04-18 16:43:03.042998090 +0200
Modify: 2013-03-22 13:29:12.000000000 +0100
Change: 2013-04-18 16:31:34.687999018 +0200
[root@centos6-builder mod_perl-2.0.8]# /opt/perl/bin/perl Makefile.PL
no conflicting prior mod_perl version found - good.

Next we need to know where the 'apxs' script is located. This script
provides a lot of information about the Apache installation, and makes
it easier to find things on your system. Normally it's located in the
same directory as the 'httpd' executable.

If you don't yet have Apache installed you can build Apache against
the Apache source code, but you won't be able to run the test suite (a
very important step). Therefore you may want to install Apache before
proceeding.


Please provide a full path to 'apxs' executable
(press Enter if you don't have it installed):


It looks from glancing through Makefile.PL and Apache2::Build that this should work.

I'll continue to look into the issue and will provide a patch if I can.

Best regards,
Jens-Petter Salvesen

From: jeppe@ioslo.net
Of course! I'm afraid that didn't work either. [root@centos6-builder mod_perl-2.0.8]# MP_APXS=/opt/apache/bin/apxs /opt/perl/bin/perl Makefile.PL no conflicting prior mod_perl version found - good. Next we need to know where the 'apxs' script is located. This script provides a lot of information about the Apache installation, and makes it easier to find things on your system. Normally it's located in the same directory as the 'httpd' executable. If you don't yet have Apache installed you can build Apache against the Apache source code, but you won't be able to run the test suite (a very important step). Therefore you may want to install Apache before proceeding. Please provide a full path to 'apxs' executable (press Enter if you don't have it installed): fr. 19. april 2013 03.18.39 skrev fred@redhotpenguin.com:
Show quoted text
> Can you try: > > MP_APXS=/opt/apache/bin/apxs /opt/perl/bin/perl Makefile.PL > > > On Fri, Apr 19, 2013 at 12:15 AM, jeppe@ioslo.net via RT < > bug-mod_perl@rt.cpan.org> wrote: >
> > Fri Apr 19 03:15:07 2013: Request 84732 was acted upon. > > Transaction: Ticket created by jeppe@ioslo.net > > Queue: mod_perl > > Subject: MP_APXS environment variable is not checked for > > Broken in: 2.0.7, 2.0.8 > > Severity: (no value) > > Owner: Nobody > > Requestors: jeppe@ioslo.net > > Status: new > > Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=84732 > > > > > > > Hi, > > > > I'm having trouble performing a non-parameterized build of mod_perl2 with > > a custom perl and a custom apache. > > > > [root@centos6-builder ~]# cd /tmp/ > > [root@centos6-builder tmp]# tar zxf mod_perl-2.0.8.tar.gz > > [root@centos6-builder tmp]# cd mod_perl-2.0.8 > > [root@centos6-builder mod_perl-2.0.8]# export MP_APXS=/opt/apache/bin/apxs > > [root@centos6-builder mod_perl-2.0.8]# stat $MP_APXS > > File: «/opt/apache/bin/apxs» > > Size: 22646 Blocks: 48 IO Block: 4096 regular file > > Device: fd00h/64768d Inode: 142400 Links: 1 > > Access: (0755/-rwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root) > > Access: 2013-04-18 16:43:03.042998090 +0200 > > Modify: 2013-03-22 13:29:12.000000000 +0100 > > Change: 2013-04-18 16:31:34.687999018 +0200 > > [root@centos6-builder mod_perl-2.0.8]# /opt/perl/bin/perl Makefile.PL > > no conflicting prior mod_perl version found - good. > > > > Next we need to know where the 'apxs' script is located. This script > > provides a lot of information about the Apache installation, and makes > > it easier to find things on your system. Normally it's located in the > > same directory as the 'httpd' executable. > > > > If you don't yet have Apache installed you can build Apache against > > the Apache source code, but you won't be able to run the test suite (a > > very important step). Therefore you may want to install Apache before > > proceeding. > > > > > > Please provide a full path to 'apxs' executable > > (press Enter if you don't have it installed): > > > > > > It looks from glancing through Makefile.PL and Apache2::Build that this > > should work. > > > > I'll continue to look into the issue and will provide a patch if I can. > > > > Best regards, > > Jens-Petter Salvesen > >
Subject: Re: [rt.cpan.org #84732] MP_APXS environment variable is not checked for
Date: Fri, 19 Apr 2013 00:45:36 -0700
To: bug-mod_perl@rt.cpan.org
From: Fred Moyer <fred@redhotpenguin.com>
Another option would be to put apxs in your PATH. The logic behind all that is easier than it used to be, but still not that straightforward and robust.


On Fri, Apr 19, 2013 at 12:38 AM, jeppe@ioslo.net via RT <bug-mod_perl@rt.cpan.org> wrote:
Show quoted text
       Queue: mod_perl
 Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=84732 >

Of course! I'm afraid that didn't work either.

[root@centos6-builder mod_perl-2.0.8]#  MP_APXS=/opt/apache/bin/apxs /opt/perl/bin/perl Makefile.PL
no conflicting prior mod_perl version found - good.

Next we need to know where the 'apxs' script is located. This script
provides a lot of information about the Apache installation, and makes
it easier to find things on your system. Normally it's located in the
same directory as the 'httpd' executable.

If you don't yet have Apache installed you can build Apache against
the Apache source code, but you won't be able to run the test suite (a
very important step). Therefore you may want to install Apache before
proceeding.


Please provide a full path to 'apxs' executable
(press Enter if you don't have it installed):


fr. 19. april 2013 03.18.39 skrev fred@redhotpenguin.com:
> Can you try:
>
> MP_APXS=/opt/apache/bin/apxs /opt/perl/bin/perl Makefile.PL
>
>
> On Fri, Apr 19, 2013 at 12:15 AM, jeppe@ioslo.net via RT <
> bug-mod_perl@rt.cpan.org> wrote:
>
> > Fri Apr 19 03:15:07 2013: Request 84732 was acted upon.
> > Transaction: Ticket created by jeppe@ioslo.net
> >        Queue: mod_perl
> >      Subject: MP_APXS environment variable is not checked for
> >    Broken in: 2.0.7, 2.0.8
> >     Severity: (no value)
> >        Owner: Nobody
> >   Requestors: jeppe@ioslo.net
> >       Status: new
> >  Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=84732 >
> >
> >
> > Hi,
> >
> > I'm having trouble performing a non-parameterized build of mod_perl2 with
> > a custom perl and a custom apache.
> >
> > [root@centos6-builder ~]# cd /tmp/
> > [root@centos6-builder tmp]# tar zxf mod_perl-2.0.8.tar.gz
> > [root@centos6-builder tmp]# cd mod_perl-2.0.8
> > [root@centos6-builder mod_perl-2.0.8]# export MP_APXS=/opt/apache/bin/apxs
> > [root@centos6-builder mod_perl-2.0.8]# stat $MP_APXS
> >   File: «/opt/apache/bin/apxs»
> >   Size: 22646           Blocks: 48         IO Block: 4096   regular file
> > Device: fd00h/64768d    Inode: 142400      Links: 1
> > Access: (0755/-rwxr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)
> > Access: 2013-04-18 16:43:03.042998090 +0200
> > Modify: 2013-03-22 13:29:12.000000000 +0100
> > Change: 2013-04-18 16:31:34.687999018 +0200
> > [root@centos6-builder mod_perl-2.0.8]# /opt/perl/bin/perl Makefile.PL
> > no conflicting prior mod_perl version found - good.
> >
> > Next we need to know where the 'apxs' script is located. This script
> > provides a lot of information about the Apache installation, and makes
> > it easier to find things on your system. Normally it's located in the
> > same directory as the 'httpd' executable.
> >
> > If you don't yet have Apache installed you can build Apache against
> > the Apache source code, but you won't be able to run the test suite (a
> > very important step). Therefore you may want to install Apache before
> > proceeding.
> >
> >
> > Please provide a full path to 'apxs' executable
> > (press Enter if you don't have it installed):
> >
> >
> > It looks from glancing through Makefile.PL and Apache2::Build that this
> > should work.
> >
> > I'll continue to look into the issue and will provide a patch if I can.
> >
> > Best regards,
> > Jens-Petter Salvesen
> >




From: jeppe@ioslo.net
That works. Thanks! However, there is code in Apache2::Build that should handle finding the apxs utility (below), and it appears that code is not called before the prompt is presented. # try to find the apxs utility, set $apxs to the path if found, # otherwise to '' my $apxs; # undef so we know we haven't tried to set it yet sub find_apxs_util { my $self = shift; $apxs = ''; # not found my @trys = ($Apache2::Build::APXS, $self->{MP_APXS}, $ENV{MP_APXS}); push @trys, catfile $self->{MP_AP_PREFIX}, 'bin', 'apxs' if exists $self->{MP_AP_PREFIX}; if (WIN32) { my $ext = '.bat'; for (@trys) { $_ .= $ext if ($_ and $_ !~ /$ext$/); } } unless (IS_MOD_PERL_BUILD) { #if we are building mod_perl via apxs, apxs should already be known #these extra tries are for things built outside of mod_perl #e.g. libapreq # XXX: this may pick a wrong apxs version! push @trys, Apache::TestConfig::which('apxs'), '/usr/local/apache/bin/apxs'; } my $apxs_try; for (@trys) { next unless ($apxs_try = $_); chomp $apxs_try; if (-x $apxs_try) { $apxs = $apxs_try; last; } } } fr. 19. april 2013 03.45.49 skrev fred@redhotpenguin.com:
Show quoted text
> Another option would be to put apxs in your PATH. The logic behind all > that > is easier than it used to be, but still not that straightforward and > robust. > > > On Fri, Apr 19, 2013 at 12:38 AM, jeppe@ioslo.net via RT < > bug-mod_perl@rt.cpan.org> wrote: >
> > Queue: mod_perl > > Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=84732 > > > > > Of course! I'm afraid that didn't work either. > > > > [root@centos6-builder mod_perl-2.0.8]# MP_APXS=/opt/apache/bin/apxs > > /opt/perl/bin/perl Makefile.PL > > no conflicting prior mod_perl version found - good. > > > > Next we need to know where the 'apxs' script is located. This script > > provides a lot of information about the Apache installation, and
> makes
> > it easier to find things on your system. Normally it's located in
> the
> > same directory as the 'httpd' executable. > > > > If you don't yet have Apache installed you can build Apache against > > the Apache source code, but you won't be able to run the test suite
> (a
> > very important step). Therefore you may want to install Apache
> before
> > proceeding. > > > > > > Please provide a full path to 'apxs' executable > > (press Enter if you don't have it installed): > > > > > > fr. 19. april 2013 03.18.39 skrev fred@redhotpenguin.com:
> > > Can you try: > > > > > > MP_APXS=/opt/apache/bin/apxs /opt/perl/bin/perl Makefile.PL > > > > > > > > > On Fri, Apr 19, 2013 at 12:15 AM, jeppe@ioslo.net via RT < > > > bug-mod_perl@rt.cpan.org> wrote: > > >
> > > > Fri Apr 19 03:15:07 2013: Request 84732 was acted upon. > > > > Transaction: Ticket created by jeppe@ioslo.net > > > > Queue: mod_perl > > > > Subject: MP_APXS environment variable is not checked for > > > > Broken in: 2.0.7, 2.0.8 > > > > Severity: (no value) > > > > Owner: Nobody > > > > Requestors: jeppe@ioslo.net > > > > Status: new > > > > Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=84732 > > > > > > > > > > > > > Hi, > > > > > > > > I'm having trouble performing a non-parameterized build of
> mod_perl2
> > with
> > > > a custom perl and a custom apache. > > > > > > > > [root@centos6-builder ~]# cd /tmp/ > > > > [root@centos6-builder tmp]# tar zxf mod_perl-2.0.8.tar.gz > > > > [root@centos6-builder tmp]# cd mod_perl-2.0.8 > > > > [root@centos6-builder mod_perl-2.0.8]# export
> > MP_APXS=/opt/apache/bin/apxs
> > > > [root@centos6-builder mod_perl-2.0.8]# stat $MP_APXS > > > > File: «/opt/apache/bin/apxs» > > > > Size: 22646 Blocks: 48 IO Block: 4096
> regular
> > file
> > > > Device: fd00h/64768d Inode: 142400 Links: 1 > > > > Access: (0755/-rwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/
> > root)
> > > > Access: 2013-04-18 16:43:03.042998090 +0200 > > > > Modify: 2013-03-22 13:29:12.000000000 +0100 > > > > Change: 2013-04-18 16:31:34.687999018 +0200 > > > > [root@centos6-builder mod_perl-2.0.8]# /opt/perl/bin/perl
> Makefile.PL
> > > > no conflicting prior mod_perl version found - good. > > > > > > > > Next we need to know where the 'apxs' script is located. This
> script
> > > > provides a lot of information about the Apache installation, and
> makes
> > > > it easier to find things on your system. Normally it's located
> in the
> > > > same directory as the 'httpd' executable. > > > > > > > > If you don't yet have Apache installed you can build Apache
> against
> > > > the Apache source code, but you won't be able to run the test
> suite (a
> > > > very important step). Therefore you may want to install Apache
> before
> > > > proceeding. > > > > > > > > > > > > Please provide a full path to 'apxs' executable > > > > (press Enter if you don't have it installed): > > > > > > > > > > > > It looks from glancing through Makefile.PL and Apache2::Build
> that this
> > > > should work. > > > > > > > > I'll continue to look into the issue and will provide a patch if
> I can.
> > > > > > > > Best regards, > > > > Jens-Petter Salvesen > > > >
> > > > > > > >
Hi!

Just throwing in my $0.01, since Jeppe is a colleague of mine :)


On Fri Apr 19 09:18:39 2013, fred@redhotpenguin.com wrote:
Show quoted text
> Can you try:
>
> MP_APXS=/opt/apache/bin/apxs /opt/perl/bin/perl Makefile.PL
>
>
> On Fri, Apr 19, 2013 at 12:15 AM, jeppe@ioslo.net via RT <
> bug-mod_perl@rt.cpan.org> wrote:
>
> > [root@centos6-builder mod_perl-2.0.8]# export MP_APXS=/opt/apache/bin/apxs
> > [root@centos6-builder mod_perl-2.0.8]# /opt/perl/bin/perl Makefile.PL

For Makefile.PL's viewpoint, there shouldn't be any meaningful difference between those two ways of setting an environment variable.

I'd love to hear what kind of difference are you expecting, though. :)


- Salve
This is hopefully now fixed in SVN trunk by r1678751. Are you able to verify this?


This service runs on Request Tracker, is sponsored by The Perl Foundation, and maintained by Best Practical Solutions.

Please report any issues with rt.cpan.org to rt-cpan-admin@bestpractical.com.