Build Stdio and DCLSym modules as part of normal VMS perl build
Hans Mulder [Fri, 3 Apr 1998 16:01:57 +0000 (08:01 -0800)]
p4raw-id: //depot/perl@940

vms/descrip.mms
vms/ext/DCLsym/Makefile.PL
vms/ext/Stdio/Makefile.PL
vms/ext/Stdio/Stdio.xs

index 00a5c0b..56a2092 100644 (file)
@@ -347,7 +347,7 @@ all : base extras x2p archcorefiles preplibrary perlpods
 .endif
 base : miniperl perl
        @ $(NOOP)
-extras : Fcntl IO Opcode attrs B $(POSIX) $(THREAD) SDBM_File libmods utils podxform
+extras : Fcntl IO Opcode attrs Stdio DCLSym B $(POSIX) $(THREAD) SDBM_File libmods utils podxform
        @ $(NOOP)
 libmods : $(LIBPREREQ)
        @ $(NOOP)
@@ -512,6 +512,44 @@ Fcntl : [.lib]Fcntl.pm [.lib.auto.Fcntl]Fcntl$(E)
 [.ext.Fcntl]Descrip.MMS : [.ext.Fcntl]Makefile.PL $(LIBPREREQ) $(DBG)perlshr$(E)
        $(MINIPERL) "-I[--.lib]" -e "chdir('[.ext.Fcntl]') or die $!; do 'Makefile.PL'; print ${@} if ${@};" "INST_LIB=[--.lib]" "INST_ARCHLIB=[--.lib]"
 
+Stdio : [.lib.vms]Stdio.pm [.lib.auto.vms.Stdio]Stdio$(E)
+       @ $(NOOP)
+
+[.lib.vms]Stdio.pm : [.vms.ext.stdio]Descrip.MMS
+       @ If F$Search("[.lib]auto.dir").eqs."" Then Create/Directory [.lib.auto]
+       @ Set Default [.vms.ext.Stdio]
+       $(MMS)
+       @ Set Default [---]
+
+[.lib.auto.vms.Stdio]Stdio$(E) : [.vms.ext.Stdio]Descrip.MMS
+       @ Set Default [.vms.ext.Stdio]
+       $(MMS)
+       @ Set Default [---]
+
+# Add "-I[--.lib]" t $(MINIPERL) so we use this copy of lib after C<chdir>
+# ${@} necessary to distract different versions of MM[SK]/make
+[.vms.ext.stdio]Descrip.MMS : [.vms.ext.Stdio]Makefile.PL $(LIBPREREQ) $(DBG)perlshr$(E)
+       $(MINIPERL) "-I[---.lib]" -e "chdir('[.vms.ext.Stdio]') or die $!; do 'Makefile.PL'; print ${@} if ${@};" "INST_LIB=[---.lib]" "INST_ARCHLIB=[---.lib]"
+
+DCLSym : [.lib.vms]DCLSym.pm [.lib.auto.vms.DCLSym]DCLSym$(E)
+       @ $(NOOP)
+
+[.lib.vms]DCLSym.pm : [.vms.ext.dclsym]Descrip.MMS
+       @ If F$Search("[.lib]auto.dir").eqs."" Then Create/Directory [.lib.auto]
+       @ Set Default [.vms.ext.DCLSym]
+       $(MMS)
+       @ Set Default [---]
+
+[.lib.auto.vms.DCLSym]DCLSym$(E) : [.vms.ext.DCLSym]Descrip.MMS
+       @ Set Default [.vms.ext.DCLSym]
+       $(MMS)
+       @ Set Default [---]
+
+# Add "-I[--.lib]" t $(MINIPERL) so we use this copy of lib after C<chdir>
+# ${@} necessary to distract different versions of MM[SK]/make
+[.vms.ext.DCLSym]Descrip.MMS : [.vms.ext.DCLSym]Makefile.PL $(LIBPREREQ) $(DBG)perlshr$(E)
+       $(MINIPERL) "-I[---.lib]" -e "chdir('[.vms.ext.DCLSym]') or die $!; do 'Makefile.PL'; print ${@} if ${@};" "INST_LIB=[---.lib]" "INST_ARCHLIB=[---.lib]"
+
 attrs : [.lib]attrs.pm [.lib.auto.attrs]attrs$(E)
        @ $(NOOP)
 
index 8e6f5bc..84ab2be 100644 (file)
@@ -1,3 +1,4 @@
 use ExtUtils::MakeMaker;
 
-WriteMakefile( 'VERSION_FROM' => 'DCLsym.pm' );
+WriteMakefile( 'VERSION_FROM' => 'DCLsym.pm',
+               'MAN3PODS'     => ' ');
index e5ea988..f5599f8 100644 (file)
@@ -1,3 +1,5 @@
 use ExtUtils::MakeMaker;
 
-WriteMakefile( 'VERSION_FROM' => 'Stdio.pm' );
+WriteMakefile( 'VERSION_FROM' => 'Stdio.pm',
+               'MAN3PODS'     => ' ', # pods will be built later
+             );
index 0a7b47e..9744be0 100644 (file)
@@ -87,6 +87,7 @@ newFH(FILE *fp, char type) {
     HV *stash;
     IO *io;
 
+    dTHR;
     /* Find stash for VMS::Stdio.  We don't do this once at boot
      * to allow for possibility of threaded Perl with per-thread
      * symbol tables.  This code (through io = ...) is really