summaryrefslogtreecommitdiff
path: root/win32/makedef.pl
diff options
context:
space:
mode:
authorPerl 5 Porters <perl5-porters@africa.nicoh.com>1997-01-29 18:11:00 +1200
committerChip Salzenberg <chip@atlantic.net>1997-01-29 18:11:00 +1200
commit0a753a764065f2260004b6e6975085378b850346 (patch)
treee5163ab53209cc4bf655cabaf4067f18036a9106 /win32/makedef.pl
parent4b094ceb80288fc9f7c15ae78fc662051510284d (diff)
downloadperl-0a753a764065f2260004b6e6975085378b850346.tar.gz
[inseparable changes from patch from perl5.003_23 to perl5.003_24]perl-5.003_24
CORE LANGUAGE CHANGES Subject: glob defaults to $_ Date: Mon, 27 Jan 1997 03:09:13 -0500 From: Gurusamy Sarathy <gsar@engin.umich.edu> Files: op.c opcode.pl pod/perlfunc.pod t/op/glob.t private-msgid: <199701270809.DAA00934@aatma.engin.umich.edu> Subject: Re: an overloading bug Date: Sun, 26 Jan 1997 19:07:45 -0500 From: Gurusamy Sarathy <gsar@engin.umich.edu> Files: pod/perldiag.pod pod/perlfunc.pod pp_ctl.c private-msgid: <199701270007.TAA26525@aatma.engin.umich.edu> CORE PORTABILITY Subject: Win32 port From: Gary Ng <71564.1743@compuserve.com> Files: MANIFEST win32/* Subject: Amiga files Date: Sun, 26 Jan 1997 17:42:15 +0100 From: Norbert Pueschel <pueschel@imsdd.meb.uni-bonn.de> Files: MANIFEST README.amiga hints/amigaos.sh private-msgid: <77724712@Armageddon.meb.uni-bonn.de> DOCUMENTATION Subject: perldelta Fcntl enhancement Date: Sat, 25 Jan 1997 17:05:34 +0200 (EET) From: Jarkko Hietaniemi <jhi@cc.hut.fi> Files: pod/perldelta.pod private-msgid: <199701251505.RAA22159@alpha.hut.fi> Subject: Updates to perldelta re: Fcntl, DB_File, Net::Ping From: Paul Marquess <pmarquess@bfsec.bt.co.uk> Files: pod/perldelta.pod Subject: Document restrictions on gv_fetchmethod() and perl_call_sv() From: Chip Salzenberg <chip@atlantic.net> Files: pod/perldelta.pod pod/perlguts.pod Subject: perldiag.pod: No comma allowed after %s Date: Sat, 25 Jan 1997 17:41:53 +0200 (EET) From: Jarkko Hietaniemi <Jarkko.Hietaniemi@cc.hut.fi> Files: pod/perldiag.pod private-msgid: <199701251541.RAA04120@alpha.hut.fi> Subject: perlfunc.pod: localtime Date: Sat, 25 Jan 1997 18:29:37 +0200 (EET) From: Jarkko Hietaniemi <jhi@cc.hut.fi> Files: pod/perlfunc.pod private-msgid: <199701251629.SAA08114@alpha.hut.fi> Subject: perlfunc diff: gmtime Date: Tue, 28 Jan 1997 14:52:08 +0000 From: Peter Haworth <pmh@edison.ioppublishing.com> Files: pod/perlfunc.pod private-msgid: <32EE1298.7B90@edison.ioppublishing.com> Subject: Updates to guts Date: Sun, 26 Jan 1997 19:34:18 -0500 (EST) From: Ilya Zakharevich <ilya@math.ohio-state.edu> Files: pod/perlguts.pod private-msgid: <199701270034.TAA13177@monk.mps.ohio-state.edu> TESTS Subject: New test op/closure.t From: Tom Phoenix <rootbeer@teleport.com> Files: MANIFEST t/op/closure.t
Diffstat (limited to 'win32/makedef.pl')
-rw-r--r--win32/makedef.pl212
1 files changed, 212 insertions, 0 deletions
diff --git a/win32/makedef.pl b/win32/makedef.pl
new file mode 100644
index 0000000000..1a555f53f3
--- /dev/null
+++ b/win32/makedef.pl
@@ -0,0 +1,212 @@
+
+#!../miniperl
+
+# Written: 10 April 1996 Gary Ng (71564.1743@compuserve.com)
+
+# Create the export list for perl.
+# Needed by WIN32 for creating perl.dll
+# based on perl_exp.SH in the main perl distribution directory
+
+# This simple program relys on 'global.sym' being up to date
+# with all of the global symbols that a dynamicly link library
+# might want to access.
+
+# There is some symbol defined in global.sym and interp.sym
+# that does not present in the WIN32 port but there is no easy
+# way to find them so I just put a exeception list here
+
+$skip_sym=<<'!END!OF!SKIP!';
+Perl_SvIV
+Perl_SvNV
+Perl_SvTRUE
+Perl_SvUV
+Perl_block_type
+Perl_sv_pvn
+Perl_additem
+Perl_cast_ulong
+Perl_check_uni
+Perl_checkcomma
+Perl_chsize
+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_do_msgsnd
+Perl_do_semop
+Perl_do_shmio
+Perl_doeval
+Perl_dofindlabel
+Perl_dopoptoeval
+Perl_dump_eval
+Perl_dump_fds
+Perl_dump_form
+Perl_dump_gv
+Perl_dump_mstats
+Perl_dump_op
+Perl_dump_packsubs
+Perl_dump_pm
+Perl_dump_sub
+Perl_expectterm
+Perl_fetch_gv
+Perl_fetch_io
+Perl_force_ident
+Perl_force_next
+Perl_force_word
+Perl_hv_stashpv
+Perl_intuit_more
+Perl_know_next
+Perl_modkids
+Perl_mstats
+Perl_my_bzero
+Perl_my_htonl
+Perl_my_ntohl
+Perl_my_swap
+Perl_my_chsize
+Perl_newXSUB
+Perl_no_fh_allowed
+Perl_no_op
+Perl_nointrp
+Perl_nomem
+Perl_pp_cswitch
+Perl_pp_entersubr
+Perl_pp_evalonce
+Perl_pp_interp
+Perl_pp_map
+Perl_pp_nswitch
+Perl_q
+Perl_reall_srchlen
+Perl_regdump
+Perl_regfold
+Perl_regmyendp
+Perl_regmyp_size
+Perl_regmystartp
+Perl_regnarrate
+Perl_regprop
+Perl_same_dirent
+Perl_saw_return
+Perl_scan_const
+Perl_scan_formline
+Perl_scan_heredoc
+Perl_scan_ident
+Perl_scan_inputsymbol
+Perl_scan_pat
+Perl_scan_prefix
+Perl_scan_str
+Perl_scan_subst
+Perl_scan_trans
+Perl_scan_word
+Perl_skipspace
+Perl_sublex_done
+Perl_sublex_start
+Perl_sv_peek
+Perl_sv_ref
+Perl_sv_setptrobj
+Perl_timesbuf
+Perl_too_few_arguments
+Perl_too_many_arguments
+Perl_unlnk
+Perl_wait4pid
+Perl_watch
+Perl_yyname
+Perl_yyrule
+allgvs
+curblock
+curcop
+curcopdb
+curcsv
+envgv
+lastretstr
+mystack_mark
+perl_init_ext
+perl_requirepv
+siggv
+stack
+tainting
+Perl_safexcalloc
+Perl_safexmalloc
+Perl_safexfree
+Perl_safexrealloc
+!END!OF!SKIP!
+
+# All symbols have a Perl_ prefix because that's what embed.h
+# sticks in front of them.
+
+
+print "LIBRARY Perl\n";
+print "DESCRIPTION 'Perl interpreter, export autogenerated'\n";
+print "CODE LOADONCALL\n";
+print "DATA LOADONCALL NONSHARED MULTIPLE\n";
+print "EXPORTS\n";
+
+open (GLOBAL, "<../global.sym") || die "failed to open global.sym" . $!;
+while (<GLOBAL>) {
+ my $symbol;
+ next if (!/^[A-Za-z]/);
+ next if (/_amg[ \t]*$/);
+ $symbol = "Perl_$_";
+ next if ($skip_sym =~ m/$symbol/m);
+ print "\t$symbol";
+ };
+close(GLOBAL);
+
+# also add symbols from interp.sym
+# They are only needed if -DMULTIPLICITY is not set but it
+# doesn't hurt to include them anyway.
+# these don't have Perl prefix
+
+open (INTERP, "<../interp.sym") || die "failed to open interp.sym" . $!;
+while (<INTERP>) {
+ my $symbol;
+ next if (!/^[A-Za-z]/);
+ next if (/_amg[ \t]*$/);
+ $symbol = $_;
+ next if ($skip_sym =~ m/$symbol/m);
+ #print "\t$symbol";
+ print "\tPerl_$symbol";
+ };
+
+#close(INTERP);
+
+while (<DATA>) {
+ my $symbol;
+ next if (!/^[A-Za-z]/);
+ next if (/^#/);
+ $symbol = $_;
+ next if ($skip_sym =~ m/^$symbol/m);
+ print "\t$symbol";
+ };
+
+1;
+__DATA__
+# extra globals not included above.
+perl_init_i18nl10n
+perl_init_ext
+perl_alloc
+perl_construct
+perl_destruct
+perl_free
+perl_parse
+perl_run
+perl_get_sv
+perl_get_av
+perl_get_hv
+perl_get_cv
+perl_call_argv
+perl_call_pv
+perl_call_method
+perl_call_sv
+perl_requirepv
+win32_inet_addr
+win32_gethostbyname
+win32_inet_ntoa
+win32_htons
+win32_ntohs
+win32_htonl