Subject: | MakeMaker + static misbehaviour |
Date: | Wed, 29 Aug 2007 23:13:41 -0700 |
To: | via RT <bug-ExtUtils-MakeMaker [...] rt.cpan.org> |
From: | Michael G Schwern <schwern [...] pobox.com> |
Show quoted text
-------- Original Message --------
Subject: [PATCH at 31761] RE: MakeMaker + static misbehaviour
Date: Thu, 30 Aug 2007 08:11:04 +0200
From: Konovalov, Vadim Vladimirovich (Vadim)** CTR **
<vkonovalov@alcatel-lucent.com>
To: <perl5-porters@perl.org>, <makemaker@perl.org>
> Say, an extension in './ext' subdir contains subdirs, and
> .....miniperl -I...... Makefile.PL LINKTYPE=static
> is called.
>
> All is fine to the moment, and even @ARGV is seen by the
> called Makefile.PL, because generated Makefile in
> subdirectory contains lines:
>
> ....
> # MakeMaker ARGV: (q[INSTALLDIRS=perl], q[PERL_CORE=1],
> q[LINKTYPE=static])
> #
>
> ....
>
> Argument LINKTYPE=static is what I am trying to achieve.
>
> I am not successful, however, because some lines below in the
> same Makefile I see:
>
> LINKTYPE = dynamic
yes, the LINKTYPE attribute is not propagated from PARENT to children, thus
bringing the confusion.
Attached patch fixes that.
I would like for it to be accepted: I've checked that do not break build.
> Thanks in advance for any clarification.
you're welcome! :)
> Vadim.
>
diff -ru bperl-31761-orig/lib/ExtUtils/MakeMaker.pm bperl-31761/lib/ExtUtils/MakeMaker.pm
--- bperl-31761-orig/lib/ExtUtils/MakeMaker.pm 2007-07-03 17:55:35.000000000 +0400
+++ bperl-31761/lib/ExtUtils/MakeMaker.pm 2007-08-30 09:56:16.575240000 +0400
@@ -480,7 +480,7 @@
}
if ($self->{PARENT}) {
$self->{PARENT}->{CHILDREN}->{$newclass} = $self;
- foreach my $opt (qw(POLLUTE PERL_CORE)) {
+ foreach my $opt (qw(POLLUTE PERL_CORE LINKTYPE)) {
if (exists $self->{PARENT}->{$opt}
and not exists $self->{$opt})
{