This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Resync with mainline
authorCharles Bailey <bailey@newman.upenn.edu>
Wed, 9 Feb 2000 09:09:45 +0000 (09:09 +0000)
committerbailey <bailey@newman.upenn.edu>
Wed, 9 Feb 2000 09:09:45 +0000 (09:09 +0000)
p4raw-id: //depot/vmsperl@5049
p4raw-branched: from //depot/perl@4822 'branch in'
ext/Sys/Syslog/Makefile.PL ext/Sys/Syslog/Syslog.pm
lib/Pod/Find.pm lib/Pod/ParseUtils.pm t/op/exists_sub.t
t/op/ver.t t/pragma/diagnostics.t win32/bin/exetype.pl
vos/config.def vos/config.pl (@4896..) pod/perlintern.pod
(@4915..) ext/Sys/Syslog/Syslog.xs (@4980..)
pod/perlunicode.pod (@5013..) pod/perlapi.pod (@5015..)
Todo-5.6 (@5027..)
p4raw-deleted: from //depot/perl@4822 'delete in' lib/Sys/Syslog.pm
(@2406..) Todo-5.005 (@4008..) lib/caller.pm (@4860..)
p4raw-edited: from //depot/perl@4822 'edit in' vms/subconfigure.com
(@4767..)
p4raw-integrated: from //depot/perl@4822 'copy in' hints/unicosmk.sh
(@948..) lib/FileHandle.pm (@1044..) lib/ExtUtils/Packlist.pm
(@1315..) ext/IPC/SysV/SysV.pm (@1372..) lib/Net/protoent.pm
lib/Net/servent.pm lib/Text/Soundex.pm (@1575..) README.vos
vos/Changes vos/build.cm vos/compile_perl.cm vos/perl.bind
vos/test_vos_dummies.c vos/vos_dummies.c (@1838..)
lib/utf8_heavy.pl (@2039..) ext/IO/lib/IO/Seekable.pm
lib/ExtUtils/Command.pm lib/Net/hostent.pm lib/Net/netent.pm
lib/Time/gmtime.pm lib/Time/localtime.pm lib/User/grent.pm
lib/User/pwent.pm (@2620..) eg/cgi/index.html lib/CGI/Apache.pm
lib/CGI/Switch.pm (@2830..) ext/IO/lib/IO/Dir.pm
ext/IO/lib/IO/Pipe.pm ext/IO/lib/IO/Poll.pm
ext/IO/lib/IO/Socket/UNIX.pm (@2882..) t/comp/use.t (@2891..)
lib/File/Compare.pm (@3061..) form.h (@3124..) hints/netbsd.sh
(@3158..) t/op/grep.t (@3180..) lib/AnyDBM_File.pm (@3317..)
lib/Test.pm (@3376..) lib/CPAN/Nox.pm (@3458..)
hints/openbsd.sh (@3516..) mg.h (@3524..) lib/CGI/Cookie.pm
lib/CGI/Pretty.pm (@3559..) lib/Text/ParseWords.pm (@3563..)
ext/IO/lib/IO/File.pm lib/File/Basename.pm (@3650..)
x2p/find2perl.PL (@3677..) cflags.SH (@3774..) utils/dprofpp.PL
(@3778..) ext/IO/lib/IO/Handle.pm (@3825..) lib/CGI.pm
lib/dumpvar.pl (@3848..) README.cygwin
lib/ExtUtils/MM_Cygwin.pm (@3852..) README.threads (@3860..)
lib/SelfLoader.pm t/io/tell.t t/lib/cgi-html.t t/op/attrs.t
(@4076..) ext/SDBM_File/sdbm/sdbm.c (@4082..)
lib/Test/Harness.pm (@4092..) pod/perlcompile.pod (@4120..)
ext/Opcode/Safe.pm (@4131..) ext/DB_File/Changes
ext/DB_File/Makefile.PL ext/DB_File/version.c (@4142..)
ext/DB_File/DB_File.xs (@4144..) lib/File/Spec/VMS.pm (@4182..)
hints/dynixptx.sh (@4271..) t/lib/fields.t (@4303..) thrdvar.h
(@4316..) pod/perlguts.pod (@4339..) Porting/makerel (@4391..)
lib/Text/Tabs.pm (@4398..) perlio.c (@4402..)
lib/CPAN/FirstTime.pm (@4416..) README (@4433..)
lib/attributes.pm (@4438..) ext/Devel/Peek/Peek.xs (@4475..)
Policy_sh.SH (@4496..) universal.c xsutils.c (@4511..)
ext/B/B/Stash.pm ext/B/NOTES ext/B/O.pm keywords.h keywords.pl
(@4515..) util.h (@4545..) ext/B/B/Asmdata.pm
ext/B/B/Deparse.pm (@4546..) ext/Data/Dumper/Dumper.xs
pod/perlmod.pod (@4556..) ext/IO/IO.xs lib/unicode/Is/ASCII.pl
lib/unicode/Is/Alnum.pl lib/unicode/Is/Alpha.pl
lib/unicode/Is/BidiAN.pl lib/unicode/Is/BidiB.pl
lib/unicode/Is/BidiCS.pl lib/unicode/Is/BidiEN.pl
lib/unicode/Is/BidiES.pl lib/unicode/Is/BidiET.pl
lib/unicode/Is/BidiL.pl lib/unicode/Is/BidiON.pl
lib/unicode/Is/BidiR.pl lib/unicode/Is/BidiS.pl
lib/unicode/Is/BidiWS.pl lib/unicode/Is/C.pl
lib/unicode/Is/Cc.pl lib/unicode/Is/Cn.pl
lib/unicode/Is/Cntrl.pl lib/unicode/Is/Co.pl
lib/unicode/Is/DCcircle.pl lib/unicode/Is/DCcompat.pl
lib/unicode/Is/DCfinal.pl lib/unicode/Is/DCfont.pl
lib/unicode/Is/DCinital.pl lib/unicode/Is/DCinitial.pl
lib/unicode/Is/DCisolated.pl lib/unicode/Is/DCnarrow.pl
lib/unicode/Is/DCnoBreak.pl lib/unicode/Is/DCsmall.pl
lib/unicode/Is/DCsquare.pl lib/unicode/Is/DCsub.pl
lib/unicode/Is/DCsuper.pl lib/unicode/Is/DCvertical.pl
lib/unicode/Is/DCwide.pl lib/unicode/Is/DecoCanon.pl
lib/unicode/Is/DecoCompat.pl lib/unicode/Is/Digit.pl
lib/unicode/Is/Graph.pl lib/unicode/Is/L.pl
lib/unicode/Is/Ll.pl lib/unicode/Is/Lm.pl lib/unicode/Is/Lo.pl
lib/unicode/Is/Lower.pl lib/unicode/Is/Lt.pl
lib/unicode/Is/Lu.pl lib/unicode/Is/M.pl lib/unicode/Is/Mc.pl
lib/unicode/Is/Mirrored.pl lib/unicode/Is/Mn.pl
lib/unicode/Is/N.pl lib/unicode/Is/Nd.pl lib/unicode/Is/No.pl
lib/unicode/Is/P.pl lib/unicode/Is/Pd.pl lib/unicode/Is/Pe.pl
lib/unicode/Is/Po.pl lib/unicode/Is/Print.pl
lib/unicode/Is/Ps.pl lib/unicode/Is/Punct.pl
lib/unicode/Is/S.pl lib/unicode/Is/Sc.pl lib/unicode/Is/Sm.pl
lib/unicode/Is/So.pl lib/unicode/Is/Space.pl (@4573..) perly.c
vms/perly_c.vms (@4578..) deb.c (@4588..) lib/Pod/Checker.pm
lib/Pod/Parser.pm lib/Pod/Usage.pm t/pod/poderrs.t
t/pod/poderrs.xr (@4590..) pod/Makefile pod/roffitall unixish.h
vos/vosish.h (@4602..) run.c (@4603..) utils/perlbug.PL
utils/perldoc.PL (@4604..) hints/hpux.sh (@4606..)
lib/strict.pm pod/perlsyn.pod (@4616..) ext/DB_File/DB_File.pm
ext/Fcntl/Fcntl.pm ext/GDBM_File/GDBM_File.pm
ext/Opcode/Opcode.pm ext/SDBM_File/SDBM_File.pm
ext/Socket/Socket.pm lib/AutoLoader.pm lib/Getopt/Std.pm
(@4623..) lib/ExtUtils/Manifest.pm (@4632..) pod/perlfaq2.pod
(@4636..) t/op/misc.t t/pragma/warn/2use (@4641..)
lib/Math/BigFloat.pm (@4685..) pod/perlfilter.pod
pod/perlopentut.pod (@4699..) t/pragma/warn/pp_hot
t/pragma/warn/pp_sys (@4709..) cygwin/Makefile.SHs
os2/Makefile.SHs (@4710..) lib/Net/Ping.pm (@4711..)
ext/POSIX/POSIX.xs ext/SDBM_File/sdbm/pair.c (@4717..)
lib/ExtUtils/Liblist.pm (@4720..) t/lib/charnames.t
t/lib/dumper.t (@4723..) lib/byte_heavy.pl (@4726..)
t/pragma/warn/doop t/pragma/warn/pp t/pragma/warn/sv
t/pragma/warn/utf8 (@4727..) lib/ExtUtils/xsubpp (@4731..)
pod/perlre.pod (@4732..) INTERN.h (@4734..) globals.c (@4744..)
lib/File/Copy.pm (@4753..) lib/ExtUtils/MM_VMS.pm
lib/ExtUtils/MM_Win32.pm (@4754..) lib/ExtUtils/Install.pm
(@4758..) ext/B/B/C.pm (@4763..) README.os2 (@4766..)
lib/ExtUtils/MakeMaker.pm (@4769..) installperl (@4774..)
lib/CPAN.pm lib/ExtUtils/Installed.pm lib/ExtUtils/MM_Unix.pm
lib/ExtUtils/Mksymlists.pm lib/diagnostics.pm (@4777..)
t/lib/thread.t (@4780..) pod/perl.pod (@4781..)
ext/IO/lib/IO/Socket.pm (@4782..) win32/perlhost.h (@4792..)
lib/Tie/Array.pm (@4796..) t/pragma/strict-vars (@4801..)
win32/config.bc win32/config.gc win32/config.vc (@4817..)
INSTALL (@4824..) utils/h2xs.PL (@4825..) embed.h (@4830..)
ext/Data/Dumper/Dumper.pm (@4832..) lib/Tie/Handle.pm (@4833..)
proto.h t/op/closure.t (@4834..) lib/base.pm lib/fields.pm
(@4835..) dump.c (@4836..) t/io/fs.t (@4838..)
lib/Carp/Heavy.pm (@4839..) t/cmd/while.t (@4848..)
Porting/Glossary Porting/config.sh Porting/config_H (@4850..)
lib/Sys/Hostname.pm (@4851..) ext/Devel/DProf/DProf.pm
(@4852..) hints/cygwin.sh (@4853..) patchlevel.h (@4858..)
ext/File/Glob/Glob.pm ext/IO/lib/IO/Socket/INET.pm
ext/NDBM_File/NDBM_File.pm ext/ODBM_File/ODBM_File.pm
ext/POSIX/POSIX.pm lib/Dumpvalue.pm lib/Fatal.pm
lib/File/Path.pm lib/File/stat.pm lib/Math/Complex.pm
lib/Math/Trig.pm lib/Shell.pm lib/constant.pm lib/lib.pm
(@4860..) lib/AutoSplit.pm (@4873..) lib/Pod/Html.pm (@4883..)
win32/perllib.c (@4884..) vos/config.h vos/config_h.SH_orig
(@4896..) perly.y pod/perlrun.pod pod/perlsub.pod
pod/perltodo.pod (@4905..) README.win32 lib/Class/Struct.pm
(@4906..) Porting/p4desc (@4908..) ext/Devel/Peek/Peek.pm
ext/Thread/Thread.pm lib/File/Find.pm lib/UNIVERSAL.pm
pod/buildtoc pod/perlfork.pod (@4910..) t/op/fork.t (@4914..)
XSUB.h av.h cop.h cv.h gv.h handy.h hv.h makedef.pl
pod/perltoc.pod pp.h scope.h (@4915..) global.sym objXSUB.h
(@4916..) lib/Cwd.pm (@4921..) doop.c t/pragma/warn/toke
(@4930..) win32/win32.c (@4933..) embedvar.h intrpvar.h
lib/charnames.pm op.h sv.h (@4937..) embed.pl (@4939..)
lib/utf8.pm regcomp.c regexec.c (@4941..)
vms/descrip_mms.template (@4944..) lib/warnings.pm warnings.pl
(@4947..) lib/File/Spec/Win32.pm (@4949..) lib/perl5db.pl
(@4955..) lib/Benchmark.pm (@4958..) lib/English.pm (@4960..)
lib/byte.pm (@4969..) scope.c (@4970..)
ext/Devel/DProf/DProf.xs (@4973..) malloc.c (@4974..) op.c
pod/perldebug.pod pp_ctl.c (@4975..) Makefile.SH (@4977..)
config_h.SH (@4978..) pod/perlop.pod (@4979..) pod/perlfunc.pod
(@4998..) pod/perldiag.pod (@5001..) pp_sys.c (@5006..)
EXTERN.h doio.c perl.h util.c (@5008..) av.c hv.c pp.c pp_hot.c
utf8.c utf8.h (@5009..) pod/perldelta.pod pod/perlport.pod
(@5015..) MANIFEST (@5016..) sv.c (@5017..) win32/config_H.bc
win32/config_H.gc win32/config_H.vc (@5019..) win32/Makefile
win32/makefile.mk (@5022..) win32/win32.h (@5024..) mg.c toke.c
(@5025..) gv.c perl.c pod/perlvar.pod (@5029..)
pod/perlhist.pod (@5034..) Configure (@5036..) Changes
(@5038..) 'merge in' configure.com (@4773..)

375 files changed:
Changes
Configure
EXTERN.h
INSTALL
INTERN.h
MANIFEST
Makefile.SH
Policy_sh.SH
Porting/Glossary
Porting/config.sh
Porting/config_H
Porting/makerel
Porting/p4desc
README
README.cygwin
README.os2
README.threads
README.vos
README.win32
Todo-5.6 [moved from Todo-5.005 with 50% similarity]
XSUB.h
av.c
av.h
cflags.SH
config_h.SH
configure.com
cop.h
cv.h
cygwin/Makefile.SHs
deb.c
doio.c
doop.c
dump.c
eg/cgi/index.html
embed.h
embed.pl
embedvar.h
ext/B/B/Asmdata.pm
ext/B/B/C.pm
ext/B/B/Deparse.pm
ext/B/B/Stash.pm
ext/B/NOTES
ext/B/O.pm
ext/DB_File/Changes
ext/DB_File/DB_File.pm
ext/DB_File/DB_File.xs
ext/DB_File/Makefile.PL
ext/DB_File/version.c
ext/Data/Dumper/Dumper.pm
ext/Data/Dumper/Dumper.xs
ext/Devel/DProf/DProf.pm
ext/Devel/DProf/DProf.xs
ext/Devel/Peek/Peek.pm
ext/Devel/Peek/Peek.xs
ext/Fcntl/Fcntl.pm
ext/File/Glob/Glob.pm
ext/GDBM_File/GDBM_File.pm
ext/IO/IO.xs
ext/IO/lib/IO/Dir.pm
ext/IO/lib/IO/File.pm
ext/IO/lib/IO/Handle.pm
ext/IO/lib/IO/Pipe.pm
ext/IO/lib/IO/Poll.pm
ext/IO/lib/IO/Seekable.pm
ext/IO/lib/IO/Socket.pm
ext/IO/lib/IO/Socket/INET.pm
ext/IO/lib/IO/Socket/UNIX.pm
ext/IPC/SysV/SysV.pm
ext/NDBM_File/NDBM_File.pm
ext/ODBM_File/ODBM_File.pm
ext/Opcode/Opcode.pm
ext/Opcode/Safe.pm
ext/POSIX/POSIX.pm
ext/POSIX/POSIX.xs
ext/SDBM_File/SDBM_File.pm
ext/SDBM_File/sdbm/pair.c
ext/SDBM_File/sdbm/sdbm.c
ext/Socket/Socket.pm
ext/Sys/Syslog/Makefile.PL [new file with mode: 0644]
ext/Sys/Syslog/Syslog.pm [moved from lib/Sys/Syslog.pm with 90% similarity]
ext/Sys/Syslog/Syslog.xs [new file with mode: 0644]
ext/Thread/Thread.pm
form.h
global.sym
globals.c
gv.c
gv.h
handy.h
hints/cygwin.sh
hints/dynixptx.sh
hints/hpux.sh
hints/netbsd.sh
hints/openbsd.sh
hints/unicosmk.sh
hv.c
hv.h
installperl
intrpvar.h
keywords.h
keywords.pl
lib/AnyDBM_File.pm
lib/AutoLoader.pm
lib/AutoSplit.pm
lib/Benchmark.pm
lib/CGI.pm
lib/CGI/Apache.pm
lib/CGI/Cookie.pm
lib/CGI/Pretty.pm
lib/CGI/Switch.pm
lib/CPAN.pm
lib/CPAN/FirstTime.pm
lib/CPAN/Nox.pm
lib/Carp/Heavy.pm
lib/Class/Struct.pm
lib/Cwd.pm
lib/Dumpvalue.pm
lib/English.pm
lib/ExtUtils/Command.pm
lib/ExtUtils/Install.pm
lib/ExtUtils/Installed.pm
lib/ExtUtils/Liblist.pm
lib/ExtUtils/MM_Cygwin.pm
lib/ExtUtils/MM_Unix.pm
lib/ExtUtils/MM_VMS.pm
lib/ExtUtils/MM_Win32.pm
lib/ExtUtils/MakeMaker.pm
lib/ExtUtils/Manifest.pm
lib/ExtUtils/Mksymlists.pm
lib/ExtUtils/Packlist.pm
lib/ExtUtils/xsubpp
lib/Fatal.pm
lib/File/Basename.pm
lib/File/Compare.pm
lib/File/Copy.pm
lib/File/Find.pm
lib/File/Path.pm
lib/File/Spec/VMS.pm
lib/File/Spec/Win32.pm
lib/File/stat.pm
lib/FileHandle.pm
lib/Getopt/Std.pm
lib/Math/BigFloat.pm
lib/Math/Complex.pm
lib/Math/Trig.pm
lib/Net/Ping.pm
lib/Net/hostent.pm
lib/Net/netent.pm
lib/Net/protoent.pm
lib/Net/servent.pm
lib/Pod/Checker.pm
lib/Pod/Find.pm [new file with mode: 0644]
lib/Pod/Html.pm
lib/Pod/ParseUtils.pm [new file with mode: 0644]
lib/Pod/Parser.pm
lib/Pod/Usage.pm
lib/SelfLoader.pm
lib/Shell.pm
lib/Sys/Hostname.pm
lib/Test.pm
lib/Test/Harness.pm
lib/Text/ParseWords.pm
lib/Text/Soundex.pm
lib/Text/Tabs.pm
lib/Tie/Array.pm
lib/Tie/Handle.pm
lib/Time/gmtime.pm
lib/Time/localtime.pm
lib/UNIVERSAL.pm
lib/User/grent.pm
lib/User/pwent.pm
lib/attributes.pm
lib/base.pm
lib/byte.pm
lib/byte_heavy.pl
lib/caller.pm [deleted file]
lib/charnames.pm
lib/constant.pm
lib/diagnostics.pm
lib/dumpvar.pl
lib/fields.pm
lib/lib.pm
lib/perl5db.pl
lib/strict.pm
lib/unicode/Is/ASCII.pl
lib/unicode/Is/Alnum.pl
lib/unicode/Is/Alpha.pl
lib/unicode/Is/BidiAN.pl
lib/unicode/Is/BidiB.pl
lib/unicode/Is/BidiCS.pl
lib/unicode/Is/BidiEN.pl
lib/unicode/Is/BidiES.pl
lib/unicode/Is/BidiET.pl
lib/unicode/Is/BidiL.pl
lib/unicode/Is/BidiON.pl
lib/unicode/Is/BidiR.pl
lib/unicode/Is/BidiS.pl
lib/unicode/Is/BidiWS.pl
lib/unicode/Is/C.pl
lib/unicode/Is/Cc.pl
lib/unicode/Is/Cn.pl
lib/unicode/Is/Cntrl.pl
lib/unicode/Is/Co.pl
lib/unicode/Is/DCcircle.pl
lib/unicode/Is/DCcompat.pl
lib/unicode/Is/DCfinal.pl
lib/unicode/Is/DCfont.pl
lib/unicode/Is/DCinital.pl
lib/unicode/Is/DCinitial.pl
lib/unicode/Is/DCisolated.pl
lib/unicode/Is/DCnarrow.pl
lib/unicode/Is/DCnoBreak.pl
lib/unicode/Is/DCsmall.pl
lib/unicode/Is/DCsquare.pl
lib/unicode/Is/DCsub.pl
lib/unicode/Is/DCsuper.pl
lib/unicode/Is/DCvertical.pl
lib/unicode/Is/DCwide.pl
lib/unicode/Is/DecoCanon.pl
lib/unicode/Is/DecoCompat.pl
lib/unicode/Is/Digit.pl
lib/unicode/Is/Graph.pl
lib/unicode/Is/L.pl
lib/unicode/Is/Ll.pl
lib/unicode/Is/Lm.pl
lib/unicode/Is/Lo.pl
lib/unicode/Is/Lower.pl
lib/unicode/Is/Lt.pl
lib/unicode/Is/Lu.pl
lib/unicode/Is/M.pl
lib/unicode/Is/Mc.pl
lib/unicode/Is/Mirrored.pl
lib/unicode/Is/Mn.pl
lib/unicode/Is/N.pl
lib/unicode/Is/Nd.pl
lib/unicode/Is/No.pl
lib/unicode/Is/P.pl
lib/unicode/Is/Pd.pl
lib/unicode/Is/Pe.pl
lib/unicode/Is/Po.pl
lib/unicode/Is/Print.pl
lib/unicode/Is/Ps.pl
lib/unicode/Is/Punct.pl
lib/unicode/Is/S.pl
lib/unicode/Is/Sc.pl
lib/unicode/Is/Sm.pl
lib/unicode/Is/So.pl
lib/unicode/Is/Space.pl
lib/utf8.pm
lib/utf8_heavy.pl
lib/warnings.pm
makedef.pl
malloc.c
mg.c
mg.h
objXSUB.h
op.c
op.h
os2/Makefile.SHs
patchlevel.h
perl.c
perl.h
perlio.c
perly.c
perly.y
pod/Makefile
pod/buildtoc
pod/perl.pod
pod/perlapi.pod [new file with mode: 0644]
pod/perlcompile.pod
pod/perldebug.pod
pod/perldelta.pod
pod/perldiag.pod
pod/perlfaq2.pod
pod/perlfilter.pod
pod/perlfork.pod
pod/perlfunc.pod
pod/perlguts.pod
pod/perlhist.pod
pod/perlintern.pod [new file with mode: 0644]
pod/perlmod.pod
pod/perlop.pod
pod/perlopentut.pod
pod/perlport.pod
pod/perlre.pod
pod/perlrun.pod
pod/perlsub.pod
pod/perlsyn.pod
pod/perltoc.pod
pod/perltodo.pod
pod/perlunicode.pod [new file with mode: 0644]
pod/perlvar.pod
pod/roffitall
pp.c
pp.h
pp_ctl.c
pp_hot.c
pp_sys.c
proto.h
regcomp.c
regexec.c
run.c
scope.c
scope.h
sv.c
sv.h
t/cmd/while.t
t/comp/use.t
t/io/fs.t
t/io/tell.t
t/lib/cgi-html.t
t/lib/charnames.t
t/lib/dumper.t
t/lib/fields.t
t/lib/thread.t
t/op/attrs.t
t/op/closure.t
t/op/exists_sub.t [new file with mode: 0755]
t/op/fork.t
t/op/grep.t
t/op/misc.t
t/op/ver.t [new file with mode: 0755]
t/pod/poderrs.t
t/pod/poderrs.xr
t/pragma/diagnostics.t [new file with mode: 0755]
t/pragma/strict-vars
t/pragma/warn/2use
t/pragma/warn/doop
t/pragma/warn/pp
t/pragma/warn/pp_hot
t/pragma/warn/pp_sys
t/pragma/warn/sv
t/pragma/warn/toke
t/pragma/warn/utf8
thrdvar.h
toke.c
universal.c
unixish.h
utf8.c
utf8.h
util.c
util.h
utils/dprofpp.PL
utils/h2xs.PL
utils/perlbug.PL
utils/perldoc.PL
vms/descrip_mms.template
vms/perly_c.vms
vms/subconfigure.com
vos/Changes
vos/build.cm
vos/compile_perl.cm
vos/config.def [new file with mode: 0644]
vos/config.h
vos/config.pl [new file with mode: 0644]
vos/config_h.SH_orig
vos/perl.bind
vos/test_vos_dummies.c
vos/vos_dummies.c
vos/vosish.h
warnings.pl
win32/Makefile
win32/bin/exetype.pl [new file with mode: 0644]
win32/config.bc
win32/config.gc
win32/config.vc
win32/config_H.bc
win32/config_H.gc
win32/config_H.vc
win32/makefile.mk
win32/perlhost.h
win32/perllib.c
win32/win32.c
win32/win32.h
x2p/find2perl.PL
xsutils.c

diff --git a/Changes b/Changes
index 7f0b267..dbb0a48 100644 (file)
--- a/Changes
+++ b/Changes
@@ -17,7 +17,7 @@ here are some of the more common names in the Changes file, and their
 current addresses (as of July 1998):
 
     Gisle Aas           <gisle@aas.no>
-    Abigail             <abigail@fnx.com>
+    Abigail             <abigail@delanet.com>
     Kenneth Albanowski  <kjahds@kjahds.com>
     Russ Allbery        <rra@stanford.edu>
     Spider Boardman     <spider@orb.nashua.nh.us>
@@ -75,10 +75,1457 @@ indicator:
 
 
 ----------------
-Version v5.5.640        Development release working toward 5.6
+Version v5.5.650        Development release working toward v5.6
 ----------------
 
 ____________________________________________________________________________
