Change 23312 by nicholas@no-spam on 2004/09/10 09:20:53
Integrate:
[ 23218]
Subject: [PATCH] make cygwin ld2 executable
From: Yitzchak Scott-Thoennes <sthoenna@no-spam>
Date: Sun, 15 Aug 2004 17:14:59 -0700
Message-ID: <20040816001252.GA2148@no-spam>
[ 23219]
Subject: [PATCH] running mktables on VMS
From: "Craig A. Berry" <craigberry@no-spam>
Date: Tue, 10 Aug 2004 22:28:04 -0500
Message-ID: <41199244.9020706@no-spam>
[ 23274]
Subject: [PATCH] -Dunlink_all_versions for VMS
From: "Craig A. Berry" <craigberry@no-spam>
Date: Sat, 04 Sep 2004 11:58:56 -0500
Message-ID: <4139F450.7040708@no-spam>
Affected files ...
... //depot/maint-5.8/perl/configure.com#26 integrate
... //depot/maint-5.8/perl/cygwin/Makefile.SHs#3 integrate
... //depot/maint-5.8/perl/vms/descrip_mms.template#28 integrate
Differences ...
==== //depot/maint-5.8/perl/configure.com#26 (text) ====
Index: perl/configure.com
--- perl/configure.com#25~22979~ Wed Jun 23 03:32:34 2004
+++ perl/configure.com Fri Sep 10 02:20:53 2004
@@no-spam -44,6 +44,7 @@no-spam
$ user_c_flags = ""
$ use_ieee_math = "y"
$ be_case_sensitive = "n"
+$ unlink_all_versions = "n"
$ use_vmsdebug_perl = "n"
$ use64bitall = "n"
$ use64bitint = "n"
@@no-spam -880,7 +881,7 @@no-spam
$ config_symbols1 ="|installprivlib|installscript|installsitearch|installsitelib|most|oldarchlib|oldarchlibexp|osname|pager|perl_symbol|perl_verb|"
$ config_symbols2 ="|prefix|privlib|privlibexp|scriptdir|sitearch|sitearchexp|sitebin|sitelib|sitelib_stem|sitelibexp|try_cxx|use64bitall|use64bitint|"
$ config_symbols3 ="|usecasesensitive|usedefaulttypes|usedevel|useieee|useithreads|usemultiplicity|usemymalloc|usedebugging_perl|useperlio|usesecurelog|"
-$ config_symbols4 ="|usethreads|usevmsdebug|usefaststdio|usemallocwrap|"
+$ config_symbols4 ="|usethreads|usevmsdebug|usefaststdio|usemallocwrap|unlink_all_versions|"
$!
$ open/read CONFIG 'config_sh'
$ rd_conf_loop:
@@no-spam -2445,6 +2446,30 @@no-spam
$ usecasesensitive = "undef"
$ if (use_ieee_math) then useieee = "define"
$ if (be_case_sensitive) then usecasesensitive = "define"
+$! Unlink all versions?
+$ echo ""
+$ echo "By default, Perl's unlink() provides VMS-like behavior and only"
+$ echo "deletes the latest version of a file. Enabling this option builds"
+$ echo "Perl so that unlink() deletes all versions of a file."
+$ bool_dflt = unlink_all_versions
+$ if f$type(unlink_all_versions) .nes. ""
+$ then
+$ if unlink_all_versions .or. unlink_all_versions .eqs. "define"
+$ then
+$ bool_dflt="y"
+$ else
+$ bool_dflt="n"
+$ endif
+$ endif
+$ rp = "Make unlink() delete all versions of a file? [''bool_dflt'] "
+$ GOSUB myread
+$ unlink_all_versions = ans
+$ IF unlink_all_versions
+$ THEN
+$ d_unlink_all_versions = "define"
+$ ELSE
+$ d_unlink_all_versions = "undef"
+$ ENDIF
$! CC Flags
$ echo ""
$ echo "Your compiler may want other flags. For this question you should include"
@@no-spam -5594,7 +5619,7 @@no-spam
$ WC "d_umask='define'"
$ WC "d_uname='" + d_uname + "'"
$ WC "d_union_semun='undef'"
-$ WC "d_unlink_all_versions='undef'"
+$ WC "d_unlink_all_versions='" + d_unlink_all_versions + "'" ! VMS-specific
$ WC "d_unordered='undef'"
$ WC "d_usleep='" + d_usleep + "'"
$ WC "d_usleepproto='" + d_usleep + "'"
@@no-spam -6166,6 +6191,8 @@no-spam
$! WC "#define PERL_IGNORE_FPUSIG SIGFPE"
$ ENDIF
$ IF kill_by_sigprc .EQS. "define" then WC "#define KILL_BY_SIGPRC"
+$ IF unlink_all_versions .OR. unlink_all_versions .EQS. "define" THEN -
+ WC "#define UNLINK_ALL_VERSIONS"
$ CLOSE CONFIG
$!
$ echo4 "Doing variable substitutions on .SH files..."
==== //depot/maint-5.8/perl/cygwin/Makefile.SHs#3 (text) ====
Index: perl/cygwin/Makefile.SHs
--- perl/cygwin/Makefile.SHs#2~21784~ Tue Nov 25 11:25:25 2003
+++ perl/cygwin/Makefile.SHs Fri Sep 10 02:20:53 2004
@@no-spam -32,6 +32,7 @@no-spam
ld2: $& Makefile perlld ${src}/cygwin/ld2.in
@no-spam "extracting ld2 (with variable substitutions)"
@no-spam s,@buildpath@no-spam <${src}/cygwin/ld2.in >ld2
+ @no-spam a+x ld2
@no-spam "installing ld2 into $installbin"
# install is included in Cygwin distributions, and we make a note of th
# requirement in the README.cygwin file. However, let's give them
==== //depot/maint-5.8/perl/vms/descrip_mms.template#28 (text) ====
Index: perl/vms/descrip_mms.template
--- perl/vms/descrip_mms.template#27~23153~ Thu Jul 22 10:05:37 2004
+++ perl/vms/descrip_mms.template Fri Sep 10 02:20:53 2004
@@no-spam -325,17 +325,11 @@no-spam
$(CC) $(CFLAGS) $(MMS$SOURCE_NAME).c
.endif
-unidatafiles1 = [.lib.unicore]Canonical.pl [.lib.unicore]Exact.pl
-unidatafiles2 = [.lib.unicore]Properties [.lib.unicore]Decomposition.pl
-unidatafiles3 = [.lib.unicore]CombiningClass.pl [.lib.unicore]Name.pl
-unidatafiles4 = [.lib.unicore]PVA.pl
-unidatafiles = $(unidatafiles1) $(unidatafiles2) $(unidatafiles3) $(unidatafiles4)
-
# Directories of Unicode data files generated by mktables
unidatadirs = lib/unicore/To lib/unicore/lib
# Modules which must be installed before we can build extensions
-LIBPREREQ = $(ARCHDIR)Config.pm [.lib.VMS]Filespec.pm [.lib]DynaLoader.pm [.lib]XSLoader.pm [.lib]lib.pm [.lib.ExtUtils]XSSymSet.pm $(ARCHDIR)vmspipe.com [.lib]re.pm $(unidatafiles)
+LIBPREREQ = $(ARCHDIR)Config.pm [.lib.VMS]Filespec.pm [.lib]DynaLoader.pm [.lib]XSLoader.pm [.lib]lib.pm [.lib.ExtUtils]XSSymSet.pm $(ARCHDIR)vmspipe.com [.lib]re.pm unidatafiles.ts
utils1 = [.lib.pod]perldoc.com [.lib.ExtUtils]Miniperl.pm [.utils]c2ph.com [.utils]h2ph.com
utils2 = [.utils]h2xs.com [.utils]libnetcfg.com [.lib]perlbug.com [.lib]perlcc.com [.utils]dprofpp.com
@@no-spam -483,10 +477,10 @@no-spam
$(ARCHDIR)vmspipe.com : vmspipe.com
Copy $(MMS$SOURCE) $(ARCHDIR)
-# Aargh. I don't know how (if) it's possible to change directory
-# So make the perl script do it
-$(unidatafiles) : $(MINIPERL_EXE) [.lib]Config.pm [.lib.unicore]mktables
- $(MINIPERL) [.lib.unicore]mktables "-C" lib "-C" unicore
+unidatafiles.ts : $(MINIPERL_EXE) [.lib]Config.pm [.lib.unicore]mktables
+ $(MINIPERL) [.lib.unicore]mktables "-C" [.lib.unicore]
+ @no-spam If F$Search("$(MMS$TARGET)").nes."" Then Delete/NoLog/NoConfirm $(MMS$TARGET);*
+ @no-spam Copy/NoConfirm _NLA0: $(MMS$TARGET)
[.ext.dynaloader]dl_vms.c : [.ext.dynaloader]dl_vms.xs $(ARCHDIR)Config.pm [.lib.ExtUtils]XSSymSet.pm $(MINIPERL_EXE)
$(XSUBPP) $(MMS$SOURCE) >$(MMS$TARGET)
@@no-spam -1668,7 +1662,8 @@no-spam
- If F$Search("Config.H").nes."" Then Delete/NoConfirm/Log Config.H;*
- If F$Search("Config.SH").nes."" Then Delete/NoConfirm/Log Config.SH;*
- $(MINIPERL) -e "use File::Path; rmtree(\@no-spam" config
- - $(MINIPERL) -e "foreach (@no-spam {unlink qq{$_;*} or warn qq{unlink $_: $!}}" $(unidatafiles)
+ - If F$Search("[.lib.unicore]*.pl").nes."" Then Delete/NoConfirm/Log [.lib.unicore]*.pl;*
+ - If F$Search("[.lib.unicore]Properties.").nes."" Then Delete/NoConfirm/Log [.lib.unicore]Properties.;*
- $(MINIPERL) -e "use File::Path; rmtree(\@no-spam" $(unidatadirs)
- If F$Search("Descrip.MMS").nes."" Then Delete/NoConfirm/Log Descrip.MMS;*
- If F$Search("make_ext.Com").nes."" Then Delete/NoConfirm/Log make_ext.Com;*
End of Patch.