summaryrefslogtreecommitdiff
path: root/vms
diff options
context:
space:
mode:
authorCraig A. Berry <craigberry@mac.com>2006-03-23 23:19:38 +0000
committerCraig A. Berry <craigberry@mac.com>2006-03-23 23:19:38 +0000
commit3f39e13a499cc8fdf7dbbf3a766ece4fe9ff2c0e (patch)
tree1c7b7dc8267d14549b4514342365139ed63ffc90 /vms
parent97998846c872d4a3ce247054f72e1859a6939126 (diff)
downloadperl-3f39e13a499cc8fdf7dbbf3a766ece4fe9ff2c0e.tar.gz
improve thread linking options on VMS
p4raw-id: //depot/perl@27593
Diffstat (limited to 'vms')
-rw-r--r--vms/descrip_mms.template21
1 files changed, 14 insertions, 7 deletions
diff --git a/vms/descrip_mms.template b/vms/descrip_mms.template
index 4bc1dd79cc..5e6cff4b06 100644
--- a/vms/descrip_mms.template
+++ b/vms/descrip_mms.template
@@ -29,7 +29,8 @@
~SOCKET~
~MALLOC~
~CC~
-~MT~
+~MTK~
+~MTU~
~FLAGS~
~LARGEFILE~
@@ -210,6 +211,16 @@ THREAD = THREAD
THREADH =
.endif
+.ifdef MTU
+.ifdef MTK
+MTHREADLINKFLAGS = /THREADS=(MULTIPLE_KERNEL,UPCALLS)
+.else
+MTHREADLINKFLAGS = /THREADS=UPCALLS
+.endif
+.else
+MTHREADLINKFLAGS =
+.endif
+
# C preprocessor manifest "DEBUGGING" ==> perl -D, not the VMS debugger
.IFDEF LARGEFILE
CFLAGS = $(XTRACCFLAGS)$(DBGCCFLAGS)$(FLAGS)/Define=$(LARGEFILE)
@@ -438,7 +449,7 @@ perlmain.c : miniperlmain.c $(MINIPERL_EXE) [.vms]writemain.pl
.ifdef __DEBUG__
# Link an extra perl that doesn't invoke the debugger
perl : $(DBG)perl$(E)
- Link $(LINKFLAGS)/NoDebug/Trace/NoMap/NoCross/NoFull/Exe=N$(DBG)perl$(E) perlmain$(O), perlshr.opt/Option, perlshr_attr.opt/Option $(CRTLOPTS)
+ Link $(LINKFLAGS)$(MTHREADLINKFLAGS)/NoDebug/Trace/NoMap/NoCross/NoFull/Exe=N$(DBG)perl$(E) perlmain$(O), perlshr.opt/Option, perlshr_attr.opt/Option $(CRTLOPTS)
.else
perl : $(DBG)perl$(E)
@ Continue
@@ -446,11 +457,7 @@ perl : $(DBG)perl$(E)
$(DBG)perl$(E) : perlmain$(O), $(DBG)perlshr$(E), $(MINIPERL_EXE)
@ @[.vms]genopt "PerlShr.Opt/Write" "|" "''F$Environment("Default")'$(DBG)PerlShr$(E)/Share"
-.ifdef MT
- Link $(LINKFLAGS)/Exe=$(MMS$TARGET) perlmain$(O), perlshr.opt/Option, perlshr_attr.opt/Option $(CRTLOPTS)/THREAD=(MULTI,UPCALL)
-.else
- Link $(LINKFLAGS)/Exe=$(MMS$TARGET) perlmain$(O), perlshr.opt/Option, perlshr_attr.opt/Option $(CRTLOPTS)
-.endif
+ Link $(LINKFLAGS)$(MTHREADLINKFLAGS)/Exe=$(MMS$TARGET) perlmain$(O), perlshr.opt/Option, perlshr_attr.opt/Option $(CRTLOPTS)
$(DBG)perlshr$(E) : $(DBG)libperl$(OLB) $(extobj) $(DBG)perlshr_xtras.ts
Link $(LINKFLAGS)/Share=$(MMS$TARGET) $(extobj) []$(DBG)perlshr_bld.opt/Option, perlshr_attr.opt/Option