+[  5040] By: gsar                                  on 2000/02/08  07:51:20
+        Log: documentation patches (from Michael Schwern and Yitzchak
+             Scott-Thoennes)
+     Branch: perl
+          ! av.c hv.c lib/UNIVERSAL.pm pod/perlapi.pod
+____________________________________________________________________________
+[  5039] By: gsar                                  on 2000/02/08  07:22:46
+        Log: alias to $^V to $PERL_VERSION_TUPLE
+     Branch: perl
+          ! lib/English.pm pod/perlvar.pod
+____________________________________________________________________________
+[  5038] By: gsar                                  on 2000/02/08  07:03:34
+        Log: update Changes
+     Branch: perl
+          ! Changes pod/perlhist.pod
+____________________________________________________________________________
+[  5037] By: gsar                                  on 2000/02/08  06:59:55
+        Log: Windows has a somewhat different sitelib layout, and needs
+             $sitelib/archname added as well
+     Branch: perl
+          ! perl.c
+____________________________________________________________________________
+[  5036] By: gsar                                  on 2000/02/08  06:59:03
+        Log: change#4987 appears to have broken libs scan for platforms that
+             don't set ignore_versioned_solibs (Solaris is one of them); add
+             derivative fix from the older logic for skipping versioned .so
+             libs
+     Branch: perl
+          ! Configure
+____________________________________________________________________________
+[  5035] By: gsar                                  on 2000/02/07  21:21:44
+        Log: sprintf("%v"...) buffer resizing busted
+     Branch: perl
+          ! sv.c
+____________________________________________________________________________
+[  5034] By: gsar                                  on 2000/02/07  19:16:21
+        Log: update Changes
+     Branch: perl
+          ! Changes pod/perlhist.pod
+____________________________________________________________________________
+[  5033] By: gsar                                  on 2000/02/07  19:01:08
+        Log: stringify "\x{FFF}" to utf8 correctly; set SvUTF8 on "\x{XX}"
+             only when XX > 127
+     Branch: perl
+          ! pp_hot.c toke.c
+____________________________________________________________________________
+[  5032] By: gsar                                  on 2000/02/07  18:25:31
+        Log: add note about printf("%v",...)
+     Branch: perl
+          ! pod/perldelta.pod
+____________________________________________________________________________
+[  5031] By: gsar                                  on 2000/02/07  18:18:43
+        Log: update Changes
+     Branch: perl
+          ! Changes Todo-5.6
+____________________________________________________________________________
+[  5030] By: gsar                                  on 2000/02/07  18:17:49
+        Log: thinko in change#5029
+     Branch: perl
+          ! gv.c
+____________________________________________________________________________
+[  5029] By: gsar                                  on 2000/02/07  17:49:58
+        Log: change $^U to $^WIDE_SYSTEM_CALLS; s/PL_bigchar/PL_widesyscalls/;
+             introduce -C switch (sets $^WIDE_SYSTEM_CALLS)
+     Branch: perl
+          ! embedvar.h gv.c intrpvar.h mg.c perl.c perlapi.h
+          ! pod/perlrun.pod pod/perlunicode.pod pod/perlvar.pod
+          ! win32/win32.h
+____________________________________________________________________________
+[  5028] By: gsar                                  on 2000/02/07  17:10:03
+        Log: perlport updates (from Peter Prymmer)
+     Branch: perl
+          ! pod/perlport.pod
+____________________________________________________________________________
+[  5027] By: gsar                                  on 2000/02/07  16:53:47
+        Log: fix up Todo-5.6
+     Branch: perl
+          ! Todo-5.6
+____________________________________________________________________________
+[  5026] By: gsar                                  on 2000/02/07  16:32:31
+        Log: rename Todo-5.005 to Todo-5.6
+     Branch: perl
+         +> Todo-5.6
+          - Todo-5.005
+          ! MANIFEST
+____________________________________________________________________________
+[  5025] By: gsar                                  on 2000/02/07  16:09:54
+        Log: ${^Warnings} renamed to ${^WARNING_BITS}
+     Branch: perl
+          ! gv.c lib/warnings.pm mg.c pod/perltoc.pod pod/perlvar.pod
+          ! toke.c warnings.pl
+____________________________________________________________________________
+[  5024] By: gsar                                  on 2000/02/07  11:47:06
+        Log: various Windows tweaks: make $^E a little less buggy by saving
+             and restoring system error across TLS fetch; avoid needless
+             copying of buffers
+     Branch: perl
+          ! win32/Makefile win32/makefile.mk win32/perllib.c win32/win32.c
+          ! win32/win32.h
+____________________________________________________________________________
+[  5023] By: gsar                                  on 2000/02/07  11:44:19
+        Log: avoid MakeMaker setting $^W=1
+     Branch: perl
+          ! lib/ExtUtils/MakeMaker.pm
+____________________________________________________________________________
+[  5022] By: gsar                                  on 2000/02/07  10:38:56
+        Log: up to v5.5.650
+     Branch: perl
+          ! Changes patchlevel.h win32/Makefile win32/config_H.bc
+          ! win32/config_H.gc win32/config_H.vc win32/makefile.mk
+____________________________________________________________________________
+[  5021] By: gsar                                  on 2000/02/07  10:10:31
+        Log: mention threads status in pod
+     Branch: perl
+          ! ext/Thread/Thread.pm
+____________________________________________________________________________
+[  5020] By: gsar                                  on 2000/02/07  09:57:46
+        Log: tolerate NULL SITELIB_EXP
+     Branch: perl
+          ! perl.c
+____________________________________________________________________________
+[  5019] By: gsar                                  on 2000/02/07  09:46:11
+        Log: NULL-terminate PERL_INC_VERSION_LIST
+     Branch: perl
+          ! Configure perl.c win32/config.bc win32/config.gc
+          ! win32/config.vc win32/config_H.bc win32/config_H.gc
+          ! win32/config_H.vc
+____________________________________________________________________________
+[  5018] By: gsar                                  on 2000/02/07  09:13:10
+        Log: add compatible versions from $Config{inc_ver_list} to search
+             paths automatically (from Tom Hughes <tom@compton.nu>)
+     Branch: perl
+          ! lib/lib.pm perl.c
+____________________________________________________________________________
+[  5017] By: gsar                                  on 2000/02/07  08:58:56
+        Log: makefiles now use exetype.pl to make wperl.exe
+     Branch: perl
+          ! sv.c win32/Makefile win32/makefile.mk
+____________________________________________________________________________
+[  5016] By: gsar                                  on 2000/02/07  08:38:25
+        Log: add exetype.pl (from Jan Dubois)
+     Branch: perl
+          + win32/bin/exetype.pl
+          ! MANIFEST
+____________________________________________________________________________
+[  5015] By: gsar                                  on 2000/02/07  08:29:28
+        Log: pod fixes (from Abigail and M J T Guy)
+     Branch: perl
+          ! Changes README.os2 gv.c pod/perlapi.pod pod/perldebug.pod
+          ! pod/perldelta.pod pod/perldiag.pod pod/perlopentut.pod
+          ! pod/perlport.pod pod/perlvar.pod
+____________________________________________________________________________
+[  5014] By: gsar                                  on 2000/02/07  07:09:08
+        Log: clarify behavior of vec() when arguments are off the end of the
+             string (from M J T Guy)
+     Branch: perl
+          ! pod/perlfunc.pod
+____________________________________________________________________________
+[  5013] By: gsar                                  on 2000/02/07  07:08:15
+        Log: remove $^U dependent behaviors in runtime; chr() and sprintf('%c',...)
+             now return bytes all the way to 255, they will be transparently
+             coerced (in future) to UTF-8 when they are used in operations
+             involving other UTF-8 strings; C<use utf8> doesn't set $^U anymore
+     Branch: perl
+          ! lib/byte.pm lib/utf8.pm pod/perlunicode.pod pod/perlvar.pod
+          ! pp.c sv.c
+____________________________________________________________________________
+[  5012] By: gsar                                  on 2000/02/07  06:36:33
+        Log: partly revert change#4851, apparently POSIX::uname() may not be correct
+             per strict reading of standard (says Tom Christiansen)
+     Branch: perl
+          ! lib/Sys/Hostname.pm
+____________________________________________________________________________
+[  5011] By: gsar                                  on 2000/02/07  06:26:30
+        Log: allow 64-bit utf8-encoded integers (from Ilya Zakharevich)
+     Branch: perl
+          ! utf8.c utf8.h
+____________________________________________________________________________
+[  5010] By: gsar                                  on 2000/02/06  21:27:03
+        Log: fix debug code in Perl_malloc() (from Ilya Zakharevich)
+     Branch: perl
+          ! malloc.c
+____________________________________________________________________________
+[  5009] By: gsar                                  on 2000/02/06  20:45:30
+        Log: set SvUTF8 on vectors only if there are chars > 127; update copyright
+             years (from Gisle Aas)
+     Branch: perl
+          ! EXTERN.h INTERN.h README av.c av.h cop.h cv.h deb.c doio.c
+          ! doop.c dump.c form.h gv.c gv.h handy.h hv.c hv.h mg.c mg.h
+          ! op.c op.h perl.c perl.h perlio.c perly.y pp.c pp.h pp_ctl.c
+          ! pp_hot.c pp_sys.c regcomp.c regexec.c run.c scope.c sv.c sv.h
+          ! toke.c utf8.c utf8.h util.c util.h
+____________________________________________________________________________
+[  5008] By: gsar                                  on 2000/02/06  19:28:31
+        Log: use builtin __CYGWIN__ rather than -DCYGWIN (from Eric Fifer
+             <EFifer@sanwaint.com>)
+     Branch: perl
+          ! EXTERN.h XSUB.h doio.c ext/POSIX/POSIX.xs
+          ! ext/SDBM_File/sdbm/pair.c ext/SDBM_File/sdbm/sdbm.c
+          ! hints/cygwin.sh lib/ExtUtils/MM_Cygwin.pm mg.c perl.h
+          ! unixish.h util.c
+____________________________________________________________________________
+[  5007] By: gsar                                  on 2000/02/06  17:47:01
+        Log: reduce memory consumption of POSIX.pm (from Ilya Zakharevich)
+     Branch: perl
+          ! ext/POSIX/POSIX.pm
+____________________________________________________________________________
+[  5006] By: gsar                                  on 2000/02/06  17:28:35
+        Log: integrate cfgperl contents into mainline
+     Branch: perl
+         !> Configure config_h.SH ext/Sys/Syslog/Syslog.xs hints/hpux.sh
+         !> perl.h pp_sys.c
+____________________________________________________________________________
+[  5005] By: gsar                                  on 2000/02/06  17:18:39
+        Log: VOS port updates (from Paul Green <Paul_Green@stratus.com>)
+     Branch: perl
+          ! README.vos pod/perlport.pod vos/Changes vos/build.cm
+          ! vos/compile_perl.cm vos/config.def vos/config.h vos/config.pl
+          ! vos/config_h.SH_orig vos/perl.bind vos/test_vos_dummies.c
+          ! vos/vos_dummies.c vos/vosish.h
+____________________________________________________________________________
+[  5004] By: gsar                                  on 2000/02/06  17:00:49
+        Log: fix parse error on C<{ use strict }> and other constructs that
+             make the parser reenter while LEX_KNOWNEXT is active
+     Branch: perl
+          ! t/comp/use.t toke.c
+____________________________________________________________________________
+[  5003] By: gsar                                  on 2000/02/06  14:57:30
+        Log: avoid -Bforcearchive on netbsd too
+     Branch: perl
+          ! Changes hints/netbsd.sh
+____________________________________________________________________________
+[  5002] By: gsar                                  on 2000/02/06  14:45:17
+        Log: revised notes about Pod::Parser & Co.
+     Branch: perl
+          ! lib/Pod/Usage.pm pod/perldelta.pod
+____________________________________________________________________________
+[  5001] By: gsar                                  on 2000/02/06  14:02:43
+        Log: fix description of obsolete diagnostic
+     Branch: perl
+          ! pod/perldiag.pod
+____________________________________________________________________________
+[  5000] By: gsar                                  on 2000/02/06  13:59:58
+        Log: allow "\x{12ab}" even without C<use utf8>
+     Branch: perl
+          ! t/pragma/warn/toke toke.c
+____________________________________________________________________________
+[  4999] By: gsar                                  on 2000/02/06  13:58:31
+        Log: make perlbug use new-style version numbers; improve compatibility
+             (runs with perl 5.005); fix swapped old vs new version reporting
+     Branch: perl
+          ! utils/perlbug.PL
+____________________________________________________________________________
+[  4998] By: gsar                                  on 2000/02/06  13:56:45
+        Log: support sprintf("v%v", v1.2.3) (works on any string argument, in
+             fact); add tests for version tuples
+     Branch: perl
+          + t/op/ver.t
+          ! MANIFEST perl.c pod/perldiag.pod pod/perlfunc.pod
+          ! pod/perlop.pod sv.c toke.c
+____________________________________________________________________________
+[  4997] By: gsar                                  on 2000/02/04  21:40:08
+        Log: change#4970 fallout for useithreads
+     Branch: perl
+          ! sv.c
+____________________________________________________________________________
+[  4996] By: jhi                                   on 2000/02/04  20:09:00
+        Log: Largefilify offsets of tied handles.
+     Branch: cfgperl
+          ! pp_sys.c
+____________________________________________________________________________
+[  4995] By: jhi                                   on 2000/02/04  19:54:25
+        Log: Sanity check for libraries scan.
+     Branch: cfgperl
+          ! Configure config_h.SH
+     Branch: metaconfig
+          ! U/modified/libs.U
+____________________________________________________________________________
+[  4994] By: jhi                                   on 2000/02/04  19:48:42
+        Log: HP-UX largefileness doesn't like lseek being redeclared;
+             no more USE_LONG_LONG.
+     Branch: cfgperl
+          ! perl.h
+____________________________________________________________________________
+[  4993] By: jhi                                   on 2000/02/04  19:18:59
+        Log: fix the description as much as possible; the whole
+             separation into three different symbols lists is
+             pretty broken now.
+     Branch: metaconfig
+          ! U/modified/Cppsym.U
+____________________________________________________________________________
+[  4992] By: jhi                                   on 2000/02/04  19:13:10
+        Log: Use <syslog.h>, not <sys/syslog.h>.
+     Branch: cfgperl
+          ! Configure config_h.SH ext/Sys/Syslog/Syslog.xs
+____________________________________________________________________________
+[  4991] By: gsar                                  on 2000/02/04  19:11:07
+        Log: dmake is on CPAN now
+     Branch: perl
+          ! README.win32
+____________________________________________________________________________
+[  4990] By: jhi                                   on 2000/02/04  19:04:01
+        Log: Re-introduce #4817 and #4964 wiped out by #4987.
+     Branch: cfgperl
+          ! Configure config_h.SH
+     Branch: metaconfig
+          ! U/threads/usethreads.U
+     Branch: metaconfig/U/perl
+          ! patchlevel.U
+____________________________________________________________________________
+[  4989] By: jhi                                   on 2000/02/04  18:54:00
+        Log: typo fix
+     Branch: cfgperl
+          ! Configure config_h.SH
+     Branch: metaconfig
+          ! U/modified/libs.U
+____________________________________________________________________________
+[  4988] By: jhi                                   on 2000/02/04  18:34:06
+        Log: Integrate with Sarathy.
+     Branch: cfgperl
+         +> ext/Sys/Syslog/Makefile.PL ext/Sys/Syslog/Syslog.pm
+         +> ext/Sys/Syslog/Syslog.xs
+          - lib/Sys/Syslog.pm
+         !> (integrate 37 files)
+____________________________________________________________________________
+[  4987] By: jhi                                   on 2000/02/04  18:31:05
+        Log: Configure megamaintenance.  Cppsym (hopefully) final spasms;
+             default is to use long long if available; various nits
+             here and there; fixed to hpux 64-bitnes and largefileness.
+     Branch: cfgperl
+          ! Configure config_h.SH hints/hpux.sh perl.h
+     Branch: metaconfig
+          ! U/a_dvisory/quadtype.U U/modified/Cppsym.U
+          ! U/modified/d_gethname.U U/modified/libpth.U U/modified/libs.U
+     Branch: metaconfig/U/perl
+          ! d_fseeko.U d_ftello.U dlsrc.U uselongdbl.U uselonglong.U
+          ! usemultiplicity.U xs_apiversion.U
+____________________________________________________________________________
+[  4986] By: gsar                                  on 2000/02/04  17:26:37
+        Log: avoid bad cast warnings (from Robin Barker <rmb1@cise.npl.co.uk>)
+     Branch: perl
+          ! sv.c
+____________________________________________________________________________
+[  4985] By: gsar                                  on 2000/02/04  16:43:49
+        Log: avoid 'na' (spotted by Yitzchak Scott-Thoennes <sthoenna@efn.org>)
+     Branch: perl
+          ! ext/Devel/DProf/DProf.xs
+____________________________________________________________________________
+[  4984] By: gsar                                  on 2000/02/04  08:20:05
+        Log: CPAN.pm updated to v1.52 (from Andreas Koenig)
+     Branch: perl
+          ! lib/CPAN.pm lib/CPAN/FirstTime.pm lib/CPAN/Nox.pm
+____________________________________________________________________________
+[  4983] By: gsar                                  on 2000/02/04  08:00:38
+        Log: updated OpenBSD hints (From Todd C. Miller <Todd.Miller@courtesan.com>)
+     Branch: perl
+          ! hints/openbsd.sh
+____________________________________________________________________________
+[  4982] By: gsar                                  on 2000/02/04  07:54:04
+        Log: pod typos (from Gregor N. Purdy <gregor@focusresearch.com>)
+     Branch: perl
+          ! lib/Pod/Parser.pm
+____________________________________________________________________________
+[  4981] By: gsar                                  on 2000/02/04  07:34:38
+        Log: avoid assuming cc accepts -o switch (from Tom Hughes)
+     Branch: perl
+          ! Makefile.SH
+____________________________________________________________________________
+[  4980] By: gsar                                  on 2000/02/04  07:29:59
+        Log: Sys::Syslog goes the XS way (from Tom Hughes <tom@compton.nu>)
+     Branch: perl
+          + ext/Sys/Syslog/Makefile.PL ext/Sys/Syslog/Syslog.pm
+          + ext/Sys/Syslog/Syslog.xs
+          - lib/Sys/Syslog.pm
+          ! MANIFEST pod/perldelta.pod
+____________________________________________________________________________
+[  4979] By: gsar                                  on 2000/02/04  07:13:19
+        Log: pod updates (from David Adler, M J T Guy)
+     Branch: perl
+          ! pod/perlfaq2.pod pod/perlop.pod pod/perlsyn.pod
+____________________________________________________________________________
+[  4978] By: gsar                                  on 2000/02/04  07:08:14
+        Log: typos in config_h.SH (from Paul_Green@vos.stratus.com)
+     Branch: perl
+          ! config_h.SH
+____________________________________________________________________________
+[  4977] By: gsar                                  on 2000/02/04  07:06:10
+        Log: avoid adding null components to LD_LIBRARY_PATH, OpenBSD has trouble
+             with them (from Todd C. Miller <Todd.Miller@courtesan.com>)
+     Branch: perl
+          ! Makefile.SH
+____________________________________________________________________________
+[  4976] By: gsar                                  on 2000/02/04  06:33:43
+        Log: VMS update (from Dan Sugalski and Peter Prymmer)
+     Branch: perl
+          ! configure.com vms/descrip_mms.template vms/subconfigure.com
+____________________________________________________________________________
+[  4975] By: gsar                                  on 2000/02/04  05:51:14
+        Log: patch to provide more informative names for evals and anonymous
+             subroutines (from Ilya Zakharevich)
+     Branch: perl
+          ! ext/Devel/Peek/Peek.pm ext/Devel/Peek/Peek.xs lib/Dumpvalue.pm
+          ! lib/dumpvar.pl lib/perl5db.pl op.c perl.h pod/perldebug.pod
+          ! pod/perlvar.pod pp_ctl.c
+____________________________________________________________________________
+[  4974] By: gsar                                  on 2000/02/04  05:05:57
+        Log: off-by-one in malloc.c (from Ilya Zakharevich)
+     Branch: perl
+          ! malloc.c
+____________________________________________________________________________
+[  4973] By: gsar                                  on 2000/02/04  05:03:00
+        Log: OS/2 build fixups from Ilya Zakharevich
+     Branch: perl
+          ! ext/Devel/DProf/DProf.xs os2/Makefile.SHs t/op/fork.t
+____________________________________________________________________________
+[  4972] By: gsar                                  on 2000/02/04  04:58:57
+        Log: avoid /* within comment
+     Branch: perl
+          ! xsutils.c
+____________________________________________________________________________
+[  4971] By: gsar                                  on 2000/02/04  04:56:09
+        Log: another HINT_BYTE victim
+     Branch: perl
+          ! lib/charnames.pm
+____________________________________________________________________________
+[  4970] By: gsar                                  on 2000/02/04  04:45:13
+        Log: fix pad_alloc panic from C<my $w; sub { my($i) = @_; sub { $w } }>
+     Branch: perl
+          ! op.c scope.c scope.h t/op/closure.t toke.c
+____________________________________________________________________________
+[  4969] By: gsar                                  on 2000/02/04  01:09:37
+        Log: byte.pm and HINT_BYTE don't match (0x8, not 0x10!)
+     Branch: perl
+          ! lib/byte.pm
+____________________________________________________________________________
+[  4968] By: jhi                                   on 2000/02/02  13:17:25
+        Log: Integrate with Sarathy.
+     Branch: cfgperl
+         +> lib/Pod/Find.pm lib/Pod/ParseUtils.pm
+          ! Configure
+         !> (integrate 29 files)
+
+----------------
+Version v5.5.640
+----------------
+
+____________________________________________________________________________
+[  4967] By: gsar                                  on 2000/02/02  12:22:29
+        Log: update makerel for new version format
+     Branch: perl
+          ! Changes Porting/makerel
+____________________________________________________________________________
+[  4966] By: gsar                                  on 2000/02/02  11:42:03
+        Log: workaround for undefined symbol
+     Branch: perl
+          ! win32/win32.h
+____________________________________________________________________________
+[  4965] By: gsar                                  on 2000/02/02  11:19:19
+        Log: on cygwin, h_errno is now "__declspec(dllimport) int h_errno"
+             (from Eric Fifer <EFifer@sanwaint.com>)
+     Branch: perl
+          ! pp_sys.c
+____________________________________________________________________________
+[  4964] By: gsar                                  on 2000/02/02  11:11:15
+        Log: adjust notes on use5005threads
+     Branch: perl
+          ! Configure INSTALL README.threads
+____________________________________________________________________________
+[  4963] By: gsar                                  on 2000/02/02  10:14:30
+        Log: fix typo
+     Branch: perl
+          ! Configure
+____________________________________________________________________________
+[  4962] By: gsar                                  on 2000/02/02  10:13:10
+        Log: integrate selected changes from cfgperl (#4899,4900,4904,4918)
+     Branch: perl
+         !> Configure Porting/Glossary Porting/config.sh Porting/config_H
+         !> config_h.SH ext/IO/IO.xs lib/Benchmark.pm
+____________________________________________________________________________
+[  4961] By: gsar                                  on 2000/02/02  09:55:45
+        Log: PodParser-1.092 update via CPAN (from Brad Appleton)
+     Branch: perl
+          + lib/Pod/Find.pm lib/Pod/ParseUtils.pm
+          ! MANIFEST lib/Pod/Checker.pm t/pod/poderrs.t t/pod/poderrs.xr
+____________________________________________________________________________
+[  4960] By: gsar                                  on 2000/02/02  08:22:31
+        Log: replace misleading docs with a BUGS section
+     Branch: perl
+          ! lib/English.pm
+____________________________________________________________________________
+[  4959] By: gsar                                  on 2000/02/02  08:16:17
+        Log: remove FUD from perlfunc/use (from M J T Guy)
+     Branch: perl
+          ! pod/perlfunc.pod
+____________________________________________________________________________
+[  4958] By: gsar                                  on 2000/02/02  08:13:04
+        Log: Benchmark displays bogus CPU stats (suggested by Cedric Auzanne
+             <cedric.auzanne@nist.gov>)
+     Branch: perl
+          ! Changes lib/Benchmark.pm
+____________________________________________________________________________
+[  4957] By: gsar                                  on 2000/02/02  08:04:52
+        Log: fix coredump on C<"x" =~ /x/; print @-> (from Ilya Zakharevich)
+     Branch: perl
+          ! pp_hot.c
+____________________________________________________________________________
+[  4956] By: gsar                                  on 2000/02/02  08:02:57
+        Log: flock() pod talks about "adding" in the sense of "or-ing"
+     Branch: perl
+          ! pod/perlfunc.pod
+____________________________________________________________________________
+[  4955] By: gsar                                  on 2000/02/02  07:58:35
+        Log: fixes for switching files in the debugger (from Ilya Zakharevich)
+     Branch: perl
+          ! lib/perl5db.pl pod/perldebug.pod
+____________________________________________________________________________
+[  4954] By: gsar                                  on 2000/02/02  07:53:51
+        Log: use warnings rather than fiddling with $^W (from Paul Marquess)
+     Branch: perl
+          ! lib/Cwd.pm lib/English.pm lib/ExtUtils/MM_Unix.pm
+          ! lib/ExtUtils/MM_Win32.pm lib/ExtUtils/Manifest.pm lib/Fatal.pm
+          ! lib/File/Spec/Win32.pm lib/Math/BigFloat.pm
+          ! lib/Text/ParseWords.pm lib/utf8_heavy.pl
+____________________________________________________________________________
+[  4953] By: gsar                                  on 2000/02/02  07:40:33
+        Log: dynixptx hints tweak (from Martin J. Bligh <mbligh@sequent.com>)
+     Branch: perl
+          ! hints/dynixptx.sh
+____________________________________________________________________________
+[  4952] By: gsar                                  on 2000/02/02  07:36:39
+        Log: deltanotes on weakrefs and Pod::Parser (from Tuomas Lukka and
+             Brad Appleton)
+     Branch: perl
+          ! pod/perldelta.pod
+____________________________________________________________________________
+[  4951] By: gsar                                  on 2000/02/02  06:54:22
+        Log: avoid mismatched type warnings
+     Branch: perl
+          ! embed.pl perlapi.h
+____________________________________________________________________________
+[  4950] By: jhi                                   on 2000/02/02  06:49:10
+        Log: Integrate with Sarathy.
+     Branch: cfgperl
+         +> pod/perlunicode.pod
+         !> MANIFEST Makefile.SH lib/File/Spec/Win32.pm lib/Text/Tabs.pm
+         !> lib/byte.pm lib/byte_heavy.pl lib/utf8.pm lib/warnings.pm
+         !> makedef.pl op.c perl.h pod/perldelta.pod pp_ctl.c regcomp.c
+         !> regexec.c t/pragma/warn/2use utf8.h utils/perldoc.PL
+         !> vms/descrip_mms.template warnings.pl
+____________________________________________________________________________
+[  4949] By: gsar                                  on 2000/02/02  06:41:17
+        Log: fix broken abs2rel() (from Fran├žois Allard <franka@host.ott.igs.net>)
+     Branch: perl
+          ! lib/File/Spec/Win32.pm
+____________________________________________________________________________
+[  4948] By: gsar                                  on 2000/02/02  06:30:41
+        Log: makefile tweak
+     Branch: perl
+          ! Makefile.SH
+____________________________________________________________________________
+[  4947] By: gsar                                  on 2000/02/02  06:27:43
+        Log: future-proof unknown warning categories (from Greg Bacon
+             <gbacon@cs.uah.edu>)
+     Branch: perl
+          ! lib/warnings.pm t/pragma/warn/2use warnings.pl
+____________________________________________________________________________
+[  4946] By: gsar                                  on 2000/02/02  06:21:34
+        Log: doc tweak (from Michael G Schwern <schwern@pobox.com>)
+     Branch: perl
+          ! lib/Text/Tabs.pm
+____________________________________________________________________________
+[  4945] By: gsar                                  on 2000/02/02  06:03:04
+        Log: more meaningful message on invalid pattern argument (from
+             Kevin Meltzer <KMeltzer@USCO.com>)
+     Branch: perl
+          ! utils/perldoc.PL
+____________________________________________________________________________
+[  4944] By: gsar                                  on 2000/02/02  05:43:49
+        Log: XSLoader build patch for VMS (from Craig A. Berry
+             <craig.berry@metamorgs.com>)
+     Branch: perl
+          ! vms/descrip_mms.template
+____________________________________________________________________________
+[  4943] By: gsar                                  on 2000/02/02  03:40:49
+        Log: reword some sections of perlunicode.pod
+     Branch: perl
+          ! pod/perlunicode.pod
+____________________________________________________________________________
+[  4942] By: gsar                                  on 2000/02/01  21:02:01
+        Log: AIX warning on undefined symbol
+     Branch: perl
+          ! makedef.pl
+____________________________________________________________________________
+[  4941] By: gsar                                  on 2000/02/01  20:29:30
+        Log: HINT_UTF8 is not propagated to the op tree anymore; add a
+             perlunicode.pod that reflects changes to unicode support so far
+     Branch: perl
+          + pod/perlunicode.pod
+          ! MANIFEST lib/byte.pm lib/byte_heavy.pl lib/utf8.pm op.c perl.h
+          ! pod/perldelta.pod pp_ctl.c regcomp.c regexec.c utf8.h
+____________________________________________________________________________
+[  4940] By: jhi                                   on 2000/02/01  12:22:30
+        Log: Integrate with Sarathy.
+     Branch: cfgperl
+         !> embed.pl embedvar.h global.sym gv.c intrpvar.h
+         !> lib/charnames.pm lib/utf8.pm mg.c objXSUB.h op.c op.h
+         !> perlapi.c perlapi.h pod/perlvar.pod pp.c sv.c sv.h
+         !> t/lib/charnames.t toke.c win32/win32.c win32/win32.h
+____________________________________________________________________________
+[  4939] By: gsar                                  on 2000/02/01  08:52:16
+        Log: export pregexec(), Tk uses it
+     Branch: perl
+          ! embed.pl global.sym objXSUB.h perlapi.c
+____________________________________________________________________________
+[  4938] By: gsar                                  on 2000/02/01  04:00:09
+        Log: mark literal utf8 in string literals properly
+     Branch: perl
+          ! toke.c
+____________________________________________________________________________
+[  4937] By: gsar                                  on 2000/01/31  20:19:34
+        Log: introduce $^U, a global bit to indicate whether system
+             calls should using widechar APIs; chr and sprintf "%c" also
+             follow this flag in the absense of "use byte"; "use utf8"
+             sets $^U=1 (this appears kludgey)
+     Branch: perl
+          ! embedvar.h gv.c intrpvar.h lib/charnames.pm lib/utf8.pm mg.c
+          ! op.c op.h perlapi.h pod/perlvar.pod pp.c sv.c sv.h
+          ! t/lib/charnames.t win32/win32.h
+____________________________________________________________________________
+[  4936] By: jhi                                   on 2000/01/31  20:17:44
+        Log: HP-UX (induced) fixes.
+     Branch: cfgperl
+          ! Configure config_h.SH hints/hpux.sh
+     Branch: metaconfig
+          ! U/modified/Oldconfig.U U/modified/libs.U
+     Branch: metaconfig/U/perl
+          ! quadfio.U
+____________________________________________________________________________
+[  4935] By: jhi                                   on 2000/01/31  19:15:43
+        Log: Cosmetics.
+     Branch: metaconfig
+          ! U/compline/d_gconvert.U
+____________________________________________________________________________
+[  4934] By: jhi                                   on 2000/01/31  19:15:22
+        Log: Cppsym saga continues.
+     Branch: cfgperl
+          ! Configure config_h.SH
+     Branch: metaconfig
+          ! U/modified/Cppsym.U
+____________________________________________________________________________
+[  4933] By: gsar                                  on 2000/01/31  18:45:07
+        Log: !USING_WIDE() branch is busted in win32_stat()
+     Branch: perl
+          ! win32/win32.c
+____________________________________________________________________________
+[  4932] By: jhi                                   on 2000/01/31  06:41:47
+        Log: Reveal even more symbols.
+     Branch: cfgperl
+          ! Configure config_h.SH
+     Branch: metaconfig
+          ! U/modified/Cppsym.U
+____________________________________________________________________________
+[  4931] By: jhi                                   on 2000/01/31  06:21:41
+        Log: Integrate with Sarathy.
+     Branch: cfgperl
+          - lib/caller.pm
+         !> (integrate 29 files)
+____________________________________________________________________________
+[  4930] By: gsar                                  on 2000/01/31  04:57:42
+        Log: runtime now looks at the SVf_UTF8 bit on the SV to decide
+             whether to use widechar semantics; lexer and RE engine continue
+             to need "use utf8" to enable unicode awareness in literals
+             and patterns (TODO: this needs to be fixed); $1 et al are marked
+             SvUTF8 if the pattern was compiled for utf8 (TODO: propagating
+             it from the data is probably better)
+     Branch: perl
+          ! doop.c gv.c mg.c op.c op.h pp.c pp_ctl.c pp_hot.c regcomp.c
+          ! sv.c t/pragma/warn/doop t/pragma/warn/pp t/pragma/warn/sv
+          ! t/pragma/warn/toke t/pragma/warn/utf8 toke.c utf8.h
+____________________________________________________________________________
+[  4929] By: gsar                                  on 2000/01/31  04:17:09
+        Log: remove caller.pm from change#3534 (flawed idea)
+     Branch: perl
+          - lib/caller.pm
+          ! MANIFEST pod/perldelta.pod pod/perlfunc.pod
+____________________________________________________________________________
+[  4928] By: gsar                                  on 2000/01/31  04:16:01
+        Log: fix factual regression (-e doesn't create temporary files anymore)
+     Branch: perl
+          ! pod/perlfilter.pod
+____________________________________________________________________________
+[  4927] By: gsar                                  on 2000/01/30  21:27:12
+        Log: introduce $^V (eq chr($revision) . chr($version) . chr($subversion));
+             document version tuples
+     Branch: perl
+          ! gv.c pod/perldelta.pod pod/perlfunc.pod pod/perlop.pod
+          ! pod/perlvar.pod
+____________________________________________________________________________
+[  4926] By: gsar                                  on 2000/01/28  18:10:12
+        Log: implement -follow option in find2perl (from Helmut Jarausch
+             <jarausch@igpm.rwth-aachen.de>)
+     Branch: perl
+          ! lib/File/Find.pm x2p/find2perl.PL
+____________________________________________________________________________
+[  4925] By: gsar                                  on 2000/01/28  18:03:28
+        Log: document what chdir() without an argument does (from Mark-Jason
+             Dominus <mjd@plover.com>)
+     Branch: perl
+          ! pod/perlfunc.pod
+____________________________________________________________________________
+[  4924] By: gsar                                  on 2000/01/28  17:49:34
+        Log: README.cygwin update (from Eric Fifer <EFifer@sanwaint.com>)
+     Branch: perl
+          ! README.cygwin
+____________________________________________________________________________
+[  4923] By: gsar                                  on 2000/01/28  17:10:08
+        Log: avoid leaking lexicals into program being debugged (from Ilya
+             Zakharevich)
+     Branch: perl
+          ! lib/perl5db.pl
+____________________________________________________________________________
+[  4922] By: gsar                                  on 2000/01/28  16:36:13
+        Log: perldelta note about export list changes
+     Branch: perl
+          ! Changes pod/perldelta.pod
+____________________________________________________________________________
+[  4921] By: gsar                                  on 2000/01/28  15:49:04
+        Log: alias realpath() to abs_path() (from Tom Christiansen)
+     Branch: perl
+          ! lib/Cwd.pm
+____________________________________________________________________________
+[  4920] By: jhi                                   on 2000/01/28  09:52:47
+        Log: Cppsym fixup from Andy.
+     Branch: cfgperl
+          ! Configure config_h.SH
+     Branch: metaconfig
+          ! U/modified/Cppsym.U
+____________________________________________________________________________
+[  4919] By: jhi                                   on 2000/01/28  09:52:22
+        Log: In HP-UX no largefiles if no 64 bits.
+     Branch: cfgperl
+          ! hints/hpux.sh
+____________________________________________________________________________
+[  4918] By: jhi                                   on 2000/01/28  09:03:37
+        Log: The #4880 was too eager, the $n test is useful too.
+     Branch: cfgperl
+          ! lib/Benchmark.pm
+____________________________________________________________________________
+[  4917] By: jhi                                   on 2000/01/28  06:27:50
+        Log: Integrate with Sarathy.
+     Branch: cfgperl
+         +> pod/perlapi.pod pod/perlintern.pod
+         !> (integrate 39 files)
+____________________________________________________________________________
+[  4916] By: gsar                                  on 2000/01/28  05:29:37
+        Log: more exported symbols needed for build on windows
+     Branch: perl
+          ! embed.pl global.sym objXSUB.h perlapi.c pod/perlapi.pod
+          ! pod/perlintern.pod t/lib/thread.t win32/win32.c
+____________________________________________________________________________
+[  4915] By: gsar                                  on 2000/01/28  03:43:52
+        Log: autogenerate API listing from comments in the source (from Benjamin
+             Stuhl <sho_pi@hotmail.com>); fix the markup format to be more
+             flexible for better readability; add missing docs in sv.c; regenerate
+             perltoc
+     Branch: perl
+          + pod/perlapi.pod pod/perlintern.pod
+          ! MANIFEST XSUB.h av.c av.h cop.h cv.h embed.pl global.sym gv.c
+          ! gv.h handy.h hv.c hv.h intrpvar.h makedef.pl mg.c objXSUB.h
+          ! op.c op.h perl.c perlapi.c pod/Makefile pod/buildtoc
+          ! pod/perl.pod pod/perldelta.pod pod/perlguts.pod
+          ! pod/perltoc.pod pod/roffitall pp.h scope.h sv.c sv.h thrdvar.h
+          ! universal.c util.c
+____________________________________________________________________________
+[  4914] By: gsar                                  on 2000/01/27  19:43:35
+        Log: document unimplemented status of forking pipe open() on windows
+     Branch: perl
+          ! pod/perlfork.pod t/op/fork.t
+____________________________________________________________________________
+[  4913] By: jhi                                   on 2000/01/27  11:18:51
+        Log: Integrate with Sarathy.
+     Branch: cfgperl
+         !> (integrate 51 files)
+____________________________________________________________________________
+[  4912] By: jhi                                   on 2000/01/27  10:35:48
+        Log: Cppsym update continues.
+     Branch: cfgperl
+          ! Configure config_h.SH
+     Branch: metaconfig
+          ! U/modified/Cppsym.U
+____________________________________________________________________________
+[  4911] By: gsar                                  on 2000/01/27  08:04:17
+        Log: add missing flag in change#4892
+     Branch: perl
+          ! win32/win32.c
+____________________________________________________________________________
+[  4910] By: gsar                                  on 2000/01/27  03:56:48
+        Log: various pod nits identified by installhtml (all fixed except
+             unresolved links)
+     Branch: perl
+          ! ext/B/B/C.pm ext/Devel/Peek/Peek.pm ext/File/Glob/Glob.pm
+          ! ext/IO/lib/IO/Socket/INET.pm ext/IPC/SysV/SysV.pm
+          ! ext/Thread/Thread.pm lib/Class/Struct.pm lib/File/Find.pm
+          ! lib/File/Spec/VMS.pm lib/Pod/Html.pm lib/UNIVERSAL.pm
+          ! pod/buildtoc pod/perlcompile.pod pod/perlfork.pod
+          ! pod/perlre.pod pod/perltoc.pod pod/perltodo.pod
+____________________________________________________________________________
+[  4909] By: gsar                                  on 2000/01/26  22:45:28
+        Log: typo
+     Branch: perl
+          ! Porting/p4desc
+____________________________________________________________________________
+[  4908] By: gsar                                  on 2000/01/26  22:41:18
+        Log: update p4 tool
+     Branch: perl
+          ! Porting/p4desc
+____________________________________________________________________________
+[  4907] By: gsar                                  on 2000/01/26  21:45:41
+        Log: revised attribute syntax: C<my $foo :a :b :c>, C<my $foo : a b c>
+             and C<my $foo : a : b : c> are all valid (from Spider Boardman)
+     Branch: perl
+          ! lib/AutoSplit.pm lib/SelfLoader.pm lib/attributes.pm
+          ! pod/perldelta.pod pod/perldiag.pod pod/perlsub.pod
+          ! t/op/attrs.t toke.c
+____________________________________________________________________________
+[  4906] By: gsar                                  on 2000/01/26  20:16:39
+        Log: pod typos and warnings (from Abigail <abigail@delanet.com>)
+     Branch: perl
+          ! README.win32 ext/B/B/Deparse.pm lib/Class/Struct.pm
+____________________________________________________________________________
+[  4905] By: gsar                                  on 2000/01/26  19:10:26
+        Log: s/STOP/CHECK/ blocks
+     Branch: perl
+          ! embedvar.h ext/B/B/Stash.pm ext/B/NOTES ext/B/O.pm intrpvar.h
+          ! keywords.h keywords.pl lib/constant.pm op.c perl.c perlapi.h
+          ! perly.c perly.y pod/perldelta.pod pod/perldiag.pod
+          ! pod/perlfunc.pod pod/perlmod.pod pod/perlrun.pod
+          ! pod/perlsub.pod pod/perltodo.pod sv.c t/op/misc.t toke.c
+          ! vms/perly_c.vms
+____________________________________________________________________________
+[  4904] By: jhi                                   on 2000/01/26  13:58:18
+        Log: In UNICOS and UNICOS/mk after a successful fcntl F_SETFL
+             of O_NONBLOCK a subsequent fcntl F_GETFL will return O_NDELAY.
+     Branch: cfgperl
+          ! ext/IO/IO.xs
+____________________________________________________________________________
+[  4903] By: jhi                                   on 2000/01/26  11:16:34
+        Log: Continue cpp symbol update.
+     Branch: cfgperl
+          ! Configure config_h.SH
+     Branch: metaconfig
+          ! U/modified/Cppsym.U
+____________________________________________________________________________
+[  4902] By: gsar                                  on 2000/01/26  09:28:37
+        Log: tweak exports list on Windows
+     Branch: perl
+          ! makedef.pl t/op/fork.t win32/win32.h
+____________________________________________________________________________
+[  4901] By: jhi                                   on 2000/01/26  08:05:57
+        Log: Integrate with Sarathy.
+     Branch: cfgperl
+         !> Changes README.win32 lib/File/Path.pm lib/Getopt/Std.pm op.c
+         !> pod/perldelta.pod pod/perldiag.pod t/op/grep.t
+         !> t/pragma/strict-vars toke.c win32/Makefile win32/makefile.mk
+         !> win32/win32.c win32/win32.h
+____________________________________________________________________________
+[  4900] By: jhi                                   on 2000/01/26  07:59:05
+        Log: s/d_nvpresuv/d_nv_preserves_uv/;
+             plus cosmetic change for #4899.
+     Branch: cfgperl
+          ! Configure Porting/Glossary Porting/config.sh Porting/config_H
+          ! config_h.SH
+     Branch: metaconfig
+          ! U/modified/Cppsym.U
+     Branch: metaconfig/U/perl
+          ! perlxv.U
+____________________________________________________________________________
+[  4899] By: jhi                                   on 2000/01/26  07:46:56
+        Log: Update the scan of the cpp symbols.
+     Branch: cfgperl
+          ! Configure config_h.SH
+     Branch: metaconfig
+          ! U/modified/Cppsym.U
+____________________________________________________________________________
+[  4898] By: gsar                                  on 2000/01/26  04:49:45
+        Log: allow '--' to terminate argument processing (suggested by
+             Marc Espie <espie@schutzenberger.liafa.jussieu.fr>)
+     Branch: perl
+          ! lib/Getopt/Std.pm
+____________________________________________________________________________
+[  4897] By: gsar                                  on 2000/01/26  02:42:38
+        Log: change#3744 should have made grep more like map instead of the
+             other way around
+     Branch: perl
+          ! t/op/grep.t toke.c
+____________________________________________________________________________
+[  4896] By: gsar                                  on 2000/01/26  00:56:14
+        Log: integrate cfgperl contents into mainline
+     Branch: perl
+         +> vos/config.def vos/config.pl
+          ! Changes
+         !> Configure MANIFEST config_h.SH hints/unicosmk.sh
+         !> lib/Benchmark.pm pod/perldelta.pod pod/perlhist.pod pp.c
+         !> vos/config.h vos/config_h.SH_orig
+____________________________________________________________________________
+[  4895] By: gsar                                  on 2000/01/26  00:45:45
+        Log: fix parse failure of (my $foo : bar) and similar (from Spider
+             Boardman)
+     Branch: perl
+          ! toke.c
+____________________________________________________________________________
+[  4894] By: gsar                                  on 2000/01/26  00:33:53
+        Log: avoid failure if directories already read by rmtree() are
+             deleted by another process
+     Branch: perl
+          ! lib/File/Path.pm
+____________________________________________________________________________
+[  4893] By: gsar                                  on 2000/01/25  23:19:18
+        Log: typo in change#4892
+     Branch: perl
+          ! win32/win32.c
+____________________________________________________________________________
+[  4892] By: gsar                                  on 2000/01/25  22:16:19
+        Log: eliminate need for perl95.exe on Windows 9x by working around CRT
+             bug internally (from Benjamin Stuhl <sho_pi@hotmail.com>); modified
+             to call the fixed version of open_osfhandle() only on Windows 9x;
+             updated the makefiles and README.win32 to suit
+     Branch: perl
+          ! README.win32 win32/Makefile win32/makefile.mk win32/win32.c
+          ! win32/win32.h
+____________________________________________________________________________
+[  4891] By: gsar                                  on 2000/01/25  20:22:01
+        Log: produce redeclaration warning on C<our $foo; { our $foo; ... }>
+     Branch: perl
+          ! op.c pod/perldelta.pod pod/perldiag.pod t/pragma/strict-vars
+____________________________________________________________________________
+[  4890] By: gsar                                  on 2000/01/25  19:21:17
+        Log: update Makefile notes on the now deprecated USE_5005THREADS and
+             USE_OBJECT
+     Branch: perl
+          ! win32/Makefile win32/makefile.mk
+____________________________________________________________________________
+[  4889] By: jhi                                   on 2000/01/25  14:44:55
+        Log: Misedit in #4888.
+     Branch: cfgperl
+          ! pp.c
+____________________________________________________________________________
+[  4888] By: jhi                                   on 2000/01/25  14:38:59
+        Log: UNICOS/mk patches.  Removing the _CRAYMPP test may be
+             rash but it's the best move I can think of right now.
+             UNICOS/mk doesn't anymore (2.0.4.82) define _CRAYMPP,
+             but I think it did in the past.
+             Removing the _CRAYMPP test fixes a legion of pack/unpack
+             failures (hint: SHORTSIZE=4,INTSIZE=8,LONGSIZE=8).
+             One subtest, t/lib/io_sock.t #14, is still failing.
+     Branch: cfgperl
+          ! Configure config_h.SH hints/unicosmk.sh pp.c
+     Branch: metaconfig
+          ! U/modified/Oldconfig.U
+____________________________________________________________________________
+[  4887] By: jhi                                   on 2000/01/25  06:13:14
+        Log: Integrate with Sarathy.
+     Branch: cfgperl
+         !> Changes Makefile.SH XSUB.h cflags.SH embed.pl globals.c
+         !> installperl lib/Pod/Html.pm makedef.pl mg.c objXSUB.h perl.h
+         !> perlapi.c perlapi.h pod/perldelta.pod pod/perldiag.pod
+         !> t/io/fs.t win32/Makefile win32/makefile.mk win32/perlhost.h
+         !> win32/perllib.c win32/win32.c win32/win32.h
+____________________________________________________________________________
+[  4886] By: gsar                                  on 2000/01/25  02:54:00
+        Log: consistently use MAX_PATH+1 buffer sizes
+     Branch: perl
+          ! win32/win32.c
+____________________________________________________________________________
+[  4885] By: gsar                                  on 2000/01/25  02:51:35
+        Log: workaround for rename('x','X') bug in Windows NT
+     Branch: perl
+          ! t/io/fs.t win32/win32.c
+____________________________________________________________________________
+[  4884] By: gsar                                  on 2000/01/25  01:32:57
+        Log: windows build fixups from uniform DLL name change to perl56.dll
+     Branch: perl
+          ! installperl makedef.pl win32/perllib.c
+____________________________________________________________________________
+[  4883] By: gsar                                  on 2000/01/25  01:31:27
+        Log: more fixes for warnings from change#4840
+     Branch: perl
+          ! lib/Pod/Html.pm
+____________________________________________________________________________
+[  4882] By: gsar                                  on 2000/01/24  15:35:12
+        Log: assorted little nits
+     Branch: perl
+          ! mg.c win32/Makefile win32/makefile.mk win32/perlhost.h
+          ! win32/win32.c
+____________________________________________________________________________
+[  4881] By: gsar                                  on 2000/01/24  14:32:31
+        Log: add new warnings to perldelta
+     Branch: perl
+          ! Changes pod/perldelta.pod pod/perldiag.pod
+____________________________________________________________________________
+[  4880] By: jhi                                   on 2000/01/24  14:14:23
+        Log: From: Stephane Payrard <properler@freesurf.fr>
+             To: Gurusamy Sarathy <gsar@ActiveState.com>
+             Cc: perl5-porters@perl.org
+             Subject: <patch> avoid division by 0 in Benchmark.pm
+             Date: Mon, 24 Jan 2000 16:15:38 +0100
+             Message-ID: <20000124161538.A995@freesurf.fr>
+     Branch: cfgperl
+          ! lib/Benchmark.pm
+____________________________________________________________________________
+[  4879] By: gsar                                  on 2000/01/24  14:14:20
+        Log: force linkage of the function wrappers for globals in change#4878
+     Branch: perl
+          ! embed.pl globals.c perlapi.h win32/win32.h
+____________________________________________________________________________
+[  4878] By: gsar                                  on 2000/01/24  13:04:45
+        Log: enable function wrappers for access to globals under MULTIPLICITY
+             (provides binary compatibility in the face of changes in interpreter
+             structure)
+     Branch: perl
+          ! Makefile.SH XSUB.h cflags.SH embed.pl makedef.pl objXSUB.h
+          ! perl.h perlapi.c perlapi.h win32/Makefile win32/makefile.mk
+____________________________________________________________________________
+[  4877] By: jhi                                   on 2000/01/24  11:41:57
+        Log: perlhist update.
+     Branch: cfgperl
+          ! pod/perlhist.pod
+____________________________________________________________________________
+[  4876] By: jhi                                   on 2000/01/24  11:32:07
+        Log: Updates on the large file support status.
+     Branch: cfgperl
+          ! pod/perldelta.pod
+____________________________________________________________________________
+[  4875] By: jhi                                   on 2000/01/24  11:23:16
+        Log: Integrate with Sarathy.
+     Branch: cfgperl
+         !> ext/DB_File/Makefile.PL ext/NDBM_File/NDBM_File.pm
+         !> ext/ODBM_File/ODBM_File.pm lib/AutoSplit.pm
+         !> lib/Math/Complex.pm lib/Math/Trig.pm lib/Shell.pm
+____________________________________________________________________________
+[  4874] By: gsar                                  on 2000/01/24  10:43:03
+        Log: fix typos; avoid use constant for lowercase constants (produces
+             warnings now)
+     Branch: perl
+          ! ext/DB_File/Makefile.PL lib/Math/Complex.pm lib/Math/Trig.pm
+          ! lib/Shell.pm
+____________________________________________________________________________
+[  4873] By: gsar                                  on 2000/01/24  09:40:24
+        Log: avoid warnings when there's no subs to autosplit
+     Branch: perl
+          ! lib/AutoSplit.pm
+____________________________________________________________________________
+[  4872] By: jhi                                   on 2000/01/24  09:39:01
+        Log: Create a tool for converting a config_h.SH into a VOS config.h.
+     Branch: cfgperl
+          + vos/config.def vos/config.pl
+          ! MANIFEST vos/config.h vos/config_h.SH_orig
+____________________________________________________________________________
+[  4871] By: gsar                                  on 2000/01/24  09:15:20
+        Log: typos in change#4623
+     Branch: perl
+          ! ext/NDBM_File/NDBM_File.pm ext/ODBM_File/ODBM_File.pm
+____________________________________________________________________________
+[  4870] By: jhi                                   on 2000/01/24  06:43:19
+        Log: Sync metaconfig units to comply with the typo fixes of #4869. 
+     Branch: cfgperl
+          ! Configure config_h.SH
+     Branch: metaconfig
+          + U/modified/cf_email.U U/modified/so.U
+     Branch: metaconfig/U/perl
+          ! dlsrc.U
+____________________________________________________________________________
+[  4869] By: jhi                                   on 2000/01/24  06:04:31
+        Log: Integrate with Sarathy.
+     Branch: cfgperl
+         +> t/pragma/diagnostics.t
+         !> (integrate 120 files)
+____________________________________________________________________________
+[  4868] By: gsar                                  on 2000/01/23  21:49:28
+        Log: on windows, set seek position to end for files opened in append mode
+             (improves compatibility with Unix, avoids buffering issues)
+     Branch: perl
+          ! win32/win32.c
+____________________________________________________________________________
+[  4867] By: gsar                                  on 2000/01/23  21:19:31
+        Log: change#4866 was flawed; revert and add better fix for warning
+     Branch: perl
+          ! op.c op.h
+____________________________________________________________________________
+[  4866] By: gsar                                  on 2000/01/23  20:43:56
+        Log: optimize away runtime code for our($foo) (also avoid warnings)
+     Branch: perl
+          ! op.c
+____________________________________________________________________________
+[  4865] By: gsar                                  on 2000/01/23  13:17:18
+        Log: DB_File 1.72 update from Paul Marquess <paul.marquess@bt.com>
+     Branch: perl
+          ! ext/DB_File/Changes ext/DB_File/DB_File.pm
+          ! ext/DB_File/DB_File.xs ext/DB_File/version.c
+____________________________________________________________________________
+[  4864] By: gsar                                  on 2000/01/23  13:12:31
+        Log: system('VAR123=foo cmd') wasn't invoking shell (de-locale-ized patch
+             suggested by Dominic Dunlop <domo@computer.org>)
+     Branch: perl
+          ! doio.c
+____________________________________________________________________________
+[  4863] By: gsar                                  on 2000/01/23  13:01:35
+        Log: fix misclassified warnings
+     Branch: perl
+          ! pod/perldiag.pod
+____________________________________________________________________________
+[  4862] By: gsar                                  on 2000/01/23  12:52:12
+        Log: document bareword prototype incompatibility
+     Branch: perl
+          ! pod/perldelta.pod pod/perlsub.pod
+____________________________________________________________________________
+[  4861] By: gsar                                  on 2000/01/23  12:32:25
+        Log: faulty edit
+     Branch: perl
+          ! lib/File/stat.pm
+____________________________________________________________________________
+[  4860] By: gsar                                  on 2000/01/23  12:23:48
+        Log: s/use vars/our/g modules that aren't independently maintained on CPAN
+     Branch: perl
+          ! ext/B/B/Asmdata.pm ext/Data/Dumper/Dumper.pm
+          ! ext/Devel/DProf/DProf.pm ext/Fcntl/Fcntl.pm
+          ! ext/File/Glob/Glob.pm ext/GDBM_File/GDBM_File.pm
+          ! ext/IO/lib/IO/Dir.pm ext/IO/lib/IO/File.pm
+          ! ext/IO/lib/IO/Handle.pm ext/IO/lib/IO/Pipe.pm
+          ! ext/IO/lib/IO/Poll.pm ext/IO/lib/IO/Seekable.pm
+          ! ext/IO/lib/IO/Socket.pm ext/IO/lib/IO/Socket/INET.pm
+          ! ext/IO/lib/IO/Socket/UNIX.pm ext/NDBM_File/NDBM_File.pm
+          ! ext/ODBM_File/ODBM_File.pm ext/Opcode/Opcode.pm
+          ! ext/Opcode/Safe.pm ext/POSIX/POSIX.pm
+          ! ext/SDBM_File/SDBM_File.pm ext/Socket/Socket.pm
+          ! ext/Thread/Thread.pm lib/AnyDBM_File.pm lib/AutoLoader.pm
+          ! lib/AutoSplit.pm lib/Class/Struct.pm lib/Dumpvalue.pm
+          ! lib/ExtUtils/Command.pm lib/ExtUtils/Install.pm
+          ! lib/ExtUtils/Installed.pm lib/ExtUtils/Liblist.pm
+          ! lib/ExtUtils/MM_VMS.pm lib/ExtUtils/Mksymlists.pm
+          ! lib/ExtUtils/Packlist.pm lib/Fatal.pm lib/File/Basename.pm
+          ! lib/File/Compare.pm lib/File/Copy.pm lib/File/Find.pm
+          ! lib/File/Path.pm lib/File/stat.pm lib/FileHandle.pm
+          ! lib/Math/Complex.pm lib/Math/Trig.pm lib/Net/Ping.pm
+          ! lib/Net/hostent.pm lib/Net/netent.pm lib/Net/protoent.pm
+          ! lib/Net/servent.pm lib/Shell.pm lib/Test.pm
+          ! lib/Test/Harness.pm lib/Tie/Array.pm lib/Tie/Handle.pm
+          ! lib/Time/gmtime.pm lib/Time/localtime.pm lib/User/grent.pm
+          ! lib/User/pwent.pm lib/base.pm lib/caller.pm lib/constant.pm
+          ! lib/diagnostics.pm lib/fields.pm lib/lib.pm lib/strict.pm
+____________________________________________________________________________
+[  4859] By: gsar                                  on 2000/01/23  11:29:22
+        Log: fix diagnostics to report "our" vs "my" correctly
+     Branch: perl
+          ! op.c pod/perldiag.pod
+____________________________________________________________________________
+[  4858] By: gsar                                  on 2000/01/23  10:14:46
+        Log: set api_version to 5.5.0 (binary compatibility needs to get tested
+             more widely)
+     Branch: perl
+          ! patchlevel.h
+____________________________________________________________________________
+[  4857] By: gsar                                  on 2000/01/23  10:04:03
+        Log: disallow our($foo::bar)
+     Branch: perl
+          ! pod/perldiag.pod toke.c
+____________________________________________________________________________
+[  4856] By: gsar                                  on 2000/01/23  09:50:54
+        Log: dprofpp can't find Devel::DProf::VERSION due to change#4852
+     Branch: perl
+          ! utils/dprofpp.PL
+____________________________________________________________________________
+[  4855] By: gsar                                  on 2000/01/23  09:36:51
+        Log: new test (from Michael G Schwern <schwern@pobox.com>)
+     Branch: perl
+          + t/pragma/diagnostics.t
+          ! MANIFEST
+____________________________________________________________________________
+[  4854] By: gsar                                  on 2000/01/23  09:24:40
+        Log: add PREREQ_PM to default template (suggested by Michael G Schwern
+             <schwern@pobox.com>)
+     Branch: perl
+          ! utils/h2xs.PL
+____________________________________________________________________________
+[  4853] By: gsar                                  on 2000/01/23  09:08:30
+        Log: cygwin update (from Eric Fifer <EFifer@sanwaint.com>)
+     Branch: perl
+          ! cygwin/Makefile.SHs hints/cygwin.sh t/io/tell.t
+____________________________________________________________________________
+[  4852] By: gsar                                  on 2000/01/23  08:52:44
+        Log: mark some extensions as "special versions" to avoid CPAN indexer
+             confusion (from Ilya Zakharevich)
+     Branch: perl
+          ! ext/Devel/DProf/DProf.pm ext/Devel/Peek/Peek.pm
+____________________________________________________________________________
+[  4851] By: gsar                                  on 2000/01/23  08:48:46
+        Log: prefer POSIX::uname() rather than syscalls, which require attempting
+             to load syscall.ph (from David Huggins-Daines <dhd@eradicator.org>)
+     Branch: perl
+          ! lib/Sys/Hostname.pm
+____________________________________________________________________________
+[  4850] By: gsar                                  on 2000/01/23  08:36:43
+        Log: integrate cfgperl contents into mainline
+     Branch: perl
+         !> Configure Policy_sh.SH Porting/Glossary Porting/config.sh
+         !> Porting/config_H config_h.SH perl.h
+____________________________________________________________________________
+[  4849] By: gsar                                  on 2000/01/23  08:17:30
+        Log: fix localization in while BLOCK when there is a continue BLOCK
+             by introducing an explicit scope (c.f. change#4848)
+     Branch: perl
+          ! op.c pp_ctl.c t/cmd/while.t
+____________________________________________________________________________
+[  4848] By: gsar                                  on 2000/01/23  06:43:51
+        Log: fix scope cleanup when next jumps to a continue block; this is rather
+             in the nature of a kludge; it doesn't fix the longstanding bug that
+             makes C<while (!$x++) { local $x = 7 } continue { print $x }> print "7"
+             instead of "1")
+     Branch: perl
+          ! pp_ctl.c t/cmd/while.t
+____________________________________________________________________________
+[  4847] By: gsar                                  on 2000/01/23  04:47:25
+        Log: don't warn about masked lexical in C<if (my $x = 1) { my $x; }>,
+             C<while (my $x = foo()) { my $x = bar(); }> etc.
+     Branch: perl
+          ! op.c
+____________________________________________________________________________
+[  4846] By: gsar                                  on 2000/01/23  04:44:17
+        Log: avoid warnings in change#4839
+     Branch: perl
+          ! lib/Carp/Heavy.pm
+____________________________________________________________________________
+[  4845] By: gsar                                  on 2000/01/22  13:12:38
+        Log: Configure typos (from Ray Phillips <r.phillips@mailbox.uq.edu.au>)
+     Branch: perl
+          ! Changes Configure
+____________________________________________________________________________
+[  4844] By: gsar                                  on 2000/01/22  12:46:26
+        Log: wrong category for exec() warning
+     Branch: perl
+          ! op.c pod/perlop.pod
+____________________________________________________________________________
+[  4843] By: gsar                                  on 2000/01/22  12:42:40
+        Log: fix line continuations in argument lists (from Helmut Jarausch)
+     Branch: perl
+          ! lib/ExtUtils/xsubpp
+____________________________________________________________________________
+[  4842] By: gsar                                  on 2000/01/22  12:34:39
+        Log: CGI.pm upgraded to v2.56 from CPAN
+     Branch: perl
+          ! eg/cgi/index.html lib/CGI.pm lib/CGI/Apache.pm
+          ! lib/CGI/Cookie.pm lib/CGI/Pretty.pm lib/CGI/Switch.pm
+          ! t/lib/cgi-html.t
+____________________________________________________________________________
+[  4841] By: gsar                                  on 2000/01/22  12:07:23
+        Log: avoid warnings due to lack of forward declarations
+     Branch: perl
+          ! lib/Pod/Html.pm
+____________________________________________________________________________
+[  4840] By: gsar                                  on 2000/01/22  12:04:30
+        Log: heavy cleanup of Pod::Html bug fixes (from Wolfgang Laun
+             <wolfgang.laun@alcatel.at>)
+     Branch: perl
+          ! lib/Pod/Html.pm
+____________________________________________________________________________
+[  4839] By: gsar                                  on 2000/01/22  11:57:24
+        Log: better Carp reporting within subclassed modules (from Wolfgang Laun
+             <wolfgang.laun@alcatel.at>)
+     Branch: perl
+          ! lib/Carp/Heavy.pm pod/perldelta.pod
+____________________________________________________________________________
+[  4838] By: gsar                                  on 2000/01/22  10:53:06
+        Log: truncate(FH) flushes FH before truncating it
+     Branch: perl
+          ! pp_sys.c t/io/fs.t
+____________________________________________________________________________
+[  4837] By: gsar                                  on 2000/01/22  10:37:16
+        Log: #line directives without a filename leave the file name as it was
+             instead of setting it to the script name (from Andrew Pimlott
+             <andrew@pimlott.ne.mediaone.net>)
+     Branch: perl
+          ! toke.c
+____________________________________________________________________________
+[  4836] By: gsar                                  on 2000/01/22  10:06:53
+        Log: add patch for printf-style format typechecks (from Robin Barker
+             <rmb1@cise.npl.co.uk>); fixes for problems so identified
+     Branch: perl
+          ! XSUB.h doio.c dump.c embed.pl gv.c op.c perl.c perl.h pp_ctl.c
+          ! pp_hot.c pp_sys.c proto.h regcomp.c sv.c toke.c
+____________________________________________________________________________
+[  4835] By: gsar                                  on 2000/01/22  08:42:52
+        Log: From: John Tobey <jtobey@isay.com>
+             Date: Thu, 16 Dec 1999 20:20:38 -0500
+             Message-Id: <E11ym4U-0000c7-00@einstein.localnet>
+             Subject: [ID 19991216.006] [PATCH 5.005_63] Reloading modules that use 'fields'
+     Branch: perl
+          ! lib/base.pm lib/fields.pm t/lib/fields.t
+____________________________________________________________________________
+[  4834] By: gsar                                  on 2000/01/22  08:08:08
+        Log: fix deeply nested closures that have no references to lexical in
+             intervening subs
+     Branch: perl
+          ! embed.h embed.pl op.c proto.h t/op/closure.t
+____________________________________________________________________________
+[  4833] By: gsar                                  on 2000/01/21  17:04:21
+        Log: add $VERSION
+     Branch: perl
+          ! lib/Text/Soundex.pm lib/Tie/Handle.pm
+____________________________________________________________________________
+[  4832] By: gsar                                  on 2000/01/21  16:49:09
+        Log: fix bug in dumping self-referential scalars
+     Branch: perl
+          ! ext/Data/Dumper/Dumper.pm ext/Data/Dumper/Dumper.xs
+          ! t/lib/dumper.t
+____________________________________________________________________________
+[  4831] By: jhi                                   on 2000/01/21  09:16:07
+        Log: Integrate with Sarathy.
+     Branch: cfgperl
+         +> t/op/exists_sub.t
+         !> INSTALL MANIFEST embed.h embed.pl global.sym objXSUB.h op.c
+         !> op.h perlapi.c pod/perldelta.pod pod/perldiag.pod
+         !> pod/perlfunc.pod pod/perlop.pod pod/perlvar.pod pp.c pp_hot.c
+         !> pp_sys.c proto.h sv.c sv.h t/pragma/warn/pp_hot
+         !> t/pragma/warn/pp_sys util.c utils/h2xs.PL
+____________________________________________________________________________
+[  4830] By: gsar                                  on 2000/01/21  04:28:08
+        Log: patch to report warnings on bogus filehandles passed to flock(),
+             more consistent warnings, from Greg Bacon <gbacon@itsc.uah.edu>
+             (slightly modified)
+     Branch: perl
+          ! embed.h embed.pl global.sym objXSUB.h perlapi.c
+          ! pod/perldiag.pod pp_hot.c pp_sys.c proto.h
+          ! t/pragma/warn/pp_hot t/pragma/warn/pp_sys util.c
+____________________________________________________________________________
+[  4829] By: gsar                                  on 2000/01/21  03:43:46
+        Log: typo fix
+     Branch: perl
+          ! pod/perlop.pod
+____________________________________________________________________________
+[  4828] By: gsar                                  on 2000/01/21  03:32:31
+        Log: notes about $^H and %^H from Ilya Zakharevich; substantial
+             fixups of faulty facts and prose
+     Branch: perl
+          ! pod/perlvar.pod
+____________________________________________________________________________
+[  4827] By: gsar                                  on 2000/01/21  01:45:51
+        Log: support for C<exists &func> (from Spider Boardman)
+     Branch: perl
+          + t/op/exists_sub.t
+          ! MANIFEST op.c op.h pod/perldelta.pod pod/perldiag.pod
+          ! pod/perlfunc.pod pp.c
+____________________________________________________________________________
+[  4826] By: gsar                                  on 2000/01/21  01:35:46
+        Log: mention the fact that open(my $foo, ...) covers all handle
+             constructors
+     Branch: perl
+          ! pod/perldelta.pod
+____________________________________________________________________________
+[  4825] By: gsar                                  on 2000/01/21  01:03:34
+        Log: From: Ilya Zakharevich <ilya@math.ohio-state.edu>
+             Date: Wed, 19 Jan 2000 15:05:11 -0500
+             Message-ID: <20000119150511.A22859@monk.mps.ohio-state.edu>
+             Subject: [PATCH 5.005_63] h2xs goof and a depessimization
+     Branch: perl
+          ! utils/h2xs.PL
+____________________________________________________________________________
+[  4824] By: gsar                                  on 2000/01/20  19:14:26
+        Log: INSTALL updates from Andy Dougherty
+     Branch: perl
+          ! INSTALL
+____________________________________________________________________________
+[  4823] By: gsar                                  on 2000/01/20  08:40:13
+        Log: sv_true() has a superfluous test
+     Branch: perl
+          ! sv.c sv.h
+____________________________________________________________________________
+[  4822] By: bailey                                on 2000/01/20  02:03:35
+        Log: Minor cosmetic updates
+     Branch: vmsperl
+          ! configure.com
+____________________________________________________________________________
+[  4821] By: bailey                                on 2000/01/20  00:25:30
+        Log: Quick integration of mainline changes to date
+     Branch: vmsperl
+         +> (branch 74 files)
+          - eg/cgi/dna.small.gif.uu eg/cgi/wilogo.gif.uu epoc/config.h
+          - epoc/perl.mmp epoc/perl.pkg ext/DynaLoader/dl_cygwin.xs
+          - lib/Pod/PlainText.pm lib/unicode/Eq/Latin1
+          - lib/unicode/Eq/Unicode lib/unicode/Jamo-2.txt
+          - lib/unicode/Unicode.html lib/unicode/UnicodeData-Latest.txt
+          - lib/warning.pm os2/POSIX.mkfifo warning.h
+         !> (integrate 462 files)
+____________________________________________________________________________
+[  4820] By: jhi                                   on 2000/01/19  22:46:42
+        Log: More robust inc_version_list from Andy.
+     Branch: cfgperl
+          ! Configure Porting/Glossary Porting/config.sh Porting/config_H
+          ! config_h.SH
+     Branch: metaconfig
+          ! U/installdirs/inc_version_list.U
+____________________________________________________________________________
+[  4819] By: jhi                                   on 2000/01/19  17:36:56
+        Log: Add NV_PRESERVES_UV.
+     Branch: cfgperl
+          ! Configure Porting/Glossary Porting/config.sh Porting/config_H
+          ! config_h.SH perl.h
+     Branch: metaconfig
+          ! U/protos/selecttype.U
+     Branch: metaconfig/U/perl
+          - nvpresuv.U
+          ! perlxv.U
+____________________________________________________________________________
+[  4818] By: jhi                                   on 2000/01/19  08:13:05
+        Log: Integrate with Sarathy.
+     Branch: cfgperl
+         !> Changes Configure win32/config.bc win32/config.gc
+         !> win32/config.vc win32/config_H.bc win32/config_H.gc
+         !> win32/config_H.vc
+____________________________________________________________________________
+[  4817] By: gsar                                  on 2000/01/19  05:25:43
+        Log: regen win32/config*
+     Branch: perl
+          ! Configure win32/config.bc win32/config.gc win32/config.vc
+          ! win32/config_H.bc win32/config_H.gc win32/config_H.vc
+____________________________________________________________________________
+[  4816] By: jhi                                   on 2000/01/18  21:19:10
+        Log: Policy patch from Andy for installation directories,
+             removing the $apiversion.
+     Branch: cfgperl
+          ! Policy_sh.SH
+____________________________________________________________________________
+[  4815] By: jhi                                   on 2000/01/18  21:11:03
+        Log: Move _GNU_SOURCE into config_h.SH awaay from Configure
+             as suggested by Andy.
+     Branch: cfgperl
+          ! Configure config_h.SH
+     Branch: metaconfig
+          ! U/compline/d_gnulibc.U U/modified/cc.U
+____________________________________________________________________________
+[  4814] By: gsar                                  on 2000/01/18  20:48:10
+        Log: integrate cfgperl changes into mainline
+     Branch: perl
+          ! Changes
+         !> Configure Porting/Glossary Porting/config.sh Porting/config_H
+         !> Porting/pumpkin.pod config_h.SH doop.c patchlevel.h perl.c
+         !> perl.h t/lib/posix.t t/op/pack.t utf8.c
+____________________________________________________________________________
 [  4813] By: jhi                                   on 2000/01/18  19:41:33
         Log: metaconfig todo note from Andy.
      Branch: cfgperl
@@ -256,256 +1703,6 @@ ____________________________________________________________________________
           ! README.win32 win32/Makefile win32/makefile.mk win32/perlhost.h
           ! win32/vdir.h win32/win32.c
 ____________________________________________________________________________
-[  4788] By: chip                                  on 2000/01/10  17:52:39
-        Log: Integrate #4779 from mainline:
-             terminate -s switch processing only on C<-->, not on C<--foo>
-     Branch: maint-5.005/perl
-          ! perl.c
-____________________________________________________________________________
-[  4787] By: chip                                  on 2000/01/10  17:51:17
-        Log: Tweak change #4785.
-     Branch: maint-5.005/perl
-          ! win32/win32.c
-____________________________________________________________________________
-[  4786] By: chip                                  on 2000/01/10  17:11:40
-        Log: Make automatically-generated files +w (type "text+w").
-     Branch: maint-5.005/perl
-          ! embed.h embedvar.h ext/B/B/Asmdata.pm keywords.h objXSUB.h
-          ! opcode.h pod/perltoc.pod pp_proto.h regnodes.h
-          ! win32/config_H.bc win32/config_H.gc win32/config_H.vc
-____________________________________________________________________________
-[  4785] By: chip                                  on 2000/01/10  17:08:48
-        Log: Patch from Sarathy to integrate changes from mainline: 2751,
-             2821, 2916, 2930, 2931, 2937 2990, 3033, 3036, 3042, 3061, 3097,
-             3123, 3134, 3135, 3269, 3270, 3300, 3316, 3345 3350, 3353, 3362,
-             3363, 3396, 3419, 3423, 3445, 3446, 3447, 3449, 3450, 3451, 3487
-             3493, 3514, 3533, 3548, 3549, 3588, 3682, 3685, 3699, 3785,
-             3804, 3811, 3897, 4057 4102, 4103, 4230, 4401, 4420, 4504
-             --
-             enable better Win32::DomainName() by demand loading netapi32.dll
-             (from Jan Dubois)
-             --
-             win32_utime() on directories should use localtime() rather
-             than gmtime() (from Jan Dubois)
-             --
-             serious bug introduced by G_VOID changes in 5.003_96: scalar
-             eval"" did not pop stack correctly; C<$a = eval "(1,2)x1">
-             is one symptom of the problem
-             --
-             add $installarchlib/CORE to default linker search path on windows
-             --
-             fix memory leak in C<sub f { split ' ', "a b" } f() while 1>
-             --
-             fix memory leak in C<sub f { @_ = 1 } f() while 1>
-             --
-             avoid hiding child process window
-             --
-             optimizations could sometimes bypass bareword check
-             --
-             fix typo that caused INSTALLPRIVLIB to have doubled 'perl5'
-             --
-             Pod::Html tweak
-             From: jan.dubois@ibm.net (Jan Dubois)
-             To: perl5-porters@perl.org
-             Subject: [PATCH 5.005_58] pod2html: Missing chunk for VMS filenames
-             Date: Tue, 27 Jul 1999 22:14:12 +0200
-             Message-ID: <37a50af0.46171380@smtp1.ibm.net>
-             --
-             don't quit if =head* wasn't found (suggested by Roland Bauer
-             <roland.bauer@fff.at>)
-             --
-             avoid bug in win32_str_os_error() (from Jan Dubois)
-             --
-             applied suggested patch, along with later tweak
-             From: jan.dubois@ibm.net (Jan Dubois)
-             Date: Wed, 14 Jul 1999 23:53:43 +0200
-             Message-ID: <37a902e7.15977234@smtp1.ibm.net>
-             Subject: Merge ActivePerl Stylesheet support etc into Pod::Html.pm
-             --
-             use a better prefixify() heuristic than m/perl/ (prefix/lib/perl5
-             and prefix/lib/perl5/man are ass_u_med only if those directories
-             actually exist; else prefix/{lib,man} are used)
-             --
-             allow C<-foo> under C<use integer> (behavior of C<-$string>
-             is unchanged still)
-             --
-             avoid race condition in the CAPI extension bootstrap handler
-             --
-             sanity check to cover the case when perl is installed into the
-             X:\ (drive root)
-             --
-             truncate() has a peculiar exemption from strict barewords, even
-             though it has a non-filehandle prototype
-             --
-             change#3447 didn't do enough to exempt Foo->bar(qw/.../) from
-             strict 'subs'
-             --
-             change#3449 wasn't doing enough
-             --
-             make win32_spawnvp() inherit standard handles even when they
-             may be redirected
-             --
-             minor logic tweak for reserved word warning
-             --
-             oops, some files missing in change#3449
-             --
-             allow '*' prototype to autoquote even barewords that happen to be
-             function names; parens or ampersand continue to force the other
-             interpretation; makes C<sub Foo {'bar'} CORE::GLOBAL::require Foo;>
-             do the right thing, for example
-             --
-             redo change#2061 and parts of change#1169 with code in the
-             parser; PL_last_proto hackery gone, strict 'subs' in now
-             implemented in the optimizer where specifying the exceptional
-             cases is much more robust; '*' (bareword) prototype now works
-             reliably when used in second and subsequent arguments
-             --
-             remove redundant part of change#1169 superceded by change#2061;
-             avoid "future reserved word" warning on prototypical bearwords
-             --
-             s/isspace/isSPACE/g and make sure the CRT version is always
-             passed an unsigned char (fixes random occurrence of spaces in
-             arguments containing high-bit chars passed to spawned children,
-             on win32)
-             --
-             on win32, look for "site/5.XXX/lib" if "site/5.XXXYY/lib" isn't
-             found (brings sitelib intuition in line with privlib)
-             --
-             mortalize string allocations by win32_get_{priv,site}lib()
-             (fixes small memory leak in interpreter)
-             --
-             opendir(D,"x:") on win32 opens cwd() for drive rather than root;
-             stat() behaves similarly
-             --
-             documentation for Win32 builtins (somewhat modified)
-             From: jan.dubois@ibm.net (Jan Dubois)
-             Date: Tue, 30 Mar 1999 08:05:03 +0200
-             Message-ID: <37006783.1926460@smtp1.ibm.net>
-             Subject: Re: Issues with build 509 
-             --
-             provide File::Copy::syscopy() via Win32::CopyFile() on win32
-             --
-             more bulletproof workaround for mangled paths;
-             provide Win32::GetLongPathName()
-             --
-             normalize $^X to full pathname on win32
-             --
-             work around mangled archname on win32 while finding privlib/sitelib;
-             normalize lib paths to forward slashes internally
-             --
-             avoid negative return value from Win32::GetTickCount()
-             From: jan.dubois@ibm.net (Jan Dubois)
-             Date: Sat, 03 Apr 1999 19:04:18 +0200
-             Message-ID: <37084742.22824479@smtp1.ibm.net>
-             Subject: Re: Win32::GetTickCount
-             --
-             adjust win32_stat() to cope with FindFirstFile() and stat() bugs
-             (makes opendir(D,"c:") work reliably)
-             --
-             fix buggy reference count on refs to SVs with autoviv magic
-             (resulted in C<my @a; $a[1] = 1; print \$_ for @a> and Data::Dumper
-             accessing free()d memory)
-             --
-             fix bug in change#3123 (off-by-one, caused C<qx[noargs]> to fail
-             on win32)
-             --
-             flip release & version in win32_uname()
-             --
-             support POSIX::uname() via win32_uname()
-             --
-             implement win32_spawnvp() internally, making it return true PIDs
-             for asynchronous spawns; fix win32_kill() to always deal with
-             PIDs
-             --
-             use yyerror() instead of croak() so that compile-time failures in
-             my(LIST) don't confuse globals with lexicals
-             --
-             allow custom comparison function in File::Compare::compare_text()
-             From: jan.dubois@ibm.net (Jan Dubois)
-             Date: Fri, 26 Feb 1999 21:56:09 +0100
-             Message-ID: <36db0838.8805651@smtp1.ibm.net>
-             Subject: Re: PodParser 1.07 (was: RE: C<stuff()> vs stuff()) 
-             --
-             slightly edited version of suggested patch
-             From: jan.dubois@ibm.net (Jan Dubois)
-             Date: Mon, 01 Mar 1999 00:32:05 +0100
-             Message-ID: <36dbcf2c.12325433@smtp1.ibm.net>
-             Subject: Re: [PATCH 5.005_55] Cleanup of File::Spec module
-             --
-             revert parts of change#2990 to preserve predictable usage of
-             Win32::Foo() as stacked list values
-             From: jan.dubois@ibm.net (Jan Dubois)
-             Date: Sat, 27 Feb 1999 18:24:17 +0100
-             Message-ID: <36e22849.36531259@smtp1.ibm.net>
-             Subject: Re: resend [PATCH 5.005_55] Various win32/win32.c cleanup 
-             --
-             add File::Compare::compare_text()
-             From: jan.dubois@ibm.net (Jan Dubois)
-             Date: Fri, 26 Feb 1999 00:20:41 +0100
-             Message-ID: <36dcd8ab.20195659@smtp1.ibm.net>
-             Subject: Re: PodParser 1.07 (was: RE: C<stuff()> vs stuff()) 
-             --
-             From: jan.dubois@ibm.net (Jan Dubois)
-             Date: Thu, 18 Feb 1999 19:14:07 +0100
-             Message-ID: <36d15809.40853323@smtp1.ibm.net>
-             Subject: resend [PATCH 5.005_55] Various win32/win32.c cleanup
-             --
-             support Win32::GetFullPathName() and Win32::SetLastError()
-             From: jan.dubois@ibm.net (Jan Dubois)
-             Date: Tue, 09 Feb 1999 22:27:31 +0100
-             Message-ID: <36c1a2ed.8007554@smtp1.ibm.net>
-             Subject: [PATCH _54] Win32::GetFullPathName
-             --
-             backout change#2811 and add newer version based on File::Spec
-             From: Barrie Slaymaker <rbs@telerama.com>
-             Date: Thu, 11 Feb 1999 16:29:24 -0500
-             Message-ID: <36C34BB4.A62090E0@telerama.com>
-             Subject: (pod2html) Relative URLs using new File::Spec
-             --
-             From: Barrie Slaymaker <rbs@telerama.com>
-             Date: Thu, 11 Feb 1999 19:39:48 -0500
-             Message-ID: <36C37854.707D139@telerama.com>
-             Subject: Merging File::PathConvert in to File::Spec
-             --
-             back out change#2751, apply updated version 
-             From: jan.dubois@ibm.net (Jan Dubois)
-             Date: Sat, 06 Feb 1999 01:06:29 +0100
-             Message-ID: <36bc844c.18763049@smtp1.ibm.net>
-             Subject: [PATCH] Cleanup of File::Spec module
-             --
-             pod2html misinterprets Foo::Bar as a URL
-             (fix suggested by Alexander Barilo
-             <Alexander.Barilo@aexp.com>)
-             --
-             devnull() support from Jan Dubois <jan.dubois@ibm.net> and others
-     Branch: maint-5.005/perl
-          + lib/File/Spec/Functions.pm pod/Win32.pod
-          ! MANIFEST cop.h dump.c embed.h ext/SDBM_File/sdbm/dbe.c
-          ! global.sym iperlsys.h lib/CGI.pm lib/CGI/Carp.pm
-          ! lib/ExtUtils/MM_Unix.pm lib/ExtUtils/xsubpp
-          ! lib/File/Compare.pm lib/File/Copy.pm lib/File/Spec.pm
-          ! lib/File/Spec/Mac.pm lib/File/Spec/OS2.pm
-          ! lib/File/Spec/Unix.pm lib/File/Spec/VMS.pm
-          ! lib/File/Spec/Win32.pm lib/Pod/Html.pm objXSUB.h objpp.h op.c
-          ! op.h perl.h pp.c pp_ctl.c pp_hot.c proto.h t/comp/proto.t
-          ! t/io/fs.t t/lib/fatal.t t/op/eval.t t/op/magic.t t/op/ref.t
-          ! t/pragma/strict-subs toke.c utils/perldoc.PL win32/GenCAPI.pl
-          ! win32/Makefile win32/config.bc win32/config.gc win32/config.vc
-          ! win32/config_H.bc win32/config_H.gc win32/config_H.vc
-          ! win32/makedef.pl win32/makefile.mk win32/perlhost.h
-          ! win32/runperl.c win32/win32.c win32/win32.h win32/win32iop.h
-          ! win32/win32sck.c
-____________________________________________________________________________
-[  4784] By: chip                                  on 2000/01/10  09:04:34
-        Log: various documentation tweaks suggested by M. J. T. Guy
-     Branch: maint-5.005/perl
-          ! INSTALL lib/strict.pm pod/perlfunc.pod pod/perlsyn.pod
-____________________________________________________________________________
-[  4783] By: chip                                  on 2000/01/10  08:11:39
-        Log: Refresh Getopt::Long to v2.20.
-     Branch: maint-5.005/perl
-          ! lib/Getopt/Long.pm
-____________________________________________________________________________
 [  4782] By: gsar                                  on 2000/01/10  05:27:03
         Log: EPOC port update (from Olaf Flebbe <O.Flebbe@science-computing.de>)
      Branch: perl
index ba58770..7a6f9d6 100755 (executable)
--- a/Configure
+++ b/Configure
@@ -20,7 +20,7 @@
 
 # $Id: Head.U,v 3.0.1.9 1997/02/28 15:02:09 ram Exp $
 #
-# Generated on Tue Jan 18 21:42:31 EET 2000 [metaconfig 3.0 PL70]
+# Generated on Fri Feb  4 21:57:24 EET 2000 [metaconfig 3.0 PL70]
 # (with additional metaconfig patches by perlbug@perl.com)
 
 cat >/tmp/c1$$ <<EOF
@@ -399,6 +399,7 @@ d_getsbyport=''
 d_gnulibc=''
 d_hasmntopt=''
 d_htonl=''
+d_iconv=''
 d_inetaton=''
 d_int64t=''
 d_isascii=''
@@ -600,6 +601,7 @@ i_float=''
 i_gdbm=''
 d_grpasswd=''
 i_grp=''
+i_iconv=''
 i_inttypes=''
 i_limits=''
 i_locale=''
@@ -671,6 +673,7 @@ i_varargs=''
 i_varhdr=''
 i_vfork=''
 inc_version_list=''
+inc_version_list_init=''
 installprefix=''
 installprefixexp=''
 installstyle=''
@@ -692,6 +695,9 @@ plibpth=''
 xlibpth=''
 ignore_versioned_solibs=''
 libs=''
+libsdirs=''
+libsfiles=''
+libsfound=''
 lns=''
 d_PRIEldbl=''
 d_PRIFldbl=''
@@ -760,6 +766,7 @@ subversion=''
 version=''
 perladmin=''
 perlpath=''
+d_nv_preserves_uv=''
 i16size=''
 i16type=''
 i32size=''
@@ -905,71 +912,6 @@ if test -f /etc/unixtovms.exe; then
 fi
 
 i_whoami=''
-: list of known cpp symbols, sorted alphabetically
-al="AMIX BIT_MSF BSD BSD4_3 BSD_NET2 CMU CRAY DGUX DOLPHIN DPX2"
-al="$al GO32 GOULD_PN HP700 I386 I80960 I960 Lynx M68000 M68K MACH"
-al="$al MIPSEB MIPSEL MSDOS MTXINU MULTIMAX MVS"
-al="$al M_COFF M_I186 M_I286 M_I386 M_I8086 M_I86 M_I86SM"
-al="$al M_SYS3 M_SYS5 M_SYSIII M_SYSV M_UNIX M_XENIX"
-al="$al NeXT OCS88 OSF1 PARISC PC532 PORTAR POSIX"
-al="$al PWB R3000 RES RISC6000 RT Sun386i SVR3 SVR4 SVR5"
-al="$al SYSTYPE_BSD SYSTYPE_SVR4 SYSTYPE_SYSV Tek4132 Tek4300"
-al="$al UMAXV USGr4 USGr4_2 UTEK UTS UTek UnicomPBB UnicomPBD Utek"
-al="$al VMS Xenix286"
-al="$al _AIX _AIX32 _AIX370 _AIX41 _AM29000 _COFF _CRAY _CX_UX _EPI"
-al="$al _IBMESA _IBMR2 _M88K _M88KBCS_TARGET _POWER"
-al="$al _MIPSEB _MIPSEL _M_COFF _M_I86 _M_I86SM _M_SYS3"
-al="$al _M_SYS5 _M_SYSIII _M_SYSV _M_UNIX _M_XENIX _NLS _PGC_ _R3000"
-al="$al _SYSTYPE_BSD _SYSTYPE_BSD43 _SYSTYPE_SVR4"
-al="$al _SYSTYPE_SYSV _SYSV3 _U370 _UNICOS"
-al="$al __386BSD__ __BIG_ENDIAN __BIG_ENDIAN__ __BSD_4_4__"
-al="$al __DGUX__ __DPX2__ __H3050R __H3050RX"
-al="$al __LITTLE_ENDIAN __LITTLE_ENDIAN__ __MACH__"
-al="$al __MIPSEB __MIPSEB__ __MIPSEL __MIPSEL__"
-al="$al __Next__ __OSF1__ __PARAGON__ __PGC__ __PWB __STDC__"
-al="$al __SVR4_2__ __UMAXV__"
-al="$al ____386BSD____ __alpha __alpha__ __amiga"
-al="$al __bsd4_2 __bsd4_2__ __bsdi__ __convex__"
-al="$al __host_mips__"
-al="$al __hp9000s200 __hp9000s300 __hp9000s400 __hp9000s500"
-al="$al __hp9000s500 __hp9000s700 __hp9000s800"
-al="$al __hppa __hpux __hp_osf __i286 __i286__ __i386 __i386__"
-al="$al __i486 __i486__ __i860 __i860__ __ibmesa __ksr1__ __linux__"
-al="$al __m68k __m68k__ __m88100__ __m88k __m88k__"
-al="$al __mc68000 __mc68000__ __mc68020 __mc68020__"
-al="$al __mc68030 __mc68030__ __mc68040 __mc68040__"
-al="$al __mc88100 __mc88100__ __mips __mips__"
-al="$al __motorola__ __osf__ __pa_risc __sparc__ __stdc__"
-al="$al __sun __sun__ __svr3__ __svr4__ __ultrix __ultrix__"
-al="$al __unix __unix__ __uxpm__ __uxps__ __vax __vax__"
-al="$al _host_mips _mips _unix"
-al="$al a29k aegis aix aixpc alliant alpha am29000 amiga ansi ardent"
-al="$al apollo ardent att386 att3b"
-al="$al bsd bsd43 bsd4_2 bsd4_3 bsd4_4 bsdi bull"
-al="$al cadmus clipper concurrent convex cray ctix"
-al="$al dmert encore gcos gcx gimpel gould"
-al="$al hbullx20 hcx host_mips hp200 hp300 hp700 hp800"
-al="$al hp9000 hp9000s300 hp9000s400 hp9000s500"
-al="$al hp9000s700 hp9000s800 hp9k8 hppa hpux"
-al="$al i186 i286 i386 i486 i8086"
-al="$al i80960 i860 iAPX286 ibm ibm032 ibmrt interdata is68k"
-al="$al ksr1 linux luna luna88k m68k m88100 m88k"
-al="$al mc300 mc500 mc68000 mc68010 mc68020 mc68030"
-al="$al mc68040 mc68060 mc68k mc68k32 mc700"
-al="$al mc88000 mc88100 merlin mert mips mvs n16"
-al="$al ncl_el ncl_mr"
-al="$al news1500 news1700 news1800 news1900 news3700"
-al="$al news700 news800 news900 ns16000 ns32000"
-al="$al ns32016 ns32332 ns32k nsc32000 os osf"
-al="$al parisc pc532 pdp11 plexus posix pyr"
-al="$al riscix riscos scs sequent sgi sinix sony sony_news"
-al="$al sonyrisc sparc sparclite spectrum stardent stratos"
-al="$al sun sun3 sun386 svr4 sysV68 sysV88"
-al="$al titan tower tower32 tower32_200 tower32_600 tower32_700"
-al="$al tower32_800 tower32_850 tss u370 u3b u3b2 u3b20 u3b200"
-al="$al u3b20d u3b5 ultrix unix unixpc unos vax venix vms"
-al="$al xenix z8000"
-
 : set useposix=false in your hint file to disable the POSIX extension.
 useposix=true
 : set useopcode=false in your hint file to disable the Opcode extension.
@@ -2128,7 +2070,8 @@ $eunicefix tr
 : Try to determine whether config.sh was made on this system
 case "$config_sh" in
 '')
-myuname=`( ($uname -a) 2>/dev/null || hostname) 2>&1`
+myuname=`$uname -a 2>/dev/null`
+$test -z "$myuname" && myuname=`hostname 2>/dev/null`
 # tr '[A-Z]' '[a-z]' would not work in EBCDIC
 # because the A-Z/a-z are not consecutive.
 myuname=`echo $myuname | $sed -e 's/^[^=]*=//' -e 's/\///g' | \
@@ -2194,6 +2137,7 @@ EOM
        $test -f /dnix && osname=dnix
        $test -f /lynx.os && osname=lynxos
        $test -f /unicos && osname=unicos && osvers=`$uname -r`
+       $test -f /unicosmk && osname=unicosmk && osvers=`$uname -r`
        $test -f /unicosmk.ar && osname=unicosmk && osvers=`$uname -r`
        $test -f /bin/mips && /bin/mips && osname=mips
        $test -d /NextApps && set X `hostinfo | grep 'NeXT Mach.*:' | \
@@ -2654,7 +2598,7 @@ esac'
 
 cat <<EOM
 
-Perl can be built to take advantage of threads, on some systems.
+Perl can be built to take advantage of threads on some systems.
 To do so, Configure must be run with -Dusethreads.
 
 Note that threading is a highly experimental feature, and
@@ -2685,6 +2629,10 @@ the 5.005 version (5005threads) and an interpreter-based version
 (ithreads) that has one interpreter per thread.  Both are very 
 experimental.  This arrangement exists to help developers work out
 which one is better.
+
+If you're a casual user, you probably don't want interpreter-threads
+at this time.  There doesn't yet exist a way to create threads from
+within Perl in this model, i.e., "use Thread;" will NOT work.
 EOM
        : Default to ithreads unless overridden on command line or with
        : old config.sh
@@ -3100,8 +3048,6 @@ if $cc -o gccvers gccvers.c; then
        case "$gccversion" in
        '') echo "You are not using GNU cc." ;;
        *)  echo "You are using GNU cc $gccversion."
-           echo "Adding -D_GNU_SOURCE to ccflags."
-           ccflags="$ccflags -D_GNU_SOURCE" # expose glibc interfaces
            ;;
        esac
 else
@@ -3651,7 +3597,7 @@ esac
 $cat <<EOM
 
 On some systems, shared libraries may be available.  Answer 'none' if
-you want to suppress searching of shared libraries for the remaining
+you want to suppress searching of shared libraries for the remainder
 of this configuration.
 
 EOM
@@ -3739,42 +3685,43 @@ $define)
 esac
 for thislib in $libswanted; do
        
+       libname="$thislib"
        if xxx=`./loc lib$thislib.$so.[0-9]'*' X $libpth`;
                $test -f "$xxx" -a "X$ignore_versioned_solibs" = "X"; then
-               echo "Found -l$thislib (shared)."
-               case " $dflt " in
-               *"-l$thislib "*);;
-               *) dflt="$dflt -l$thislib";;
-               esac
+               libstyle=shared
        elif xxx=`./loc lib$thislib.$so X $libpth` ; $test -f "$xxx"; then
-               echo "Found -l$thislib (shared)."
-               case " $dflt " in
-               *"-l$thislib "*);;
-               *) dflt="$dflt -l$thislib";;
-               esac
+               libstyle=shared
        elif xxx=`./loc lib$thislib$_a X $libpth`; $test -f "$xxx"; then
-               echo "Found -l$thislib."
-               case " $dflt " in
-               *"-l$thislib "*);;
-               *) dflt="$dflt -l$thislib";;
-               esac
+               libstyle=static
        elif xxx=`./loc $thislib$_a X $libpth`; $test -f "$xxx"; then
-               echo "Found -l$thislib."
-               case " $dflt " in
-               *"-l$thislib "*);;
-               *) dflt="$dflt -l$thislib";;
-               esac
+               libstyle=static
        elif xxx=`./loc lib${thislib}_s$_a X $libpth`; $test -f "$xxx"; then
-               echo "Found -l${thislib}_s."
-               case " $dflt " in
-               *"-l$thislib "*);;
-               *) dflt="$dflt -l${thislib}_s";;
-               esac
+               libstyle=static
+               libname=${thislib}_s
        elif xxx=`./loc Slib$thislib$_a X $xlibpth`; $test -f "$xxx"; then
-               echo "Found -l$thislib."
+               libstyle="static"
+       fi
+       if $test -f "$xxx"; then
+               eval $libscheck
+       fi
+       if $test -f "$xxx"; then
+               case "$libstyle" in
+               shared) echo "Found -l$libname (shared)." ;;
+               static) echo "Found -l$libname." ;;
+               *)      echo "Found -l$libname ($libstyle)." ;;
+               esac
                case " $dflt " in
                *"-l$thislib "*);;
-               *) dflt="$dflt -l$thislib";;
+               *) dflt="$dflt -l$libname"
+                   libsfound="$libsfound $xxx"
+                   yyy=`basename $xxx`
+                   libsfiles="$libsfiles $yyy"
+                   yyy=`echo $xxx|sed "s@/$yyy\\$@@"`
+                   case " $libsdirs " in
+                   *" $yyy "*) ;;
+                   *) libsdirs="$libsdirs $yyy" ;;
+                   esac
+                  ;;
                esac
        else
                echo "No -l$thislib."
@@ -5379,9 +5326,7 @@ foreach $d (@candidates) {
 }
 
 if (@inc_version_list) {
-    print '"';
-    print join('", "', @inc_version_list);
-    print '"';
+    print join(' ', @inc_version_list);
 }
 else {
     # Blank space to preserve value for next Configure run.
@@ -5393,9 +5338,10 @@ case "$inc_version_list" in
 '')    if test -x $perl; then
                dflt=`$perl getverlist`
        else
-               dflt=''
+               dflt='none'
        fi
        ;;
+$undef) dflt='none' ;;
 *)  dflt="$inc_version_list" ;;
 esac
 $cat <<'EOM'
@@ -5405,15 +5351,26 @@ can be configured to use modules built and installed with earlier
 versions of perl that were installed under $prefix.  Specify here
 the list of earlier versions that this version of perl should check.
 If Configure detected no earlier versions of perl installed under
-$prefix, then the list will be empty.
+$prefix, then the list will be empty.  Answer 'none' to tell perl
+to not search earlier versions.
 
 The default should almost always be sensible, so if you're not sure,
 just accept the default.
 EOM
 
-rp='list of earlier versions to include in @INC?'
+rp='List of earlier versions to include in @INC?'
 . ./myread
-inc_version_list="$ans"
+case "$ans" in
+[Nn]one) inc_version_list=' ' ;;
+*) inc_version_list="$ans" ;;
+esac
+case "$inc_version_list" in
+''|' ') 
+       inc_version_list_init='0';;
+*)     inc_version_list_init=`echo $inc_version_list |
+               $sed -e 's/^/"/' -e 's/ /","/g' -e 's/$/",0/'`
+       ;;
+esac
 $rm -f getverlist
 
 : determine whether to install perl also as /usr/bin/perl
@@ -6108,7 +6065,7 @@ EOM
     ' ')  dflt='none' ;;
     *)  dflt="$ccdlflags" ;;
     esac
-    rp="Any special flags to pass to $cc to use dynamic loading?"
+    rp="Any special flags to pass to $cc to use dynamic linking?"
     . ./myread
     case "$ans" in
     none) ccdlflags=' ' ;;
@@ -6812,7 +6769,7 @@ $cat <<EOM
 I need to get your e-mail address in Internet format if possible, i.e.
 something like user@host.domain. Please answer accurately since I have
 no easy means to double check it. The default value provided below
-is most probably close to the reality but may not be valid from outside
+is most probably close to reality but may not be valid from outside
 your organization...
 
 EOM
@@ -7013,6 +6970,10 @@ else
        installsitebin="$sitebinexp"
 fi
 
+: see if sqrtl exists
+set sqrtl d_sqrtl
+eval $inlibc
+
 cat <<EOM
 
 Perl can be built to take advantage of long doubles which
@@ -7058,6 +7019,18 @@ EOM
        ;;
 esac
 
+case "$uselongdouble:$d_sqrtl" in
+$define:$undef)
+               $cat <<EOM >&4
+
+You requested the use of long doubles but you do not seem to have
+the mathematic functions for long doubles.  I'm disabling the use
+of long doubles.
+EOM
+       uselongdouble=$undef
+       ;;
+esac
+
 cat <<EOM
 
 Perl can be built to take advantage of long longs which
@@ -7071,8 +7044,7 @@ case "$ccflags" in
 esac
 
 case "$uselonglong" in
-$define|true|[yY]*)    dflt='y';;
-*) dflt='n';;
+'')    dflt='y';;
 esac
 rp='Try to use long longs if available?'
 . ./myread
@@ -7260,6 +7232,7 @@ char *myname = "sprintf";
 
 #include <stdio.h>
 
+#define I_STDLIB $i_stdlib
 #ifdef I_STDLIB
 #include <stdlib.h>
 #endif
@@ -8928,7 +8901,7 @@ esac
 set fseeko d_fseeko
 eval $inlibc
 case "$longsize" in
-8) echo "(Your long is 64 bits, so in a pinch you could use fseek.)" ;;
+8) echo "(Your long is 64 bits, so you could use fseek.)" ;;
 esac
 
 : see if fsetpos exists
@@ -8954,7 +8927,7 @@ eval $inlibc
 set ftello d_ftello
 eval $inlibc
 case "$longsize" in
-8) echo "(Your long is 64 bits, so in a pinch you could use ftell.)" ;;
+8) echo "(Your long is 64 bits, so you could use ftell.)" ;;
 esac
 
 : see if getgrent exists
@@ -9254,6 +9227,10 @@ esac
 set d_htonl
 eval $setvar
 
+: see if iconv exists
+set iconv d_iconv
+eval $inlibc
+
 : index or strchr
 echo " "
 if set index val -f; eval $csym; $val; then
@@ -9543,163 +9520,513 @@ eval $setvar
 set nice d_nice
 eval $inlibc
 
-: see if POSIX threads are available
-set pthread.h i_pthread
-eval $inhdr
-
-
-
-
-: how to create joinable pthreads
-if test "X$usethreads" = "X$define" -a "X$i_pthread" = "X$define"; then
-       echo " "
-       echo "Checking what constant to use for creating joinable pthreads..." >&4 
-       $cat >try.c <<'EOCP'
-#include <pthread.h>
+: see if inttypes.h is available
+: we want a real compile instead of Inhdr because some systems
+: have an inttypes.h which includes non-existent headers
+echo " "
+$cat >try.c <<EOCP
+#include <inttypes.h>
 int main() {
-    int detachstate = JOINABLE;
+       static int32_t foo32 = 0x12345678;
 }
 EOCP
-       set try -DJOINABLE=PTHREAD_CREATE_JOINABLE
-       if eval $compile; then
-               echo "You seem to use PTHREAD_CREATE_JOINABLE." >&4
-               val="$undef" # Yes, undef.
-               set d_old_pthread_create_joinable
-               eval $setvar
-               val=""
-               set old_pthread_create_joinable
-               eval $setvar
-       else
-               set try -DJOINABLE=PTHREAD_CREATE_UNDETACHED
-               if eval $compile; then
-                       echo "You seem to use PTHREAD_CREATE_UNDETACHED." >&4
-                       val="$define"
-                       set d_old_pthread_create_joinable
-                       eval $setvar
-                       val=PTHREAD_CREATE_UNDETACHED
-                       set old_pthread_create_joinable
-                       eval $setvar
-               else            
-                       set try -DJOINABLE=__UNDETACHED
-                       if eval $compile; then
-                               echo "You seem to use __UNDETACHED." >&4
-                               val="$define"
-                               set d_old_pthread_create_joinable
-                               eval $setvar
-                               val=__UNDETACHED
-                               set old_pthread_create_joinable
-                               eval $setvar
-                       else
-                               echo "Egads, nothing obvious found.  Guessing that you use 0." >&4
-                               val="$define"
-                               set d_old_pthread_create_joinable
-                               eval $setvar
-                               val=0
-                               set old_pthread_create_joinable
-                               eval $setvar
-                       fi
-               fi
-       fi
-       $rm -f try try.*
-else
-    d_old_pthread_create_joinable="$undef"
-    old_pthread_create_joinable=""
-fi
-
-: see if pause exists
-set pause d_pause
-eval $inlibc
-
-: see if pipe exists
-set pipe d_pipe
-eval $inlibc
-
-: see if poll exists
-set poll d_poll
-eval $inlibc
-
-
-: see whether the various POSIXish _yields exist
-$cat >try.c <<EOP
-#include <pthread.h>
-#include <stdio.h>
-int main() {
-#ifdef SCHED_YIELD
-       sched_yield();
-#else
-#ifdef PTHREAD_YIELD
-       pthread_yield();
-#else
-#ifdef PTHREAD_YIELD_NULL
-       pthread_yield(NULL);
-#endif
-#endif
-#endif
-}
-EOP
-: see if sched_yield exists
-set try -DSCHED_YIELD
+set try
 if eval $compile; then
-    val="$define"
-    sched_yield='sched_yield()'
+       echo "<inttypes.h> found." >&4
+       val="$define"
 else
-    val="$undef"
+       echo "<inttypes.h> NOT found." >&4
+       val="$undef"
 fi
-case "$usethreads" in
-$define)
-       case "$val" in
-       $define) echo 'sched_yield() found.' >&4        ;;
-       *)       echo 'sched_yield() NOT found.' >&4    ;;
-       esac
-esac
-set d_sched_yield
+$rm -f try.c try
+set i_inttypes
 eval $setvar
 
-: see if pthread_yield exists
-set try -DPTHREAD_YIELD
+: check for int64_t
+echo " "
+$echo $n "Checking to see if your system supports int64_t...$c" >&4
+$cat >try.c <<EOCP
+#include <sys/types.h>
+#$i_inttypes I_INTTYPES
+#ifdef I_INTTYPES
+#include <inttypes.h>
+#endif
+int main() { int64_t x = 7; }
+EOCP
+set try
 if eval $compile; then
-    val="$define"
-    case "$sched_yield" in
-    '') sched_yield='pthread_yield()' ;;
-    esac
-else
-    set try -DPTHREAD_YIELD_NULL
-    if eval $compile; then
        val="$define"
-       case "$sched_yield" in
-       '') sched_yield='pthread_yield(NULL)' ;;
-       esac
-    else
+       echo " Yes, it does." >&4
+else
        val="$undef"
-    fi
+       echo " No, it doesn't." >&4
 fi
-case "$usethreads" in
-$define)
-       case "$val" in
-       $define) echo 'pthread_yield() found.' >&4      ;;
-       *)       echo 'pthread_yield() NOT found.' >&4  ;;
-       esac
-       ;;
-esac
-set d_pthread_yield
+$rm -f try try.*
+set d_int64t
 eval $setvar
 
-case "$sched_yield" in
-'') sched_yield=undef ;;
-esac
-
-$rm -f try try.*
 
-: see if this is a pwd.h system
-set pwd.h i_pwd
-eval $inhdr
+echo " "
+echo "Checking which 64-bit integer type we could use..." >&4
 
-case "$i_pwd" in
-$define)
-       xxx=`./findhdr pwd.h`
-       $cppstdin $cppflags $cppminus < $xxx >$$.h
+case "$intsize" in
+8) val=int
+   set quadtype
+   eval $setvar
+   val='"unsigned int"'
+   set uquadtype
+   eval $setvar
+   quadkind=1
+   ;;
+*) case "$longsize" in
+   8) val=long
+      set quadtype
+      eval $setvar
+      val='"unsigned long"'
+      set uquadtype
+      eval $setvar
+      quadkind=2
+      ;;
+   *) case "$d_longlong:$longlongsize" in
+      define:8)
+        val='"long long"'
+        set quadtype
+        eval $setvar
+        val='"unsigned long long"'
+        set uquadtype
+        eval $setvar
+        quadkind=3
+        ;;
+      *) case "$d_int64t" in
+         define)
+           val=int64_t
+           set quadtype
+           eval $setvar
+           val=uint64_t
+           set uquadtype
+           eval $setvar
+           quadkind=4
+           ;;
+         esac
+         ;;
+      esac
+      ;;
+   esac
+   ;;
+esac
 
-       if $contains 'pw_quota' $$.h >/dev/null 2>&1; then
+case "$quadtype" in
+'')    case "$uselonglong:$d_longlong:$longlongsize" in
+       undef:define:8)
+          echo "(You would have 'long long', but you are not using it.)" >&4 ;;
+       *) echo "Alas, no 64-bit integer types in sight." >&4 ;;
+       esac
+       d_quad="$undef"
+       ;;
+*)     if test X"$use64bits" = Xdefine -o X"$longsize" = X8; then
+           verb="will"
+       else
+           verb="could"
+       fi
+       echo "We $verb use '$quadtype' for 64-bit integers." >&4
+       d_quad="$define"
+       ;;
+esac
+
+: check for length of character
+echo " "
+case "$charsize" in
+'')
+       echo "Checking to see how big your characters are (hey, you never know)..." >&4
+       $cat >try.c <<'EOCP'
+#include <stdio.h>
+int main()
+{
+    printf("%d\n", (int)sizeof(char));
+    exit(0);
+}
+EOCP
+       set try
+       if eval $compile_ok; then
+               dflt=`./try`
+       else
+               dflt='1'
+               echo "(I can't seem to compile the test program.  Guessing...)"
+       fi
+       ;;
+*)
+       dflt="$charsize"
+       ;;
+esac
+rp="What is the size of a character (in bytes)?"
+. ./myread
+charsize="$ans"
+$rm -f try.c try
+
+
+echo " "
+$echo "Choosing the C types to be used for Perl's internal types..." >&4
+
+case "$use64bits:$d_quad:$quadtype" in
+define:define:?*)
+       ivtype="$quadtype"
+       uvtype="$uquadtype"
+       ivsize=8
+       uvsize=8
+       ;;
+*)     ivtype="long"
+       uvtype="unsigned long"
+       ivsize=$longsize
+       uvsize=$longsize
+       ;;
+esac
+
+case "$uselongdouble:$d_longdbl" in
+define:define)
+       nvtype="long double"
+       nvsize=$longdblsize
+       ;;
+*)     nvtype=double
+       nvsize=$doublesize
+       ;;
+esac
+
+$echo "(IV will be "$ivtype", $ivsize bytes)"
+$echo "(UV will be "$uvtype", $uvsize bytes)"
+$echo "(NV will be "$nvtype", $nvsize bytes)"
+
+$cat >try.c <<EOCP
+#$i_inttypes I_INTTYPES
+#ifdef I_INTTYPES
+#include <inttypes.h>
+#endif
+#include <stdio.h>
+int main() {
+#ifdef INT8
+   int8_t i =  INT8_MAX;
+  uint8_t u = UINT8_MAX;
+  printf("int8_t\n");
+#endif
+#ifdef INT16
+   int16_t i =  INT16_MAX;
+  uint16_t i = UINT16_MAX;
+  printf("int16_t\n");
+#endif
+#ifdef INT32
+   int32_t i =  INT32_MAX;
+  uint32_t u = UINT32_MAX;
+  printf("int32_t\n");
+#endif
+}
+EOCP
+
+case "$i8type" in
+'')    case "$charsize" in
+       1)      i8type=char
+               u8type="unsigned char"
+               i8size=$charsize
+               u8size=$charsize
+               ;;
+       esac
+       ;;
+esac
+case "$i8type" in
+'')    set try -DINT8
+       if eval $compile; then
+               case "`./try$exe_ext`" in
+               int8_t) i8type=int8_t
+                       u8type=uint8_t
+                       i8size=1
+                       u8size=1
+                       ;;
+               esac
+       fi
+       ;;
+esac
+case "$i8type" in
+'')    if $test $charsize -ge 1; then
+               i8type=char
+               u8type="unsigned char"
+               i8size=$charsize
+               u8size=$charsize
+       fi
+       ;;
+esac
+
+case "$i16type" in
+'')    case "$shortsize" in
+       2)      i16type=short
+               u16type="unsigned short"
+               i16size=$shortsize
+               u16size=$shortsize
+               ;;
+       esac
+       ;;
+esac
+case "$i16type" in
+'')    set try -DINT16
+       if eval $compile; then
+               case "`./try$exe_ext`" in
+               int16_t)
+                       i16type=int16_t
+                       u16type=uint16_t
+                       i16size=2
+                       u16size=2
+                       ;;
+               esac
+       fi
+       ;;
+esac
+case "$i16type" in
+'')    if $test $shortsize -ge 2; then
+               i16type=short
+               u16type="unsigned short"
+               i16size=$shortsize
+               u16size=$shortsize
+       fi
+       ;;
+esac
+
+case "$i32type" in
+'')    case "$longsize" in
+       4)      i32type=long
+               u32type="unsigned long"
+               i32size=$longsize
+               u32size=$longsize
+               ;;
+       *)      case "$intsize" in
+               4)      i32type=int
+                       u32type="unsigned int"
+                       i32size=$intsize
+                       u32size=$intsize
+                       ;;
+               esac
+               ;;
+       esac
+       ;;
+esac
+case "$i32type" in
+'')    set try -DINT32
+       if eval $compile; then
+               case "`./try$exe_ext`" in
+               int32_t)
+                       i32type=int32_t
+                       u32type=uint32_t
+                       i32size=4
+                       u32size=4
+                       ;;
+               esac
+       fi
+       ;;
+esac
+case "$i32type" in
+'')    if $test $intsize -ge 4; then
+               i32type=int
+               u32type="unsigned int"
+               i32size=$intsize
+               u32size=$intsize
+       fi
+       ;;
+esac
+
+case "$i64type" in
+'')    case "$d_quad:$quadtype" in
+       define:?*)
+               i64type="$quadtype"
+               u64type="$uquadtype"
+               i64size=8
+               u64size=8
+               ;;
+       esac
+       ;;
+esac
+
+$echo "Checking whether your NVs can preserve your UVs..." >&4
+$cat <<EOP >try.c
+#include <stdio.h>
+int main() {
+    $uvtype k = ($uvtype)~0, l;
+    $nvtype d;
+    l = k;
+    d = ($nvtype)l;
+    l = ($uvtype)d;
+    if (l == k)
+       printf("preserve\n");
+    exit(0);
+}
+EOP
+set try
+if eval $compile; then
+       case "`./try$exe_ext`" in
+       preserve) d_nv_preserves_uv="$define" ;;
+       esac
+fi     
+case "$d_nv_preserves_uv" in
+$define) $echo "Yes, they can."  2>&1 ;;
+*)      $echo "No, they can't." 2>&1
+        d_nv_preserves_uv="$undef"
+        ;;
+esac
+
+$rm -f try.* try
+
+: see if POSIX threads are available
+set pthread.h i_pthread
+eval $inhdr
+
+
+
+
+: how to create joinable pthreads
+if test "X$usethreads" = "X$define" -a "X$i_pthread" = "X$define"; then
+       echo " "
+       echo "Checking what constant to use for creating joinable pthreads..." >&4 
+       $cat >try.c <<'EOCP'
+#include <pthread.h>
+int main() {
+    int detachstate = JOINABLE;
+}
+EOCP
+       set try -DJOINABLE=PTHREAD_CREATE_JOINABLE
+       if eval $compile; then
+               echo "You seem to use PTHREAD_CREATE_JOINABLE." >&4
+               val="$undef" # Yes, undef.
+               set d_old_pthread_create_joinable
+               eval $setvar
+               val=""
+               set old_pthread_create_joinable
+               eval $setvar
+       else
+               set try -DJOINABLE=PTHREAD_CREATE_UNDETACHED
+               if eval $compile; then
+                       echo "You seem to use PTHREAD_CREATE_UNDETACHED." >&4
+                       val="$define"
+                       set d_old_pthread_create_joinable
+                       eval $setvar
+                       val=PTHREAD_CREATE_UNDETACHED
+                       set old_pthread_create_joinable
+                       eval $setvar
+               else            
+                       set try -DJOINABLE=__UNDETACHED
+                       if eval $compile; then
+                               echo "You seem to use __UNDETACHED." >&4
+                               val="$define"
+                               set d_old_pthread_create_joinable
+                               eval $setvar
+                               val=__UNDETACHED
+                               set old_pthread_create_joinable
+                               eval $setvar
+                       else
+                               echo "Egads, nothing obvious found.  Guessing that you use 0." >&4
+                               val="$define"
+                               set d_old_pthread_create_joinable
+                               eval $setvar
+                               val=0
+                               set old_pthread_create_joinable
+                               eval $setvar
+                       fi
+               fi
+       fi
+       $rm -f try try.*
+else
+    d_old_pthread_create_joinable="$undef"
+    old_pthread_create_joinable=""
+fi
+
+: see if pause exists
+set pause d_pause
+eval $inlibc
+
+: see if pipe exists
+set pipe d_pipe
+eval $inlibc
+
+: see if poll exists
+set poll d_poll
+eval $inlibc
+
+
+: see whether the various POSIXish _yields exist
+$cat >try.c <<EOP
+#include <pthread.h>
+#include <stdio.h>
+int main() {
+#ifdef SCHED_YIELD
+       sched_yield();
+#else
+#ifdef PTHREAD_YIELD
+       pthread_yield();
+#else
+#ifdef PTHREAD_YIELD_NULL
+       pthread_yield(NULL);
+#endif
+#endif
+#endif
+}
+EOP
+: see if sched_yield exists
+set try -DSCHED_YIELD
+if eval $compile; then
+    val="$define"
+    sched_yield='sched_yield()'
+else
+    val="$undef"
+fi
+case "$usethreads" in
+$define)
+       case "$val" in
+       $define) echo 'sched_yield() found.' >&4        ;;
+       *)       echo 'sched_yield() NOT found.' >&4    ;;
+       esac
+esac
+set d_sched_yield
+eval $setvar
+
+: see if pthread_yield exists
+set try -DPTHREAD_YIELD
+if eval $compile; then
+    val="$define"
+    case "$sched_yield" in
+    '') sched_yield='pthread_yield()' ;;
+    esac
+else
+    set try -DPTHREAD_YIELD_NULL
+    if eval $compile; then
+       val="$define"
+       case "$sched_yield" in
+       '') sched_yield='pthread_yield(NULL)' ;;
+       esac
+    else
+       val="$undef"
+    fi
+fi
+case "$usethreads" in
+$define)
+       case "$val" in
+       $define) echo 'pthread_yield() found.' >&4      ;;
+       *)       echo 'pthread_yield() NOT found.' >&4  ;;
+       esac
+       ;;
+esac
+set d_pthread_yield
+eval $setvar
+
+case "$sched_yield" in
+'') sched_yield=undef ;;
+esac
+
+$rm -f try try.*
+
+: see if this is a pwd.h system
+set pwd.h i_pwd
+eval $inhdr
+
+case "$i_pwd" in
+$define)
+       xxx=`./findhdr pwd.h`
+       $cppstdin $cppflags $cppminus < $xxx >$$.h
+
+       if $contains 'pw_quota' $$.h >/dev/null 2>&1; then
                val="$define"
        else
                val="$undef"
@@ -9771,123 +10098,10 @@ $define)
        set d_pwage; eval $setvar
        set d_pwchange; eval $setvar
        set d_pwclass; eval $setvar
-       set d_pwexpire; eval $setvar
-       set d_pwcomment; eval $setvar
-       set d_pwgecos; eval $setvar
-       set d_pwpasswd; eval $setvar
-       ;;
-esac
-
-: see if inttypes.h is available
-: we want a real compile instead of Inhdr because some systems
-: have an inttypes.h which includes non-existent headers
-echo " "
-$cat >try.c <<EOCP
-#include <inttypes.h>
-int main() {
-       static int32_t foo32 = 0x12345678;
-}
-EOCP
-set try
-if eval $compile; then
-       echo "<inttypes.h> found." >&4
-       val="$define"
-else
-       echo "<inttypes.h> NOT found." >&4
-       val="$undef"
-fi
-$rm -f try.c try
-set i_inttypes
-eval $setvar
-
-: check for int64_t
-echo " "
-$echo $n "Checking to see if your system supports int64_t...$c" >&4
-$cat >try.c <<EOCP
-#include <sys/types.h>
-#$i_inttypes I_INTTYPES
-#ifdef I_INTTYPES
-#include <inttypes.h>
-#endif
-int main() { int64_t x = 7; }
-EOCP
-set try
-if eval $compile; then
-       val="$define"
-       echo " Yes, it does." >&4
-else
-       val="$undef"
-       echo " No, it doesn't." >&4
-fi
-$rm -f try try.*
-set d_int64t
-eval $setvar
-
-
-echo " "
-echo "Checking which 64-bit integer type we could use..." >&4
-
-case "$intsize" in
-8) val=int
-   set quadtype
-   eval $setvar
-   val='"unsigned int"'
-   set uquadtype
-   eval $setvar
-   quadkind=1
-   ;;
-*) case "$longsize" in
-   8) val=long
-      set quadtype
-      eval $setvar
-      val='"unsigned long"'
-      set uquadtype
-      eval $setvar
-      quadkind=2
-      ;;
-   *) case "$uselonglong:$d_longlong:$longlongsize" in
-      define:define:8)
-        val='"long long"'
-        set quadtype
-        eval $setvar
-        val='"unsigned long long"'
-        set uquadtype
-        eval $setvar
-        quadkind=3
-        ;;
-      *) case "$d_int64t" in
-         define)
-           val=int64_t
-           set quadtype
-           eval $setvar
-           val=uint64_t
-           set uquadtype
-           eval $setvar
-           quadkind=4
-           ;;
-         esac
-         ;;
-      esac
-      ;;
-   esac
-   ;;
-esac
-
-case "$quadtype" in
-'')    case "$uselonglong:$d_longlong:$longlongsize" in
-       undef:define:8)
-          echo "(You would have 'long long', but you are not using it.)" >&4 ;;
-       *) echo "Alas, no 64-bit integer types in sight." >&4 ;;
-       esac
-       d_quad="$undef"
-       ;;
-*)     if test X"$use64bits" = Xdefine -o X"$longsize" = X8; then
-           verb="will"
-       else
-           verb="could"
-       fi
-       echo "We $verb use '$quadtype' for 64-bit integers." >&4
-       d_quad="$define"
+       set d_pwexpire; eval $setvar
+       set d_pwcomment; eval $setvar
+       set d_pwgecos; eval $setvar
+       set d_pwpasswd; eval $setvar
        ;;
 esac
 
@@ -10676,10 +10890,6 @@ set d_sigsetjmp
 eval $setvar
 $rm -f try.c try
 
-: see if sqrtl exists
-set sqrtl d_sqrtl
-eval $inlibc
-
 : see if sys/stat.h is available
 set sys/stat.h i_sysstat
 eval $inhdr
@@ -12113,216 +12323,6 @@ else
 fi
 
 
-: check for length of character
-echo " "
-case "$charsize" in
-'')
-       echo "Checking to see how big your characters are (hey, you never know)..." >&4
-       $cat >try.c <<'EOCP'
-#include <stdio.h>
-int main()
-{
-    printf("%d\n", (int)sizeof(char));
-    exit(0);
-}
-EOCP
-       set try
-       if eval $compile_ok; then
-               dflt=`./try`
-       else
-               dflt='1'
-               echo "(I can't seem to compile the test program.  Guessing...)"
-       fi
-       ;;
-*)
-       dflt="$charsize"
-       ;;
-esac
-rp="What is the size of a character (in bytes)?"
-. ./myread
-charsize="$ans"
-$rm -f try.c try
-
-
-echo " "
-$echo "Choosing the C types to be used for Perl's internal types..." >&4
-
-case "$use64bits:$d_quad:$quadtype" in
-define:define:?*)
-       ivtype="$quadtype"
-       uvtype="$uquadtype"
-       ivsize=8
-       uvsize=8
-       ;;
-*)     ivtype="long"
-       uvtype="unsigned long"
-       ivsize=$longsize
-       uvsize=$longsize
-       ;;
-esac
-
-case "$uselongdouble:$d_longdbl" in
-define:define)
-       nvtype="long double"
-       nvsize=$longdblsize
-       ;;
-*)     nvtype=double
-       nvsize=$doublesize
-       ;;
-esac
-
-echo "(IV will be "$ivtype", $ivsize bytes)"
-echo "(UV will be "$uvtype", $uvsize bytes)"
-echo "(NV will be "$nvtype", $nvsize bytes)"
-
-$cat >try.c <<EOCP
-#$i_inttypes I_INTTYPES
-#ifdef I_INTTYPES
-#include <inttypes.h>
-#endif
-#include <stdio.h>
-int main() {
-#ifdef INT8
-   int8_t i =  INT8_MAX;
-  uint8_t u = UINT8_MAX;
-  printf("int8_t\n");
-#endif
-#ifdef INT16
-   int16_t i =  INT16_MAX;
-  uint16_t i = UINT16_MAX;
-  printf("int16_t\n");
-#endif
-#ifdef INT32
-   int32_t i =  INT32_MAX;
-  uint32_t u = UINT32_MAX;
-  printf("int32_t\n");
-#endif
-}
-EOCP
-
-case "$i8type" in
-'')    case "$charsize" in
-       1)      i8type=char
-               u8type="unsigned char"
-               i8size=$charsize
-               u8size=$charsize
-               ;;
-       esac
-       ;;
-esac
-case "$i8type" in
-'')    set try -DINT8
-       if eval $compile; then
-               case "`./try$exe_ext`" in
-               int8_t) i8type=int8_t
-                       u8type=uint8_t
-                       i8size=1
-                       u8size=1
-                       ;;
-               esac
-       fi
-       ;;
-esac
-case "$i8type" in
-'')    if $test $charsize -ge 1; then
-               i8type=char
-               u8type="unsigned char"
-               i8size=$charsize
-               u8size=$charsize
-       fi
-       ;;
-esac
-
-case "$i16type" in
-'')    case "$shortsize" in
-       2)      i16type=short
-               u16type="unsigned short"
-               i16size=$shortsize
-               u16size=$shortsize
-               ;;
-       esac
-       ;;
-esac
-case "$i16type" in
-'')    set try -DINT16
-       if eval $compile; then
-               case "`./try$exe_ext`" in
-               int16_t)
-                       i16type=int16_t
-                       u16type=uint16_t
-                       i16size=2
-                       u16size=2
-                       ;;
-               esac
-       fi
-       ;;
-esac
-case "$i16type" in
-'')    if $test $shortsize -ge 2; then
-               i16type=short
-               u16type="unsigned short"
-               i16size=$shortsize
-               u16size=$shortsize
-       fi
-       ;;
-esac
-
-case "$i32type" in
-'')    case "$longsize" in
-       4)      i32type=long
-               u32type="unsigned long"
-               i32size=$longsize
-               u32size=$longsize
-               ;;
-       *)      case "$intsize" in
-               4)      i32type=int
-                       u32type="unsigned int"
-                       i32size=$intsize
-                       u32size=$intsize
-                       ;;
-               esac
-               ;;
-       esac
-       ;;
-esac
-case "$i32type" in
-'')    set try -DINT32
-       if eval $compile; then
-               case "`./try$exe_ext`" in
-               int32_t)
-                       i32type=int32_t
-                       u32type=uint32_t
-                       i32size=4
-                       u32size=4
-                       ;;
-               esac
-       fi
-       ;;
-esac
-case "$i32type" in
-'')    if $test $intsize -ge 4; then
-               i32type=int
-               u32type="unsigned int"
-               i32size=$intsize
-               u32size=$intsize
-       fi
-       ;;
-esac
-
-case "$i64type" in
-'')    case "$d_quad:$quadtype" in
-       define:?*)
-               i64type="$quadtype"
-               u64type="$uquadtype"
-               i64size=8
-               u64size=8
-               ;;
-       esac
-       ;;
-esac
-
-$rm -f try.* try
-
 echo " "
 
 if $test X"$quadtype" != X; then
@@ -12373,7 +12373,7 @@ EOCP
        fi
 fi
 
-if $test X"$sPRId64" = X -a X"$i_inttypes.h" = X"$define" -a X"$quadtype" = Xint64_t; then
+if $test X"$sPRId64" = X -a X"$i_inttypes" = X"$define" -a X"$quadtype" = Xint64_t; then
        $cat >try.c <<'EOCP'
 #include <sys/types.h>
 #include <inttypes.h>
@@ -12894,6 +12894,7 @@ $rm -f foo* bar*
 case "$selecttype" in
 '') case "$d_select" in
        $define)
+               echo " "
                $cat <<EOM
 Checking to see what type of arguments are accepted by select().
 EOM
@@ -13580,6 +13581,10 @@ esac
 set i_fcntl
 eval $setvar
 
+: see if this is a iconv.h system
+set iconv.h i_iconv
+eval $inhdr
+
 : see if locale.h is available
 set locale.h i_locale
 eval $inhdr
@@ -13659,57 +13664,122 @@ eval $inhdr
 set poll.h i_poll
 eval $inhdr
 
-: get C preprocessor symbols handy
 echo " "
-$echo $n "Hmm... $c"
-echo $al | $tr ' ' $trnl >Cppsym.know
-$cat <<EOSS >Cppsym
+$echo "Guessing which symbols your C compiler and preprocessor define..." >&4 
+$cat <<'EOSH' > Cppsym.know
+a29k ABI64 aegis AES_SOURCE AIX AIX32 AIX370
+AIX41 AIX42 AIX43 AIX_SOURCE aixpc ALL_SOURCE
+alliant alpha am29000 AM29000 amiga AMIGAOS AMIX
+ansi ANSI_C_SOURCE apollo ardent atarist att386 att3b BeOS
+BIG_ENDIAN BIT_MSF bsd BSD bsd43 bsd4_2 bsd4_3 BSD4_3 bsd4_4
+BSD_4_3 BSD_4_4 BSD_NET2 BSD_TIME BSD_TYPES BSDCOMPAT bsdi
+bull c cadmus clipper CMU COFF COMPILER_VERSION
+concurrent convex cpu cray CRAY CRAYMPP ctix CX_UX
+CYGWIN DGUX DGUX_SOURCE DJGPP dmert DOLPHIN DPX2 DSO
+Dynix DynixPTX ELF encore EPI EXTENSIONS FILE_OFFSET_BITS
+FreeBSD GCC_NEW_VARARGS gcos gcx gimpel
+GNU_SOURCE GNUC GNUC_MINOR GO32 gould GOULD_PN
+H3050R H3050RX hbullx20 hcx host_mips
+hp200 hp300 hp700 HP700 hp800 hp9000
+hp9000s200 hp9000s300 hp9000s400 hp9000s500
+hp9000s700 hp9000s800 hp9k8 hp_osf hppa hpux HPUX_SOURCE
+i186 i286 i386 i486 i586 i686 i8086 i80960 i860 I960
+iAPX286 ibm ibm032 ibmesa IBMR2 ibmrt ILP32 ILP64
+INLINE_INTRINSICS INTRINSICS INT64 interdata is68k ksr1
+LANGUAGE_C LARGE_FILE_API LARGEFILE64_SOURCE
+LARGEFILE_SOURCE LFS64_LARGEFILE LFS_LARGEFILE
+Linux LITTLE_ENDIAN LONG64 LONG_DOUBLE LONG_LONG
+LONGDOUBLE LONGLONG LP64 luna luna88k Lynx
+M68000 m68k m88100 m88k M88KBCS_TARGET M_COFF
+M_I186 M_I286 M_I386 M_I8086 M_I86 M_I86SM M_SYS3
+M_SYS5 M_SYSIII M_SYSV M_UNIX M_XENIX MACH machine MachTen
+MATH_HAS_NO_SIDE_EFFECTS
+mc300 mc500 mc68000 mc68010 mc68020 mc68030 mc68040
+mc68060 mc68k mc68k32 mc700 mc88000 mc88100 merlin
+mert MiNT mips MIPS_FPSET MIPS_ISA MIPS_SIM MIPS_SZINT
+MIPS_SZLONG MIPS_SZPTR MIPSEB MIPSEL MODERN_C motorola
+mpeix MSDOS MTXINU MULTIMAX mvs MVS n16 ncl_el ncl_mr
+NetBSD news1500 news1700 news1800 news1900 news3700
+news700 news800 news900 NeXT NLS ns16000 ns32000
+ns32016 ns32332 ns32k nsc32000
+OCS88 OEMVS OpenBSD os OS2 OS390 osf OSF1 OSF_SOURCE
+pa_risc PA_RISC1_1 PA_RISC2_0 PARAGON parisc
+pc532 pdp11 PGC PIC plexus PORTAR posix
+POSIX1B_SOURCE POSIX2_SOURCE POSIX4_SOURCE
+POSIX_C_SOURCE POSIX_SOURCE POWER
+PROTOTYPES PWB pyr QNX R3000 REENTRANT RES Rhapsody RISC6000
+riscix riscos RT scs SCO sequent sgi SGI_SOURCE sinix
+SIZE_INT SIZE_LONG SIZE_PTR SOCKET_SOURCE SOCKETS_SOURCE
+sony sony_news sonyrisc sparc sparclite spectrum
+stardent stdc STDC_EXT stratos sun sun3 sun386
+Sun386i svr3 svr4 SVR4_2 SVR4_SOURCE svr5
+SX system SYSTYPE_BSD SYSTYPE_BSD43 SYSTYPE_BSD44
+SYSTYPE_SVR4 SYSTYPE_SVR5 SYSTYPE_SYSV SYSV SYSV3 SYSV4 SYSV5
+sysV68 sysV88 Tek4132 Tek4300 titan
+tower tower32 tower32_200 tower32_600 tower32_700
+tower32_800 tower32_850 tss
+u370 u3b u3b2 u3b20 u3b200 u3b20d u3b5
+ultrix UMAXV UnicomPBB UnicomPBD UNICOS UNICOSMK
+unix UNIX95 UNIX99 unixpc unos USGr4 USGr4_2
+Utek UTek UTS UWIN uxpm uxps vax venix VMESA vms xenix Xenix286
+XOPEN_SOURCE XOPEN_SOURCE_EXTENDED XPG2 XPG2_EXTENDED
+XPG3 XPG3_EXTENDED XPG4 XPG4_EXTENDED
+z8000
+EOSH
+# Maybe put other stuff here too.
+cat <<EOSH >>Cppsym.know
+$osname
+EOSH
+./tr '[a-z]' '[A-Z]' < Cppsym.know > Cppsym.a
+./tr '[A-Z]' '[a-z]' < Cppsym.know > Cppsym.b
+$cat Cppsym.a Cppsym.b | $tr ' ' $trnl | sort | uniq > Cppsym.know
+$rm -f Cppsym.a Cppsym.b
+cat <<EOSH > Cppsym
 $startsh
-case "\$1" in
--l) list=true
-       shift
-       ;;
-esac
-unknown=''
-case "\$list\$#" in
-1|2)
-       for sym do
-               if $contains "^\$1$" Cppsym.true >/dev/null 2>&1; then
-                       exit 0
-               elif $contains "^\$1$" Cppsym.know >/dev/null 2>&1; then
-                       :
-               else
-                       unknown="\$unknown \$sym"
-               fi
-       done
-       set X \$unknown
-       shift
-       ;;
-esac
-case \$# in
-0) exit 1;;
-esac
-echo \$* | $tr ' ' '$trnl' | $sed -e 's/\(.*\)/\\
-#ifdef \1\\
-exit 0; _ _ _ _\1\\     \1\\
-#endif\\
-/' >Cppsym\$\$
-echo "exit 1; _ _ _" >>Cppsym\$\$
-$cppstdin $cppminus <Cppsym\$\$ | $grep '^exit [01]; _ _'  >Cppsym2\$\$
-case "\$list" in
-true) $awk 'NF > 5 {print substr(\$6,2,100)}' <Cppsym2\$\$ ;;
-*)
-       sh Cppsym2\$\$
-       status=\$?
-       ;;
-esac
-$rm -f Cppsym\$\$ Cppsym2\$\$
-exit \$status
-EOSS
+if $test \$# -gt 0; then
+    echo \$* | $tr " " "$trnl" | ./Cppsym.try > Cppsym.got
+    if $test -s Cppsym.got; then
+        $rm -f Cppsym.got
+        exit 0
+    fi
+    $rm -f Cppsym.got
+    exit 1
+else
+    $tr " " "$trnl" | ./Cppsym.try
+    exit 0
+fi
+EOSH
 chmod +x Cppsym
 $eunicefix Cppsym
-./Cppsym -l $al | $sort | $grep -v '^$' >Cppsym.true
-
+cat <<EOSH > Cppsym.try
+$startsh
+cat <<'EOCP' > try.c
+#include <stdio.h>
+int main() {
+EOCP
+$awk \\
+EOSH
+cat <<'EOSH' >> Cppsym.try
+'length($1) > 0 {
+    printf "#ifdef %s\n#if %s+0\nprintf(\"%s=%%ld\\n\", %s);\n#else\nprintf(\"%s\\n\");\n#endif\n#endif\n", $1, $1, $1, $1, $1
+    printf "#ifdef _%s\n#if _%s+0\nprintf(\"_%s=%%ld\\n\", _%s);\n#else\nprintf(\"_%s\\n\");\n#endif\n#endif\n", $1, $1, $1, $1, $1
+    printf "#ifdef __%s\n#if __%s+0\nprintf(\"__%s=%%ld\\n\", __%s);\n#else\nprintf(\"__%s\\n\");\n#endif\n#endif\n", $1, $1, $1, $1, $1
+    printf "#ifdef __%s__\n#if __%s__+0\nprintf(\"__%s__=%%ld\\n\", __%s__);\n#else\nprintf(\"__%s__\\n\");\n#endif\n#endif\n", $1, $1, $1, $1, $1
+}'      >> try.c
+echo '}' >> try.c
+EOSH
+cat <<EOSH >> Cppsym.try
+cc="$cc"
+optimize="$optimize"
+ccflags="$ccflags"
+ldflags="$ldflags"
+libs="$libs"
+exe_ext="$exe_ext"
+$cc $optimize $ccflags $ldflags -o try$exe_ext try.c $libs && ./try$exe_ext
+EOSH
+chmod +x Cppsym.try
+$eunicefix Cppsym.try
+./Cppsym < Cppsym.know > Cppsym.true
 : now check the C compiler for additional symbols
 postprocess_cc_v=''
 case "$osname" in
@@ -13741,7 +13811,8 @@ fi
 
 $awk '/\=/ { print $0; next }
        { print $0"=1" }' ccsym.raw >ccsym.list
-$awk '{ print $0"=1" }' Cppsym.true >ccsym.true
+$awk '/\=/ { print $0; next }
+       { print $0"=1" }' Cppsym.true >ccsym.true
 $comm -13 ccsym.true ccsym.list >ccsym.own
 $comm -12 ccsym.true ccsym.list >ccsym.com
 $comm -23 ccsym.true ccsym.list >ccsym.cpp
@@ -14523,6 +14594,7 @@ d_gnulibc='$d_gnulibc'
 d_grpasswd='$d_grpasswd'
 d_hasmntopt='$d_hasmntopt'
 d_htonl='$d_htonl'
+d_iconv='$d_iconv'
 d_index='$d_index'
 d_inetaton='$d_inetaton'
 d_int64t='$d_int64t'
@@ -14559,6 +14631,7 @@ d_msgrcv='$d_msgrcv'
 d_msgsnd='$d_msgsnd'
 d_mymalloc='$d_mymalloc'
 d_nice='$d_nice'
+d_nv_preserves_uv='$d_nv_preserves_uv'
 d_off64_t='$d_off64_t'
 d_old_pthread_create_joinable='$d_old_pthread_create_joinable'
 d_oldpthreads='$d_oldpthreads'
@@ -14752,6 +14825,7 @@ i_fcntl='$i_fcntl'
 i_float='$i_float'
 i_gdbm='$i_gdbm'
 i_grp='$i_grp'
+i_iconv='$i_iconv'
 i_inttypes='$i_inttypes'
 i_limits='$i_limits'
 i_locale='$i_locale'
@@ -14813,6 +14887,7 @@ i_varhdr='$i_varhdr'
 i_vfork='$i_vfork'
 ignore_versioned_solibs='$ignore_versioned_solibs'
 inc_version_list='$inc_version_list'
+inc_version_list_init='$inc_version_list_init'
 incpath='$incpath'
 inews='$inews'
 installarchlib='$installarchlib'
@@ -14847,6 +14922,9 @@ libc='$libc'
 libperl='$libperl'
 libpth='$libpth'
 libs='$libs'
+libsdirs='$libsdirs'
+libsfiles='$libsfiles'
+libsfound='$libsfound'
 libswanted='$libswanted'
 line='$line'
 lint='$lint'
index c813f81..897fae6 100644 (file)
--- a/EXTERN.h
+++ b/EXTERN.h
@@ -1,6 +1,6 @@
 /*    EXTERN.h
  *
- *    Copyright (c) 1991-1999, Larry Wall
+ *    Copyright (c) 1991-2000, Larry Wall
  *
  *    You may distribute under the terms of either the GNU General Public
  *    License or the Artistic License, as specified in the README file.
@@ -40,7 +40,7 @@
 #      define dEXTCONST const
 #    endif
 #  else
-#    if defined(CYGWIN) && defined(USEIMPORTLIB)
+#    if defined(__CYGWIN__) && defined(USEIMPORTLIB)
 #      define EXT extern __declspec(dllimport)
 #      define dEXT 
 #      define EXTCONST extern __declspec(dllimport) const
diff --git a/INSTALL b/INSTALL
index 7ac14ca..d387783 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -8,7 +8,8 @@ First, make sure you are installing an up-to-date version of Perl.   If
 you didn't get your Perl source from CPAN, check the latest version at
 <URL:http://www.perl.com/CPAN/src/>.
 
-The basic steps to build and install perl5 on a Unix system are:
+The basic steps to build and install perl5 on a Unix system
+with all the defaults are:
 
        rm -f config.sh Policy.sh
        sh Configure -de
@@ -42,20 +43,6 @@ For information on what's new in this release, see the
 pod/perldelta.pod file.  For more detailed information about specific
 changes, see the Changes file.
 
-IMPORTANT NOTE:  5.005_53 and later releases do not export unadorned
-global symbols anymore.  This means you may need to build older
-extensions that have not been updated for the new naming convention
-with:
-
-       perl Makefile.PL POLLUTE=1
-       
-Alternatively, you can enable CPP symbol pollution wholesale by
-building perl itself with:
-
-       sh Configure -Accflags=-DPERL_POLLUTE
-
-pod/perldelta.pod contains more details about this.
-
 =head1 DESCRIPTION
 
 This document is written in pod format as an easy way to indicate its
@@ -67,7 +54,8 @@ by lines beginning with '='.  The other mark-up used is
     C<code>    literal code
     L<name>     A link (cross reference) to name
 
-You should probably at least skim through this entire document before
+Although most of the defaults are probably fine for most users,
+you should probably at least skim through this entire document before
 proceeding.
 
 If you're building Perl on a non-Unix system, you should also read
@@ -80,6 +68,22 @@ system.  (Unixware users should use the svr4.sh hint file.)  If
 there is a README file for your platform, then you should read
 that too.  Additional information is in the Porting/ directory.
 
+=head1 WARNING:  This version requires an extra step to build old extensions.
+
+5.005_53 and later releases do not export unadorned
+global symbols anymore.  This means you may need to build older
+extensions that have not been updated for the new naming convention
+with:
+
+       perl Makefile.PL POLLUTE=1
+       
+Alternatively, you can enable CPP symbol pollution wholesale by
+building perl itself with:
+
+       sh Configure -Accflags=-DPERL_POLLUTE
+
+pod/perldelta.pod contains more details about this.
+
 =head1 WARNING:  This version may not be binary compatible with Perl 5.005.
 
 Using the default Configure options for building perl should get you
@@ -102,7 +106,7 @@ The standard extensions supplied with Perl will be handled automatically.
 On a related issue, old modules may possibly be affected by the
 changes in the Perl language in the current release.  Please see
 pod/perldelta.pod (and pod/perl500Xdelta.pod) for a description of
-what's changed.  See also your installed copy of the perllocal.pod
+what's changed.  See your installed copy of the perllocal.pod
 file for a (possibly incomplete) list of locally installed modules.
 Also see CPAN::autobundle for one way to make a "bundle" of your
 currently installed modules.
@@ -126,10 +130,10 @@ followed.  This will enable us to officially support this option.
 
 =head1 Space Requirements
 
-The complete perl5 source tree takes up about 15 MB of disk space.
-After completing make, it takes up roughly 20 MB, though the actual
+The complete perl5 source tree takes up about 20 MB of disk space.
+After completing make, it takes up roughly 30 MB, though the actual
 total is likely to be quite system-dependent.  The installation
-directories need something on the order of 15 MB, though again that
+directories need something on the order of 20 MB, though again that
 value is system-dependent.
 
 =head1 Start with a Fresh Distribution
@@ -333,7 +337,7 @@ The directories set up by Configure fall into three broad categories.
 
 =item Directories for the perl distribution
 
-By default, Configure will use the following directories for 5.6.
+By default, Configure will use the following directories for 5.6.0.
 $version is the full perl version number, including subversion, e.g.
 5.6.0 or 5.6.1, and $archname is a string like sun4-sunos,
 determined by Configure.  The full definitions of all Configure
@@ -360,8 +364,7 @@ the common style is shown here.
 
 After perl is installed, you may later wish to add modules (e.g. from
 CPAN) or scripts.  Configure will set up the following directories to
-be used for installing those add-on modules and scripts.  $version
-is the perl version number, e.g. 5.6.0.
+be used for installing those add-on modules and scripts.
 
     Configure variable Default value
     $siteprefix                $prefix
@@ -582,7 +585,7 @@ If the generated Policy.sh file is unsuitable, you may freely edit it
 to contain any valid shell commands.  It will be run just after the
 platform-specific hints files.
 
-Note:  Since the directory hierarchy for 5.6 contains a number of
+Note:  Since the directory hierarchy for 5.6.0 contains a number of
 new vendor* and site* entries, your Policy.sh file will probably not
 set them to your desired values.  I encourage you to run Configure
 interactively to be sure it puts things where you want them.
@@ -881,7 +884,17 @@ the Configure command line.  Similarly, the Opcode extension is always
 built by default, but you can skip it by setting the Configure variable
 useopcode=false either in a hint file for from the command line.
 
-You can learn more about each of these extensions by consulting the
+If you unpack any additional extensions in the ext/ directory before
+running Configure, then Configure will offer to build those additional
+extensions as well.  Most users probably shouldn't have to do this --
+it is usually easier to build additional extensions later after perl
+has been installed.  However, if you wish to have those additional
+extensions statically linked into the perl binary, then this offers a
+convenient way to do that in one step.  (It is not necessary, however;
+you can build and install extensions just fine even if you don't have
+dynamic loading.  See lib/ExtUtils/MakeMaker.pm for more details.)
+
+You can learn more about each of the supplied extensions by consulting the
 documentation in the individual .pm modules, located under the
 ext/ subdirectory.
 
@@ -904,7 +917,7 @@ to turn off each extension:
     SDBM_File          (Always included by default)
     Opcode             useopcode
     Socket             d_socket
-    Threads            usethreads
+    Threads            use5005threads
     attrs              (Always included by default)
 
 Thus to skip the NDBM_File extension, you can use
@@ -1133,8 +1146,9 @@ $ccflags or $optimize, and then re-run
 
 =item No sh
 
-If you don't have sh, you'll have to copy the sample file Porting/config_H
-to config.h and edit the config.h to reflect your system's peculiarities.
+If you don't have sh, you'll have to copy the sample file
+Porting/config.sh to config.sh and edit your config.sh to reflect your
+system's peculiarities.  See Porting/pumpkin.pod for more information.
 You'll probably also have to extensively modify the extension building
 mechanism.
 
@@ -1179,7 +1193,7 @@ libgdbm under HP-UX 11.
 Specific information for the OS/2, Plan9, VMS and Win32 ports is in the
 corresponding README files and subdirectories.  Additional information,
 including a glossary of all those config.sh variables, is in the Porting
-subdirectory.  Especially Porting/Glossary should come in handy. 
+subdirectory.  Especially Porting/Glossary should come in handy.
 
 Ports for other systems may also be available.  You should check out
 http://www.perl.com/CPAN/ports for current information on ports to
@@ -1704,8 +1718,9 @@ searched by version 5.6.0 will be
 
        /usr/local/lib/perl5/site_perl/5.005/$archname
        /usr/local/lib/perl5/site_perl/5.005
+       /usr/local/lib/perl5/site_perl/
 
-Notice the last two entries -- Perl understands the default structure
+Notice the last three entries -- Perl understands the default structure
 of the $sitelib directories and will look back in older, compatible
 directories.  This way, modules installed under 5.005_03 will continue
 to be usable by 5.005_03 but will also accessible to 5.6.0.  Further,
@@ -1714,11 +1729,8 @@ present only in 5.6.0.  That new module will get installed into
 /usr/local/lib/perl5/site_perl/5.6.0 and will be available to 5.6.0,
 but will not interfere with the 5.005_03 version.
 
-Also, by default, 5.6.0 will look in
-
-       /usr/local/lib/perl5/site_perl/
-
-for 5.004-era pure perl modules.
+The last entry, /usr/local/lib/perl5/site_perl/, is there so that
+5.6.0 will look for 5.004-era pure perl modules.
 
 Lastly, suppose you now install version 5.6.1, which we'll assume is
 binary compatible with 5.6.0 and 5.005.  The directories searched
@@ -1775,15 +1787,15 @@ yet.
 
 =head2 Upgrading from 5.005 to 5.6.0
 
-Extensions built and installed with versions of perl prior to 5.005_50
-will need to be recompiled to be used with 5.005_50 and later.  You will,
-however, be able to continue using 5.005 even after you install 5.6.
-The 5.005 binary will still be able to find the modules built under
-5.005; the 5.6.0 binary will look in the new $sitearch and $sitelib
-directories, and will not find them.  See also your installed copy
-of the perllocal.pod file for a (possibly incomplete) list of locally
-installed modules.  Note that you want perllocal.pod not perllocale.pod
-for installed module information.
+Most extensions built and installed with versions of perl
+prior to 5.005_50 will not need to be recompiled to be used with
+5.6.0.  If you find you do need to rebuild an extension with 5.6.0,
+you may safely do so without disturbing the 5.005 installation.
+(See L<"Coexistence with earlier versions of perl5"> above.)
+
+See your installed copy of the perllocal.pod file for a (possibly
+incomplete) list of locally installed modules.  Note that you want
+perllocal.pod not perllocale.pod for installed module information.
 
 =head1 Coexistence with perl4
 
index ee2959c..286cc46 100644 (file)
--- a/INTERN.h
+++ b/INTERN.h
@@ -1,6 +1,6 @@
 /*    INTERN.h
  *
- *    Copyright (c) 1991-1999, Larry Wall
+ *    Copyright (c) 1991-2000, Larry Wall
  *
  *    You may distribute under the terms of either the GNU General Public
  *    License or the Artistic License, as specified in the README file.
index f6e96a7..ca222c0 100644 (file)
--- a/MANIFEST
+++ b/MANIFEST
@@ -53,7 +53,7 @@ README.vms            Notes about VMS port
 README.vos             Notes about Stratus VOS port
 README.win32           Notes about Win32 port
 Todo                   The Wishlist
-Todo-5.005             What needs doing before 5.005 release
+Todo-5.6               What needs doing before/during the 5.6.x release cycle
 XSUB.h                 Include file for extension subroutines
 apollo/netinet/in.h    Apollo DomainOS port: C header file frontend
 av.c                   Array value code
@@ -364,6 +364,9 @@ ext/SDBM_File/typemap               SDBM extension interface types
 ext/Socket/Makefile.PL Socket extension makefile writer
 ext/Socket/Socket.pm   Socket extension Perl module
 ext/Socket/Socket.xs   Socket extension external subroutines
+ext/Sys/Syslog/Makefile.PL     Sys::Syslog extension makefile writer
+ext/Sys/Syslog/Syslog.pm       Sys::Syslog extension Perl module
+ext/Sys/Syslog/Syslog.xs       Sys::Syslog extension external subroutines
 ext/Thread/Makefile.PL Thread extension makefile writer
 ext/Thread/Notes       Thread notes
 ext/Thread/README      Thread README
@@ -626,10 +629,12 @@ lib/Net/netent.pm By-name interface to Perl's builtin getnet*
 lib/Net/protoent.pm    By-name interface to Perl's builtin getproto*
 lib/Net/servent.pm     By-name interface to Perl's builtin getserv*
 lib/Pod/Checker.pm     Pod-Parser - check POD documents for syntax errors
+lib/Pod/Find.pm                used by pod/splitpod
 lib/Pod/Functions.pm   used by pod/splitpod
 lib/Pod/Html.pm                Convert POD data to HTML
 lib/Pod/InputObjects.pm        Pod-Parser - define objects for input streams
 lib/Pod/Man.pm         Convert POD data to *roff
+lib/Pod/ParseUtils.pm  Pod-Parser - pod utility functions
 lib/Pod/Parser.pm      Pod-Parser - define base class for parsing POD
 lib/Pod/Select.pm      Pod-Parser - select portions of POD docs
 lib/Pod/Text.pm                Pod-Parser - convert POD data to formatted ASCII text
@@ -642,7 +647,6 @@ lib/SelfLoader.pm   Load functions only on demand
 lib/Shell.pm           Make AUTOLOADed system() calls
 lib/Symbol.pm          Symbol table manipulation routines
 lib/Sys/Hostname.pm    Hostname methods
-lib/Sys/Syslog.pm      Perl module supporting syslogging
 lib/Term/Cap.pm                Perl module supporting termcap usage
 lib/Term/Complete.pm   A command completion subroutine
 lib/Term/ReadLine.pm   Stub readline library
@@ -678,7 +682,6 @@ lib/blib.pm         For "use blib"
 lib/byte.pm            Pragma to enable byte operations
 lib/byte_heavy.pl      Support routines for byte pragma
 lib/cacheout.pl                Manages output filehandles when you need too many
-lib/caller.pm          Inherit pragmatic attributes from caller's context
 lib/charnames.pm       Character names
 lib/chat2.pl            Obsolete ipc library (use Comm.pm etc instead)
 lib/complete.pl                A command completion subroutine
@@ -1047,6 +1050,7 @@ pod/checkpods.PL  Tool to check for common errors in pods
 pod/perl.pod           Top level perl man page
 pod/perl5004delta.pod  Changes from 5.003 to 5.004
 pod/perl5005delta.pod  Changes from 5.004 to 5.005
+pod/perlapi.pod         Perl API documentation (autogenerated)
 pod/perlapio.pod       IO API info
 pod/perlbook.pod       Book info
 pod/perlbot.pod                Object-oriented Bag o' Tricks
@@ -1076,6 +1080,7 @@ pod/perlfunc.pod  Function info
 pod/perlguts.pod       Internals info
 pod/perlhack.pod       Perl hackers guide
 pod/perlhist.pod       Perl history info
+pod/perlintern.pod      Perl internal function docs (autogenrated)
 pod/perlipc.pod                IPC info
 pod/perllexwarn.pod    Lexical Warnings info
 pod/perllocale.pod     Locale support info
@@ -1103,6 +1108,7 @@ pod/perltodo.pod  Todo list explained
 pod/perltoot.pod       Tom's object-oriented tutorial
 pod/perltootc.pod      Tom's object-oriented tutorial (more on class data)
 pod/perltrap.pod       Trap info
+pod/perlunicode.pod    Unicode support info
 pod/perlvar.pod                Variable info
 pod/perlxs.pod         XS api info
 pod/perlxstut.pod      XS tutorial
@@ -1311,6 +1317,7 @@ t/op/do.t         See if subroutines work
 t/op/each.t            See if hash iterators work
 t/op/eval.t            See if eval operator works
 t/op/exec.t            See if exec and system work
+t/op/exists_sub.t      See if exists(&sub) works
 t/op/exp.t             See if math functions work
 t/op/fh.t              See if filehandles work
 t/op/filetest.t                See if file tests work
@@ -1381,6 +1388,7 @@ t/op/undef.t              See if undef works
 t/op/universal.t       See if UNIVERSAL class works
 t/op/unshift.t         See if unshift works
 t/op/vec.t             See if vectors work
+t/op/ver.t             See if version tuples work
 t/op/wantarray.t       See if wantarray works
 t/op/write.t           See if write works
 t/pod/emptycmd.t       Test empty pod directives
@@ -1415,6 +1423,7 @@ t/pod/testcmp.pl  Module to compare output against expected results
 t/pod/testp2pt.pl      Module to test Pod::PlainText for a given file
 t/pod/testpchk.pl      Module to test Pod::Checker for a given file
 t/pragma/constant.t    See if compile-time constants work
+t/pragma/diagnostics.t See if diagnostics.pm works
 t/pragma/locale.t      See if locale support works
 t/pragma/locale/latin1 Part of locale.t in Latin 1
 t/pragma/locale/utf8   Part of locale.t in UTF8
@@ -1519,8 +1528,10 @@ vms/vmsish.h             VMS-specific C header for Perl core
 vms/writemain.pl       Generate perlmain.c from miniperlmain.c+extensions
 vos/Changes            Changes made to port Perl to the VOS operating system
 vos/build.cm           VOS command macro to build Perl
-vos/compile_perl.cm    VOS commnad macro to build multiple version of Perl
+vos/compile_perl.cm    VOS command macro to build multiple version of Perl
+vos/config.def         input for config.pl
 vos/config.h           config.h for VOS
+vos/config.pl          script to convert a config_h.SH to a config.h
 vos/config_h.SH_orig   config_h.SH at the time config.h was created
 vos/perl.bind          VOS bind control file
 vos/test_vos_dummies.c Test program for "vos_dummies.c"
@@ -1529,6 +1540,7 @@ vos/vosish.h              VOS-specific header file
 warnings.h             The warning numbers
 warnings.pl            Program to write warnings.h and lib/warnings.pm
 win32/Makefile         Win32 makefile for NMAKE (Visual C++ build)
+win32/bin/exetype.pl   Set executable type to CONSOLE or WINDOWS
 win32/bin/perlglob.pl  Win32 globbing
 win32/bin/pl2bat.pl    wrap perl scripts into batch files
 win32/bin/runperl.pl   run perl script via batch file namesake
index 347ee7e..c3e5c85 100644 (file)
@@ -30,7 +30,12 @@ case "$useshrplib" in
 true)
        # Prefix all runs of 'miniperl' and 'perl' with 
        # $ldlibpth so that ./perl finds *this* shared libperl.
-       ldlibpth="LD_LIBRARY_PATH=`pwd`:$LD_LIBRARY_PATH"
+       case "$LD_LIBRARY_PATH" in
+       '')
+               ldlibpth="LD_LIBRARY_PATH=`pwd`";;
+       *)
+               ldlibpth="LD_LIBRARY_PATH=`pwd`:${LD_LIBRARY_PATH}";;
+       esac
 
        pldlflags="$cccdlflags"
        case "${osname}${osvers}" in
@@ -78,6 +83,8 @@ true)
                eval "ldlibpth=\"$ldlibpthname=`pwd`:\$$ldlibpthname\""
                ;;
            esac
+           # Strip off any trailing :'s
+           ldlibpth=`echo $ldlibpth | sed 's/:*$//'`
            ;;
         esac
        ;;
@@ -228,7 +235,7 @@ addedbyconf = UU $(shextract) $(plextract) pstruct
 
 h1 = EXTERN.h INTERN.h XSUB.h av.h config.h cop.h cv.h dosish.h
 h2 = embed.h form.h gv.h handy.h hv.h keywords.h mg.h op.h
-h3 = opcode.h patchlevel.h perl.h perly.h pp.h proto.h regcomp.h
+h3 = opcode.h patchlevel.h perl.h perlapi.h perly.h pp.h proto.h regcomp.h
 h4 = regexp.h scope.h sv.h unixish.h util.h iperlsys.h thread.h
 h5 = utf8.h warnings.h
 h = $(h1) $(h2) $(h3) $(h4) $(h5)
@@ -236,13 +243,13 @@ h = $(h1) $(h2) $(h3) $(h4) $(h5)
 c1 = $(mallocsrc) av.c scope.c op.c doop.c doio.c dump.c hv.c mg.c
 c2 = perl.c perly.c pp.c pp_hot.c pp_ctl.c pp_sys.c regcomp.c regexec.c utf8.c
 c3 = gv.c sv.c taint.c toke.c util.c deb.c run.c universal.c xsutils.c
-c4 = globals.c perlio.c
+c4 = globals.c perlio.c perlapi.c
 
 c = $(c1) $(c2) $(c3) $(c4) miniperlmain.c perlmain.c
 
 obj1 = $(mallocobj) gv$(OBJ_EXT) toke$(OBJ_EXT) perly$(OBJ_EXT) op$(OBJ_EXT) regcomp$(OBJ_EXT) dump$(OBJ_EXT) util$(OBJ_EXT) mg$(OBJ_EXT)
 obj2 = hv$(OBJ_EXT) av$(OBJ_EXT) run$(OBJ_EXT) pp_hot$(OBJ_EXT) sv$(OBJ_EXT) pp$(OBJ_EXT) scope$(OBJ_EXT) pp_ctl$(OBJ_EXT) pp_sys$(OBJ_EXT)
-obj3 = doop$(OBJ_EXT) doio$(OBJ_EXT) regexec$(OBJ_EXT) utf8$(OBJ_EXT) taint$(OBJ_EXT) deb$(OBJ_EXT) universal$(OBJ_EXT) xsutils$(OBJ_EXT) globals$(OBJ_EXT) perlio$(OBJ_EXT)
+obj3 = doop$(OBJ_EXT) doio$(OBJ_EXT) regexec$(OBJ_EXT) utf8$(OBJ_EXT) taint$(OBJ_EXT) deb$(OBJ_EXT) universal$(OBJ_EXT) xsutils$(OBJ_EXT) globals$(OBJ_EXT) perlio$(OBJ_EXT) perlapi$(OBJ_EXT)
 
 obj = $(obj1) $(obj2) $(obj3) $(ARCHOBJS)
 
@@ -287,7 +294,10 @@ FORCE:
        @sh -c true
 
 opmini$(OBJ_EXT): op.c
-       $(CCCMD) $(PLDLFLAGS) -DPERL_EXTERNAL_GLOB -o opmini$(OBJ_EXT) op.c
+       $(RMS) opmini.c
+       $(LNS) op.c opmini.c
+       $(CCCMD) $(PLDLFLAGS) -DPERL_EXTERNAL_GLOB opmini.c
+       $(RMS) opmini.c
 
 miniperlmain$(OBJ_EXT): miniperlmain.c
        $(CCCMD) $(PLDLFLAGS) $*.c
@@ -551,7 +561,7 @@ install.html: all installhtml
 
 run_byacc:     FORCE
        $(BYACC) -d perly.y
-       chmod 664 perly.c
+       -chmod 664 perly.c
        sh $(shellflags) ./perly.fixer y.tab.c perly.c
        sed -e 's/fprintf *( *stderr *,/PerlIO_printf(Perl_debug_log,/g' \
            -e 's/y\.tab/perly/g' perly.c >perly.tmp && mv perly.tmp perly.c
index cb8536c..b953046 100644 (file)
@@ -134,11 +134,11 @@ do
        ;;
     sitelib)
        case "$siteprefix" in
-       *perl*) dflt=$prefix/lib/site_perl ;;
-       *)      dflt=$prefix/lib/$package/site_perl ;;
+       *perl*) dflt=$prefix/lib/site_perl/$version ;;
+       *)      dflt=$prefix/lib/$package/site_perl/$version ;;
        esac
        ;;
-    sitearch)  dflt="$sitelib/$apiversion/$archname" ;;
+    sitearch)  dflt="$sitelib/$archname" ;;
 
     siteman1dir)       dflt="$siteprefix/man/man1" ;;
     siteman3dir)       dflt="$siteprefix/man/man3" ;;
@@ -166,11 +166,11 @@ do
                ;;
            vendorlib)
                case "$vendorprefix" in
-               *perl*) dflt=$prefix/lib/vendor_perl ;;
-               *)      dflt=$prefix/lib/$package/vendor_perl ;;
+               *perl*) dflt=$prefix/lib/vendor_perl/$version ;;
+               *)      dflt=$prefix/lib/$package/vendor_perl/$version ;;
                esac
                ;;
-           vendorarch) dflt="$vendorlib/$apiversion/$archname" ;;
+           vendorarch) dflt="$vendorlib/$archname" ;;
 
            vendorman1dir)      dflt="$vendorprefix/man/man1" ;;
            vendorman3dir)      dflt="$vendorprefix/man/man3" ;;
index bde26b7..17b408d 100644 (file)
@@ -942,6 +942,10 @@ d_nice (d_nice.U):
        This variable conditionally defines the HAS_NICE symbol, which
        indicates to the C program that the nice() routine is available.
 
+d_nv_preserves_uv (perlxv.U):
+       This variable indicates whether a variable of type nvtype
+       can preserve all the bits a variable of type uvtype.
+
 d_off64_t (io64.U):
        This symbol will be defined if the C compiler supports off64_t.
 
@@ -2121,12 +2125,18 @@ ignore_versioned_solibs (libs.U):
 inc_version_list (inc_version_list.U):
        This variable specifies the list of subdirectories in over
        which perl.c:incpush() and lib/lib.pm will automatically
-       search when adding directories to @INC.  This is only useful
+       search when adding directories to @INC.  The elements in
+       the list are separated by spaces.  This is only useful
        if you have a perl library directory tree structured like the
        default one.  See INSTALL for how this works.  The versioned
        site_perl directory was introduced in 5.005, so that is the
        lowest possible value.
 
+inc_version_list_init (inc_version_list.U):
+       This variable holds the same list as inc_version_list, but
+       each item is enclosed in double quotes and separated by commas, 
+       suitable for use in the PERL_INC_VERSION_LIST initialization.
+
 incpath (usrinc.U):
        This variable must preceed the normal include path to get hte
        right one, as in "$incpath/usr/include" or "$incpath/usr/lib".
index eebf57f..c91d1d1 100644 (file)
@@ -8,7 +8,7 @@
 
 # Package name      : perl5
 # Source directory  : .
-# Configuration time: Sun Jan 16 21:10:53 EET 2000
+# Configuration time: Wed Jan 26 09:55:17 EET 2000
 # Configured by     : jhi
 # Target system     : osf1 alpha.hut.fi v4.0 878 alpha 
 
@@ -31,9 +31,9 @@ alignbytes='8'
 ansi2knr=''
 aphostname=''
 api_revision='5'
-api_subversion='640'
+api_subversion='0'
 api_version='5'
-api_versionstring='5.5.640'
+api_versionstring='5.005'
 ar='ar'
 archlib='/opt/perl/lib/5.5.640/alpha-dec_osf-thread-multi'
 archlibexp='/opt/perl/lib/5.5.640/alpha-dec_osf-thread-multi'
@@ -56,10 +56,10 @@ cc='cc'
 cccdlflags=' '
 ccdlflags='  -Wl,-rpath,/opt/perl/lib/5.5.640/alpha-dec_osf-thread-multi/CORE'
 ccflags='-pthread -std -DLANGUAGE_C'
-ccsymbols='__LANGUAGE_C__=1 _LONGLONG=1 LANGUAGE_C=1 SYSTYPE_BSD=1'
+ccsymbols='__alpha=1 __LANGUAGE_C__=1 __osf__=1 __unix__=1 _LONGLONG=1 _SYSTYPE_BSD=1 SYSTYPE_BSD=1'
 cf_by='jhi'
 cf_email='yourname@yourhost.yourplace.com'
-cf_time='Sun Jan 16 21:10:53 EET 2000'
+cf_time='Wed Jan 26 09:55:17 EET 2000'
 charsize='1'
 chgrp=''
 chmod=''
@@ -72,7 +72,7 @@ cp='cp'
 cpio=''
 cpp='cpp'
 cpp_stuff='42'
-cppccsymbols='__alpha=1 __osf__=1 __unix__=1 _SYSTYPE_BSD=1 unix=1'
+cppccsymbols='LANGUAGE_C=1 unix=1'
 cppflags='-pthread -std -DLANGUAGE_C'
 cpplast=''
 cppminus=''
@@ -229,6 +229,7 @@ d_msgrcv='define'
 d_msgsnd='define'
 d_mymalloc='undef'
 d_nice='define'
+d_nv_preserves_uv='undef'
 d_off64_t='undef'
 d_old_pthread_create_joinable='undef'
 d_oldpthreads='undef'
@@ -483,6 +484,7 @@ i_varhdr='stdarg.h'
 i_vfork='undef'
 ignore_versioned_solibs=''
 inc_version_list=' '
+inc_version_list_init='""'
 incpath=''
 inews=''
 installarchlib='/opt/perl/lib/5.5.640/alpha-dec_osf-thread-multi'
@@ -760,7 +762,7 @@ PERL_VERSION=5
 PERL_SUBVERSION=640
 PERL_API_REVISION=5
 PERL_API_VERSION=5
-PERL_API_SUBVERSION=640
+PERL_API_SUBVERSION=0
 CONFIGDOTSH=true
 # Variables propagated from previous config.sh file.
 pp_sys_cflags='ccflags="$ccflags -DNO_EFF_ONLY_OK"'
index 94007e9..03aafe7 100644 (file)
@@ -17,7 +17,7 @@
 /*
  * Package name      : perl5
  * Source directory  : .
- * Configuration time: Sun Jan 16 21:10:53 EET 2000
+ * Configuration time: Wed Jan 26 09:55:17 EET 2000
  * Configured by     : jhi
  * Target system     : osf1 alpha.hut.fi v4.0 878 alpha 
  */
  *     available directly to the user. Note that it may well be different from
  *     the preprocessor used to compile the C program.
  */
