I find that the enclosed patch helps get a vanilla (ie "-Dusedevel"
"-des") build of perl@8102 going on VMS. I note that on VMS we do
have PerlIO #defined but under a vanilla build we do not have
USE_PERLIO #defined hence this patch affects the
s/#ifdef PerlIO/#define USE_PERLIO/ switch. I would appreciate
hearing from useperlio experts on the wisdom of the proposed switch. (I
also noted that this patch does not seem to hurt a `sh Configure
-Dusedevel -des` build on Tru64 Unix 4.0D in case the question arises).
Setting the capability to have useperlio to "define" on VMS is a task that
remains unfinished at this time.
Note the tiny modifications to the VMS specific Makefile.PL files: that
answers the question that jhi had left behind in MM_VMS.pm I think. I
noted that even with:
next unless $self ne " " && defined $self->{$tmp};
that fails to catch the case where a Makefile.PL had:
MAN3PODS => ' ',
Hence the enclosed change...
diff -ru perl.8102/ext/IO/IO.xs perl/ext/IO/IO.xs
--- perl.8102/ext/IO/IO.xs Mon Dec 11 19:30:09 2000
+++ perl/ext/IO/IO.xs Thu Dec 14 16:38:45 2000
@@ -17,12 +17,14 @@
# include <fcntl.h>
#endif
-#ifdef PerlIO
+#ifdef USE_PERLIO
typedef int SysRet;
typedef PerlIO * InputStream;
typedef PerlIO * OutputStream;
#else
+#ifndef PERLIO_IS_STDIO
#define PERLIO_IS_STDIO 1
+#endif
typedef int SysRet;
typedef FILE * InputStream;
typedef FILE * OutputStream;
@@ -42,7 +44,7 @@
}
-#ifndef PerlIO
+#ifndef USE_PERLIO
#define PerlIO_fileno(f) fileno(f)
#endif
@@ -140,8 +142,11 @@
fgetpos(handle)
InputStream handle
CODE:
+#ifndef USE_PERLIO
+ Fpos_t pos;
+#endif
if (handle) {
-#ifdef PerlIO
+#ifdef USE_PERLIO
ST(0) = sv_2mortal(newSV(0));
if (PerlIO_getpos(handle, ST(0)) != 0) {
ST(0) = &PL_sv_undef;
@@ -165,7 +170,7 @@
SV * pos
CODE:
if (handle) {
-#ifdef PerlIO
+#ifdef USE_PERLIO
RETVAL = PerlIO_setpos(handle, pos);
#else
char *p;
@@ -195,7 +200,7 @@
OutputStream fp;
GV *gv;
CODE:
-#ifdef PerlIO
+#ifdef USE_PERLIO
fp = PerlIO_tmpfile();
#else
fp = tmpfile();
@@ -269,7 +274,7 @@
int c
CODE:
if (handle)
-#ifdef PerlIO
+#ifdef USE_PERLIO
RETVAL = PerlIO_ungetc(handle, c);
#else
RETVAL = ungetc(c, handle);
@@ -286,7 +291,7 @@
InputStream handle
CODE:
if (handle)
-#ifdef PerlIO
+#ifdef USE_PERLIO
RETVAL = PerlIO_error(handle);
#else
RETVAL = ferror(handle);
@@ -303,7 +308,7 @@
InputStream handle
CODE:
if (handle) {
-#ifdef PerlIO
+#ifdef USE_PERLIO
PerlIO_clearerr(handle);
#else
clearerr(handle);
@@ -343,7 +348,7 @@
OutputStream handle
CODE:
if (handle)
-#ifdef PerlIO
+#ifdef USE_PERLIO
RETVAL = PerlIO_flush(handle);
#else
RETVAL = Fflush(handle);
diff -ru perl.8102/vms/ext/DCLsym/Makefile.PL perl/vms/ext/DCLsym/Makefile.PL
--- perl.8102/vms/ext/DCLsym/Makefile.PL Mon Dec 11 19:32:24 2000
+++ perl/vms/ext/DCLsym/Makefile.PL Thu Dec 14 16:39:37 2000
@@ -1,4 +1,4 @@
use ExtUtils::MakeMaker;
WriteMakefile( 'VERSION_FROM' => 'DCLsym.pm',
- 'MAN3PODS' => ' ');
+ 'MAN3PODS' => {});
diff -ru perl.8102/vms/ext/Stdio/Makefile.PL perl/vms/ext/Stdio/Makefile.PL
--- perl.8102/vms/ext/Stdio/Makefile.PL Mon Dec 11 19:32:24 2000
+++ perl/vms/ext/Stdio/Makefile.PL Thu Dec 14 16:39:56 2000
@@ -1,5 +1,5 @@
use ExtUtils::MakeMaker;
WriteMakefile( 'VERSION_FROM' => 'Stdio.pm',
- 'MAN3PODS' => ' ', # pods will be built later
+ 'MAN3PODS' => {}, # pods will be built later
);
End of Patch.
Peter Prymmer