X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=makedef.pl;h=354b82a1cf036830531c04324c043a515cd3851a;hb=eb1c4873a4d2b3d386b680baf0b251a75d67e654;hp=73d04b2439cd22b25b71516cc157bacfb7bb7981;hpb=907b3e23950be4dd31c150e1902fbd26201355bd;p=p5sagit%2Fp5-mst-13.2.git diff --git a/makedef.pl b/makedef.pl index 73d04b2..354b82a 100644 --- a/makedef.pl +++ b/makedef.pl @@ -129,6 +129,7 @@ while () { $define{$1} = 1 if /^\s*#\s*define\s+(MULTIPLICITY)\b/; $define{$1} = 1 if /^\s*#\s*define\s+(PERL_\w+)\b/; $define{$1} = 1 if /^\s*#\s*define\s+(USE_\w+)\b/; + $define{$1} = 1 if /^\s*#\s*define\s+(HAS_\w+)\b/; } close(CFG); @@ -159,9 +160,13 @@ my $sym_ord = 0; print STDERR "Defines: (" . join(' ', sort keys %define) . ")\n"; if ($PLATFORM =~ /^win(?:32|ce)$/) { - (my $dll = ($define{PERL_DLL} || "perl59")) =~ s/\.dll$//i; + (my $dll = ($define{PERL_DLL} || "perl511")) =~ s/\.dll$//i; print "LIBRARY $dll\n"; - print "DESCRIPTION 'Perl interpreter'\n"; + # The DESCRIPTION module definition file statement is not supported + # by VC7 onwards. + if ($CCTYPE !~ /^MSVC7/ && $CCTYPE !~ /^MSVC8/ && $CCTYPE !~ /^MSVC9/) { + print "DESCRIPTION 'Perl interpreter'\n"; + } print "EXPORTS\n"; if ($define{PERL_IMPLICIT_SYS}) { output_symbol("perl_get_host_info"); @@ -211,7 +216,7 @@ elsif ($PLATFORM eq 'aix') { } elsif ($PLATFORM eq 'netware') { if ($FILETYPE eq 'def') { - print "LIBRARY perl59\n"; + print "LIBRARY perl511\n"; print "DESCRIPTION 'Perl interpreter for NetWare'\n"; print "EXPORTS\n"; } @@ -400,6 +405,13 @@ elsif ($PLATFORM eq 'aix') { PL_statusvalue_vms PL_sys_intern )]); + skip_symbols([qw( + Perl_signbit + )]) + if $define{'HAS_SIGNBIT'}; + emit_symbols([qw( + boot_DynaLoader + )]); } elsif ($PLATFORM eq 'os2') { emit_symbols([qw( @@ -589,7 +601,6 @@ unless ($define{'DEBUGGING'}) { Perl_debstack Perl_debstackptrs Perl_pad_sv - Perl_sv_peek Perl_hv_assert PL_block_type PL_watchaddr @@ -663,6 +674,7 @@ else { Perl_dump_mstats Perl_get_mstats Perl_malloced_size + Perl_malloc_good_size MallocCfg_ptr MallocCfgP_ptr )]; @@ -730,7 +742,7 @@ unless ($define{'USE_ITHREADS'}) { Perl_he_dup Perl_mg_dup Perl_mro_meta_dup - Perl_re_dup + Perl_re_dup_guts Perl_sv_dup Perl_rvpv_dup Perl_hek_dup @@ -819,6 +831,12 @@ unless ($define{'PERL_NEED_TIMESBASE'}) { )]; } +unless ($define{'DEBUG_LEAKING_SCALARS'}) { + skip_symbols [qw( + PL_sv_serial + )]; +} + unless ($define{'DEBUG_LEAKING_SCALARS_FORK_DUMP'}) { skip_symbols [qw( PL_dumper_fd @@ -887,6 +905,19 @@ if ($define{'PERL_MAD'}) { )]; } +unless ($define{'MULTIPLICITY'}) { + skip_symbols [qw( + PL_interp_size + PL_interp_size_5_10_0 + )]; +} + +unless ($define{'PERL_GLOBAL_STRUCT'}) { + skip_symbols [qw( + PL_global_struct_size + )]; +} + unless ($define{'PERL_GLOBAL_STRUCT_PRIVATE'}) { skip_symbols [qw( PL_my_cxt_keys @@ -982,8 +1013,10 @@ my @layer_syms = qw( PerlIO_arg_fetch PerlIO_debug PerlIO_define_layer + PerlIO_find_layer PerlIO_isutf8 PerlIO_layer_fetch + PerlIO_list_alloc PerlIO_list_free PerlIO_modestr PerlIO_parse_layers @@ -1535,6 +1568,8 @@ foreach my $symbol (@stat_mods) try_symbol($symbol); } +try_symbol("init_Win32CORE") if $static_ext =~ /\bWin32CORE\b/; + # Now all symbols should be defined because # next we are going to output them.