+/* CPPLAST:
+ *     This symbol is intended to be used along with CPPRUN in the same manner
+ *     symbol CPPMINUS is used with CPPSTDIN. It contains either "-" or "".
+ */
 #define CPPSTDIN "cppstdin"
 #define CPPMINUS ""
 #define CPPRUN "/usr/bin/cpp"
+#define CPPLAST ""
 
 /* HAS_ACCESS:
  *     This manifest constant lets the C program know that the access()
  *     so that it is safe even if used by a process with super-user
  *     privileges.
  */
+/* HAS_PHOSTNAME:
+ *     This symbol, if defined, indicates that the C program may use the
+ *     contents of PHOSTNAME as a command to feed to the popen() routine
+ *     to derive the host name.
+ */
 #define HAS_GETHOSTNAME        /**/
 #define HAS_UNAME              /**/
 #undef HAS_PHOSTNAME
  *     the GNU C library is being used.
  */
 /*#define HAS_GNULIBC          / **/
+#if defined(HAS_GNULIBC) && !defined(_GNU_SOURCE)
+#   define _GNU_SOURCE
+#endif
 /* HAS_HASMNTOPT:
  *     This symbol, if defined, indicates that the hasmntopt routine is
  *     available to query the mount options of file systems.
  *     for a C initialization string.  See the inc_version_list entry
  *     in Porting/Glossary for more details.
  */
