This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Use full archname in architecture-specific directories on VMS.
authorCraig A. Berry <craigberry@mac.com>
Sun, 6 Mar 2011 04:18:38 +0000 (22:18 -0600)
committerCraig A. Berry <craigberry@mac.com>
Mon, 7 Mar 2011 02:57:51 +0000 (20:57 -0600)
We were only using the base archname (e.g., "VMS_AXP"), which is
ok for a default bulid, but if any additions were made to it,
such as "-thread", there would be a discrepancy between the
actual directory on disk and what perl.c:S_incpush would look for
when loading up @INC.  The net effect was that the architecture-
specific directory would not get loaded into @INC.

configure.com
vms/descrip_mms.template

index 816924a..4358a1f 100644 (file)
@@ -7091,6 +7091,7 @@ $ WC "''THREAD_KERNEL'"
 $ WC "PV=''version'"
 $ WC "FLAGS=FLAGS=''extra_flags'"
 $ WC "''LARGEFILE_REPLACE'"
+$ WC "ARCHNAME=ARCHNAME=''archname'"
 $ close CONFIG
 $!
 $ echo4 "Extracting ''defmakefile' (with variable substitutions)"
index b1b3ae5..b100ef3 100644 (file)
@@ -33,6 +33,7 @@
 ~MTU~
 ~FLAGS~
 ~LARGEFILE~
+~ARCHNAME~
 
 #: >>>>> Architecture-specific options <<<<<
 .ifdef IXE
@@ -58,14 +59,11 @@ E = .exe
 .endif
 
 .ifdef __IA64__
-ARCH = VMS_IA64
 OBJVAL = $(O)
 .else
 .ifdef __AXP__
-ARCH = VMS_AXP
 OBJVAL = $(O)
 .else
-ARCH = VMS_VAX
 OBJVAL = $(MMS$TARGET_NAME)$(O)
 .endif
 .endif
@@ -96,9 +94,9 @@ SOCKETSHR_SOCKETS=1
 .endif
 .endif
 
-ARCHDIR =  [.lib.$(ARCH).$(PERL_VERSION)]
-ARCHCORE = [.lib.$(ARCH).$(PERL_VERSION).CORE]
-ARCHAUTO = [.lib.$(ARCH).$(PERL_VERSION).auto]
+ARCHDIR =  [.lib.$(ARCHNAME).$(PERL_VERSION)]
+ARCHCORE = [.lib.$(ARCHNAME).$(PERL_VERSION).CORE]
+ARCHAUTO = [.lib.$(ARCHNAME).$(PERL_VERSION).auto]
 
 #: Backwards compatibility
 .ifdef DECC_PIPES_BROKEN
@@ -1535,7 +1533,7 @@ install : $(MINIPERL_EXE)
        $(MINIPERL) installperl
 
 archify : all
-       @ Write Sys$Output "Moving files to architecture-specific locations for $(ARCH)"
+       @ Write Sys$Output "Moving files to architecture-specific locations for $(ARCHNAME)"
        archroot = "$(ARCHAUTO)" - "]" + "...]"
        Backup/Log/Verify [.lib.auto...]*.*;/Exclude=(*.al,*.ix) 'archroot'/New_Version
        Delete/Log/NoConfirm [.lib.auto...]*.*;*/exclude=(*.al,*.ix,*.dir)
@@ -1944,7 +1942,7 @@ realclean : clean
        - If F$Search("Descrip.MMS").nes."" Then Delete/NoConfirm/Log Descrip.MMS;*
        - If F$Search("extra_pods.Com").nes."" Then Delete/NoConfirm/Log extra_pods.Com;*
        - If F$Search("extra.pods").nes."" Then Delete/NoConfirm/Log extra.pods;*
-       - $(MINIPERL) -e "use File::Path; rmtree(['lib/auto','lib/VMS','lib/$(ARCH)'],1,0);"
+       - $(MINIPERL) -e "use File::Path; rmtree(['lib/auto','lib/VMS','lib/$(ARCHNAME)'],1,0);"
        - If F$Search("*.TS").nes."" Then Delete/NoConfirm/Log *.TS;*
        - If F$Search("[.lib]Config.pm").nes."" Then Delete/NoConfirm/Log [.lib]Config.pm;*
        - If F$Search("[.lib]Config_heavy.pl").nes."" Then Delete/NoConfirm/Log [.lib]Config_heavy.pl;*