richter 00/08/20 10:50:15
Modified: . Changes.pod embpcgi.bat embpcgi.pl embpcgi.test.bat
embpcgi.test.pl embpexec.bat embpexec.pl epcmd.c
epeval.c epmacro.h epnames.h test.pl
Log:
- make Embperl compile and run with threaded Perl 5.6. With help
from Jason Bodnar. NOTE: That doesn't mean that Embperl is
threadsafe!
Revision Changes Path
1.123 +3 -0 embperl/Changes.pod
Index: Changes.pod
===================================================================
RCS file: /home/cvs/embperl/Changes.pod,v
retrieving revision 1.122
retrieving revision 1.123
diff -u -r1.122 -r1.123
--- Changes.pod 2000/08/18 09:20:25 1.122
+++ Changes.pod 2000/08/20 17:50:12 1.123
@@ -30,6 +30,9 @@
+30s +10m +1h -1d +3M +10y
- $req_rec -> pnotes ('EMBPERL_ERRORS') could be used to retrieve
error message inside a error document
+ - make Embperl compile and run with threaded Perl 5.6. With help
+ from Jason Bodnar. NOTE: That doesn't mean that Embperl is
+ threadsafe!
=head1 1.3b4 (BETA) 17.07.2000
1.9 +2 -2 embperl/embpcgi.bat
Index: embpcgi.bat
===================================================================
RCS file: /home/cvs/embperl/embpcgi.bat,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- embpcgi.bat 2000/08/18 09:20:25 1.8
+++ embpcgi.bat 2000/08/20 17:50:12 1.9
@@ -1,9 +1,9 @@
@rem = '--*-Perl-*--
@echo off
-/usr/bin/perl5.00404 -x %0 %1 %2 %3 %4 %5 %6 %7 %8 %9
+/opt/perl5.6.0/bin/perl -x %0 %1 %2 %3 %4 %5 %6 %7 %8 %9
goto endofperl
@rem ';
-#!/usr/bin/perl5.00404 --
+#!/opt/perl5.6.0/bin/perl --
#line 8
###################################################################################
#
1.9 +1 -1 embperl/embpcgi.pl
Index: embpcgi.pl
===================================================================
RCS file: /home/cvs/embperl/embpcgi.pl,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- embpcgi.pl 2000/08/18 09:20:25 1.8
+++ embpcgi.pl 2000/08/20 17:50:12 1.9
@@ -1,4 +1,4 @@
-#!/usr/bin/perl5.00404
+#!/opt/perl5.6.0/bin/perl
###################################################################################
#
# Embperl - Copyright (c) 1997-1999 Gerald Richter / ECOS
1.7 +2 -2 embperl/embpcgi.test.bat
Index: embpcgi.test.bat
===================================================================
RCS file: /home/cvs/embperl/embpcgi.test.bat,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- embpcgi.test.bat 2000/08/18 09:20:26 1.6
+++ embpcgi.test.bat 2000/08/20 17:50:12 1.7
@@ -1,9 +1,9 @@
@rem = '--*-Perl-*--
@echo off
-/usr/bin/perl5.00404 -x -T %0 %1 %2 %3 %4 %5 %6 %7 %8 %9
+/opt/perl5.6.0/bin/perl -x -T %0 %1 %2 %3 %4 %5 %6 %7 %8 %9
goto endofperl
@rem ';
-#!/usr/bin/perl5.00404 --
+#!/opt/perl5.6.0/bin/perl --
#line 8
###################################################################################
#
1.9 +3 -1 embperl/embpcgi.test.pl
Index: embpcgi.test.pl
===================================================================
RCS file: /home/cvs/embperl/embpcgi.test.pl,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- embpcgi.test.pl 2000/08/18 09:20:26 1.8
+++ embpcgi.test.pl 2000/08/20 17:50:12 1.9
@@ -1,4 +1,4 @@
-#!/usr/bin/perl5.00404
+#!/opt/perl5.6.0/bin/perl
###################################################################################
#
# Embperl - Copyright (c) 1997-1999 Gerald Richter / ECOS
@@ -18,6 +18,8 @@
BEGIN
{
use ExtUtils::testlib ;
+ eval { require Apache::Session; } if ($ENV{EMBPERL_SESSION_CLASSES}) ;
+ $@ = '' ;
}
1.20 +2 -2 embperl/embpexec.bat
Index: embpexec.bat
===================================================================
RCS file: /home/cvs/embperl/embpexec.bat,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -r1.19 -r1.20
--- embpexec.bat 2000/08/18 09:20:26 1.19
+++ embpexec.bat 2000/08/20 17:50:12 1.20
@@ -1,9 +1,9 @@
@rem = '--*-Perl-*--
@echo off
-/usr/bin/perl5.00404 -x %0 %1 %2 %3 %4 %5 %6 %7 %8 %9
+/opt/perl5.6.0/bin/perl -x %0 %1 %2 %3 %4 %5 %6 %7 %8 %9
goto endofperl
@rem ';
-#!/usr/bin/perl5.00404 --
+#!/opt/perl5.6.0/bin/perl --
#line 8
###################################################################################
#
1.20 +1 -1 embperl/embpexec.pl
Index: embpexec.pl
===================================================================
RCS file: /home/cvs/embperl/embpexec.pl,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -r1.19 -r1.20
--- embpexec.pl 2000/08/18 09:20:26 1.19
+++ embpexec.pl 2000/08/20 17:50:13 1.20
@@ -1,4 +1,4 @@
-#!/usr/bin/perl5.00404
+#!/opt/perl5.6.0/bin/perl
###################################################################################
#
# Embperl - Copyright (c) 1997-1999 Gerald Richter / ECOS
1.35 +5 -1 embperl/epcmd.c
Index: epcmd.c
===================================================================
RCS file: /home/cvs/embperl/epcmd.c,v
retrieving revision 1.34
retrieving revision 1.35
diff -u -r1.34 -r1.35
--- epcmd.c 2000/08/17 07:31:57 1.34
+++ epcmd.c 2000/08/20 17:50:13 1.35
@@ -867,10 +867,14 @@
return ok ;
sv_setiv (*ppSV, 1) ;
-
+
+ tainted = 0 ;
+
pSV = newSVpvf("package %s ; \n#line %d %s\n use vars qw(%s); map {
$%s::CLEANUP{substr ($_, 1)} = 1 } qw(%s) ;\n",
r -> Buf.sEvalPackage, r -> Buf.nSourceline, r -> Buf.pFile ->
sSourcefile, sArg,
r -> Buf.sEvalPackage, sArg) ;
+
+ lprintf (r, SvPV (pSV, na)) ;
rc = EvalDirect (r, pSV) ;
SvREFCNT_dec(pSV);
1.22 +4 -0 embperl/epeval.c
Index: epeval.c
===================================================================
RCS file: /home/cvs/embperl/epeval.c,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -r1.21 -r1.22
--- epeval.c 2000/07/08 17:09:39 1.21
+++ epeval.c 2000/08/20 17:50:13 1.22
@@ -29,6 +29,7 @@
int EvalDirect (/*i/o*/ register req * r,
/*in*/ SV * pArg)
{
+ dTHXsem
dSP;
SV * pSVErr ;
@@ -79,6 +80,7 @@
/*in*/ const char * sName,
/*out*/ SV ** pRet)
{
+ dTHXsem
static char sFormat [] = "package %s ; sub %s { \n#line %d \"%s\"\n%s\n}
%s%s" ;
static char sFormatStrict [] = "package %s ; use strict ; sub %s {\n#line %d
\"%s\"\n%s\n} %s%s" ;
static char sFormatArray [] = "package %s ; sub %s { \n#line %d
\"%s\"\n[%s]\n} %s%s" ;
@@ -169,6 +171,7 @@
/*in*/ const char * sArg,
/*out*/ SV ** pRet)
{
+ dTHXsem
int num ;
int nCountUsed = r -> TableStack.State.nCountUsed ;
int nRowUsed = r -> TableStack.State.nRowUsed ;
@@ -302,6 +305,7 @@
/*in*/ int flags,
/*out*/ SV ** pRet)
{
+ dTHXsem
int num ;
int nCountUsed = r -> TableStack.State.nCountUsed ;
int nRowUsed = r -> TableStack.State.nRowUsed ;
1.5 +5 -5 embperl/epmacro.h
Index: epmacro.h
===================================================================
RCS file: /home/cvs/embperl/epmacro.h,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- epmacro.h 1999/02/15 12:28:35 1.4
+++ epmacro.h 2000/08/20 17:50:13 1.5
@@ -25,7 +25,7 @@
#define INTMG(name,var,used,sub) \
\
-int EMBPERL_mgGet##name (SV * pSV, MAGIC * mg) \
+int EMBPERL_mgGet##name (pTHX_ SV * pSV, MAGIC * mg) \
\
{ \
\
@@ -36,7 +36,7 @@
return 0 ; \
} \
\
- int EMBPERL_mgSet##name (SV * pSV, MAGIC * mg) \
+ int EMBPERL_mgSet##name (pTHX_ SV * pSV, MAGIC * mg) \
\
{ \
\
@@ -52,7 +52,7 @@
#define OPTMGRD(name,var) \
\
-int EMBPERL_mgGet##name (SV * pSV, MAGIC * mg) \
+int EMBPERL_mgGet##name (pTHX_ SV * pSV, MAGIC * mg) \
\
{ \
\
@@ -71,7 +71,7 @@
#define OPTMG(name,var) \
\
-int EMBPERL_mgGet##name (SV * pSV, MAGIC * mg) \
+int EMBPERL_mgGet##name (pTHX_ SV * pSV, MAGIC * mg) \
\
{ \
\
@@ -79,7 +79,7 @@
return 0 ; \
} \
\
- int EMBPERL_mgSet##name (SV * pSV, MAGIC * mg) \
+ int EMBPERL_mgSet##name (pTHX_ SV * pSV, MAGIC * mg) \
\
{ \
\
1.19 +19 -0 embperl/epnames.h
Index: epnames.h
===================================================================
RCS file: /home/cvs/embperl/epnames.h,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -r1.18 -r1.19
--- epnames.h 2000/07/17 05:16:08 1.18
+++ epnames.h 2000/08/20 17:50:13 1.19
@@ -107,6 +107,25 @@
#define PERL_SUBVERSION SUBVERSION
#endif
+#ifndef pTHX_
+#define pTHX_
+#endif
+#ifndef pTHX
+#define pTHX
+#endif
+#ifndef aTHX_
+#define aTHX_
+#endif
+#ifndef aTHX
+#define aTHX
+#endif
+#ifndef dTHX
+#define dTHX
+#define dTHXsem
+#else
+#define dTHXsem dTHX ;
+#endif
+
#if PERL_VERSION >= 5
1.65 +6 -2 embperl/test.pl
Index: test.pl
===================================================================
RCS file: /home/cvs/embperl/test.pl,v
retrieving revision 1.64
retrieving revision 1.65
diff -u -r1.64 -r1.65
--- test.pl 2000/08/17 07:31:58 1.64
+++ test.pl 2000/08/20 17:50:13 1.65
@@ -669,7 +669,11 @@
$max_sv = $num_sv ;
}
- die "\n\nMemory problem (SVs)" if ($opt_exitonsv && $loopcnt > 2 &&
$last_sv[$n] < $num_sv && $last_sv[$n] != 0 && $num_sv != 0) ;
+ die "\n\nMemory problem (SVs)" if ($opt_exitonsv && $loopcnt > 2 &&
+ $testnum == $startnumber &&
+ $last_sv[$n] < $num_sv &&
+ $last_sv[$n] != 0 &&
+ $num_sv != 0) ;
$last_sv[$n] = $num_sv ;
last ;
}
@@ -1430,7 +1434,7 @@
sub find_error
{
- my $max = @tests ;
+ my $max = @tests - 1;
my $min = 0 ;
my $n = $max ;
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]