-#define PERL_INC_VERSION_LIST                  /**/
+#define PERL_INC_VERSION_LIST ""               /**/
 
 /* HAS_OFF64_T:
  *     This symbol will be defined if the C compiler supports off64_t.
 /* U64SIZE:
  *     This symbol contains the sizeof(U64).
  */
+/* NV_PRESERVES_UV:
+ *     This symbol, if defined, indicates that a variable of type NVTYPE
+ *     can preserve all the bit of a variable of type UVSIZE.
+ */
 #define        IVTYPE          long            /**/
 #define        UVTYPE          unsigned long           /**/
 #define        I8TYPE          char            /**/
 #define        I64SIZE         8       /**/
 #define        U64SIZE         8       /**/
 #endif
+#undef NV_PRESERVES_UV
 
 /* IVdf:
  *     This symbol defines the format string used for printing a Perl IV
 /*#define      USE_LONG_LONG           / **/
 #endif
 
+/* USE_MORE_BITS:
+ *     This symbol, if defined, indicates that 64-bit interfaces and
+ *     long doubles should be used when available.
+ */
 #ifndef USE_MORE_BITS
 /*#define      USE_MORE_BITS           / **/
 #endif
index f51b4a5..2052fc8 100644 (file)
@@ -22,17 +22,12 @@ my @patchlevel_h = <PATCHLEVEL>;
 close PATCHLEVEL;
 my $patchlevel_h = join "", grep { /^#\s*define/ } @patchlevel_h;
 print $patchlevel_h;
+$revision = $1 if $patchlevel_h =~ /PERL_REVISION\s+(\d+)/;
 $patchlevel = $1 if $patchlevel_h =~ /PERL_VERSION\s+(\d+)/;
 $subversion = $1 if $patchlevel_h =~ /PERL_SUBVERSION\s+(\d+)/;
 die "Unable to parse patchlevel.h" unless $subversion >= 0;
-$vers = sprintf("5.%03d", $patchlevel);
-$vms_vers = sprintf("5_%03d", $patchlevel);
-if ($subversion) {
-    $vers.= sprintf( "_%02d", $subversion);
-    $vms_vers.= sprintf( "%02d", $subversion);
-} else {
-    $vms_vers.= "  ";
-}
+$vers = sprintf("%d.%d.%d", $revision, $patchlevel, $subversion);
+$vms_vers = sprintf("%d_%d_%d", $revision, $patchlevel, $subversion);
 
 # fetch list of local patches
 my (@local_patches, @lpatch_tags, $lpatch_tags);
index b6b412d..0bf79da 100755 (executable)
@@ -65,7 +65,7 @@ my $cur = m|^Affected files| ... m|^Differences|;
 
 # while we are within range
 if ($cur) {
-    if (m|^\.\.\. (//depot/.+?#\d+) add$|) {
+    if (m{^\.\.\. (//depot/.+?#\d+) (add|branch)$}) {
        my $newfile = $1;
        push @addfiles, $newfile;
        warn "$newfile add, revision != 1!\n" unless $newfile =~ /#1$/;
@@ -90,9 +90,9 @@ sub newfiles {
     my $addfile;
     my $ret = "";
     for $addfile (@addfiles) {
-       my $type = `p4 -p $p4port files $addfile`;
+       my $type = `p4 -p $p4port files '$addfile'`;
        if ($?) {
-           warn "$0: `p4 -p $p4port print $addfile` failed, status[$?]\n";
+           warn "$0: `p4 -p $p4port print '$addfile'` failed, status[$?]\n";
            next;
        }
        $type =~ m|^//.*\((.+)\)$| or next;
@@ -101,9 +101,9 @@ sub newfiles {
            $ret .= "\n==== $addfile ($type) ====\n\n";
            next;
        }
-       my @new = `p4 -p $p4port print $addfile`;
+       my @new = `p4 -p $p4port print '$addfile'`;
        if ($?) {
-           die "$0: `p4 -p $p4port print $addfile` failed, status[$?]\n";
+           die "$0: `p4 -p $p4port print '$addfile'` failed, status[$?]\n";
        }
        my $desc = shift @new;          # discard initial description
        $ret .= "\n==== $addfile ($type) ====\n\n";
@@ -111,6 +111,7 @@ sub newfiles {
        $lines = "" if @new < 2;
        $ret .= "\@\@ -0,0 +1$lines \@\@\n";
        $ret .= join("+","",@new);
+       $ret .= "\n\\ No newline at end of file\n" if $ret !~ /\n$/;
     }
     @addfiles = ();
     return $ret;
diff --git a/README b/README
index 7b294f2..0925b98 100644 (file)
--- a/README
+++ b/README
@@ -1,7 +1,7 @@
 
                           Perl Kit, Version 5.0
 
-                      Copyright 1989-1999, Larry Wall
+                      Copyright 1989-2000, Larry Wall
                            All rights reserved.
 
     This program is free software; you can redistribute it and/or modify
index fb93ac5..ab60a58 100644 (file)
@@ -4,502 +4,587 @@ specially designed to be readable as is.
 
 =head1 NAME
 
-README.cygwin - notes about porting Perl to Cygwin
+README.cygwin - Perl for Cygwin
 
 =head1 SYNOPSIS
 
-=over
+This document will help you configure, make, test and install Perl
+on Cygwin.  This document also describes features of Cygwin that will
+affect how Perl behaves at runtime.
 
-=item Cygwin
+B<NOTE:> There are pre-built Perl packages available for Cygwin and a
+version of Perl is provided on the Cygwin CD.  If you have no need to
+customize the configuration, consider using one of these packages:
 
-The Cygwin tools are ports of the popular GNU development tools for
-Windows NT, 95, and 98.  They run thanks to the Cygwin library which
-provides the UNIX system calls and environment these programs expect.
-More info about this project can be found at its home page
-http://sourceware.cygnus.com/cygwin/
+  http://cygutils.netpedia.net/
 
-=item libperl.dll
+=head1 PREREQUISITES
 
-These instructions and the default cygwin hints build a shared
-libperl.dll Perl library and enables dynamically loaded extensions.
+=head2 Cygwin = GNU+Cygnus+Windows (Don't leave UNIX without it)
 
-=back
+The Cygwin tools are ports of the popular GNU development tools for Win32
+platforms.  They run thanks to the Cygwin library which provides the UNIX
+system calls and environment these programs expect.  More information
+about this project can be found at:
 
-=head1 BUILDING
-
-=head2 Prerequisites
-
-=over
-
-=item Cygwin b20.1
-
-The latest stable Cygwin suite is beta20.1.  It may be
-downloaded from ftp://go.cygnus.com/pub/sourceware.cygnus.com/cygwin/latest/
-or many mirror sites around the world.
-
-=item egcs-1.1.2
-
-This port was built with egcs-1.1.2 downloaded from
-ftp://ftp.xraylith.wisc.edu/pub/khan/gnu-win32/cygwin/egcs-1.1.2/
-
-=item install executable
-
-To make life easier, you should download
-ftp://ftp.franken.de/pub/win32/develop/gnuwin32/cygwin/porters/Humblet_Pierre_A/install-cygwin-b20.sh,
-and use it as your install "executable." Just follow the instructions
-that are embedded as comments in the .sh file.
-
-=item Windows NT notes
-
-You should execute a 'chmod -R +w *' on the entire perl source directory. 
-The configuration process creates new files (and thus needs write access
-to the directory) and sometimes, especially if you make repeated builds
-in the same directory, overwrites old files. If you do not enable write
-access, you're just asking for trouble. Reminder for B20.1: unless 'ntea' 
-is included in the CYGWIN environment variable settings, chmod has no 
-effect. See "environment," below.
-
-It is best if you build, test, and install as a normal user, not as
-Administrator or as any member of the Administrators group. There is
-a well-known NT-ism that affects Cygwin: all files that are created
-by any member of the Administrators B<group> are B<NOT> owned by 
-that member. The ownership of those files is assigned to the 
-Administrators group, instead. If the default access mode for new files
-is -rw-r--r--, then the original creator of the file cannot overwrite 
-it: he no longer owns the file, no B<user> does. It is owned by the 
-group, but group members don't have write access to it. This causes 
-any number of problems, including make test / perl harness failures, 
-installation failures, etc.
-
-In some cases, however, it is necessary to install as Administrator. For 
-instance, if normal users are not allowed write access to the install 
-directory. My solution, in this case, was to transfer ownership of the 
-install directory tree (/usr/local) to a single, normal user, and 
-set permissions to -rw-r--r-- (drwxr-xr-x for directories, of course). 
-If you read the preceeding paragraph carefully, you might suspect that 
-changing the permissions on the entire tree to -rw-rw-r--, but allowing 
-the Administrators group to keep ownership should solve the problem. 
-However, newly created directories (and the perl install creates a lot 
-of them) will not allow group write access. Setting umask will not 
-fix this problem, because umask is a B<negation> operator; it only 
-specifies the types of accesses that will NOT be allowed on new files. 
-For instance, umask u=rwx,g=rwx,o=rx means that world ('B<o>thers') will 
-never be allowed write access, but owner ('B<u>ser') and B<g>roup B<might> 
-be allowed write access. Everybody (u, g, and o) B<might>be allowed 
-read access.
-
-In any case, Corinna Vinschen's ntsec patches B<may> eventually 
-alleviate this whole mess, and are included in the development 
-snapshots as of 24 May 1999. You will need to include 'ntsec' as 
-one of the items in the CYGWIN variable setting. However, initial 
-tests indicate some incompatibility the 0524 snapshot and this perl
-build.
-
-=item environment
-
-I (csw) found the following steps necessary for a successful build:
-
-=over
-
-=item path
-
-I set my path so that none of the windows directories showed up -
-otherwise Configure found the wrong executables (find, grep, etc).
-It is, however, important that '.' be in the path, because otherwise
-the build process can't execute the ld2 script that is created.
-
-=item mounts
-
-I had to unmount my f: drive. I have cygwin installed under 
-F:\cygnus\cygwin-b20\, which is mounted as \. I also ordinarily 
-have F:\ mounted as /f (i.e. mounted onto the empty directory 
-F:\cygnus\cygwin-b20\f\ ). However, this causes Configure to 
-"locate" the awk, tr, sed, etc. programs at 
-/f/cygnus/cygwin-b20/usr/bin instead of /usr/bin. 
-This ended up causing problems.
-
-I built and tested perl using all binary mounts. However, Eric Fifer 
-has built and tested it using text mounts, but reported more failures
-during make test and perl harness. Based on his findings, and experiments
-performed by Sebastien Barre with the static build of perl, I can 
-report that these test failures are B<not> due to any differences in
-the perl executable. Most of the failures encountered during a make test
-on text mounts can be eliminated by remounting as binary, and re-running
-the tests using the same executable. These test failures are due to 
-problems in the test scripts, not the executable. See Appendix.
-
-One observation from experience with the static build of perl is that
-it's a bad idea to a mix a perl executable that was compiled using binary
-mounts with modules compiled using text mounts, and vice versa. Make
-sure your mount environment matches. This observation has not been
-confirmed with respect to the dynamically linked build of perl. 
-
-=item environment variables
-
-For NT users, the CYGWIN variable should include the 'ntea' setting. 
-However, if you have FAT drives on your system, as opposed to NTFS, 
-please read the Cygwin FAQ concerning ntea before including it in 
-your system settings. If you do not use ntea, you will encounter a 
-few extra make test and/or perl harness failures. These are not 
-indicative of a faulty perl executable, but only that your system 
-settings do not allow the types of file access and ownership checking 
-that the test scripts are attempting to verify. See Appendix.
-
-I unset INCLUDE and LIB (these two variables are set by MSVC5, and 
-inherited from my Windows environment by cygwin). I'm not sure this made 
-a difference, but it has caused problems in the past...
+  http://sourceware.cygnus.com/cygwin/
 
-=back
+A recent net or commercial release of Cygwin is required.
 
-=item crypt library
+At the time this document was written, the port required recent
+development snapshots that were expected to stabilize early in 2000 and
+be released to the net as B21 and commercially as v1.1.
 
-http://miracle.geol.msu.ru/sos/ points to two different crypt
-libraries ported to cygwin.  This has been tested with the libcrypt.tgz
-by Andy Piper. His home page can be found at
-http://www.xemacs.freeserve.co.uk/
+B<NOTE:> At this point, minimal effort has been made to provide
+compatibility with old (beta) Cygwin releases.  The focus has been to
+provide a high quality release and not worry about working around old
+Cygwin bugs.  If you wish to use Perl with Cygwin B20.1 or earlier,
+consider using either perl5.005_03 or perl5.005_62, which are available
+in source and binary form at C<http://cygutils.netpedia.net/> or on the
+Cygwin CD.  If there is significant demand, a patch kit can be developed
+to port back to earlier Cygwin versions.
 
-=item hacks that should be revisited after the next cygwin release
+=head2 Compiler
 
-Some of the failures we encountered when running make test and/or perl harness
-are due to bugs in the cygwin b20.1 distribution. We sometimes found it
-necessary to use dirty little hacks to persuade make test and perl harness
-to play nicely. Since cygwin is in active development, many of these hacks 
-may not be necessary in the future. These include:
+A recent net or commercial release of I<gcc> is required.
 
-=over
+At the time this document was written, I<gcc-2.95.2> was current and
+could be downloaded from:
 
-=item fix for pragma/locale
+  ftp://ftp.xraylith.wisc.edu/pub/khan/gnu-win32/cygwin/gcc-2.95.2/
 
-the line '#undef MB_CUR_MAX' was added to ex/POSIX/POSIX.xs. This fixes
-a failure in the pragma/locale.t test, which before this fix resulted in a 
-coredump. It appears that MB_CUR_MAX is #defined __mb_cur_max, and __mb_cur_max
-is declared 'extern' in Cygwin b20.1's stdlib.c, but is never defined. Thus,
-the error.
+=head2 Cygwin Configuration
 
-=item fix for lib/io_sock
+While building Perl some changes may be necessary to your Cygwin setup so
+that Perl builds cleanly.  These changes are B<not> required for normal
+Perl usage.
 
-there is a rather extensive patch to t/lib/io_sock.t which works around
-a failure related to fork() in the cygwin environment. Cygwin b20.1 does not 
-properly remap manually loaded DLLs in the child after a fork.
+B<NOTE:> The binaries that are built will run on all Win32 versions.
+They do not depend on your host system (Win9x, WinNT) or your Cygwin
+configuration (I<ntea>, I<ntsec>, binary/text mounts).  The only
+dependencies come from hardcoded pathnames like C</usr/local>.  However,
+your host system and Cygwin configuration will affect Perl's runtime
+behavior (see L</"TEST">).  Some regression tests may fail in different
+ways depending on your setup.  For now, the test suite does not skip
+tests that do not make sense given a particular setup.  If a test can
+pass in some Cygwin setup, it is left in and explainable test failures
+are documented.
 
-=item fix for lib/filehand
+=over 4
 
-during the make test/perl harness steps, a win32 popup complains about 
-a "perl.exe Application Error - illegal memory access." This is due to to
-a test in t/lib/filehand.t, and is related to the fork + dll problem.
+=item * C<PATH>
 
-=item fix for environ
+Set the C<PATH> environment variable so that Configure finds the Cygwin
+versions of programs.  Any Windows directories should be removed or
+moved to the end of your C<PATH>.
 
-there are a number of changes to miniperlmain.c, util.c, and mg.c that
-are there to work around a Cygwin problem relating to environ.
+=item * F</bin/cat.exe>
 
-=item fix for lib/posix
+There should be an instance of I<cat> in F</bin> (or F</usr/bin>).
+Configure tests C<#!/bin/cat> and if it is not found, you will see
+the error:
 
-the following line was added to t/lib/posix.t to work around a Cygwin bug.
+  Configure: ./try: No such file or directory
 
-=begin text
+=item * F</usr/bin>
 
-kill 'CONT', $$ if($^O =~ /cygwin/); # XXX: Cygwin bug INT signal gets stuck
+If you do not have a F</usr/bin> directory, Configure will B<not> prompt
+you to install I<perl> into F</usr/bin>.
 
-=end text
+=item * I<nroff>
 
-=back
+If you do not have I<nroff> (which is part of the I<groff> package),
+Configure will B<not> prompt you to install man pages.
+
+=item * Permissions
+
+On WinNT with either the I<ntea> or I<ntsec> C<CYGWIN> settings, directory
+and file permissions may not be set correctly.  Since the build process
+creates files and directories, to be safe you may want to run a `C<chmod
+-R +w *>' on the entire Perl source tree.
+
+Also, it is a well known WinNT "feature" that files created by a login
+that is a member of the I<Administrators> group will be owned by the
+I<Administrators> group.  Depending on your umask, you may find that you
+can not write to files that you just created (because you are no longer
+the owner).  When using the I<ntsec> C<CYGWIN> setting, this is not an
+issue because it "corrects" the ownership to what you would expect on
+a UNIX system.
 
 =back
 
-=head2 Configure
+=head1 CONFIGURE
 
-Check hints/cygwin.sh for any system specific settings.  In
-particular change libpth to point to the correct location of
-...../i586-cygwin32/lib.
+The default options gathered by Configure with the assistance of
+F<hints/cygwin.sh> will build a Perl that supports dynamic loading
+(which requires a shared F<libperl.dll>).
 
-run "sh Configure".  
+This will run Configure and keep a record:
 
-When confronted with this prompt:
+  ./Configure 2>&1 | tee log.configure
 
-=begin text
+If you are willing to accept all the defaults add a B<-d> option.
+However, several useful customizations are available.
 
-       First time through, eh?  I have some defaults handy for the
-       following systems:
-          .
-          .
-          .
-       Which of these apply, if any?
+=head2 Strip Binaries
 
-=end text
+It is possible to strip the EXEs and DLLs created by the build process.
+The resulting binaries will be significantly smaller.  If you want the
+binaries to be stripped, you can either add a B<-s> option when Configure
+prompts you,
 
-select "cygwin".
+  Any additional ld flags (NOT including libraries)? [none] -s
+  Any special flags to pass to gcc to use dynamic loading? [none] -s
+  Any special flags to pass to ld2 to create a dynamically loaded library?
+  [none] -s
 
-Do not use the malloc that comes with perl--using the perl malloc
-collides with some cygwin startup routines. 
+or you can edit F<hints/cygwin.sh> and uncomment the relevant variables
+near the end of the file.
 
-=head2 make
+=head2 Optional Libraries
 
-Run "make". If you're really feeling adventurous, type 
-"make 2>&1 | tee make-log.txt".
+Several Perl functions and modules depend on the existence of
+some optional libraries.  Configure will find them if they are
+installed in one of the directories listed as being used for library
+searches.  Pre-built packages for most of these are available at
+C<http://cygutils.netpedia.net/>.
 
-=over
+=over 4
 
-=item ld2
+=item * C<-lcrypt>
 
-The make script will install ld2 into your $installbin directory (i.e.
-wherever you said to put the perl.exe) during the *make* process. It 
-does not wait until the *make install* process to install the ld2 script.
-This is because the remainder of the make refers to ld2 without fully
-specifying its path, and does this from multiple subdirectories (so ./ld2
-won't work.) The assumption here is that $installbin is in your current
-$PATH. If this is not the case, or if you do not have an install 
-executable, the make will fail at some point. Don't panic. Just manually
-copy ld2 from the source directory to someplace in your path.
+The crypt libraries in GNU libc have been ported to Cygwin.
 
-This cannot be done prior to make, because ld2 is created during the
-make process.
+The DES based Ultra Fast Crypt port was done by Alexey Truhan
 
-=back
+  http://dome.weeg.uiowa.edu/pub/domestic/sos/cw32crypt-dist-0.tgz
+
+NOTE: There are various export restrictions on DES implementations,
+see the glibc README for more details.
 
-=head2 make test
+The MD5 port was done by Andy Piper:
 
-Run "make test" to see how stable your system is. I (csw) got the 
-following errors/warnings:
+  http://dome.weeg.uiowa.edu/pub/domestic/sos/libcrypt.tgz
 
-=over
+More information can also be found at:
 
-=item op/taint
+  http://miracle.geol.msu.ru/sos/
 
-Got two "missing cygwin1.dll" warning popups. This is because
-op/taint wants cygwin1.dll to be somewhere in the system path 
-(\WINDOWS\SYSTEM, etc) or in the build directory. Can be ignored.
+=item * C<-lgdbm> (C<use GDBM_File>)
 
-=item lib/filehand
+GDBM is available for Cygwin.  GDBM's ndbm/dbm compatibility feature
+also makes C<NDBM_File> and C<ODBM_File> possible (although they add
+little extra value).
 
-Got an "Application Error - memory could not be read" popup. While 
-this looks alarming, it can be ignored - just click OK. It is 
-because Cygwin B20.1 doesn't properly remap manually loaded DLLs 
-in the child after a fork.
+=item * C<-ldb> (C<use DB_File>)
 
-=item lib/io_sock
+BerkeleyDB is available for Cygwin.  Some details can be found in
+F<ext/DB_File/DB_File.pm>.
 
-Got an "Application Error - memory could not be read" popup. Again,
-just click OK and ignore it.
+=item * C<-lcygipc> (C<use IPC::SysV>)
+
+A port of SysV IPC is available for Cygwin:
+
+  http://www.multione.capgemini.fr/tools/pack_ipc/
+
+The 1.3 release does not include ftok(), but code for ftok() can be
+borrowed from glibc.
 
 =back
 
-=head2 perl harness
+=head2 Configure-time Options
+
+The F<INSTALL> document describes several Configure-time options.
+Some of these will work with Cygwin, others are not yet possible.  Also,
+some of these are experimental.
+
+=over 4
+
+=item * C<-Uusedl>
+
+If you want to force Perl to be compiled statically, you can either
+choose this when Configure prompts you or you can use the Configure
+command line option.
+
+=item * C<-Uusemymalloc>
 
-Once you've run make test, then cd into the t/ subdirectory and
-execute './perl harness'. I (csw) got the following results:
+By default Perl uses the malloc() included with the Perl source.  If you
+want to force Perl to build with the system malloc(), you can either
+choose this when Configure prompts you or you can use the Configure
+command line option.
 
-=over
+=item * C<-Dusemultiplicty>
 
-=item op/taint
+Multiplicity is required when embedding Perl in a C program and using
+more than one interpreter instance.  This works with the Cygwin port.
 
-Got four "missing cygwin1.dll" warning popups. Click OK and
-ignore.
+=item * C<-Duseperlio>
 
-=item lib/filehand
+The PerlIO abstraction works with the Cygwin port.
 
-Got an "Application Error - memory could not be read" popup. Again,
-click OK and ignore.
+=item * C<-Duse64bits -Duselonglong>
 
-=item lib/io_sock
+I<gcc> supports 64-bit integers.  However, several additional long long
+functions are necessary to use them within Perl (I<{atol,strtoul}l>).
+These are B<not> yet available with Cygwin.
 
-Got an "Application Error - memory could not be read" popup. Again,
-clock OK and ignore.
+=item * C<-Duselongdouble>
 
-=item final results
+I<gcc> supports long doubles (12 bytes).  However, several additional
+long double math functions are necessary to use them within Perl
+(I<{sqrt,pow,atan2,exp,fmod,log,cos,frexp,sin,floor,modf,atof}l>).
+These are B<not> yet available with Cygwin.
 
-After the ./perl harness, I got the following results summary.
+=item * C<-Dusethreads>
 
- Failed Test  Status Wstat Total Fail  Failed  List of failed
- -------------------------------------------------------------------------------
- op/taint.t                  149    3   2.01%  1, 3, 31
- 9 tests skipped, plus 35 subtests skipped.
- Failed 1/190 test scripts, 99.47% okay. 3/6452 subtests failed, 99.95% okay.
+POSIX threads are B<not> yet implemented in Cygwin.
+
+=item * C<-Duselargefiles>
+
+Although Win32 supports large files, Cygwin currently uses 32-bit ints
+for internal size and positional calculations.
 
 =back
 
-=head2 make install
+=head2 Suspicious Warnings
 
-Finally, run "make install". In my case, the install process was unable
-to copy the files from <SRCDIR>/pod/* to /usr/local/lib/perl5/5.00503/pod/.
-I (csw) just copied them by hand after the install finished. I believe
-this is because I'm using Sergey Okhapkin's coolview version of the
-cygwin1.dll, which provides case sensitivity. The directory is created
-as "/usr/local/lib/perl5/5.00503/Pod" but the copy is done into
-"/usr/local/lib/perl5/5.00503/pod". This fails -- but probably won't 
-fail if you're using the default cygwin1.dll.
+You may see some messages during Configure that seem suspicious.
 
-=head1 BUGS
+=over 4
 
-A lot of warnings about incompatible pointer types and comparison
-lacking a cast.  This is because of __declspec(dllimport).
+=item * Whoa There
 
-Upon each start, make warns that a rule for perlmain.o is overrided.
-Yes, it is.  In order to use libperl.dll, perlmain needs to import
-symbols from there.  According to alex smishlajev, there seems to be 
-no better solution than adding an explicit define to the rule.
+Cygwin does not yet implement chroot(), setegid() or seteuid()
+functionality, but has stub functions that return C<ENOSYS>.  You will
+see a message when Configure detects that its guess conflicts with the
+hint file.
 
-make clean does not remove library .def and .exe.core files.
+  *** WHOA THERE!!! ***
+      The recommended value for $d_chroot on this machine was "undef"!
+      Keep the recommended value? [y]
 
-ld2 script is installed with reference to source directory.  You should
-change this to /usr/local/bin (or whatever) after install.
+You should keep the recommended value.
 
-.bat wrappers for installed utility scripts are not made during installation.
+=item * Checking how std your stdio is...
 
-=head1 AUTHOR
+Configure reports:
 
-alexander smishlajev <als@turnhere.com>
+  Your stdio doesn't appear very std.
 
-=head1 DISCLAIMER
+This is correct.
 
-I (alex) am not going to maintain this document or this port.  I only wanted
-to make perl porting a bit easier.  If failed, I can't be helpful for you.
-Contact one of the others listed in the history section.
+=head1 MAKE
 
-=head1 HISTORY
+Simply run make and wait:
+
+  make 2>&1 | tee log.make
+
+=head2 Warnings
+
+Warnings like these are normal:
+
+  warning: overriding commands for target <file>
+  warning: ignoring old commands for target <file>
+
+  Warning: no export definition file provided
+  dllwrap will create one, but may not be what you want
+
+=head2 ld2
+
+During `C<make>', I<ld2> will be created and installed in your $installbin
+directory (where you said to put public executables).  It does not
+wait until the `C<make install>' process to install the I<ld2> script,
+this is because the remainder of the `C<make>' refers to I<ld2> without
+fully specifying its path and does this from multiple subdirectories.
+The assumption is that $installbin is in your current C<PATH>.  If this
+is not the case or if you do not have an I<install> program, `C<make>'
+will fail at some point.  If this happens, just manually copy I<ld2>
+from the source directory to someplace in your C<PATH>.
+
+=head1 TEST
+
+There are two steps to running the test suite:
+
+  make test 2>&1 | tee log.make-test
+
+  cd t;./perl harness 2>&1 | tee ../log.harness
+
+The same tests are run both times, but more information is provided when
+running as `C<./perl harness>'.
 
-=over
+Test results vary depending on your host system and your Cygwin
+configuration.  It is possible that Cygwin will pass all the tests, but it
+is more likely that some tests will fail for one of the the reasons below.
 
-=item Release 1.4.1: 28-May-1999
+=head2 File Permissions
 
-Charles Wilson  -  cwilson@ece.gatech.edu
+UNIX file permissions are based on sets of mode bits for
+{read,write,execute} for each {user,group,other}.  By default Cygwin only
+tracks the Win32 readonly attribute represented as the UNIX file user
+write bit (files are always readable, files are executable if they have
+a F<.{com,bat,exe}> extension or begin with C<#!>, directories are always
+readable and executable).  On WinNT with the I<ntea> C<CYGWIN> setting,
+the remaining mode bits are stored as extended attributes.  On WinNT
+with the I<ntsec> C<CYGWIN> setting, permissions use the standard WinNT
+security descriptors and access control lists.  Without one of these
+options, these tests will fail:
 
-   Configure               minor fix for spaces in $PATH
-   documentation updates
+  Failed Test           List of failed
+  ------------------------------------
+  io/fs.t               5, 7, 9-10
+  lib/anydbm.t          2
+  lib/db-btree.t        20
+  lib/db-hash.t         16
+  lib/db-recno.t        18
+  lib/gdbm.t            2
+  lib/glob-basic.t      9 (directory always readable)
+  lib/ndbm.t            2
+  lib/odbm.t            2
+  lib/sdbm.t            2
+  op/stat.t             9, 20 (.tmp not an executable extension)
 
-=item Release 1.4: 26-May-1999
+=head2 Hard Links
 
-Charles Wilson  -  cwilson@ece.gatech.edu
+FAT partitions do not support hard links (whereas NTFS does), in which
+case Cygwin implements link() by copying the file.  These tests will fail:
 
- From Eric Fifer:
-   hints/cygwin32.sh       -L. and --export-dynamic not needed
-   cygwin32/Makefile.SHs   no value needed for -DUSEIMPORTLIB
-   t/lib/io_sock.t         -I../lib so "make test" works
-   t/lib/posix.t           workaround a Cygwin bug so test works
-   doio.c/perl.h           cleanup gcc warning "doio.c:789: warning:
-                                pointer/integer type mismatch in 
-                                conditional expression"
- From Charles Wilson:
-   Configure               changes to findhdr script
-   documentation updates
-   built binary kit for release
+  Failed Test           List of failed
+  ------------------------------------
+  io/fs.t               4
+  op/stat.t             3
 
-=item Release 1.3: 26-May-1999
+=head2 Filetime Granularity
 
-Charles Wilson  -  cwilson@ece.gatech.edu
+On FAT partitions the filetime granularity is 2 seconds.  The following
+test will fail:
 
- Changes to Cwd.pm to correct lib/findbin.t test failure from Eric Fifer
- Changes to t/op/magic.t to correct a test failure from Eric Fifer
- Changes to miniperlmain.c, util.c, and mg.c to correct t/op/magic.t #29
-    test failure, from Eric Fifer
- more documentatino updates, patch merging, and a change to 
-    cygwin/Makefile.SHs -- cw.
- 99.95% okay!!!
+  Failed Test           List of failed
+  ------------------------------------
+  io/fs.t               18
 
-=item Release 1.2: 25-May-1999
+=head2 Tainting Checks
 
-Charles Wilson  -  cwilson@ece.gatech.edu
+When Perl is running in taint mode, C<$ENV{PATH}> is considered tainted
+and not used, so DLLs not in the default system directories will not
+be found.  While the tests are running you will see warnings popup from
+the system with messages like:
 
- fixes for lib/io_sock and pragma/locale from Eric Fifer
- fixes for Configure, Makefile.SH, and cygwin32/Makefile.SHs from
-    alex smishlajev
- documentation updates, and other fixes to the fixes from cw.
- 99.91% okay!!!
+  Win9x
+    Error Starting Program
+    A required .DLL file, CYGWIN1.DLL, was not found
 
-=item Release 1.1: 21-May-1999
+  WinNT
+    perl.exe or sh.exe - Unable to Locate DLL
+    The dynamic link library cygwin1.dll could not be found in the
+      specified path ...
 
-Charles Wilson  -  cwilson@ece.gatech.edu
+Just click OK and ignore them.  When running `C<make test>', 2 popups
+occur.  During `C<./perl harness>', 4 popups occur.  Also, these tests
+will fail:
 
-minor change to Configure script, reversed a few changes made by
-alexander's patch (made DOSISH #undefined again) and moved code
-by alexander from dosish.h to perl.h. Reversed a change in 
-pp_hot.c
+  Failed Test           List of failed
+  ------------------------------------
+  op/taint.t            1, 3, 31, 37
 
-=item Release 1.0: 16-May-1999
+Alternatively, you can copy F<cygwin1.dll> into one of the Windows system
+directories (although, this is B<not> recommended).
 
-Charles Wilson  -  cwilson@ece.gatech.edu
+=head2 /etc/group
 
-Merged alexander's patch and Eric's patch into a single
-monolithic patch. Minor cleanup. Built binary for distribution.
-perl5.005_03-dynamic-patch-v1.0
+Cygwin does not need F</etc/group>, in which case the F<op/grent.t>
+test will be skipped.  The check performed by F<op/grent.t> expects to
+see entries that use the members field, otherwise this test will fail:
 
-=item Pre-release 3: 12-May-1999 
+  Failed Test           List of failed
+  ------------------------------------
+  op/grent.t            1
 
-Eric Fifer  -  efifer@sanwaint.com
+=head2 Unexplained Failures
 
-Removed all references to the impure_ptr hack since it is no longer
-needed.  Some minor cleanup of alexander smishlajev's work and a few
-bug fixes.
+Any additional tests that fail are likely due to bugs in Cygwin.  It is
+expected that by the time of the next net release most of these will
+be solved so they are not described here.  None of the current bugs are
+serious enough that workarounds are needed.
 
-=item Pre-release 2 (initial dynamic build): 17..25-apr-1999
+=head2 Script Portability
 
-alexander smishlajev  -  als@turnher.com
+Cygwin does an outstanding job of providing UNIX-like semantics on top
+of Win32 systems.  However, in addition to the items noted above, there
+are some differences that you should know about.  This is only a very
+brief guide to portability, more information about Cygwin can be found
+in the Cygwin documentation.
 
-perl 5.005_03.  cygwin b20.1  egcs 1.1.2.  far 1.60.  nescafe classic.
+=over 4
 
-=item Pre-release 1 (static build): 5-Mar-1999
+=item * Pathnames
 
-Charles Wilson  -  cwilson@ece.gatech.edu
+Cygwin pathnames can be separated by forward (F</>) or backward (F<\>)
+slashes.  They may also begin with drive letters (F<C:>) or Universal
+Naming Codes (F<//UNC>).  DOS device names (F<aux>, F<con>, F<prn>,
+F<com*>, F<lpt?>) are invalid as base filenames.  However, they can be
+used in extensions (e.g., F<hello.aux>).  Names may not contain these
+characters:
 
-Collected various patches that had been floating around the net, along
-with build instructions.  Original authorship credit for those patches
-goes to:
+  : * ? " < > |
 
- Steven Morlock  -  newspost@morlock.net
- Sebastien Barre -  Sebastien.Barre@utc.fr
- Teun Burgers    -  burgers@ecn.nl
+File names are case insensitive, but case preserving.  With the I<mixed>
+C<CYGWIN> setting, file names are mixed-case (although, directory names
+remain case insensitive).
 
-Created a monolithic patchkit (perl5.005_03-static-patch) and build
-instructions for cygwin (beta 20.1). Also created a binary distribution
-of the resulting static perl build.
+The I<mixed> setting is only available with the "coolview" version of
+F<cygwin1.dll> provided by Sergey Okhapkin at:
+
+  ftp://ftp.franken.de/pub/win32/develop/gnuwin32/cygwin/porters/Okhapkin_Sergey/
+
+=item * Text/Binary
+
+When a file is opened it is in either text or binary mode.  In text mode
+it is subject to CR/LF/Ctrl-Z translations.  Perl provides a binmode()
+function to force binary mode on files that otherwise would be treated
+as text.  With Cygwin, the default mode for an open() is determined by the
+mode of the mount that underlies a file.  For binmode() to be effective,
+the underlying mount must be text.  There is no way to force text mode
+on a file underneath a binary mount.  The text/binary issue is covered
+at length in the Cygwin documentation.
+
+lseek() only works with files opened in binary mode.
+
+=item * F<.exe>
+
+The Cygwin stat() makes the F<.exe> extension transparent by looking for
+a F<foo.exe> when you ask for F<foo> (unless a F<foo> also exists).
+Cygwin does not require a F<.exe> extension, but I<gcc> adds it
+automatically when building a program.  However, when accessing an
+executable as a normal file (e.g., I<install> or I<cp> in a makefile)
+the F<.exe> is not transparent.
+
+NOTE: There is a version of I<install> that understands F<.exe>, it can
+be found at:
+
+  ftp://ftp.franken.de/pub/win32/develop/gnuwin32/cygwin/porters/Humblet_Pierre_A/
+
+=item * chown()
+
+On WinNT with the I<ntsec> C<CYGWIN> setting, chown() can change a file's
+user and group IDs.  In all other configurations chown() is a no-op,
+although this is appropriate on Win9x since there is no security model.
+
+=item * Miscellaneous
+
+File locking using the C<F_GETLK> command to fcntl() is a stub that
+returns C<ENOSYS>.
+
+Win32 can not unlink() an open file (but this is emulated by Cygwin).
+
+Win9x can not rename() an open file (although WinNT can).
 
 =back
 
-=head1 APPENDIX
+=head1 INSTALL
+
+This will install Perl, including man pages.
+
+  make install 2>&1 | tee log.make-install
 
-Perl harness results from Eric Fifer, under various environments. The same
-executable was used in all cases. The last item is a different executable
-on a different machine, built by Charles Wilson.
+You may need to be I<Administrator> to run `C<make install>'.  If you
+are not, you must have write access to the directories in question.
 
-There are a number of very good questions one could ask about anomalies 
-in the test results presented below. "Why do the last two show different
-results?" "Why did op/stat.t #18 pass in the first two tests and fail in
-the third?" Short answer: I don't know. Long answer: I really have no
-idea.
+Information on installing the Perl documentation in HTML format can be
+found in the F<INSTALL> document.
 
-=over
+=head1 MANIFEST
 
-=item text mounts, no 'ntea'
+These are the files in the Perl release that contain references to Cygwin.
+These very brief notes attempt to explain the reason for all conditional
+code.  Hopefully, keeping this up to date will allow the Cygwin port to
+be kept as clean as possible.
 
- Failed Test  Status Wstat Total Fail  Failed  List of failed
- ------------------------------------------------------------
- lib/anydbm.t      2   512    12    8  66.67%  5-12
- lib/sdbm.t        2   512    18   15  83.33%  2, 5-18
- op/split.t                   25    1   4.00%  11
- op/stat.t                    58    3   5.17%  9, 19, 26
- op/taint.t                  149    3   2.01%  1, 3, 31
+=over 4
 
-=item binary mounts, no 'ntea'
+=item Documentation
 
- Failed Test  Status Wstat Total Fail  Failed  List of failed
- ------------------------------------------------------------
- lib/sdbm.t                   18    1   5.56%  2
- op/stat.t                    58    3   5.17%  9, 19, 26
- op/taint.t                  149    3   2.01%  1, 3, 31
+  INSTALL
+  Changes Changes5.005 Changes5.004
+  AUTHORS MAINTAIN MANIFEST
+  README.cygwin README.win32
+  pod/perl.pod pod/perlfaq3.pod pod/perlhist.pod pod/perlmodlib.pod
+  pod/perlport.pod pod/perltoc.pod pod/perl5004delta.pod
 
-=item binary mounts, 'ntea'
+=item Build, Configure, Make, Install
 
- Failed Test  Status Wstat Total Fail  Failed  List of failed
- ------------------------------------------------------------
- op/stat.t                    58    3   5.17%  18-19, 26
- op/taint.t                  149    3   2.01%  1, 3, 31
+  cygwin/Makefile.SHs
+  cygwin/ld2.in
+  cygwin/perlld.in
+  ext/IPC/SysV/hints/cygwin.pl
+  ext/NDBM_File/hints/cygwin.pl
+  ext/ODBM_File/hints/cygwin.pl
+  hints/cygwin.sh
+  Porting/patchls       - cygwin in port list
+  Makefile.SH           - linklibperl, cygwin/Makefile.SHs
+  makedepend.SH         - uwinfix
+  Configure             - help finding hints from uname,
+                          shared libperl required for dynamic loading
+  installman            - man pages with :: translated to .
+  installperl           - install dll, install to pods
 
-=item binary mounts, ntea (csw build)
+=item Tests
 
- Failed Test  Status Wstat Total Fail  Failed  List of failed
- -------------------------------------------------------------------------------
- op/taint.t                  149    3   2.01%  1, 3, 31
+  t/io/tell.t           - binmode
+  t/op/magic.t          - $^X WORKAROUND, s/.exe//
+  t/op/stat.t           - no /dev, no -u (setuid)
+
+=item Compiled Perl Source
+
+  doio.c                - win9x can not rename a file when it is open
+  EXTERN.h              - __declspec(dllimport)
+  XSUB.h                - __declspec(dllexport)
+  perl.h                - binmode
+  mg.c                  - environ WORKAROUND
+  util.c                - environ WORKAROUND
+  unixish.h             - environ WORKAROUND
+
+=item Compiled Module Source
+
+  ext/POSIX/POSIX.xs    - tzname defined externally
+  ext/SDBM_File/sdbm/pair.c
+                        - EXTCONST needs to be redefined from EXTERN.h
+  ext/SDBM_File/sdbm/sdbm.c
+                        - binary open
+
+=item Perl Modules/Scripts
+
+  lib/perl5db.pl        - use stdin not /dev/tty
+  utils/perlcc.PL       - DynaLoader.a in compile, -DUSEIMPORTLIB
+  utils/perldoc.PL      - version comment
+  lib/File/Spec/Unix.pm - preserve //unc
+  lib/ExtUtils/MakeMaker.pm
+                        - require MM_Cygwin.pm
+  lib/ExtUtils/MM_Cygwin.pm
+                        - canonpath, cflags, manifypods, perl_archive
+  lib/Cwd.pm            - `pwd`
 
 =back
 
-=cut
+=head1 BUGS
+
+Upon each start, I<make> warns that a rule for F<perlmain.o> is overridden
+(but there seems to be no better solution than adding an explicit define).
+
+`C<make clean>' does not remove library F<.def> and F<.exe.stackdump>
+files.
+
+The I<ld2> script contains references to the source directory.  You should
+change these to C</usr/local/bin> (or whatever) after install.
+
+=head1 AUTHORS
+
+Charles Wilson E<lt>cwilson@ece.gatech.eduE<gt>,
+Eric Fifer E<lt>efifer@sanwaint.comE<gt>,
+alexander smishlajev E<lt>als@turnhere.comE<gt>,
+Steven Morlock E<lt>newspost@morlock.netE<gt>,
+Sebastien Barre E<lt>Sebastien.Barre@utc.frE<gt>,
+Teun Burgers E<lt>burgers@ecn.nlE<gt>.
+
+=head1 HISTORY
+
+Last updated: 28 January 2000
index cd07ca1..46f032a 100644 (file)
@@ -1136,7 +1136,7 @@ Really really odious function to implement. Returns absolute name of
 file which would have C<name> if CWD were C<dir>.  C<Dir> defaults to the
 current dir.
 
-=item  C<Cwd::extLibpath([type])
+=item  C<Cwd::extLibpath([type])>
 
 Get current value of extended library search path. If C<type> is
 present and I<true>, works with END_LIBPATH, otherwise with
index b02e607..1f5f7ea 100644 (file)
@@ -1,7 +1,20 @@
-NOTE
+NOTE: This documentation describes the style of threading that was
+available in 5.005.  Perl v5.6 also has the early beginnings of
+interpreter-based threads support (which is what will be enabled by
+default when you simply ask for -Dusethreads).  However, be advised
+that interpreter threads cannot as yet be created from the Perl level
+yet.  If you're looking to create threads from within Perl, chances
+are you _don't_ want interpreter threads, but want the older support
+for threads described below, enabled with:
+
+    sh Configure -Dusethreads -Duse5005threads
+
+The rest of this document only applies to the use5005threads style of
+threads.
+---------------------------------------------------------------------------
 
-Threading is a highly experimental feature.  There are still a 
-few race conditions that show up under high contention on SMP
+Support for threading is still in the highly experimental stages.  There
+are known race conditions that show up under high contention on SMP
 machines.  Internal implementation is still subject to changes.
 It is not recommended for production use at this time.
 
@@ -11,7 +24,7 @@ Building
 
 If your system is in the following list you should be able to just:
 
-    ./Configure -Dusethreads -des
+    ./Configure -Dusethreads -Duse5005threads -des
     make
 
 and ignore the rest of this "Building" section.  If not, continue
@@ -58,7 +71,7 @@ subdirectory.
 On platforms that use Configure to build perl, omit the -d from your
 ./Configure arguments. For example, use:
 
-    ./Configure -Dusethreads
+    ./Configure -Dusethreads -Duse5005threads
 
 When Configure prompts you for ccflags, insert any other arguments in
 there that your compiler needs to use POSIX threads (-D_REENTRANT,
@@ -168,8 +181,8 @@ has this fixed but the following patch can be applied to 0.5 for now:
 Building the Thread extension
 
 The Thread extension is now part of the main perl distribution tree.
-If you did Configure -Dusethreads then it will have been added to
-the list of extensions automatically.
+If you did Configure -Dusethreads -Duse5005threads then it will have been
+added to the list of extensions automatically.
 
 You can try some of the tests with
     cd ext/Thread
index ab9d99d..99abf0d 100644 (file)
@@ -1,10 +1,11 @@
 Perl 5 README file for the Stratus VOS operating system.
 Paul Green (Paul_Green@stratus.com)
-August 12, 1998
+February 3, 2000
+
 
 Introduction
 ------------
-This is a port of Perl version 5, revision 005-02, to VOS.  Perl
+This is a port of Perl version 5, revision 005-63, to VOS.  Perl
 is a scripting or macro language that is popular on many
 systems.  See your local computer bookstore for a number of good
 books on Perl.
@@ -12,8 +13,12 @@ books on Perl.
 Most of the Perl features should work on VOS.  However, any
 attempt by perl.pm to call the following unimplemented POSIX
 functions will result in an error message and an immediate and
-fatal call to the VOS debugger.  They are "dup", "execlp",
-"execl", "execvp", "fork", and "waitpid".
+fatal call to the VOS debugger.  They are "dup", "fork", and
+"waitpid".  The lack of these functions pretty much prevents you
+from starting VOS commands and grabbing their output in perl.
+The workaround is to run the commands outside of perl, then have
+perl process the output file.
+
 
 Compiling Perl 5 on VOS
 -----------------------
@@ -23,65 +28,124 @@ following additional items.
 1.   The VOS Standard C Compiler and Runtime, or the VOS Standard C
      Cross-Compiler.  This is a standard Stratus product.
 
-2.   The VOS OS TCP/IP product set.  While the necessary header files
-     are included in this distribution, you still need the appropriate
-     object files in order to bind perl.pm.  This is a standard
-     Stratus product.
+2.   The VOS OS TCP/IP product set.  While the necessary header
+     files are included with VOS POSIX.1, you still need the
+     appropriate object files in order to bind perl.pm.  This is
+     a standard Stratus product.
 
 3.   The VOS POSIX.1 environment.  As of this writing, this is
-     available on the VOS FTP site.  Login to ftp.stratus.com
-     anonymously and get the file /pub/vos/alpha/posix.save.evf.gz in
-     binary file-transfer mode.  Or use the Uniform Resource Locator
-     (URL) ftp://ftp.stratus.com/pub/vos/alpha/posix.save.evf.gz from
+     available on the VOS FTP site.  Login anonymously to
+     ftp.stratus.com and get the file
+     /pub/vos/alpha/posix.save.evf.gz in binary file-transfer
+     mode.  Or use the Uniform Resource Locator (URL)
+     ftp://ftp.stratus.com/pub/vos/alpha/posix.save.evf.gz from
      your web browser.  This is not a standard Stratus product.
 
-To build build 5, change to one of the VOS object directories
-(e.g., perl5.005_02>vos>obj), and give the command "<build".  If
-you have the cross-compilers and wish to build for a specific
-architecture, say "<build -processor pa7100" (for example).  You
-can also customize the "compile_perl.cm" command macro for your
-system.
+     Instructions for unbundling this file are at
+     ftp://ftp.stratus.com/pub/vos/utility/utility.html.
+
+4.   You must compile this version of Perl 5 on VOS Release
+     14.1.0 or higher because some of the perl source files
+     contain more than 32,767 source lines.  Due to VOS
+     release-compatibility rules, this port of perl may not
+     execute on VOS Release 12 or earlier.
+
+To build perl 5, change to the "vos" subdirectory and type the
+command "compile_perl -processor X", where X is the processor
+type (mc68020, i80860, pa7100, pa8000) that you wish to use.
+Note that code compiled for the pa7100 processor type can
+execute on the PA7100, PA8000, and PA8500 processors, and that
+code compiled for the pa8000 processor type can execute on the
+PA8000 and PA8500 processors.
+
+
+Installing Perl 5 on VOS
+------------------------
+1.   Create the directory >system>ported>command_library.
+
+2.   Copy the appropriate version of the perl program module to
+     this directory.  For example, with your current directory
+     set to the top-level directory of Perl 5, to install the
+     executable program module for the Motorola 68K
+     architecture, enter:
+
+          !copy_file vos>obj>perl.pm >system>ported>command_library>*
+
+     (If you wish to use both Perl version 4 and Perl version 5,
+     you must give them different names; for example, perl.pm
+     and perl5.pm).
+
+3.   Create the directory >system>ported>perl>lib.
+
+4.   Copy all of the files and subdirectories from the lib
+     subdirectory into this new directory.  For example, with
+     the current directory set to the top-level directory of the
+     perl distribution, enter:
+
+          !copy_dir lib >system>ported>perl>lib>5.005
+
+5.   While there are currently no architecture-specific
+     extensions or modules distributed with perl, the following
+     directories can be used to hold such files:
+
+          >system>ported>perl>lib>5.005.68k
+          >system>ported>perl>lib>5.005.860
+          >system>ported>perl>lib>5.005.7100
+          >system>ported>perl>lib>5.005.8000
+
+6.   Site-specific perl extensions and modules can be installed
+     in one of two places.  Put architecture-independent files
+     into:
+
+          >system>ported>perl>lib>site>5.005
+
+     Put architecture-dependent files into one of the following
+     directories:
+
+          >system>ported>perl>lib>site>5.005.68k
+          >system>ported>perl>lib>site>5.005.860
+          >system>ported>perl>lib>site>5.005.7100
+          >system>ported>perl>lib>site>5.005.8000
+
+7.   You can examine the @INC variable from within a perl program
+     to see the order in which Perl searches these directories.
 
-Changes to Perl for VOS
------------------------
-1.   The header perl.h was changed to include vosish.h instead
-     of unixish.h.  This change is necessary because VOS POSIX.1
-     does not (yet) implement the getgrname() or getgrgid()
-     functions.
 
 Unimplemented Features
 ----------------------
-If Perl 5 attempts to call an unimplemented VOS POSIX.1
-function, it will print a fatal error message and enter the VOS
-debugger.  This error is not recoverable.  See vos_dummies.c for
-a list of the unimplemented POSIX.1 functions.  To see what the
-error message looks like, compile and execute
-"test_vos_dummies.c".
+If Perl 5 attempts to call an unimplemented VOS POSIX.1 function,
+it will print a fatal error message and enter the VOS debugger.
+This error is not recoverable.  See vos_dummies.c for a list of
+the unimplemented POSIX.1 functions.  To see what functions are
+unimplemented and what the error message looks like, compile and
+execute "test_vos_dummies.c".
+
 
 Restrictions
 ------------
-This port of Perl version 5 to VOS uses Unix-style,
-slash-separated pathnames, not VOS-style greater-than-separated
-pathnames.  If you wish to have it use VOS-style pathnames, try
-setting the external variable s$c_options to 4 with the
-following command line.  Note that this way of configuring Perl
-5 has not been tested; I don't know if Perl can handle the
-presence of the greater-thans, and the absence of the slashes.
+This port of Perl version 5 to VOS prefers Unix-style,
+slash-separated pathnames over VOS-style greater-than-separated
+pathnames.  VOS-style pathnames should work in most contexts, but
+if you have trouble, replace all greater-than characters by slash
+characters.  Because the slash character is used as a pathname
+delimiter, Perl cannot process VOS pathnames containing a slash
+character in a directory or file name; these must be renamed.
 
-     set_external_variable s$c_options -in perl.pm -type integer -to 4
+This port of Perl also uses Unix-epoch date values internally.
+As long as you are dealing with ASCII character string
+representations of dates, this should not be an issue.  The
+supported epoch is January 1, 1980 to January 17, 2038.
 
-The following command can be used to check the value:
+See the file pod/perlport.pod for more information about the VOS
+port of Perl.
 
-     get_external_variable s$c_options -in perl.pm -type integer
-
-See the documentation for VOS POSIX.1 for the full set of option
-values.
 
 Support Status
 --------------
 I'm offering this port "as is".  You can ask me questions, but I
 can't guarantee I'll be able to answer them; I don't know much
-about Perl itself; I'm still learning that.
+about Perl itself; I'm still learning that.  There are some
+excellent books available on the Perl language; consult a book
+seller.
 
 (end)
-
index 1623acf..6889ab7 100644 (file)
@@ -90,7 +90,7 @@ work for MakeMaker builds.)
 
 A port of dmake for win32 platforms is available from:
 
-    ftp://ftp.linux.activestate.com/pub/staff/gsar/dmake-4.1-win32.zip
+    http://cpan.perl.org/authors/id/GSAR/dmake-4.1pl1-win32.zip
 
 (This is a fixed version of original dmake sources obtained from
 http://www.wticorp.com/dmake/.  As of version 4.1PL1, the original
@@ -177,7 +177,7 @@ If you have either the source or a library that contains des_fcrypt(),
 enable the appropriate option in the makefile.  des_fcrypt() is not
 bundled with the distribution due to US Government restrictions
 on the export of cryptographic software.  Nevertheless, this routine
-is part of the "libdes" library (written by Ed Young) which is widely
+is part of the "libdes" library (written by Eric Young) which is widely
 available worldwide, usually along with SSLeay (for example:
 "ftp://fractal.mta.ca/pub/crypto/SSLeay/DES/").  Set CRYPT_SRC to the
 name of the file that implements des_fcrypt().  Alternatively, if
@@ -215,21 +215,6 @@ The build process may produce "harmless" compiler warnings (more or
 less copiously, depending on how picky your compiler gets).  The
 maintainers are aware of these warnings, thankyouverymuch. :)
 
-When building using Visual C++, a perl95.exe will also get built.  This
-executable is only needed on Windows95, and should be used instead of
-perl.exe, and then only if you want sockets to work properly on Windows95.
-This is necessitated by a bug in the Microsoft C Runtime that cannot be
-worked around in the "normal" perl.exe.  perl95.exe gets built with its
-own private copy of the C Runtime that is not accessible to extensions
-(which see the DLL version of the CRT).  Be aware, therefore, that this
-perl95.exe will have esoteric problems with extensions like perl/Tk that
-themselves use the C Runtime heavily, or want to free() pointers
-malloc()-ed by perl.
-
-You can avoid the perl95.exe problems completely if you either enable
-USE_PERLCRT with Visual C++, or use Borland C++ for building perl.  In
-those cases, perl95.exe is not needed and will not be built.
-
 =back
 
 =head2 Testing
similarity index 50%
rename from Todo-5.005
rename to Todo-5.6
index e06add9..44e26a7 100644 (file)
+++ b/Todo-5.6
@@ -1,10 +1,26 @@
+Unicode support
+    finish byte <-> utf8 and localencoding <-> utf8 conversions 
+    make "$bytestr$charstr" do the right conversion
+    add Unicode::Map equivivalent to core
+    add support for I/O disciplines
+        - open(F, "<!crlf!utf16", $file)
+       - binmode(STDIN, "<!crlf!utf16")?
+       - a way to set the "system" discipline (binmode("!crlf!utf16") maybe?)
+       - nice IO::Filter module to push/pop disciplines
+    eliminate need for "use utf8;"
+    support C<print v1.2.3>
+    make C<v123> mean C<chr(123)> (if !exists(&v123))
+    autoload utf8_heavy.pl's swash routines in swash_init()
+
 Multi-threading
-    $AUTOLOAD. Hmm.
-    consistent semantics for exit/die in threads
-    SvREFCNT_dec(curstack) in threadstart() in Thread.xs
-    better support for externally created threads
-    Thread::Pool
-    spot-check globals like statcache and global GVs for thread-safety
+    support "use Thread;" under useithreads
+    add mechanism to:
+      - create new interpreter in a different thread
+      - exchange data between interpreters/threads
+      - share namespaces between interpreters/threads
+    work out consistent semantics for exit/die in threads
+    support for externally created threads?
+    Thread::Pool?
 
 Compiler
     auto-produce executable
@@ -16,13 +32,9 @@ Compiler
        from where newASSIGNOP steals the field)
 
 Namespace cleanup
-    CPP-space:   restrict what we export from headers
-    header-space: move into CORE/perl/
-    API-space:    begin list of things that constitute public api
-
-MULTIPLICITY support
-    complete work on safe recursive interpreters, C<Perl->new()>
-    revisit extra implicit arg that provides curthread/curinterp context
+    CPP-space:   restrict what we export from headers when !PERL_CORE
+    header-space: move into CORE/perl/?
+    API-space:    complete the list of things that constitute public api
 
 Configure
     make configuring+building away from source directory work (VPATH et al)
@@ -31,9 +43,12 @@ Configure
     POSIX 1003.1 1996 Edition support
 
 Locales
+    deprecate traditional/legacy locales?
+    figure out how to support Unicode locales
     locales across packages?
 
 Regexen
+   make RE engine thread-safe
    POSIX [=bar=] and [.zap.] would nice too but there's no API for them
    (=bar= could be done with Unicode, though)
    approximate matching
@@ -42,22 +57,16 @@ Reliable Signals
     custom opcodes
     alternate runops() for signal despatch
     figure out how to die() in delayed sighandler
-    add tests for Thread::Signal
+    make Thread::Signal work under useithreads
 
 Win32 stuff
-    get PERL_OBJECT building under gcc
-    get PERL_OBJECT building on non-win32
-    automate generation of 'protected' prototypes for CPerlObj 
-    rename new headers to be consistent with the rest
-    sort out the spawnvp() mess
+    sort out the spawnvp() mess for system('a','b','c') compatibility
     work out DLL versioning
-    style-check
 
 Miscellaneous
-    rename and alter ISA.pm
     magic_setisa should be made to update %FIELDS [???]
     add new modules (Archive::Tar, Compress::Zlib, CPAN::FTP?)
-    fix pod2html to generate relative URLs (replace with new PodtoHtml?)
+    replace pod2html with new PodtoHtml? (requires other modules from CPAN)
     automate testing with large parts of CPAN
 
 Ongoing
diff --git a/XSUB.h b/XSUB.h
index 53ff98d..cfcad5d 100644 (file)
--- a/XSUB.h
+++ b/XSUB.h
@@ -1,9 +1,53 @@
 #ifndef _INC_PERL_XSUB_H
 #define _INC_PERL_XSUB_H 1
 
+/* first, some documentation for xsubpp-generated items */
+
+/*
+=for apidoc Amn|char*|CLASS
+Variable which is setup by C<xsubpp> to indicate the 
+class name for a C++ XS constructor.  This is always a C<char*>.  See C<THIS>.
+
+=for apidoc Amn|(whatever)|RETVAL
+Variable which is setup by C<xsubpp> to hold the return value for an 
+XSUB. This is always the proper type for the XSUB. See 
+L<perlxs/"The RETVAL Variable">.
+
+=for apidoc Amn|(whatever)|THIS
+Variable which is setup by C<xsubpp> to designate the object in a C++ 
+XSUB.  This is always the proper type for the C++ object.  See C<CLASS> and 
+L<perlxs/"Using XS With C++">.
+
+=for apidoc Amn|I32|items
+Variable which is setup by C<xsubpp> to indicate the number of 
+items on the stack.  See L<perlxs/"Variable-length Parameter Lists">.
+
+=for apidoc Amn|I32|ix
+Variable which is setup by C<xsubpp> to indicate which of an 
+XSUB's aliases was used to invoke it.  See L<perlxs/"The ALIAS: Keyword">.
+
+=for apidoc Am|SV*|ST|int ix
+Used to access elements on the XSUB's stack.
+
+=for apidoc AmU||XS
+Macro to declare an XSUB and its C parameter list.  This is handled by
+C<xsubpp>.
+
+=for apidoc Ams||dXSARGS
+Sets up stack and mark pointers for an XSUB, calling dSP and dMARK.  This
+is usually handled automatically by C<xsubpp>.  Declares the C<items>
+variable to indicate the number of items on the stack.
+
+=for apidoc Ams||dXSI32
+Sets up the C<ix> variable for an XSUB which has aliases.  This is usually
+handled automatically by C<xsubpp>.
+
+=cut
+*/
+
 #define ST(off) PL_stack_base[ax + (off)]
 
-#if defined(CYGWIN) && defined(USE_DYNAMIC_LOADING)
+#if defined(__CYGWIN__) && defined(USE_DYNAMIC_LOADING)
 #  define XS(name) __declspec(dllexport) void name(pTHXo_ CV* cv)
 #else
 #  define XS(name) void name(pTHXo_ CV* cv)
 #define XSINTERFACE_FUNC_SET(cv,f)     \
                CvXSUBANY(cv).any_dptr = (void (*) (pTHXo_ void*))(f)
 
-#define XSRETURN(off)                                  \
-    STMT_START {                                       \
-       PL_stack_sp = PL_stack_base + ax + ((off) - 1); \
-       return;                                         \
-    } STMT_END
-
 /* Simple macros to put new mortal values onto the stack.   */
 /* Typically used to return values from XS functions.       */
+
+/*
+=for apidoc Am|void|XST_mIV|int pos|IV iv
+Place an integer into the specified position C<pos> on the stack.  The
+value is stored in a new mortal SV.
+
+=for apidoc Am|void|XST_mNV|int pos|NV nv
+Place a double into the specified position C<pos> on the stack.  The value
+is stored in a new mortal SV.
+
+=for apidoc Am|void|XST_mPV|int pos|char* str
+Place a copy of a string into the specified position C<pos> on the stack. 
+The value is stored in a new mortal SV.
+
+=for apidoc Am|void|XST_mNO|int pos
+Place C<&PL_sv_no> into the specified position C<pos> on the
+stack.
+
+=for apidoc Am|void|XST_mYES|int pos
+Place C<&PL_sv_yes> into the specified position C<pos> on the
+stack.
+
+=for apidoc Am|void|XST_mUNDEF|int pos
+Place C<&PL_sv_undef> into the specified position C<pos> on the
+stack.
+
+=for apidoc Am|void|XSRETURN|int nitems
+Return from XSUB, indicating number of items on the stack.  This is usually
+handled by C<xsubpp>.
+
+=for apidoc Am|void|XSRETURN_IV|IV iv
+Return an integer from an XSUB immediately.  Uses C<XST_mIV>.
+
+=for apidoc Am|void|XSRETURN_NV|NV nv
+Return an double from an XSUB immediately.  Uses C<XST_mNV>.
+
+=for apidoc Am|void|XSRETURN_PV|char* str
+Return a copy of a string from an XSUB immediately.  Uses C<XST_mPV>.
+
+=for apidoc Ams||XSRETURN_NO
+Return C<&PL_sv_no> from an XSUB immediately.  Uses C<XST_mNO>.
+
+=for apidoc Ams||XSRETURN_YES
+Return C<&PL_sv_yes> from an XSUB immediately.  Uses C<XST_mYES>.
+
+=for apidoc Ams||XSRETURN_UNDEF
+Return C<&PL_sv_undef> from an XSUB immediately.  Uses C<XST_mUNDEF>.
+
+=for apidoc Ams||XSRETURN_EMPTY
+Return an empty list from an XSUB immediately.
+
+=for apidoc AmU||newXSproto
+Used by C<xsubpp> to hook up XSUBs as Perl subs.  Adds Perl prototypes to
+the subs.
+
+=for apidoc AmU||XS_VERSION
+The version identifier for an XS module.  This is usually
+handled automatically by C<ExtUtils::MakeMaker>.  See C<XS_VERSION_BOOTCHECK>.
+
+=for apidoc Ams||XS_VERSION_BOOTCHECK
+Macro to verify that a PM module's $VERSION variable matches the XS
+module's C<XS_VERSION> variable.  This is usually handled automatically by
+C<xsubpp>.  See L<perlxs/"The VERSIONCHECK: Keyword">.
+
+=cut
+*/
+
 #define XST_mIV(i,v)  (ST(i) = sv_2mortal(newSViv(v))  )
 #define XST_mNV(i,v)  (ST(i) = sv_2mortal(newSVnv(v))  )
 #define XST_mPV(i,v)  (ST(i) = sv_2mortal(newSVpv(v,0)))
 #define XST_mNO(i)    (ST(i) = &PL_sv_no   )
 #define XST_mYES(i)   (ST(i) = &PL_sv_yes  )
 #define XST_mUNDEF(i) (ST(i) = &PL_sv_undef)
+
+#define XSRETURN(off)                                  \
+    STMT_START {                                       \
+       PL_stack_sp = PL_stack_base + ax + ((off) - 1); \
+       return;                                         \
+    } STMT_END
+
 #define XSRETURN_IV(v) STMT_START { XST_mIV(0,v);  XSRETURN(1); } STMT_END
 #define XSRETURN_NV(v) STMT_START { XST_mNV(0,v);  XSRETURN(1); } STMT_END
 #define XSRETURN_PV(v) STMT_START { XST_mPV(0,v);  XSRETURN(1); } STMT_END
-#define XSRETURN_PVN(v) STMT_START { XST_mPVN(0,v,n);  XSRETURN(1); } STMT_END
+#define XSRETURN_PVN(v,n) STMT_START { XST_mPVN(0,v,n);  XSRETURN(1); } STMT_END
 #define XSRETURN_NO    STMT_START { XST_mNO(0);    XSRETURN(1); } STMT_END
 #define XSRETURN_YES   STMT_START { XST_mYES(0);   XSRETURN(1); } STMT_END
 #define XSRETURN_UNDEF STMT_START { XST_mUNDEF(0); XSRETURN(1); } STMT_END
                                    vn = "VERSION"), FALSE);            \
        }                                                               \
        if (tmpsv && (!SvOK(tmpsv) || strNE(XS_VERSION, SvPV(tmpsv, n_a))))     \
-           Perl_croak(aTHX_ "%s object version %s does not match %s%s%s%s %_", \
+           Perl_croak(aTHX_ "%s object version %s does not match %s%s%s%s %"SVf,\
                  module, XS_VERSION,                                   \
                  vn ? "$" : "", vn ? module : "", vn ? "::" : "",      \
                  vn ? vn : "bootstrap parameter", tmpsv);              \
 #  define VTBL_amagicelem      &PL_vtbl_amagicelem
 #endif
 
-#if defined(PERL_OBJECT) || defined(PERL_CAPI)
-#  include "perlapi.h"
-#  include "objXSUB.h"
-#endif /* PERL_OBJECT || PERL_CAPI */
+#include "perlapi.h"
+#include "objXSUB.h"
 
 #if defined(PERL_IMPLICIT_CONTEXT) && !defined(PERL_NO_GET_CONTEXT) && !defined(PERL_CORE)
 #  undef aTHX
diff --git a/av.c b/av.c
index af8296a..29afaff 100644 (file)
--- a/av.c
+++ b/av.c
@@ -1,6 +1,6 @@
 /*    av.c
  *
- *    Copyright (c) 1991-1999, Larry Wall
+ *    Copyright (c) 1991-2000, Larry Wall
  *
  *    You may distribute under the terms of either the GNU General Public
  *    License or the Artistic License, as specified in the README file.
@@ -46,6 +46,15 @@ Perl_av_reify(pTHX_ AV *av)
     AvREAL_on(av);
 }
 
+/*
+=for apidoc av_extend
+
+Pre-extend an array.  The C<key> is the index to which the array should be
+extended.
+
+=cut
+*/
+
 void
 Perl_av_extend(pTHX_ AV *av, I32 key)
 {
@@ -151,6 +160,19 @@ Perl_av_extend(pTHX_ AV *av, I32 key)
     }
 }
 
+/*
+=for apidoc av_fetch
+
+Returns the SV at the specified index in the array.  The C<key> is the
+index.  If C<lval> is set then the fetch will be part of a store.  Check
+that the return value is non-null before dereferencing it to a C<SV*>.
+
+See L<perlguts/"Understanding the Magic of Tied Hashes and Arrays"> for
+more information on how to use this function on tied arrays. 
+
+=cut
+*/
+
 SV**
 Perl_av_fetch(pTHX_ register AV *av, I32 key, I32 lval)
 {
@@ -198,6 +220,23 @@ Perl_av_fetch(pTHX_ register AV *av, I32 key, I32 lval)
     return &AvARRAY(av)[key];
 }
 
+/*
+=for apidoc av_store
+
+Stores an SV in an array.  The array index is specified as C<key>.  The
+return value will be NULL if the operation failed or if the value did not
+need to be actually stored within the array (as in the case of tied
+arrays). Otherwise it can be dereferenced to get the original C<SV*>.  Note
+that the caller is responsible for suitably incrementing the reference
+count of C<val> before the call, and decrementing it if the function
+returned NULL.
+
+See L<perlguts/"Understanding the Magic of Tied Hashes and Arrays"> for
+more information on how to use this function on tied arrays.
+
+=cut
+*/
+
 SV**
 Perl_av_store(pTHX_ register AV *av, I32 key, SV *val)
 {
@@ -257,6 +296,14 @@ Perl_av_store(pTHX_ register AV *av, I32 key, SV *val)
     return &ary[key];
 }
 
+/*
+=for apidoc newAV
+
+Creates a new AV.  The reference count is set to 1.
+
+=cut
+*/
+
 AV *
 Perl_newAV(pTHX)
 {
@@ -271,6 +318,16 @@ Perl_newAV(pTHX)
     return av;
 }
 
+/*
+=for apidoc av_make
+
+Creates a new AV and populates it with a list of SVs.  The SVs are copied
+into the array, so they may be freed after the call to av_make.  The new AV
+will have a reference count of 1.
+
+=cut
+*/
+
 AV *
 Perl_av_make(pTHX_ register I32 size, register SV **strp)
 {
@@ -320,6 +377,15 @@ Perl_av_fake(pTHX_ register I32 size, register SV **strp)
     return av;
 }
 
+/*
+=for apidoc av_clear
+
+Clears an array, making it empty.  Does not free the memory used by the
+array itself.
+
+=cut
+*/
+
 void
 Perl_av_clear(pTHX_ register AV *av)
 {
@@ -361,6 +427,14 @@ Perl_av_clear(pTHX_ register AV *av)
 
 }
 
+/*
+=for apidoc av_undef
+
+Undefines the array.  Frees the memory used by the array itself.
+
+=cut
+*/
+
 void
 Perl_av_undef(pTHX_ register AV *av)
 {
@@ -389,6 +463,15 @@ Perl_av_undef(pTHX_ register AV *av)
     }
 }
 
+/*
+=for apidoc av_push
+
+Pushes an SV onto the end of the array.  The array will grow automatically
+to accommodate the addition.
+
+=cut
+*/
+
 void
 Perl_av_push(pTHX_ register AV *av, SV *val)
 {             
@@ -415,6 +498,15 @@ Perl_av_push(pTHX_ register AV *av, SV *val)
     av_store(av,AvFILLp(av)+1,val);
 }
 
+/*
+=for apidoc av_pop
+
+Pops an SV off the end of the array.  Returns C<&PL_sv_undef> if the array
+is empty.
+
+=cut
+*/
+
 SV *
 Perl_av_pop(pTHX_ register AV *av)
 {
@@ -448,6 +540,16 @@ Perl_av_pop(pTHX_ register AV *av)
     return retval;
 }
 
+/*
+=for apidoc av_unshift
+
+Unshift the given number of C<undef> values onto the beginning of the
+array.  The array will grow automatically to accommodate the addition.  You
+must then use C<av_store> to assign values to these new elements.
+
+=cut
+*/
+
 void
 Perl_av_unshift(pTHX_ register AV *av, register I32 num)
 {
@@ -501,6 +603,14 @@ Perl_av_unshift(pTHX_ register AV *av, register I32 num)
     }
 }
 
+/*
+=for apidoc av_shift
+
+Shifts an SV off the beginning of the array.
+
+=cut
+*/
+
 SV *
 Perl_av_shift(pTHX_ register AV *av)
 {
@@ -538,6 +648,15 @@ Perl_av_shift(pTHX_ register AV *av)
     return retval;
 }
 
+/*
+=for apidoc av_len
+
+Returns the highest index in the array.  Returns -1 if the array is
+empty.
+
+=cut
+*/
+
 I32
 Perl_av_len(pTHX_ register AV *av)
 {
diff --git a/av.h b/av.h
index 14e8765..6b66bfd 100644 (file)
--- a/av.h
+++ b/av.h
@@ -1,6 +1,6 @@
 /*    av.h
  *
- *    Copyright (c) 1991-1999, Larry Wall
+ *    Copyright (c) 1991-2000, Larry Wall
  *
  *    You may distribute under the terms of either the GNU General Public
  *    License or the Artistic License, as specified in the README file.
@@ -45,6 +45,16 @@ struct xpvav {
 /* XXX this is not used anywhere */
 #define AVf_REUSED 4   /* got undeffed--don't turn old memory into SVs now */
 
+/*
+=for apidoc AmU||Nullav
+Null AV pointer.
+
+=for apidoc Am|int|AvFILL|AV* av
+Same as C<av_len()>.  Deprecated, use C<av_len()> instead.
+
+=cut
+*/
+
 #define Nullav Null(AV*)
 
 #define AvARRAY(av)    ((SV**)((XPVAV*)  SvANY(av))->xav_array)
index 54e19d5..ec6dc35 100755 (executable)
--- a/cflags.SH
+++ b/cflags.SH
@@ -105,6 +105,7 @@ for file do
     miniperlmain) ;;
     op) ;;
     perl) ;;
+    perlapi) ;;
     perlmain) ;;
     perly) ;;
     pp) ;;
