Mon Apr 17 07:40:29 2017: Request 120657 was acted upon.
Transaction: Correspondence added by MDOOTSON
Queue: Wx
Subject: Wx_Exp.pm incomplete due to race/missing dependency in Makefile
Broken in: (no value)
Severity: (no value)
Owner: Nobody
Requestors: [email protected]
Status: new
Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=120657 >
Hi,
I added this recently but on reflection I'm not sure it is correct or necessary.
Could you provide a description of your build environment?
Of course, nothing under an xspp folder anywhere is static, all files are
created by xsubpp.
I'm trying to work out how Wx_Exp.pm generation could happen before compilation
of 'ext' folder contents.
On Sun Mar 19 13:17:42 2017, [email protected] wrote:
> The generation rule for Wx_Exp.pm in
> build/Wx/build/MakeMaker/Any_OS.pm has:
>
> $exp : wxt_copy_files wxt_binary_\$(LINKTYPE)
> \t\$(PERL) script/make_exp_list.pl $exp @{[$this-
> >files_with_constants]} xspp/
> *.h ext/*/xspp/*.h
>
> but the dependency only states:
>
> my %depend = ( _depend_common( $this ),
> $exp => join( ' ', $this->files_with_constants, ),
>
> i.e. it is missing the dependency on xspp/*.h and ext/*/xspp/*.h. The
> former
> is not a problem, as it refers to static files, but everything below
> ext/*/
> xspp/ is generate by xsubpp.
>
> The effect is a Wx_Exp.pm where symbols from single modules (e.g. IPC
> or AUI)
> are omitted, as make_exp_list.pl runs to early.
>
> Changing the dependency to:
> $exp => join( ' ', $this->files_with_constants, 'subdirs', ),
>
> solves the issue for me.