X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=makedef.pl;h=4e211d617f75657588337b19d35bbe480b7c8e33;hb=8c9849ff798160d7f115286b222762e1c4e65f66;hp=e8122145bfcdbfffb00493e8a5353ca962c4b6a9;hpb=86e05cf231bed3044bd929f19303d6a3d872b202;p=p5sagit%2Fp5-mst-13.2.git diff --git a/makedef.pl b/makedef.pl index e812214..4e211d6 100644 --- a/makedef.pl +++ b/makedef.pl @@ -29,6 +29,16 @@ my %PLATFORM; defined $PLATFORM || die "PLATFORM undefined, must be one of: @PLATFORM\n"; exists $PLATFORM{$PLATFORM} || die "PLATFORM must be one of: @PLATFORM\n"; +my %exportperlmalloc = + ( + Perl_malloc => "malloc", + Perl_mfree => "free", + Perl_realloc => "realloc", + Perl_calloc => "calloc", + ); + +my $exportperlmalloc = $PLATFORM eq 'os2'; + my $config_sh = "config.sh"; my $config_h = "config.h"; my $thrdvar_h = "thrdvar.h"; @@ -771,6 +781,7 @@ my @layer_syms = qw( PerlIO_apply_layera PerlIO_pending PerlIO_push + PerlIO_pop PerlIO_sv_dup PerlIO_perlio @@ -1130,6 +1141,7 @@ elsif ($PLATFORM eq 'os2') { @missing = grep { !exists $mapped{$_} } keys %export; + @missing = grep { !exists $exportperlmalloc{$_} } @missing; delete $export{$_} foreach @missing; } elsif ($PLATFORM eq 'MacOS') { @@ -1303,6 +1315,8 @@ sub emit_symbol { sub output_symbol { my $symbol = shift; + $symbol = $exportperlmalloc{$symbol} + if $exportperlmalloc and exists $exportperlmalloc{$symbol}; if ($PLATFORM =~ /^win(?:32|ce)$/) { $symbol = "_$symbol" if $CCTYPE eq 'BORLAND'; print "\t$symbol\n";