index 712b38e..8dfb5db 100644 (file)
@@ -1226,9 +1226,14 @@ sed <<!GROK!THIS! >config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un-
  *     available directly to the user. Note that it may well be different from
  *     the preprocessor used to compile the C program.
  */
+/* CPPLAST:
+ *     This symbol is intended to be used along with CPPRUN in the same manner
+ *     symbol CPPMINUS is used with CPPSTDIN. It contains either "-" or "".
+ */
 #define CPPSTDIN "$cppstdin"
 #define CPPMINUS "$cppminus"
 #define CPPRUN "$cpprun"
+#define CPPLAST "$cpplast"
 
 /* HAS_ACCESS:
  *     This manifest constant lets the C program know that the access()
@@ -1420,9 +1425,14 @@ sed <<!GROK!THIS! >config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un-
  *     so that it is safe even if used by a process with super-user
  *     privileges.
  */
+/* HAS_PHOSTNAME:
+ *     This symbol, if defined, indicates that the C program may use the
+ *     contents of PHOSTNAME as a command to feed to the popen() routine
+ *     to derive the host name.
+ */
 #$d_gethname HAS_GETHOSTNAME   /**/
 #$d_uname HAS_UNAME            /**/
-#$d_phostname HAS_PHOSTNAME
+#$d_phostname HAS_PHOSTNAME    /**/
 #ifdef HAS_PHOSTNAME
 #define PHOSTNAME "$aphostname"        /* How to get the host name */
 #endif
