http://www.perlmonks.org?node_id=282283


in reply to Re: Re: Re: Forks.pm dilemma
in thread Forks.pm dilemma

Here is a patch which adds preliminary pre-processor support to xsubpp. There's a few caveats. #line will now be incorrect, since the #includes now occur BEFORE xsubpp gets to them (I wonder if there's a way to disable those directives). As soon as I get better testing done, I'll send this in to whoever is supposed to see it. To invoke, use xsubpp -preprocess blah
*** xsubpp.old Fri Aug 8 13:18:20 2003 --- xsubpp Fri Aug 8 13:13:23 2003 *************** *** 164,169 **** --- 164,170 ---- $process_inout = 1, next SWITCH if $flag eq 'inout'; $process_argtypes = 0, next SWITCH if $flag eq 'noargtype +s'; $process_argtypes = 1, next SWITCH if $flag eq 'argtypes' +; + $preprocess = 1, next SWITCH if $flag eq 'preprocess'; (print "xsubpp version $XSUBPP_version\n"), exit if $flag eq 'v'; die $usage; *************** *** 883,889 **** $text; } ! open($FH, $filename) or die "cannot open $filename: $!\n"; # Identify the version of xsubpp used print <<EOM ; --- 884,895 ---- $text; } ! if ( $preprocess ) { ! open($FH, "$Config{cpp} $filename |") ! or die "cannot open $Config{cpp} $filename: $!\n"; ! } else { ! open($FH, $filename) or die "cannot open $filename: $!\n"; ! }