You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl@perl.apache.org by Gregory Coleman <gr...@cbsinteractive.com> on 2011/06/28 01:54:53 UTC

mod_perl-1.31 compilation with perl 5.14.1 fails

hello - am getting compilation errors in building older mod_perl with newer
perl.  Things worked as of 5.12.X, but alas, not with today's 5.14.1

eg. http://cpansearch.perl.org/src/GOZER/mod_perl-1.31/Symbol/Symbol.xs

Symbol.xs: In function 'undef':
Symbol.xs:33: error: invalid lvalue in assignment



This appears to be due to changes in the perl distro as outlined at
http://perldoc.perl.org/perl5140delta.html#C-API-Changes

GvCV() and GvGP() are no longer lvalues

The new GvCV_set() and GvGP_set() macros are now provided to replace
assignment to those two macros.

This allows a future commit to eliminate some backref magic between GV and
CVs, which will require complete control over assignment to the gp_cv slot.
CvGV() is no longer an lvalue

Under some circumstances, the CvGV() field of a CV is now reference-counted.
To ensure consistent behaviour, direct assignment to it, for example CvGV(cv
) = gv is now a compile-time error. A new macro, CvGV_set(cv,gv)has been
introduced to run this operation safely. Note that modification of this
field is not part of the public API, regardless of this new macro (and
despite its being listed in this section).
CvSTASH() is no longer an lvalue

The CvSTASH() macro can now only be used as an rvalue. CvSTASH_set() has
been added to replace assignment to CvSTASH(). This is to ensure that
backreferences are handled properly. These macros are not part of the API.


Any witnesses/experiences/thoughts on this?

thanks in advance!
gleeco

Re: mod_perl-1.31 compilation with perl 5.14.1 fails

Posted by Fred Moyer <fr...@redhotpenguin.com>.
On Tue, Jun 28, 2011 at 2:57 AM, Vincent Veyron <vv...@wanadoo.fr> wrote:
> Le lundi 27 juin 2011 à 16:54 -0700, Gregory Coleman a écrit :
>> hello - am getting compilation errors in building older mod_perl with
>> newer perl.  Things worked as of 5.12.X, but alas, not with today's
>> 5.14.1
>>
>
>> Any witnesses/experiences/thoughts on this?
>>
>
> Some in this thread :
>
> http://www.gossamer-threads.com/lists/modperl/modperl/103167

The problem here didn't appear to be 5.14 compatibility, more an issue
of an inexperienced user trying to setup the latest version of
httpd/perl/mod_perl.  No specific 5.14 incompatibilities were
identified.

It is always a good idea to use the tested and packaged versions of
mod_perl/httpd that come with your operating system if you are looking
to deploy a production application and don't have much experience with
compiling from source.

Re: mod_perl-1.31 compilation with perl 5.14.1 fails

Posted by Salvador Ortiz Garcia <so...@msg.com.mx>.
On 06/28/2011 05:40 AM, Torsten Förtsch wrote:
> On Tuesday, June 28, 2011 11:57:47 Vincent Veyron wrote:
>> Le lundi 27 juin 2011 à 16:54 -0700, Gregory Coleman a écrit :
>>> hello - am getting compilation errors in building older mod_perl
>>> with newer perl.  Things worked as of 5.12.X, but alas, not with
>>> today's 5.14.1
>>>
>>>
>>>
>>> Any witnesses/experiences/thoughts on this?
>>>
>>>
>> Some in this thread :
>>
>> http://www.gossamer-threads.com/lists/modperl/modperl/103167
> No. The point is mp1 has reached end of life as of Feb 2010:
>
>    http://www.gossamer-threads.com/lists/modperl/modperl/101027
Is apache httpd 1.3 that reached EOL, not mp1. As far as I known the 
lasts comments on the topic was on February this year:

http://www.gossamer-threads.com/lists/modperl/dev/102712
> There were a few incompatible code changes in perl 5.14, particularly
> with SvGP and SvCV used in lvalue context, see also
>
>    https://rt.cpan.org/Ticket/Display.html?id=64999
>
> I doubt that any one of the current dev team will incorporate these
> changes into mp1. Though, if someone provides patches I think there are
> good chances for them to get applied especially if that someone wants to
> take care of mp1 in the future and thus become a committer.

 From the annotated thread I understand that Phillip M. Gollucci was 
planning a final mp v1.32 but without given ETA.

I use both apache 1.3.x and mp1 for our in-house projects so I'm 
collecting patches to keep both sane with recent distros.

Attached the diff on the subject from *our* repo, so some line offsets 
may be misaligned.

Regards.

Salvador Ortiz.








Re: mod_perl-1.31 compilation with perl 5.14.1 fails

Posted by Fred Moyer <fr...@redhotpenguin.com>.
2011/6/28 Torsten Förtsch <to...@gmx.net>:
> On Tuesday, June 28, 2011 11:57:47 Vincent Veyron wrote:
>> Le lundi 27 juin 2011 à 16:54 -0700, Gregory Coleman a écrit :
>> > hello - am getting compilation errors in building older mod_perl
>> > with newer perl.  Things worked as of 5.12.X, but alas, not with
>> > today's 5.14.1
>> >
>> >
>> >
>> > Any witnesses/experiences/thoughts on this?
>> >
>> >
>>
>> Some in this thread :
>>
>> http://www.gossamer-threads.com/lists/modperl/modperl/103167
>
> No. The point is mp1 has reached end of life as of Feb 2010:
>
>  http://www.gossamer-threads.com/lists/modperl/modperl/101027
>
> There were a few incompatible code changes in perl 5.14, particularly
> with SvGP and SvCV used in lvalue context, see also
>
>  https://rt.cpan.org/Ticket/Display.html?id=64999
>
> I doubt that any one of the current dev team will incorporate these
> changes into mp1. Though, if someone provides patches I think there are
> good chances for them to get applied especially if that someone wants to
> take care of mp1 in the future and thus become a committer.