@@ -1547,6 +1557,9 @@ sed <<!GROK!THIS! >config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un-
  *     the GNU C library is being used.
  */
 #$d_gnulibc HAS_GNULIBC        /**/
+#if defined(HAS_GNULIBC) && !defined(_GNU_SOURCE)
+#   define _GNU_SOURCE
+#endif
 /* HAS_HASMNTOPT:
  *     This symbol, if defined, indicates that the hasmntopt routine is
  *     available to query the mount options of file systems.
@@ -1578,6 +1591,12 @@ sed <<!GROK!THIS! >config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un-
 #$d_htonl HAS_NTOHL            /**/
 #$d_htonl HAS_NTOHS            /**/
 
+/* HAS_ICONV:
+ *     This symbol, if defined, indicates that the iconv routine is
+ *     available to do character set conversions.
+ */
+#$d_iconv HAS_ICONV            /**/
+
 /* HAS_ISASCII:
  *     This manifest constant lets the C program know that isascii 
  *     is available.
@@ -2165,6 +2184,12 @@ sed <<!GROK!THIS! >config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un-
 #$i_grp I_GRP          /**/
 #$d_grpasswd GRPASSWD  /**/
 
+/* I_ICONV:
+ *     This symbol, if defined, indicates that <iconv.h> exists and
+ *     should be included.
+ */
+#$i_iconv      I_ICONV         /**/
+
 /* I_INTTYPES:
  *     This symbol, if defined, indicates to the C program that it should
  *     include <inttypes.h>.
@@ -2323,7 +2348,7 @@ sed <<!GROK!THIS! >config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un-
  *     for a C initialization string.  See the inc_version_list entry
  *     in Porting/Glossary for more details.
  */
