# that does not present in the WIN32 port but there is no easy
# way to find them so I just put a exception list here
-while (@ARGV && $ARGV[0] =~ /^-/)
+my $CCTYPE = "MSVC"; # default
+
+while (@ARGV)
{
my $flag = shift;
$define{$1} = 1 if ($flag =~ /^-D(\w+)$/);
+ $CCTYPE = $1 if ($flag =~ /^CCTYPE=(\w+)$/);
}
open(CFG,'config.h') || die "Cannot open config.h:$!";
while (<CFG>)
{
$define{$1} = 1 if /^\s*#\s*define\s+(MYMALLOC)\b/;
+ $define{$1} = 1 if /^\s*#\s*define\s+(USE_THREADS)\b/;
}
close(CFG);
warn join(' ',keys %define)."\n";
-my $CCTYPE = shift || "MSVC";
-
if ($CCTYPE ne 'GCC')
{
print "LIBRARY Perl\n";
Perl_ck_aelem
Perl_cryptseen
Perl_cx_dump
-Perl_deb
-Perl_deb_growlevel
-Perl_debop
-Perl_debprofdump
-Perl_debstack
-Perl_debstackptrs
Perl_do_ipcctl
Perl_do_ipcget
Perl_do_msgrcv
Perl_too_few_arguments
Perl_too_many_arguments
Perl_unlnk
-Perl_wait4pid
Perl_watch
Perl_yyname
Perl_yyrule
-Perl_Yes
-Perl_No
-Perl_hexdigit
-Perl_patleave
-Perl_vert
allgvs
curblock
curcsv
unless ($define{'USE_THREADS'})
{
skip_symbols [qw(
+Perl_getTHR
+Perl_setTHR
Perl_condpair_magic
Perl_thr_key
Perl_sv_mutex
+Perl_svref_mutex
Perl_malloc_mutex
Perl_eval_mutex
Perl_eval_cond
Perl_nthreads_cond
Perl_per_thread_magicals
Perl_thread_create
+Perl_threadnum
Perl_find_threadsv
Perl_threadsv_names
Perl_thrsv
Perl_sv_uv
Perl_sv_pvn
Perl_newRV_noinc)];
+ }
+unless ($define{'FAKE_THREADS'})
+ {
+ skip_symbols [qw(Perl_curthr)];
}
sub readvar
{
# All symbols have a Perl_ prefix because that's what embed.h
# sticks in front of them.
- push(@syms,"Perl_".$1) if (/\bPERLVARI?\([IGT](\w+)/);
+ push(@syms,"Perl_".$1) if (/\bPERLVARI?C?\([IGT](\w+)/);
}
close(VARS);
return \@syms;
unless ($define{'DEBUGGING'})
{
skip_symbols [qw(
+ Perl_deb
+ Perl_deb_growlevel
+ Perl_debop
+ Perl_debprofdump
+ Perl_debstack
+ Perl_debstackptrs
Perl_runops_debug
Perl_sv_peek
Perl_watchaddr
Perl_watchok)];
}
+if ($define{'HAVE_DES_FCRYPT'})
+ {
+ emit_symbols [qw(win32_crypt)];
+ }
+
open (GLOBAL, "<../global.sym") || die "failed to open global.sym" . $!;
while (<GLOBAL>)
{
perl_init_i18nl10n
perl_init_ext
perl_alloc
+perl_atexit
perl_construct
perl_destruct
perl_free
perl_require_pv
perl_eval_pv
perl_eval_sv
+perl_new_ctype
+perl_new_collate
+perl_new_numeric
+perl_set_numeric_standard
+perl_set_numeric_local
boot_DynaLoader
Perl_thread_create
win32_errno
win32_alarm
win32_open_osfhandle
win32_get_osfhandle
+win32_ioctl
+win32_utime
+win32_wait
+win32_str_os_error
Perl_win32_init
Perl_init_os_extras
Perl_getTHR