I took a look through Symbol.xs and it didn't look like there were too
many places those macros had to be updated.  And I actually understood
some of the implementations so my XS appears to be getting better.
But like you said, getting the tuits to make this happen and support
it will be tough with the current mp2 needs.

Re: mod_perl-1.31 compilation with perl 5.14.1 fails

Posted by Torsten Förtsch <to...@gmx.net>.
On Tuesday, June 28, 2011 11:57:47 Vincent Veyron wrote:
> Le lundi 27 juin 2011 à 16:54 -0700, Gregory Coleman a écrit :
> > hello - am getting compilation errors in building older mod_perl
> > with newer perl.  Things worked as of 5.12.X, but alas, not with
> > today's 5.14.1
> >
> > 
> >
> > Any witnesses/experiences/thoughts on this? 
> >
> > 
> 
> Some in this thread :
> 
> http://www.gossamer-threads.com/lists/modperl/modperl/103167

No. The point is mp1 has reached end of life as of Feb 2010:

  http://www.gossamer-threads.com/lists/modperl/modperl/101027

There were a few incompatible code changes in perl 5.14, particularly 
with SvGP and SvCV used in lvalue context, see also

  https://rt.cpan.org/Ticket/Display.html?id=64999

I doubt that any one of the current dev team will incorporate these 
changes into mp1. Though, if someone provides patches I think there are 
good chances for them to get applied especially if that someone wants to 
take care of mp1 in the future and thus become a committer.

Torsten Förtsch

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

Like fantasy? http://kabatinte.net

Re: mod_perl-1.31 compilation with perl 5.14.1 fails

Posted by Vincent Veyron <vv...@wanadoo.fr>.
Le lundi 27 juin 2011 à 16:54 -0700, Gregory Coleman a écrit :
> hello - am getting compilation errors in building older mod_perl with
> newer perl.  Things worked as of 5.12.X, but alas, not with today's
> 5.14.1 
> 

> Any witnesses/experiences/thoughts on this? 
> 

Some in this thread :

http://www.gossamer-threads.com/lists/modperl/modperl/103167


-- 
Vincent Veyron
http://marica.fr/
Logiciel de gestion des sinistres et des contentieux pour le service juridique


Re: mod_perl-1.31 compilation with perl 5.14.1 fails

Posted by Fred Moyer <fr...@redhotpenguin.com>.
On Tue, Jul 12, 2011 at 12:36 PM, Perrin Harkins <pe...@elem.com> wrote:
> On Mon, Jul 11, 2011 at 11:39 PM, Fred Moyer <fr...@redhotpenguin.com> wrote:
>> Looks like a patch for this issue was posted.  Greg, do you want to
>> try out this patch and report back?
>>
>> https://rt.cpan.org/Public/Bug/Display.html?id=64999#txn-954785
>
> This patch fixed it for me on CentOS.

Thanks for testing it, patch applied r1151597.  And a huge thanks to
Todd Wade for submitting the patch!

Re: mod_perl-1.31 compilation with perl 5.14.1 fails

Posted by Perrin Harkins <pe...@elem.com>.
On Mon, Jul 11, 2011 at 11:39 PM, Fred Moyer <fr...@redhotpenguin.com> wrote:
> Looks like a patch for this issue was posted.  Greg, do you want to
> try out this patch and report back?
>
> https://rt.cpan.org/Public/Bug/Display.html?id=64999#txn-954785

This patch fixed it for me on CentOS.

- Perrin

Re: mod_perl-1.31 compilation with perl 5.14.1 fails

Posted by Fred Moyer <fr...@redhotpenguin.com>.
Looks like a patch for this issue was posted.  Greg, do you want to
try out this patch and report back?

https://rt.cpan.org/Public/Bug/Display.html?id=64999#txn-954785

On Mon, Jul 4, 2011 at 10:20 AM, Fred Moyer <fr...@redhotpenguin.com> wrote:
> On Mon, Jun 27, 2011 at 4:54 PM, Gregory Coleman
> <gr...@cbsinteractive.com> wrote:
>> hello - am getting compilation errors in building older mod_perl with newer
>> perl.  Things worked as of 5.12.X, but alas, not with today's 5.14.1
> ...
>> Any witnesses/experiences/thoughts on this?
>
> For what it is worth, I successfully compiled mod_perl 1.31 with
> apache 1.3.42 and perl 5.14.1 on my snow leopard based platform.  I
> used the EVERYTHING=1 option with 'perl Makefile.PL'.
>

Re: mod_perl-1.31 compilation with perl 5.14.1 fails

Posted by Fred Moyer <fr...@redhotpenguin.com>.
On Mon, Jun 27, 2011 at 4:54 PM, Gregory Coleman
<gr...@cbsinteractive.com> wrote:
> hello - am getting compilation errors in building older mod_perl with newer
> perl.  Things worked as of 5.12.X, but alas, not with today's 5.14.1
...
> Any witnesses/experiences/thoughts on this?

For what it is worth, I successfully compiled mod_perl 1.31 with
apache 1.3.42 and perl 5.14.1 on my snow leopard based platform.  I
used the EVERYTHING=1 option with 'perl Makefile.PL'.