X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=vms%2Fwritemain.pl;h=a502d6131e1bb1fc9209203aa726fa029d7e0d0d;hb=72b5445bd8dae616be2d969c596f57ff003832e2;hp=eb059f810a7c1bc09dd455884a945959325588d6;hpb=9be963dd7d6cf65876fad5b241f1fa56c69a27f8;p=p5sagit%2Fp5-mst-13.2.git diff --git a/vms/writemain.pl b/vms/writemain.pl index eb059f8..a502d61 100644 --- a/vms/writemain.pl +++ b/vms/writemain.pl @@ -36,12 +36,13 @@ print OUT <<'EOH'; static void xs_init() { - dXSUB_SYS; EOH if (@ARGV) { + $names = join(' ',@ARGV); + $names =~ tr/"//d; # Plan9 doesn't remove "" on command line # Allow for multiple names in one quoted group - @exts = split(/\s+/, join(' ',@ARGV)); + @exts = split(/\s+/,$names); } if (@exts) { @@ -51,6 +52,8 @@ if (@exts) { $subname =~ s/::/__/g; print OUT "extern void boot_${subname} _((CV* cv));\n" } + # May not actually be a declaration, so put after other declarations + print OUT " dXSUB_SYS;\n"; foreach $ext (@exts) { my($subname) = $ext; $subname =~ s/::/__/g;