1 # Do not remove the following line; MakeMaker relies on it to identify
2 # this file as a template for defsubs.h
3 # Extracting defsubs.h (with variable substitutions)
5 my ($out) = __FILE__ =~ /(^.*)\.PL/i;
7 open(OUT,">$out") || die "Cannot open $file:$!";
8 print "Extracting $out...\n";
12 SVf_READONLY SVTYPEMASK
13 GVf_IMPORTED_AV GVf_IMPORTED_HV
14 GVf_IMPORTED_SV GVf_IMPORTED_CV
15 CVf_METHOD CVf_LOCKED CVf_LVALUE CVf_CONST
16 SVpad_OUR SVf_IOK SVf_IVisUV SVf_NOK SVf_POK
17 SVf_ROK SVp_IOK SVp_POK SVp_NOK
22 foreach my $file (qw(op.h cop.h))
24 my $path = $^O eq 'MacOS' ? ":::$file" : "../../$file";
25 open(OPH,"$path") || die "Cannot open $path:$!";
28 doconst($1) if (/#define\s+(\w+)\s+([\(\)\|\dx]+)\s*(?:$|\/\*)/);
39 newCONSTSUB(stash,"$sym",newSViv($sym));
40 av_push(export_ok,newSVpvn("$sym",$l));