-#define PERL_INC_VERSION_LIST $inc_version_list                /**/
+#define PERL_INC_VERSION_LIST $inc_version_list_init           /**/
 
 /* HAS_OFF64_T:
  *     This symbol will be defined if the C compiler supports off64_t.
@@ -2494,6 +2519,10 @@ sed <<!GROK!THIS! >config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un-
 /* U64SIZE:
  *     This symbol contains the sizeof(U64).
  */
+/* NV_PRESERVES_UV:
+ *     This symbol, if defined, indicates that a variable of type NVTYPE
+ *     can preserve all the bit of a variable of type UVSIZE.
+ */
 #define        IVTYPE          $ivtype         /**/
 #define        UVTYPE          $uvtype         /**/
 #define        I8TYPE          $i8type         /**/
@@ -2519,6 +2548,7 @@ sed <<!GROK!THIS! >config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un-
 #define        I64SIZE         $i64size        /**/
 #define        U64SIZE         $u64size        /**/
 #endif
+#$d_nv_preserves_uv    NV_PRESERVES_UV
 
 /* IVdf:
  *     This symbol defines the format string used for printing a Perl IV
@@ -2765,6 +2795,10 @@ sed <<!GROK!THIS! >config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un-
 #$uselonglong  USE_LONG_LONG           /**/
 #endif
 
