Sun Mar 19 13:17:42 2017: Request 120657 was acted upon.
Transaction: Ticket created by stefan.bru...@rwth-aachen.de
       Queue: Wx
     Subject: Wx_Exp.pm incomplete due to race/missing dependency in Makefile
   Broken in: (no value)
    Severity: (no value)
       Owner: Nobody
  Requestors: stefan.bru...@rwth-aachen.de
      Status: new
 Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=120657 >


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.

Reply via email to