summaryrefslogtreecommitdiff
path: root/win32
diff options
context:
space:
mode:
authorGurusamy Sarathy <gsar@cpan.org>1998-10-30 02:51:39 +0000
committerGurusamy Sarathy <gsar@cpan.org>1998-10-30 02:51:39 +0000
commit22c35a8c2392967a5ba6b5370695be464bd7012c (patch)
tree8ecdc4d8fa4a4e49d2b6df0d82103a508cd03053 /win32
parent854e6445c2d6190b7a3d3208d8ff1250a817e551 (diff)
downloadperl-22c35a8c2392967a5ba6b5370695be464bd7012c.tar.gz
phase 1 of somewhat major rearrangement of PERL_OBJECT stuff
(objpp.h is gone, embed.pl now does some of that); objXSUB.h should soon be automated also; the global variables that escaped the PL_foo conversion are now reined in; renamed MAGIC in regcomp.h to REG_MAGIC to avoid collision with the type of same name; duplicated lists of pp_things in various places is now gone; result has only been tested on win32 p4raw-id: //depot/perl@2133
Diffstat (limited to 'win32')
-rw-r--r--win32/Makefile4
-rw-r--r--win32/config.bc3
-rw-r--r--win32/config.gc3
-rw-r--r--win32/config.vc3
-rw-r--r--win32/config_H.bc10
-rw-r--r--win32/config_H.gc12
-rw-r--r--win32/config_H.vc10
-rw-r--r--win32/makedef.pl51
-rw-r--r--win32/makefile.mk10
-rw-r--r--win32/perlhost.h12
10 files changed, 57 insertions, 61 deletions
diff --git a/win32/Makefile b/win32/Makefile
index d6b6ddaeb0..d70a3f8585 100644
--- a/win32/Makefile
+++ b/win32/Makefile
@@ -661,7 +661,7 @@ $(DLL_OBJ) : $(CORE_H)
$(PERL95_OBJ) : $(CORE_H)
$(X2P_OBJ) : $(CORE_H)
-perldll.def : $(MINIPERL) $(CONFIGPM) ..\global.sym makedef.pl
+perldll.def : $(MINIPERL) $(CONFIGPM) ..\global.sym ..\pp.sym makedef.pl
$(MINIPERL) -w makedef.pl $(OPTIMIZE) $(DEFINES) $(OBJECT) \
CCTYPE=$(CCTYPE) > perldll.def
@@ -881,7 +881,7 @@ distclean: clean
-del /f perl95.c
-del /f bin\*.bat
cd $(EXTDIR)
- -del /s *.lib *.def *.map *.bs Makefile *$(o) pm_to_blib
+ -del /s *.lib *.def *.map *.pdb *.bs Makefile *$(o) pm_to_blib
cd ..\win32
-rmdir /s /q $(AUTODIR) || rmdir /s $(AUTODIR)
-rmdir /s /q $(COREDIR) || rmdir /s $(COREDIR)
diff --git a/win32/config.bc b/win32/config.bc
index 69620ab5d5..d91fbb977a 100644
--- a/win32/config.bc
+++ b/win32/config.bc
@@ -546,7 +546,8 @@ shrpenv=''
shsharp='true'
sig_name='ZERO NUM01 INT QUIT ILL NUM05 NUM06 NUM07 FPE KILL NUM10 SEGV NUM12 PIPE ALRM TERM USR1 USR2 CHLD NUM19 USR3 BREAK ABRT STOP NUM24 CONT CLD'
sig_name_init='"ZERO", "NUM01", "INT", "QUIT", "ILL", "NUM05", "NUM06", "NUM07", "FPE", "KILL", "NUM10", "SEGV", "NUM12", "PIPE", "ALRM", "TERM", "USR1", "USR2", "CHLD", "NUM19", "USR3", "BREAK", "ABRT", "STOP", "NUM24", "CONT", "CLD", 0'
-sig_num='0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 18, 0'
+sig_num='0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 18 0'
+sig_num_init='0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 18, 0'
signal_t='void'
sitearch='~INST_TOP~\site~INST_VER~\lib\~archname~'
sitearchexp='~INST_TOP~\site~INST_VER~\lib\~archname~'
diff --git a/win32/config.gc b/win32/config.gc
index c4c6d1a3ae..745d407f21 100644
--- a/win32/config.gc
+++ b/win32/config.gc
@@ -546,7 +546,8 @@ shrpenv=''
shsharp='true'
sig_name='ZERO NUM01 INT QUIT ILL NUM05 NUM06 NUM07 FPE KILL NUM10 SEGV NUM12 PIPE ALRM TERM NUM16 NUM17 NUM18 NUM19 CHLD BREAK ABRT STOP NUM24 CONT CLD'
sig_name_init='"ZERO", "NUM01", "INT", "QUIT", "ILL", "NUM05", "NUM06", "NUM07", "FPE", "KILL", "NUM10", "SEGV", "NUM12", "PIPE", "ALRM", "TERM", "NUM16", "NUM17", "NUM18", "NUM19", "CHLD", "BREAK", "ABRT", "STOP", "NUM24", "CONT", "CLD", 0'
-sig_num='0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 20, 0'
+sig_num='0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 20 0'
+sig_num_init='0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 20, 0'
signal_t='void'
sitearch='~INST_TOP~\site~INST_VER~\lib\~archname~'
sitearchexp='~INST_TOP~\site~INST_VER~\lib\~archname~'
diff --git a/win32/config.vc b/win32/config.vc
index c9ef76c339..1a99dd99e4 100644
--- a/win32/config.vc
+++ b/win32/config.vc
@@ -546,7 +546,8 @@ shrpenv=''
shsharp='true'
sig_name='ZERO NUM01 INT QUIT ILL NUM05 NUM06 NUM07 FPE KILL NUM10 SEGV NUM12 PIPE ALRM TERM NUM16 NUM17 NUM18 NUM19 CHLD BREAK ABRT STOP NUM24 CONT CLD'
sig_name_init='"ZERO", "NUM01", "INT", "QUIT", "ILL", "NUM05", "NUM06", "NUM07", "FPE", "KILL", "NUM10", "SEGV", "NUM12", "PIPE", "ALRM", "TERM", "NUM16", "NUM17", "NUM18", "NUM19", "CHLD", "BREAK", "ABRT", "STOP", "NUM24", "CONT", "CLD", 0'
-sig_num='0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 20, 0'
+sig_num='0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 20 0'
+sig_num_init='0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 20, 0'
signal_t='void'
sitearch='~INST_TOP~\site~INST_VER~\lib\~archname~'
sitearchexp='~INST_TOP~\site~INST_VER~\lib\~archname~'
diff --git a/win32/config_H.bc b/win32/config_H.bc
index 8c06b3673e..58ce965c54 100644
--- a/win32/config_H.bc
+++ b/win32/config_H.bc
@@ -1851,7 +1851,7 @@
* the sig_name list.
*/
#define SIG_NAME "ZERO", "NUM01", "INT", "QUIT", "ILL", "NUM05", "NUM06", "NUM07", "FPE", "KILL", "NUM10", "SEGV", "NUM12", "PIPE", "ALRM", "TERM", "USR1", "USR2", "CHLD", "NUM19", "USR3", "BREAK", "ABRT", "STOP", "NUM24", "CONT", "CLD", 0 /**/
-#define SIG_NUM 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 18, 0 /**/
+#define SIG_NUM 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 18, 0 /**/
/* VOIDFLAGS:
* This symbol indicates how much support of the void type is given by this
@@ -2268,11 +2268,11 @@
#define SCHED_YIELD /**/
/*#define HAS_SCHED_YIELD /**/
-/* PTHREADS_CREATED_JOINABLE:
- * This symbol, if defined, indicates that pthreads are created
- * in the joinable (aka undetached) state.
+/* I_MACH_CTHREADS:
+ * This symbol, if defined, indicates to the C program that it should
+ * include <mach/cthreads.h>.
*/
-/*#define PTHREADS_CREATED_JOINABLE /**/
+/*#define I_MACH_CTHREADS /**/
/* MULTIPLICITY:
* This symbol, if defined, indicates that Perl should
diff --git a/win32/config_H.gc b/win32/config_H.gc
index 0e178b61d7..f048f67dde 100644
--- a/win32/config_H.gc
+++ b/win32/config_H.gc
@@ -1851,7 +1851,7 @@
* the sig_name list.
*/
#define SIG_NAME "ZERO", "NUM01", "INT", "QUIT", "ILL", "NUM05", "NUM06", "NUM07", "FPE", "KILL", "NUM10", "SEGV", "NUM12", "PIPE", "ALRM", "TERM", "NUM16", "NUM17", "NUM18", "NUM19", "CHLD", "BREAK", "ABRT", "STOP", "NUM24", "CONT", "CLD", 0 /**/
-#define SIG_NUM 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 20, 0 /**/
+#define SIG_NUM 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 20, 0 /**/
/* VOIDFLAGS:
* This symbol indicates how much support of the void type is given by this
@@ -2268,17 +2268,17 @@
#define SCHED_YIELD /**/
/*#define HAS_SCHED_YIELD /**/
-/* PTHREADS_CREATED_JOINABLE:
- * This symbol, if defined, indicates that pthreads are created
- * in the joinable (aka undetached) state.
+/* I_MACH_CTHREADS:
+ * This symbol, if defined, indicates to the C program that it should
+ * include <mach/cthreads.h>.
*/
-/*#define PTHREADS_CREATED_JOINABLE /**/
+/*#define I_MACH_CTHREADS /**/
/* MULTIPLICITY:
* This symbol, if defined, indicates that Perl should
* be built to use multiplicity.
*/
-#define MULTIPLICITY /**/
+/*#define MULTIPLICITY /**/
/* USE_THREADS:
* This symbol, if defined, indicates that Perl should
diff --git a/win32/config_H.vc b/win32/config_H.vc
index 82d6218998..c12fedc7d0 100644
--- a/win32/config_H.vc
+++ b/win32/config_H.vc
@@ -1851,7 +1851,7 @@
* the sig_name list.
*/
#define SIG_NAME "ZERO", "NUM01", "INT", "QUIT", "ILL", "NUM05", "NUM06", "NUM07", "FPE", "KILL", "NUM10", "SEGV", "NUM12", "PIPE", "ALRM", "TERM", "NUM16", "NUM17", "NUM18", "NUM19", "CHLD", "BREAK", "ABRT", "STOP", "NUM24", "CONT", "CLD", 0 /**/
-#define SIG_NUM 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 20, 0 /**/
+#define SIG_NUM 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 20, 0 /**/
/* VOIDFLAGS:
* This symbol indicates how much support of the void type is given by this
@@ -2268,11 +2268,11 @@
#define SCHED_YIELD /**/
/*#define HAS_SCHED_YIELD /**/
-/* PTHREADS_CREATED_JOINABLE:
- * This symbol, if defined, indicates that pthreads are created
- * in the joinable (aka undetached) state.
+/* I_MACH_CTHREADS:
+ * This symbol, if defined, indicates to the C program that it should
+ * include <mach/cthreads.h>.
*/
-/*#define PTHREADS_CREATED_JOINABLE /**/
+/*#define I_MACH_CTHREADS /**/
/* MULTIPLICITY:
* This symbol, if defined, indicates that Perl should
diff --git a/win32/makedef.pl b/win32/makedef.pl
index 80ea5e3947..537f09a9a6 100644
--- a/win32/makedef.pl
+++ b/win32/makedef.pl
@@ -1,18 +1,8 @@
#!../miniperl
-# Written: 10 April 1996 Gary Ng (71564.1743@compuserve.com)
+# Create the export list for perl. Needed by WIN32 for creating perl.dll.
-# 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 exception list here
+# reads global.sym, pp.sym, perlvars.h, intrpvar.h, thrdvar.h, config.h
my $CCTYPE = "MSVC"; # default
@@ -143,7 +133,6 @@ Perl_pp_evalonce
Perl_pp_interp
Perl_pp_map
Perl_pp_nswitch
-Perl_q
Perl_reall_srchlen
Perl_same_dirent
Perl_saw_return
@@ -228,7 +217,7 @@ PL_nthreads_cond
PL_threadnum
PL_threadsv_names
PL_thrsv
-Perl_vtbl_mutex
+PL_vtbl_mutex
Perl_getTHR
Perl_setTHR
Perl_condpair_magic
@@ -292,8 +281,8 @@ unless ($define{'DEBUGGING'})
Perl_debstackptrs
Perl_runops_debug
Perl_sv_peek
- Perl_watchaddr
- Perl_watchok)];
+ PL_watchaddr
+ PL_watchok)];
}
if ($define{'HAVE_DES_FCRYPT'})
@@ -301,23 +290,25 @@ if ($define{'HAVE_DES_FCRYPT'})
emit_symbols [qw(win32_crypt)];
}
-open (GLOBAL, "<../global.sym") || die "failed to open global.sym" . $!;
-while (<GLOBAL>)
+# functions from *.sym files
+
+for my $syms ('../global.sym','../pp.sym', '../globvar.sym')
{
- next if (!/^[A-Za-z]/);
- next if (/_amg[ \t]*$/);
- # All symbols have a Perl_ prefix because that's what embed.h
- # sticks in front of them.
- chomp($_);
- my $symbol = "Perl_$_";
- emit_symbol($symbol) unless exists $skip{$symbol};
+ open (GLOBAL, "<$syms") || die "failed to open $syms" . $!;
+ while (<GLOBAL>)
+ {
+ next if (!/^[A-Za-z]/);
+ # Functions have a Perl_ prefix
+ # Variables have a PL_ prefix
+ chomp($_);
+ my $symbol = ($syms =~ /var\.sym$/i ? "PL_" : "Perl_");
+ $symbol .= $_;
+ emit_symbol($symbol) unless exists $skip{$symbol};
+ }
+ close(GLOBAL);
}
-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
+# variables
unless ($define{'PERL_GLOBAL_STRUCT'})
{
diff --git a/win32/makefile.mk b/win32/makefile.mk
index 80f01fa4fb..50f2ab7c34 100644
--- a/win32/makefile.mk
+++ b/win32/makefile.mk
@@ -220,7 +220,7 @@ OPTIMIZE = -O2 $(RUNTIME)
LINK_DBG =
.ENDIF
-CFLAGS = -w -g0 -a4 -tWM -tWD $(INCLUDES) $(DEFINES) $(LOCDEFS) \
+CFLAGS = -w -g0 -tWM -tWD $(INCLUDES) $(DEFINES) $(LOCDEFS) \
$(PCHFLAGS) $(OPTIMIZE)
LINK_FLAGS = $(LINK_DBG) -L$(CCLIBDIR) $(EXTRALIBDIRS:^"-L")
OBJOUT_FLAG = -o
@@ -791,7 +791,7 @@ $(DLL_OBJ) : $(CORE_H)
$(PERL95_OBJ) : $(CORE_H)
$(X2P_OBJ) : $(CORE_H)
-perldll.def : $(MINIPERL) $(CONFIGPM) ..\global.sym makedef.pl
+perldll.def : $(MINIPERL) $(CONFIGPM) ..\global.sym ..\pp.sym makedef.pl
$(MINIPERL) -w makedef.pl $(OPTIMIZE) $(DEFINES) $(OBJECT) \
CCTYPE=$(CCTYPE) > perldll.def
@@ -1032,7 +1032,8 @@ distclean: clean
-rmdir /s /q $(LIBDIR)\Data || rmdir /s $(LIBDIR)\Data
-del /f $(PODDIR)\*.html
-del /f $(PODDIR)\*.bat
- -cd ..\utils && del /f h2ph splain perlbug pl2pm c2ph h2xs perldoc pstruct *.bat
+ -cd ..\utils && del /f h2ph splain perlbug pl2pm c2ph h2xs perldoc \
+ pstruct *.bat
-cd ..\x2p && del /f find2perl s2p *.bat
-del /f ..\config.sh ..\splittree.pl perlmain.c dlutils.c config.h.new
-del /f $(CONFIGPM)
@@ -1040,7 +1041,8 @@ distclean: clean
-del /f perl95.c
.ENDIF
-del /f bin\*.bat
- -cd $(EXTDIR) && del /s *$(a) *.def *.map *.bs Makefile *$(o) pm_to_blib
+ -cd $(EXTDIR) && del /s *$(a) *.def *.map *.pdb *.bs Makefile *$(o) \
+ pm_to_blib
-rmdir /s /q $(AUTODIR) || rmdir /s $(AUTODIR)
-rmdir /s /q $(COREDIR) || rmdir /s $(COREDIR)
diff --git a/win32/perlhost.h b/win32/perlhost.h
index 842d9c3275..21908098a5 100644
--- a/win32/perlhost.h
+++ b/win32/perlhost.h
@@ -861,13 +861,13 @@ public:
{
try
{
- pPerl->perl_construct();
+ perl_construct();
}
catch(...)
{
win32_fprintf(stderr, "%s\n",
"Error: Unable to construct data structures");
- pPerl->perl_free();
+ perl_free();
pPerl = NULL;
}
}
@@ -884,7 +884,7 @@ public:
int retVal;
try
{
- retVal = pPerl->perl_parse(xs_init, argc, argv, env);
+ retVal = perl_parse(xs_init, argc, argv, env);
}
catch(int x)
{
@@ -904,7 +904,7 @@ public:
int retVal;
try
{
- retVal = pPerl->perl_run();
+ retVal = perl_run();
}
catch(int x)
{
@@ -922,8 +922,8 @@ public:
{
try
{
- pPerl->perl_destruct();
- pPerl->perl_free();
+ perl_destruct();
+ perl_free();
}
catch(...)
{