X-Git-Url: https://perl5.git.perl.org/perl5.git/blobdiff_plain/781ecc3f4e65a5261736cf5fa8e56b6bea2ff71a..ff36a2888e53279f5d5e02f24e556b77324953e4:/makedef.pl diff --git a/makedef.pl b/makedef.pl index 9e261e5..94a0e1a 100644 --- a/makedef.pl +++ b/makedef.pl @@ -4,7 +4,6 @@ # # Needed by WIN32 and OS/2 for creating perl.dll, # and by AIX for creating libperl.a when -Dusershrplib is in effect, -# and by MacOS Classic. # # Reads from information stored in # @@ -13,7 +12,6 @@ # global.sym # globvar.sym # intrpvar.h -# macperl.sym (on MacOS) # miniperl.map (on OS/2) # perl5.def (on OS/2; this is the old version of the file being made) # perlio.sym @@ -59,7 +57,7 @@ while (@ARGV) { } } -my @PLATFORM = qw(aix win32 wince os2 MacOS netware); +my @PLATFORM = qw(aix win32 wince os2 netware); my %PLATFORM; @PLATFORM{@PLATFORM} = (); @@ -104,7 +102,6 @@ my $config_h = "config.h"; my $intrpvar_h = "intrpvar.h"; my $perlvars_h = "perlvars.h"; my $global_sym = "global.sym"; -my $pp_sym = "pp.sym"; my $globvar_sym = "globvar.sym"; my $perlio_sym = "perlio.sym"; my $static_ext = ""; @@ -114,19 +111,12 @@ if ($PLATFORM eq 'aix') { } elsif ($PLATFORM =~ /^win(?:32|ce)$/ || $PLATFORM eq 'netware') { $CCTYPE = "MSVC" unless defined $CCTYPE; - foreach ($intrpvar_h, $perlvars_h, $global_sym, - $pp_sym, $globvar_sym, $perlio_sym) { + foreach ($intrpvar_h, $perlvars_h, $global_sym, $globvar_sym, $perlio_sym) { s!^!..\\!; } } -elsif ($PLATFORM eq 'MacOS') { - foreach ($intrpvar_h, $perlvars_h, $global_sym, - $pp_sym, $globvar_sym, $perlio_sym) { - s!^!::!; - } -} -unless ($PLATFORM eq 'win32' || $PLATFORM eq 'wince' || $PLATFORM eq 'MacOS' || $PLATFORM eq 'netware') { +unless ($PLATFORM eq 'win32' || $PLATFORM eq 'wince' || $PLATFORM eq 'netware') { open(CFG,$config_sh) || die "Cannot open $config_sh: $!\n"; while () { if (/^(?:ccflags|optimize)='(.+)'$/) { @@ -189,11 +179,11 @@ my $sym_ord = 0; print STDERR "Defines: (" . join(' ', sort keys %define) . ")\n"; if ($PLATFORM =~ /^win(?:32|ce)$/) { - (my $dll = ($define{PERL_DLL} || "perl511")) =~ s/\.dll$//i; + (my $dll = ($define{PERL_DLL} || "perl515")) =~ s/\.dll$//i; print "LIBRARY $dll\n"; # The DESCRIPTION module definition file statement is not supported # by VC7 onwards. - if ($CCTYPE !~ /^MSVC7/ && $CCTYPE !~ /^MSVC8/ && $CCTYPE !~ /^MSVC9/) { + if ($CCTYPE =~ /^(?:MSVC60|GCC|BORLAND)$/) { print "DESCRIPTION 'Perl interpreter'\n"; } print "EXPORTS\n"; @@ -245,7 +235,7 @@ elsif ($PLATFORM eq 'aix') { } elsif ($PLATFORM eq 'netware') { if ($FILETYPE eq 'def') { - print "LIBRARY perl511\n"; + print "LIBRARY perl515\n"; print "DESCRIPTION 'Perl interpreter for NetWare'\n"; print "EXPORTS\n"; } @@ -359,7 +349,6 @@ if ($PLATFORM eq 'wince') { PL_numeric_name PL_numeric_radix_sv PL_numeric_standard - PL_vtbl_collxfrm Perl_sv_collxfrm setgid setuid @@ -517,34 +506,6 @@ elsif ($PLATFORM eq 'os2') { )]) if $define{'USE_5005THREADS'} or $define{'USE_ITHREADS'}; } -elsif ($PLATFORM eq 'MacOS') { - skip_symbols [qw( - Perl_GetVars - PL_cryptseen - PL_cshlen - PL_cshname - PL_statusvalue_vms - PL_sys_intern - PL_opsave - PL_timesbuf - Perl_dump_fds - Perl_my_bcopy - Perl_my_bzero - Perl_my_chsize - Perl_my_htonl - Perl_my_memcmp - Perl_my_memset - Perl_my_ntohl - Perl_my_swap - Perl_safexcalloc - Perl_safexfree - Perl_safexmalloc - Perl_safexrealloc - Perl_unlnk - Perl_sys_intern_clear - Perl_sys_intern_init - )]; -} elsif ($PLATFORM eq 'netware') { skip_symbols [qw( PL_statusvalue_vms @@ -758,8 +719,11 @@ unless ($define{'USE_ITHREADS'}) { PL_sharedsv_space_mutex PL_dollarzero_mutex PL_hints_mutex + PL_my_ctx_mutex PL_perlio_mutex PL_regdupe + Perl_clone_params_del + Perl_clone_params_new Perl_parser_dup Perl_dirp_dup Perl_cx_dup @@ -773,6 +737,7 @@ unless ($define{'USE_ITHREADS'}) { Perl_mro_meta_dup Perl_re_dup_guts Perl_sv_dup + Perl_sv_dup_inc Perl_rvpv_dup Perl_hek_dup Perl_sys_intern_dup @@ -793,7 +758,6 @@ unless ($define{'USE_ITHREADS'}) { unless ($define{'PERL_IMPLICIT_CONTEXT'}) { skip_symbols [qw( - PL_my_ctx_mutex PL_my_cxt_index PL_my_cxt_list PL_my_cxt_size @@ -937,7 +901,7 @@ if ($define{'PERL_MAD'}) { unless ($define{'MULTIPLICITY'}) { skip_symbols [qw( PL_interp_size - PL_interp_size_5_10_0 + PL_interp_size_5_16_0 )]; } @@ -999,7 +963,7 @@ if ($define{'PERL_GLOBAL_STRUCT'}) { # functions from *.sym files -my @syms = ($global_sym, $globvar_sym); # $pp_sym is not part of the API +my @syms = ($global_sym, $globvar_sym); # Symbols that are the public face of the PerlIO layers implementation # These are in _addition to_ the public face of the abstraction @@ -1218,8 +1182,8 @@ for my $syms (@syms) { # variables -if ($define{'MULTIPLICITY'}) { - for my $f ($perlvars_h, $intrpvar_h) { +if ($define{'MULTIPLICITY'} && $define{PERL_GLOBAL_STRUCT}) { + for my $f ($perlvars_h) { my $glob = readvar($f, sub { "Perl_" . $_[1] . $_[2] . "_ptr" }); emit_symbols $glob; } @@ -1234,7 +1198,7 @@ else { my $glob = readvar($perlvars_h); emit_symbols $glob; } - unless ($define{'MULTIPLICITY'}) { + unless ($define{MULTIPLICITY}) { my $glob = readvar($intrpvar_h); emit_symbols $glob; } @@ -1284,6 +1248,7 @@ if ($PLATFORM =~ /^win(?:32|ce)$/) { win32_open win32_close win32_eof + win32_isatty win32_read win32_write win32_spawnvp @@ -1436,15 +1401,6 @@ elsif ($PLATFORM eq 'os2') { @missing = grep { !exists $exportperlmalloc{$_} } @missing; delete $export{$_} foreach @missing; } -elsif ($PLATFORM eq 'MacOS') { - open MACSYMS, 'macperl.sym' or die 'Cannot read macperl.sym'; - - while () { - try_symbol($_); - } - - close MACSYMS; -} elsif ($PLATFORM eq 'netware') { foreach my $symbol (qw( boot_DynaLoader @@ -1658,7 +1614,7 @@ sub output_symbol { $ordinal{$exportperlmalloc{$symbol}} || ++$sym_ord if $exportperlmalloc and exists $exportperlmalloc{$symbol}; } - elsif ($PLATFORM eq 'aix' || $PLATFORM eq 'MacOS') { + elsif ($PLATFORM eq 'aix') { print "$symbol\n"; } elsif ($PLATFORM eq 'netware') {