+/* USE_MORE_BITS:
+ *     This symbol, if defined, indicates that 64-bit interfaces and
+ *     long doubles should be used when available.
+ */
 #ifndef USE_MORE_BITS
 #$usemorebits  USE_MORE_BITS           /**/
 #endif
@@ -2773,7 +2807,7 @@ sed <<!GROK!THIS! >config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un-
  *     This symbol, if defined, indicates that Perl should
  *     be built to use multiplicity.
  */
-#ifndef MULTIPLICTY
+#ifndef MULTIPLICITY
 #$usemultiplicity      MULTIPLICITY            /**/
 #endif
 
index 3c121e0..27253b3 100644 (file)
@@ -1876,11 +1876,13 @@ $ echo ""
 $ echo "It's time to specify which modules you want to build into
 $ echo "perl. Most of these are standard and should be chosen, though
 $ echo "you might, for example, want to build GDBM_File instead of
-$ echo "SDBM_File if you have the GDBM library built on your machine
+$ echo "SDBM_File if you have the GDBM library built on your machine.
+$ echo "Whatever you do, make sure the re module is first or things will
+$ echo "break badly"
 $ echo "
 $ echo "Which modules do you want to build into perl?"
 $! dflt = "Fcntl Errno File::Glob IO Opcode Byteloader Devel::Peek Devel::DProf Data::Dumper attrs re VMS::Stdio VMS::DCLsym B SDBM_File"
-$ dflt = "Fcntl Errno File::Glob IO Opcode Devel::Peek Devel::DProf Data::Dumper attrs re VMS::Stdio VMS::DCLsym B SDBM_File"
+$ dflt = "re Fcntl Errno File::Glob IO Opcode Devel::Peek Devel::DProf Data::Dumper attrs VMS::Stdio VMS::DCLsym B SDBM_File"
 $ if Using_Dec_C.eqs."Yes"
 $ THEN
 $   dflt = dflt + " POSIX"
diff --git a/cop.h b/cop.h
index ede2fce..734d2ea 100644 (file)
--- a/cop.h
+++ b/cop.h
@@ -1,6 +1,6 @@
 /*    cop.h
  *
- *    Copyright (c) 1991-1999, Larry Wall
+ *    Copyright (c) 1991-2000, Larry Wall
  *
  *    You may distribute under the terms of either the GNU General Public
  *    License or the Artistic License, as specified in the README file.
@@ -373,6 +373,36 @@ struct context {
 #define CXINC (cxstack_ix < cxstack_max ? ++cxstack_ix : (cxstack_ix = cxinc()))
 
 /* "gimme" values */
+
+/*
+=for apidoc AmU||G_SCALAR
+Used to indicate scalar context.  See C<GIMME_V>, C<GIMME>, and
+L<perlcall>.
+
+=for apidoc AmU||G_ARRAY
+Used to indicate array context.  See C<GIMME_V>, C<GIMME> and
+L<perlcall>.
+
+=for apidoc AmU||G_VOID
+Used to indicate void context.  See C<GIMME_V> and L<perlcall>.
+
+=for apidoc AmU||G_DISCARD
+Indicates that arguments returned from a callback should be discarded.  See
+L<perlcall>.
+
+=for apidoc AmU||G_EVAL
+
+Used to force a Perl C<eval> wrapper around a callback.  See
+L<perlcall>.
+
+=for apidoc AmU||G_NOARGS
+
+Indicates that no arguments are being sent to a callback.  See
+L<perlcall>.
+
+=cut
+*/
+
 #define G_SCALAR       0
 #define G_ARRAY                1
 #define G_VOID         128     /* skip this bit when adding flags below */
diff --git a/cv.h b/cv.h
index 06cbb89..adb424e 100644 (file)
--- a/cv.h
+++ b/cv.h
@@ -1,6 +1,6 @@
 /*    cv.h
  *
- *    Copyright (c) 1991-1999, Larry Wall
+ *    Copyright (c) 1991-2000, Larry Wall
  *
  *    You may distribute under the terms of either the GNU General Public
  *    License or the Artistic License, as specified in the README file.
@@ -36,6 +36,16 @@ struct xpvcv {
     cv_flags_t xcv_flags;
 };
 
+/*
+=for apidoc AmU||Nullcv
+Null CV pointer.
+
+=for apidoc Am|HV*|CvSTASH|CV* cv
+Returns the stash of the CV.
+
+=cut
+*/
+
 #define Nullcv Null(CV*)
 
 #define CvSTASH(sv)    ((XPVCV*)SvANY(sv))->xcv_stash
index d466bde..8d77778 100644 (file)
@@ -33,12 +33,9 @@ ld2: $& Makefile perlld ${src}/cygwin/ld2.in
 # install is included in Cygwin distributions, and we make a note of th
 # requirement in the README.cygwin file. However, let's give them
 # a warning.
-       @if test -n "`type $1 2>&1 | sed -n -e '/'$1'$/p'`" ; then \
-               install -c -m 755 ld2 ${installbin}/ld2 ; \
-       else \
+       @install -c -m 755 ld2 ${installbin}/ld2
+       @if test ! -f  ${installbin}/ld2; then \
                echo "*************************************************" ; \
-               echo "Oh, no! You didn't read the README.cygwin" ; \
-               echo "file, which stated that \"install\" was required." ; \
                echo "Make will probably fail in a few more steps." ; \
                echo "When it does, copy \"ld2\" to a directory in" ; \
                echo "your path, other than \".\"." ; \
diff --git a/deb.c b/deb.c
index 36b8ca3..0928c01 100644 (file)
--- a/deb.c
+++ b/deb.c
@@ -1,6 +1,6 @@
 /*    deb.c
  *
- *    Copyright (c) 1991-1999, Larry Wall
+ *    Copyright (c) 1991-2000, Larry Wall
  *
  *    You may distribute under the terms of either the GNU General Public
  *    License or the Artistic License, as specified in the README file.
diff --git a/doio.c b/doio.c
index d2385f0..cb5f3e2 100644 (file)
--- a/doio.c
+++ b/doio.c
@@ -1,6 +1,6 @@
 /*    doio.c
  *
- *    Copyright (c) 1991-1999, Larry Wall
+ *    Copyright (c) 1991-2000, Larry Wall
  *
  *    You may distribute under the terms of either the GNU General Public
  *    License or the Artistic License, as specified in the README file.
@@ -217,7 +217,7 @@ Perl_do_open9(pTHX_ GV *gv, register char *name, I32 len, int as_raw,
        if (*type == '|') {
            if (num_svs && (tlen != 2 || type[1] != '-')) {
              unknown_desr:
-               Perl_croak(aTHX_ "Unknown open() mode '%.*s'", olen, oname);
+               Perl_croak(aTHX_ "Unknown open() mode '%.*s'", (int)olen, oname);
            }
            /*SUPPRESS 530*/
            for (type++, tlen--; isSPACE(*type); type++, tlen--) ;
@@ -573,7 +573,7 @@ Perl_nextargv(pTHX_ register GV *gv)
                    }
 #endif
 #ifdef HAS_RENAME
-#if !defined(DOSISH) && !defined(CYGWIN)
+#if !defined(DOSISH) && !defined(__CYGWIN__)
                    if (PerlLIO_rename(PL_oldname,SvPVX(sv)) < 0) {
                        if (ckWARN_d(WARN_INPLACE))     
                            Perl_warner(aTHX_ WARN_INPLACE, 
@@ -1257,7 +1257,7 @@ Perl_do_exec3(pTHX_ char *cmd, int fd, int do_report)
     if (strnEQ(cmd,"exec",4) && isSPACE(cmd[4]))
        goto doshell;
 
-    for (s = cmd; *s && isALPHA(*s); s++) ;    /* catch VAR=val gizmo */
+    for (s = cmd; *s && isALNUM(*s); s++) ;    /* catch VAR=val gizmo */
     if (*s == '=')
        goto doshell;
 
diff --git a/doop.c b/doop.c
index 990898d..a0fa729 100644 (file)
--- a/doop.c
+++ b/doop.c
@@ -1,6 +1,6 @@
 /*    doop.c
  *
- *    Copyright (c) 1991-1999, Larry Wall
+ *    Copyright (c) 1991-2000, Larry Wall
  *
  *    You may distribute under the terms of either the GNU General Public
  *    License or the Artistic License, as specified in the README file.
@@ -933,7 +933,7 @@ Perl_do_chop(pTHX_ register SV *astr, register SV *sv)
     s = SvPV(sv, len);
     if (len && !SvPOK(sv))
        s = SvPV_force(sv, len);
-    if (IN_UTF8) {
+    if (DO_UTF8(sv)) {
        if (s && len) {
            char *send = s + len;
            char *start = s;
@@ -946,12 +946,12 @@ Perl_do_chop(pTHX_ register SV *astr, register SV *sv)
            *s = '\0';
            SvCUR_set(sv, s - start);
            SvNIOK_off(sv);
+           SvUTF8_on(astr);
        }
        else
            sv_setpvn(astr, "", 0);
     }
-    else
-    if (s && len) {
+    else if (s && len) {
        s += --len;
        sv_setpvn(astr, s, 1);
        *s = '\0';
@@ -961,7 +961,7 @@ Perl_do_chop(pTHX_ register SV *astr, register SV *sv)
     else
        sv_setpvn(astr, "", 0);
     SvSETMAGIC(sv);
-} 
+}
 
 I32
 Perl_do_chomp(pTHX_ register SV *sv)
diff --git a/dump.c b/dump.c
index ee64af5..569dc8c 100644 (file)
--- a/dump.c
+++ b/dump.c
@@ -1,6 +1,6 @@
 /*    dump.c
  *
- *    Copyright (c) 1991-1999, Larry Wall
+ *    Copyright (c) 1991-2000, Larry Wall
  *
  *    You may distribute under the terms of either the GNU General Public
  *    License or the Artistic License, as specified in the README file.
@@ -78,9 +78,9 @@ Perl_dump_sub(pTHX_ GV *gv)
     gv_fullname3(sv, gv, Nullch);
     Perl_dump_indent(aTHX_ 0, Perl_debug_log, "\nSUB %s = ", SvPVX(sv));
     if (CvXSUB(GvCV(gv)))
-       Perl_dump_indent(aTHX_ 0, Perl_debug_log, "(xsub 0x%x %d)\n",
+       Perl_dump_indent(aTHX_ 0, Perl_debug_log, "(xsub 0x%lx %d)\n",
            (long)CvXSUB(GvCV(gv)),
-           CvXSUBANY(GvCV(gv)).any_i32);
+           (int)CvXSUBANY(GvCV(gv)).any_i32);
     else if (CvROOT(GvCV(gv)))
        op_dump(CvROOT(GvCV(gv)));
     else
@@ -131,9 +131,9 @@ Perl_pv_display(pTHX_ SV *sv, char *pv, STRLEN cur, STRLEN len, STRLEN pvlim)
         }
        else {
            if (cur && isDIGIT(*(pv+1)))
-               Perl_sv_catpvf(aTHX_ sv, "\\%03o", *pv);
+               Perl_sv_catpvf(aTHX_ sv, "\\%03o", (U8)*pv);
            else
-               Perl_sv_catpvf(aTHX_ sv, "\\%o", *pv);
+               Perl_sv_catpvf(aTHX_ sv, "\\%o", (U8)*pv);
         }
     }
     sv_catpvn(sv, "\"", 1);
@@ -392,7 +392,7 @@ Perl_do_op_dump(pTHX_ I32 level, PerlIO *file, OP *o)
        if (o->op_type == OP_NULL)
            Perl_dump_indent(aTHX_ level, file, "  (was %s)\n", PL_op_name[o->op_targ]);
        else
-           Perl_dump_indent(aTHX_ level, file, "TARG = %d\n", o->op_targ);
+           Perl_dump_indent(aTHX_ level, file, "TARG = %ld\n", (long)o->op_targ);
     }
 #ifdef DUMPADDR
     Perl_dump_indent(aTHX_ level, file, "ADDR = 0x%"UVxf" => 0x%"UVxf"\n", (UV)o, (UV)o->op_next);
@@ -701,7 +701,7 @@ Perl_do_magic_dump(pTHX_ I32 level, PerlIO *file, MAGIC *mg, I32 nest, I32 maxne
                do_sv_dump(level+2, file, mg->mg_obj, nest+1, maxnest, dumpops, pvlim); /* MG is already +1 */
        }
         if (mg->mg_len)
-           Perl_dump_indent(aTHX_ level, file, "    MG_LEN = %d\n", mg->mg_len);
+           Perl_dump_indent(aTHX_ level, file, "    MG_LEN = %ld\n", (long)mg->mg_len);
         if (mg->mg_ptr) {
            Perl_dump_indent(aTHX_ level, file, "    MG_PTR = 0x%"UVxf, PTR2UV(mg->mg_ptr));
            if (mg->mg_len >= 0) {
@@ -782,8 +782,8 @@ Perl_do_sv_dump(pTHX_ I32 level, PerlIO *file, SV *sv, I32 nest, I32 maxnest, bo
     Perl_sv_setpvf(aTHX_ d,
                   "(0x%"UVxf") at 0x%"UVxf"\n%*s  REFCNT = %"IVdf"\n%*s  FLAGS = (",
                   PTR2UV(SvANY(sv)), PTR2UV(sv),
-                  PL_dumpindent*level, "", (IV)SvREFCNT(sv),
-                  PL_dumpindent*level, "");
+                  (int)(PL_dumpindent*level), "", (IV)SvREFCNT(sv),
+                  (int)(PL_dumpindent*level), "");
 
     if (flags & SVs_PADBUSY)   sv_catpv(d, "PADBUSY,");
     if (flags & SVs_PADTMP)    sv_catpv(d, "PADTMP,");
@@ -846,6 +846,7 @@ Perl_do_sv_dump(pTHX_ I32 level, PerlIO *file, SV *sv, I32 nest, I32 maxnest, bo
     default:
        if (SvEVALED(sv))       sv_catpv(d, "EVALED,");
        if (SvIsUV(sv))         sv_catpv(d, "IsUV,");
+       if (SvUTF8(sv))         sv_catpv(d, "UTF8");
        break;
     case SVt_PVBM:
        if (SvTAIL(sv))         sv_catpv(d, "TAIL,");
@@ -1089,7 +1090,7 @@ Perl_do_sv_dump(pTHX_ I32 level, PerlIO *file, SV *sv, I32 nest, I32 maxnest, bo
        Perl_dump_indent(aTHX_ level, file, "  MUTEXP = 0x%"UVxf"\n", PTR2UV(CvMUTEXP(sv)));
        Perl_dump_indent(aTHX_ level, file, "  OWNER = 0x%"UVxf"\n",  PTR2UV(CvOWNER(sv)));
 #endif /* USE_THREADS */
-       Perl_dump_indent(aTHX_ level, file, "  FLAGS = 0x%"UVxf"\n", CvFLAGS(sv));
+       Perl_dump_indent(aTHX_ level, file, "  FLAGS = 0x%"UVxf"\n", (UV)CvFLAGS(sv));
        if (type == SVt_PVFM)
            Perl_dump_indent(aTHX_ level, file, "  LINES = %"IVdf"\n", (IV)FmLINES(sv));
        Perl_dump_indent(aTHX_ level, file, "  PADLIST = 0x%"UVxf"\n", PTR2UV(CvPADLIST(sv)));
@@ -1107,7 +1108,7 @@ Perl_do_sv_dump(pTHX_ I32 level, PerlIO *file, SV *sv, I32 nest, I32 maxnest, bo
                                /* %5d below is enough whitespace. */
                                file, 
                                "%5d. 0x%"UVxf" (%s\"%s\" %"IVdf"-%"IVdf")\n",
-                               ix, PTR2UV(ppad[ix]),
+                               (int)ix, PTR2UV(ppad[ix]),
                                SvFAKE(pname[ix]) ? "FAKE " : "",
                                SvPVX(pname[ix]),
                                (IV)SvNVX(pname[ix]),
index 4125b28..133ecc4 100644 (file)
@@ -108,12 +108,12 @@ or Internet Explorer 3.0 and higher</EM>
 <HR>
 <MENU>
   <LI> <A HREF="../cgi_docs.html">CGI.pm documentation</A>
-  <LI> <A HREF="../../CGI.pm.tar.gz">Download the CGI.pm distribution</A>
+  <LI> <A HREF="../CGI.pm.tar.gz">Download the CGI.pm distribution</A>
 </MENU>
 <HR>
 <ADDRESS>Lincoln D. Stein, lstein@genome.wi.mit.edu<br>
 <a href="/">Whitehead Institute/MIT Center for Genome Research</a></ADDRESS>
 <!-- hhmts start -->
-Last modified: Tue Nov 24 18:07:15 MET 1998
+Last modified: Wed Jun 23 15:31:47 EDT 1999
 <!-- hhmts end -->
 </BODY> </HTML>
diff --git a/embed.h b/embed.h
index 27685ff..61ffadf 100644 (file)
--- a/embed.h
+++ b/embed.h
 #define vivify_defelem         Perl_vivify_defelem
 #define vivify_ref             Perl_vivify_ref
 #define wait4pid               Perl_wait4pid
+#define report_closed_fh       Perl_report_closed_fh
 #define report_uninit          Perl_report_uninit
 #define warn                   Perl_warn
 #define vwarn                  Perl_vwarn
 #define too_many_arguments     S_too_many_arguments
 #define op_clear               S_op_clear
 #define null                   S_null
+#define pad_addlex             S_pad_addlex
 #define pad_findlex            S_pad_findlex
 #define newDEFSVOP             S_newDEFSVOP
 #define new_logop              S_new_logop
 #define vivify_defelem(a)      Perl_vivify_defelem(aTHX_ a)
 #define vivify_ref(a,b)                Perl_vivify_ref(aTHX_ a,b)
 #define wait4pid(a,b,c)                Perl_wait4pid(aTHX_ a,b,c)
+#define report_closed_fh(a,b,c,d)      Perl_report_closed_fh(aTHX_ a,b,c,d)
 #define report_uninit()                Perl_report_uninit(aTHX)
 #define vwarn(a,b)     &n