| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Subject: Re: dos-djgpp port not in perl 5.004_54
p4raw-id: //depot/perl@373
|
|
|
|
|
| |
Subject: Emacs/tags update for 5.004_54
p4raw-id: //depot/perl@287
|
|\
| |
| | |
p4raw-id: //depot/perl@137
|
| |\
| | |
| | | |
p4raw-id: //depot/maint-5.004/perl@128
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
[editor's note: this one imported like a charm!]
TESTS -
Subject: Improve pragma/locale test 102 - and don't fail, just warn
From: Jarkko Hietaniemi <jhi@anna.in-berlin.de>
Files: t/pragma/locale.t
Subject: Invalid test output in t/op/taint.t in trial 1
From: Dan Sugalski <sugalsd@lbcc.cc.or.us>
Files: t/op/taint.t
t/op/taint.t prints out invalid ok messages for tests it skips.
Rather than printing "ok 136" it prints "136 ok".
p5p-msgid: 3.0.3.32.19970919160918.00857a50@stargate.lbcc.cc.or.us
UTILITIES -
Subject: Perldoc tiny patch to avoid $0
From: Ilya Zakharevich <ilya@math.ohio-state.edu>
Files: utils/perldoc.PL
Msg-ID: 199709122141.RAA16846@monk.mps.ohio-state.edu
(applied based on p5p patch as commit 0b166b6635cf199f072db516b2a523ee659394d5)
Subject: h2ph broken in 5.004_02
From: David Mazieres <dm@reeducation-labor.lcs.mit.edu>
Files: utils/h2ph.PL
Msg-ID: 199708201700.KAA02621@www.chapin.edu
(applied based on p5p patch as commit 4a8e146e38ec2045f1f817a7cb578e1b1f80f39f)
Subject: add key_t caddr_t to h2ph
From: Tony Sanders <sanders@bsdi.com>
Files: eg/sysvipc/ipcsem utils/h2ph.PL
Msg-ID: 199708272301.RAA12803@austin.bsdi.com
(applied based on p5p patch as commit 0806a92ffc3a74ca70aa81051cdf2a306cd0a8af)
Subject: perldoc search ., lib and blib/* if -f 'Makefile.PL'
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Files: utils/perldoc.PL
Subject: perldoc finds wrong pod2man
(from perldoc source)
# We must look both in @INC for library modules and in PATH
# for executables, like h2xs or perldoc itself.
Unfortunately, searching PATH for installed perl executables like
pod2man is INCORRECT. perldoc should start by searching the
directory it was executed from, which might not be in the PATH
at all.
Credited: Joseph "Moof-in'" Hall <joseph@cscaper.com>
p5p-msgid: 199708251732.KAA19299@gadget.cscaper.com
Subject: 5.004m4t1: perlbug: NIS domainname gets into wrong places
From: Andreas J. Koenig <koenig@anna.mind.de>
Files: utils/perlbug.PL
Msg-ID: sfcg1qy38as.fsf@anna.in-berlin.de
(applied based on p5p patch as commit 41f926b844140b7f7eaa9302113e45df3a9f9ff4)
Subject: add better local patch info to perlbug
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Files: utils/perlbug.PL
Subject: perldoc - suggest modules if requested module not found
From: Anthony David <adavid@netinfo.com.au>
Files: utils/perldoc.PL
private-msgid: 3439CD83.6969@netinfo.com.au
Subject: perldoc mail::foo tries to read binary /usr/ucb/mail
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Files: utils/perldoc.PL
Subject: perldoc weirdness
perldoc mail::imap yields:
{joseph}:79% perldoc mail::foo
can't open /usr/ucb/mail: Permission denied at ./pod2man line 362.
Credited: Joseph "Moof-in'" Hall <joseph@cscaper.com>
p5p-msgid: 199710082014.NAA00808@gadget.cscaper.com
Subject: perldoc -f setpwent (for example) returns no descriptive text
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Files: utils/perldoc.PL
Subject: perldoc diffs: don't search auto - much faster
From: "Joseph N. Hall" <joseph@5sigma.com>
Files: utils/perldoc.PL
Msg-ID: MailDrop1.2d7dPPC.971012211957@screechy.cscaper.com
(applied based on p5p patch as commit 62b753c6ae4ab9bf22fbb6ec7ceac820bcef8fe4)
|
|\ \ \
| |/ /
| | |
| | |
| | | |
MANIFEST is out of sync.
p4raw-id: //depot/perl@114
|
| |\ \
| | |/
| | | |
p4raw-id: //depot/maint-5.004/perl@82
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
[editor's note: the following patches could not be applied from the
list messages. There are also various unattributed changes.]
------ BUILD PROCESS ------
Title: "Configure can stop without fully explaining itself"
From: Jim Anderson <jander@ml.com>
Msg-ID: <199708111328.JAA28976@nsd15.ny-swaps-develop.ml.com>,
<199708111952.PAA29346@nsd15.ny-swaps-develop.ml.com>
Files: Configure
------ CORE LANGUAGE ------
Title: "GNU style perl --version (or any other --foo) ignored"
From: "M.J.T. Guy" <mjtg@cus.cam.ac.uk>, Kenneth Albanowski
<kjahds@kjahds.com>, Stephen McCamant <alias@mcs.com>
Msg-ID: <E0wx8MO-0007BS-00@ursa.cus.cam.ac.uk>,
<Pine.LNX.3.93.970813122557.9443C-100000@kjahds.com>,
<m0wy8nl-000EYgC@alias-2.pr.mcs.net>
Files: pod/perldiag.pod perl.c
------ DOCUMENTATION ------
Title: "perlop pod inconsistent in presentation of regexp options"
From: "M.J.T. Guy" <mjtg@cus.cam.ac.uk>, Hans Mulder <hansm@icgned.nl>,
jmr@whirlwind.fmr.com
Msg-ID: <199708061404.KAA06717@whirlwind.fmr.com>,
<199708081505.LAA09810@whirlwind.fmr.com>,
<1997Aug7.160530.2196011@hmivax.humgen.upenn.edu>,
<E0wwnqc-00057s-00@ursa.cus.cam.ac.uk>,
<E0wwswg-00017x-00@ursa.cus.cam.ac.uk>
Files: pod/perlop.pod
[ 2 messages had applied changes,
d1a7f0f436d72614358862f92db9613296be2744 and
b7e30b65e77616e7336a6cda54d9c3d5935d0cfc ]
------ PORTABILITY - WIN32 ------
Title: "[PATCH] Win95-proofing pl2bat"
From: Gurusamy Sarathy <gsar@engin.umich.edu>
Msg-ID: <199708121733.NAA14888@aatma.engin.umich.edu>
Files: win32/bin/*.bat
[ d444a43172237b6bdd9f0a52017be3b0d792aa5c didn't apply the deletion
patches, so the deletes in this commit are a carried error ]
------ PORTABILITY - OTHER ------
Title: "5.004_02 Configure - worrying but normal errors displayed to user"
From: Paul Marquess <pmarquess@bfsec.bt.co.uk>, pmarquess@bfsec.bt.co.uk
(Paul Marquess)
Msg-ID: <01BCA3DE.E257BFC0.pmarquess@bfsec.bt.co.uk>,
<9708102159.AA11726@claudius.bfsec.bt.co.uk>
Files: Configure os2/diff.configure
[ one patch found, see 61167c6fd6d55c5f975404dcb56c3d0a87cd2c21 ]
Title: "Minor glitch with Perl 5.004_01 on SunOS 4.1.3 (groupstype)"
From: thad@thadlabs.com (Thad Floryan)
Msg-ID: <9708111415.AA03808@thadlabs.com>
Files: hints/sunos_4_1.sh
|
| |/
| |
| | |
p4raw-id: //depot/maint-5.004/perl@81
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
[editor's note - this list of differences was built manually, so is
either a little inaccurate or the most well preened out of the
"unapplied changes" lists so far. It certainly didn't get the usual
injection of message bodies.
The aim of these changes is to give you a vector for finding a list
message if you have an annotate operation hit this commit]
------ BUILD PROCESS ------
Title: "[PATCH]: HP-UX 10 w/o transition links"
From: Jeff Okamoto <okamoto@hpcc123.corp.hp.com>
Msg-ID: <199706231650.AA070364627@hpcc123.corp.hp.com>
Files: Configure
Title: "INSTALL updates for GNU ld and __inet_* errors"
From: Andy Dougherty <doughera@newton.phys.lafayette.edu>
Files: INSTALL
------ CORE LANGUAGE ------
Title: "[PATCH] Additional patch for "Can't execute ...""
From: Ilya Zakharevich <ilya@math.ohio-state.edu>
Msg-ID: <199707191651.MAA04897@monk.mps.ohio-state.edu>
Files: pod/perldiag.pod perl.c
See 21fc060b433a5fd003b9aca5789342207c46ada4 and
2a92aaa05aa1acbf01092228d30e9b1d7b2a3f61
Title: "[PATCH] Re: Can't pack literals as pointers"
From: Gurusamy Sarathy <gsar@engin.umich.edu>
Msg-ID: <199708012250.SAA20278@aatma.engin.umich.edu>
Files: pod/perldiag.pod pod/perlfunc.pod pp.c t/op/pack.t
On Wed, 25 Jun 1997 00:23:18 GMT, John Tobey wrote:
>
>IMHO, pack("p","foo") should evaluate to a pointer that's valid
>in the current context. pack("p",undef) should return the NULL
>value. Currently, they both produce the error "Modification of a
>read-only value attempted".
>
>This looks pretty easy to fix, so I've prepared a diff against
>the 5.004_01 distribution. This tests fine on my Linux. I hope
>I'm not introducing a memory leak or other ailment...
That doesn't look quite right to me. When provided a literal, you
should point at the actual literal (which normally has a global
lifetime), rather than making a mortal copy of it and pointing at
that. The mortal copy will be destroyed at the next statement
boundary, and you'll be left with a dangling pointer when you
unpack().
You're doing the very thing the XXX comment above was intended to
highlight.
I do agree that literals should be pack('p')-able. So, I'd suggest
the change be modified [...]
Title: "One-liner regex causes SEGV on 5.003 under HP-UX and Linux"
From: Hugo van der Sanden <hv@crypt.compulink.co.uk>
Msg-ID: <199707061144.MAA04443@crypt.compulink.co.uk>
Files: regexec.c t/op/re_tests
[was originally credited as the same change as
44ed422101809141bc33c2b85c1cff357de4d7bf]
Title: "Free temps before calling END blocks", "Too late destruction"
From: Chip Salzenberg <chip@rio.atlantic.net>
Msg-ID: <m33erfv5hx.fsf@chany-p100.emwp.com>
Files: perl.c
Title: "Forbid "goto" into middle of foreach loop"
From: Chip Salzenberg <chip@rio.atlantic.net>
Files: pod/perldiag.pod pp_ctl.c
Title: "[PATCH] m2t2: problem in NetBSD 1.2D with sfio"
From: Jarkko Hietaniemi <jhi@iki.fi>
Files: perl.h
Title: "Forbid negative splice offset beyond array start"
From: "John L. Allen" <allen@gateway.grumman.com>, Chip Salzenberg
<chip@rio.atlantic.net>
Msg-ID: <Pine.SOL.3.91.970625111744.19300A-100000@gateway>
Files: pp.c
Title: "Fix memory leak on eval 'sub {}'"
From: Chip Salzenberg <chip@rio.atlantic.net>
Files: pp_ctl.c
Title: "Fix C<qq #hi#>"
From: Chip Salzenberg <chip@rio.atlantic.net>
Files: toke.c
Title: "Don't warn about "${foo}" in string, even if &foo exists"
From: Chip Salzenberg <chip@rio.atlantic.net>
Files: toke.c
Title: "Perldb internal flag rehaul"
From: Ilya Zakharevich <ilya@math.ohio-state.edu>
Files: pod/perldebug.pod pod/perlvar.pod perl.h gv.c mg.c op.c perl.c
pp_ctl.c pp_hot.c pp_sys.c sv.c toke.c
Title: "Fix C<print $foo x 2> parsing"
From: "Chuck D. Phillips (NON-HP Employee)" <cdp@hpescdp.fc.hp.com>, Chip
Salzenberg <chip@rio.atlantic.net>
Msg-ID: <199706121737.KAA00503@palrel3.hp.com>
Files: toke.c
Title: "Fix lockf_emulate_flock() positioning"
From: Chip Salzenberg <chip@rio.atlantic.net>, gen@atd.rdc.ricoh.co.jp
Msg-ID: <199706091132.UAA00895@wampa.atd.rdc.ricoh.co.jp>
Files: pp_sys.c
Title: "[PATCH] Make DEBUGGING_MSTATS info consistent"
From: Andy Dougherty <doughera@newton.phys.lafayette.edu>
Msg-ID: <Pine.SUN.3.96.970731131529.3740A-100000@newton.phys>
Files: INSTALL pod/perldelta.pod perl.h
Title: "semctl broken under Linux"
From: Andreas Schwab <schwab@LS5.informatik.uni-dortmund.de>, Andreas
Schwab <schwab@issan.informatik.uni-dortmund.de>, Graham
Barr <gbarr@ti.com>, Tim Bunce <Tim.Bunce@ig.co.uk>
Msg-ID: <33C38291.2D9302DA@ti.com>,
<9707040912.AA03470@issan.informatik.uni-dortmund.de>,
<9707041538.AA08946@toad.ig.co.uk>,
<9707070924.AA11774@issan.informatik.uni-dortmund.de>,
<9707090933.AA19012@issan.informatik.uni-dortmund.de>
Files: doio.c
[one change made it, as 8e591e46b4c6543ed80895327199c4a628ce11b6]
Title: "One-liner regex causes SEGV on 5.003 under HP-UX and Linux"
From: Hugo van der Sanden <hv@crypt.compulink.co.uk>
Msg-ID: <199707061144.MAA04443@crypt.compulink.co.uk>
Files: regexec.c t/op/re_tests
[was originally credited as the same change as
44ed422101809141bc33c2b85c1cff357de4d7bf]
Title: "Fix up problems with *DBM tests"
From: Paul Marquess <pmarquess@bfsec.bt.co.uk>
Files: t/lib/gdbm.t t/lib/ndbm.t t/lib/odbm.t t/lib/sdbm.t
Title: "Faster int to string conversion",
"[PATCH} Re: memory leak in buffer
safety code"
From: Chip Salzenberg <chip@rio.atlantic.net>, Hugo van der Sanden
<hv@crypt.compulink.co.uk>, Tim Bunce <Tim.Bunce@ig.co.uk>
Msg-ID: <199707140912.KAA09935@crypt.compulink.co.uk>,
<199707142050.QAA20976@rio.atlantic.net>,
<199707182035.VAA20990@crypt.compulink.co.uk>,
<9707151040.AA02883@toad.ig.co.uk>
Files: global.sym sv.c
Title: "Fix '-' flag on sprintf() of floats"
From: Chip Salzenberg <chip@rio.atlantic.net>, Jarkko Hietaniemi
<jhi@iki.fi>
Msg-ID: <199705270646.JAA02510@alpha.hut.fi>
Files: sv.c
Title: "Don't use atol() for unsigned values", "signedness problem in
pack("N", "value");"
From: Chip Salzenberg <chip@rio.atlantic.net>, Roger Espel Llima
<espel@llaic.univ-bpclermont.fr>
Msg-ID: <19970531200007.40218@llaic.univ-bpclermont.fr>
Files: sv.c
Title: "Perldb internal flag rehaul"
From: Ilya Zakharevich <ilya@math.ohio-state.edu>
Files: pod/perldebug.pod pod/perlvar.pod perl.h gv.c mg.c op.c perl.c
pp_ctl.c pp_hot.c pp_sys.c sv.c toke.c
Title: "[PATCH] Exporter new export_to_level method"
From: epeschko@elmer.tci.com (Ed Peschko)
Files: lib/Exporter.pm
Title: "[MM] Small patch to MakeMaker, new release"
From: "Andreas J. Koenig" <k@anna.in-berlin.de>
Msg-ID: <199706281603.SAA10869@anna.in-berlin.de>
Files: lib/ExtUtils/Command.pm lib/ExtUtils/Install.pm
lib/ExtUtils/Liblist.pm lib/ExtUtils/MM_Unix.pm
lib/ExtUtils/MakeMaker.pm lib/ExtUtils/Mksymlists.pm
Title: "CPAN.pm, $VERSION and nested (bundled) modules."
From: a.koenig@kulturbox.de (Andreas J. Koenig)
Files: lib/ExtUtils/Install.pm lib/ExtUtils/Liblist.pm
lib/ExtUtils/MM_Unix.pm lib/ExtUtils/MakeMaker.pm
lib/ExtUtils/Mksymlists.pm
Title: "Time::Local patch (plus perl.c and filehand.t)"
From: ilya@math.ohio-state.edu (Ilya Zakharevich)
Files: lib/Time/Local.pm perl.c t/lib/filehand.t
Title: "Slightly safer signals"
From: Ilya Zakharevich <ilya@math.ohio-state.edu>
Files: mg.c perl.c
Title: "Perldb internal flag rehaul"
From: Ilya Zakharevich <ilya@math.ohio-state.edu>
Files: pod/perldebug.pod pod/perlvar.pod perl.h gv.c mg.c op.c perl.c
pp_ctl.c pp_hot.c pp_sys.c sv.c toke.c
Title: "'use UNIVERSAL;' deprecated, do C<UNIVERSAL::isa()> instead",
"UNIVERSAL.pm and import methods"
From: "M.J.T. Guy" <mjtg@cus.cam.ac.uk>, Gisle Aas <aas@bergen.sn.no>,
Graham Barr <gbarr@ti.com>, Gurusamy Sarathy
<gsar@engin.umich.edu>, Hugo van der Sanden
<hv@crypt.compulink.co.uk>
Msg-ID: <199706271701.NAA25664@aatma.engin.umich.edu>,
<199706271904.UAA00120@crypt.compulink.co.uk>,
<199706272054.QAA28913@aatma.engin.umich.edu>,
<199706301554.LAA03763@aatma.engin.umich.edu>,
<33B22248.7D7C1985@ti.com>,
<E0wf5TN-0006ps-00@taurus.cus.cam.ac.uk>,
<E0wguTR-0005bs-00@ursa.cus.cam.ac.uk>,
<E0whaZJ-0007BA-00@ursa.cus.cam.ac.uk>,
<E0whfHh-0007bW-00@ursa.cus.cam.ac.uk>,
<E0wiyUG-00073j-00@taurus.cus.cam.ac.uk>,
<hiuyv6q9k.fsf@bergen.sn.no>
Files: lib/Class/Struct.pm lib/File/Compare.pm lib/File/Copy.pm
t/op/universal.t universal.c
[two changes made it, as
d704f39a0db2dc23790dfd9d7bd59ce9928a6e2c,
e09f3e01ccd721309f0eb0aae224d84db2e8436a]
------ PORTABILITY - WIN32 ------
Title: "[PATCH] Embedding threaded apps in perl.dll"
From: Gurusamy Sarathy <gsar@engin.umich.edu>
Msg-ID: <199707261518.LAA24346@aatma.engin.umich.edu>,
<199707301833.OAA19570@aatma.engin.umich.edu>
Files: win32/win32.c
[one change made it, as
4dd614da4d1132b957c4951dd00f64d81b89dc20]
Title: "minor win32 scribbles"
From: Hugo van der Sanden <hv@crypt.compulink.co.uk>
Msg-ID: <199707270832.JAA19399@crypt.compulink.co.uk>
Files: README.win32
[nitpicking f7c603cbfba7c97f77e257c42aa119ffdb47fe1e]
Title: "[PATCH] binary coexistence on win32", "[RESEND] [PATCH] binary
coexistence on win32"
From: Gurusamy Sarathy <gsar@engin.umich.edu>
Msg-ID: <199707250109.VAA02666@aatma.engin.umich.edu>,
<199707301829.OAA19516@aatma.engin.umich.edu>
Files: lib/ExtUtils/Mksymlists.pm win32/win32.h win32/win32io.h
win32/win32iop.h win32/makedef.pl win32/win32.c
win32/win32io.c
Title: "WIN32 Build - pod2xxx.bat Missing?", "[PATCH] Re: WIN32 Build -
pod2xxx.bat Missing?"
From: Chris Williams <chrisw@netinfo.com.au>, Gurusamy Sarathy
<gsar@engin.umich.edu>
Msg-ID: <199707011423.KAA15855@aatma.engin.umich.edu>,
<33B8B962.D96FA1F5@netinfo.com.au>
Files: win32/Makefile win32/makefile.mk
Title: "[PATCH] docs for win32 utilities"
From: Gurusamy Sarathy <gsar@engin.umich.edu>
Msg-ID: <199707250045.UAA02510@aatma.engin.umich.edu>
Files: win32/bin/pl2bat.bat win32/bin/runperl.bat
Title: "[PATCH] trial2: some batch files won't run"
From: Gurusamy Sarathy <gsar@engin.umich.edu>
Msg-ID: <199708040226.WAA17301@aatma.engin.umich.edu>
Files: win32/bin/pl2bat.bat win32/bin/runperl.bat
Title: "[PATCH] win32 extras and embedding"
From: Gurusamy Sarathy <gsar@engin.umich.edu>
Msg-ID: <199707250232.WAA03421@aatma.engin.umich.edu>,
<199707301831.OAA19528@aatma.engin.umich.edu>
Files: dosish.h win32/win32.h perl.c win32/config.bc win32/config_H.bc
win32/makedef.pl win32/perllib.c win32/win32.c
[one change was applied (hastily), as
ad2e33dc060dc2ccf73a5ff1557a69a9b09c30c8]
------ PORTABILITY - OTHER ------
Title: "Additional OS/2 patches"
From: Gurusamy Sarathy <gsar@engin.umich.edu>, Ilya Zakharevich
<ilya@math.ohio-state.edu>
Msg-ID: <199708020823.EAA19521@monk.mps.ohio-state.edu>,
<199708021424.KAA28561@aatma.engin.umich.edu>,
<199708042108.RAA27671@aatma.engin.umich.edu>
Files: README.os2 os2/Changes perl.c
[one change was applied, as
d8c2d278168b862ff4120ad8e5887d37d31f858b]
Title: "make depend loop fix and minor OS/2 improvements to build process"
From: ilya@math.ohio-state.edu (Ilya Zakharevich)
Files: Makefile.SH hints/os2.sh os2/Makefile.SHs
Title: "Minor VMS patches"
From: Charles Bailey <bailey@HMIVAX.HUMGEN.UPENN.EDU>
Msg-ID: <01ILCUO6XXTE000WFK@hmivax.humgen.upenn.edu>
Files: lib/ExtUtils/MM_VMS.pm vms/vmsish.h vms/descrip.mms vms/test.com
vms/vms.c vms/ext/filespec.t
Title: "[PATCH] Two un-disabled tests for VMS"
From: Dan Sugalski <sugalsd@lbcc.cc.or.us>
Msg-ID: <3.0.2.32.19970718095842.00879220@stargate.lbcc.cc.or.us>
Files: vms/test.com
Title: "fix substr fix (tests 27 etc)", "perl5.004_02 trial 1 available
(with substr bug and still some"
From: "M.J.T. Guy" <mjtg@cus.cam.ac.uk>, Hugo van der Sanden
<hv@crypt.compulink.co.uk>, Jarkko Hietaniemi <jhi@iki.fi>
Msg-ID: <199707301759.SAA02899@crypt.compulink.co.uk>,
<199707302228.BAA18032@alpha.hut.fi>,
<199707310929.KAA06515@crypt.compulink.co.uk>,
<E0wtruH-0002JM-00@ursa.cus.cam.ac.uk>
Files: pp.c
Title: "Fwd: substr("foo", -1000)", "substr: warn if substring doesn't
intersect original at all"
From: "M.J.T. Guy" <mjtg@cus.cam.ac.uk>, Jarkko Hietaniemi <jhi@iki.fi>
Msg-ID: <199707100655.JAA14924@alpha.hut.fi>,
<E0wm1JG-0000UY-00@taurus.cus.cam.ac.uk>
Files: pod/perlfunc.pod pp.c t/op/substr.t
[one change was applied, as
d9fdd1afe4b88705294e21dc4e070c42d3d9a4d8]
Title: "[PATCH] Changes for VMS 7.1 support"
From: Charles Bailey <bailey@HMIVAX.HUMGEN.UPENN.EDU>, Dan Sugalski
<sugalsd@lbcc.cc.or.us>
Msg-ID: <01ILDXUH0J1W00026U@hmivax.humgen.upenn.edu>,
<3.0.2.32.19970718095935.0087a2d0@stargate.lbcc.cc.or.us>
Files: vms/sockadapt.h vms/config.vms vms/sockadapt.c
------ DOCUMENTATION ------
Title: "Document bug fix in localization of $1 etc."
From: Chip Salzenberg <salzench@nielsenmedia.com>
Files: pod/perldelta.pod
Title: "[BUG:PATCH] Missing semicolon message wrong in perldiag"
From: "M.J.T. Guy" <mjtg@cus.cam.ac.uk>
Msg-ID: <E0welEn-0002vT-00@taurus.cus.cam.ac.uk>,
<E0wfRJU-0006Aw-00@taurus.cus.cam.ac.uk>
Files: pod/perldiag.pod
[one change was applied, as
702d120df290e0de1b21f167f7d0110b35ee2fef]
Title: "OK: perl <some_version> on <some_system> (corrected)", "enhancements
to perlbug -ok"
From: "M.J.T. Guy" <mjtg@cus.cam.ac.uk>, Stephen McCamant <alias@mcs.com>
Msg-ID: <E0wukVt-0006Da-00@ursa.cus.cam.ac.uk>,
<E0wvMQl-00055y-00@ursa.cus.cam.ac.uk>,
<m0wv81x-000EYPC@alias-2.pr.mcs.net>
Files: utils/Makefile utils/perlbug.PL
Title: "perldoc doesn't grok Win32 UNC paths"
From: Warren Jones <wjones@tc.fluke.com>
Msg-ID: <97Jun17.184420pdt.35728-1@gateway.fluke.com>,
<97Jun18.165618pdt.35713-1@gateway.fluke.com>
Files: utils/perldoc.PL
[one change was applied, as
f72119fc50f0d88b02501ba41112f82ab99f0c3b]
|
|\ \
| |/
| | |
p4raw-id: //depot/perl@84
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
[editor's note: The changes between this and 5.004 were processed from
the m1t2 release, which was a bad idea as it was the _01 release which
had the final corrected attributions. The differences between the
various m*t* releases do that; I considered it most valuable just to
look at the _NN releases. Many patches have been separated out and/or
applied from the p5p archives nonetheless.]
|
| |
| |
| | |
(this is the same change as commit a9581ec21a2686ca09657757555fcd66435bb205, but as applied)
|
| |
| |
| |
| |
| | |
pp_lock now returns its argument.
p4raw-id: //depot/perl@41
|
|\ \
| |/
|/| |
p4raw-id: //depot/relperl@17
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
CORE PORTABILITY
Subject: NeXT hints update
Date: Thu, 1 May 97 00:28:41 +0200
From: Unknown Contributor <hansm@euronet.nl>
Files: Configure Makefile.SH hints/next_4.sh
private-msgid: 199704302229.AAA02690@mail.euronet.nl
Subject: Support shared libperl on AIX
Date: Sat, 26 Apr 1997 20:31:37 -0500
From: Eric Bartley <bartley@icd.cc.purdue.edu>
Files: Configure Makefile.SH hints/aix.sh
Msg-ID: 199704270131.UAA51426@icd.cc.purdue.edu
(applied based on p5p patch as commit 019c9bb5516c92cceeeb4b050fa8075a1359c43c)
|
| |
| |
| |
| |
| |
| |
| | |
This is the (minor) change I made to add a "purecovperl" target to the
Makefile. Just a copy of the pureperl and quantperl targets:
p5p-msgid: rjray-9703180132.AA00374040@snakepit.ecte.uswc.uswest.com
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
On Fri, 4 Apr 1997, Chip Salzenberg wrote:
> According to Olaf Seibert:
> > In this report I am using the shared perl library, libperl.so.3.97.
> >
> > When building miniperl, it is linked with libperl.so.3.97 instead of
> > -lperl. This slightly confuses NetBSD's shared loader. When miniperl
> > is run from a directory where libperl.so.3.97 is not present, it
> > will fail to start.
> >
> > Fix: I think this should do it: Change in the Makefile
> > LLIBPERL= $(LIBPERL)
> > to
> > LLIBPERL= -lperl
>
> Porters? I'm a bit out of my depth with this, since I'm not sure
> of what's portable with dynamic loading and what isn't.
My paranoid fear is the following: Suppose you already have
perl5.003_97 installed somewhere and it has a corresponding
libperl.so.3.97 installed in the appropriate directory. Now suppose
you're rebuiding perl5.003_97 (e.g. to test a patch or whatever) and
your new ./perl is linked with the moral equivalent of
LD_LIBRARY_PATH=`pwd`; export LD_LIBRARY_PATH
cc -o perl -R $archlib -lperl [...]
Now, when you're down in the t/ library running your tests, and miniperl
gets called, which libperl.so.3.97 do you get -- the new one found via
LD_LIBRARY_PATH or the old one found via the -R directive?
(This is very similar to the shared libperl/debugging problem discussed in
the INSTALL file.)
I don't think any solution is bulletproof. I suspect that the suggested
change probably won't make matters any worse, but I'm wary at this stage
(gee, that's a suprise from me:-)
Instead, I think the following should probably be safe:
p5p-msgid: Pine.SOL.3.95q.970404124326.647K-100000@fractal.lafayette.edu
private-msgid: Pine.SOL.3.95q.970404124326.647K-100000@fractal.lafayette.ed
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
BUILD PROCESS
Subject: Make MachTen hints file warn about db-recno failures
Date: Wed, 8 Jan 1997 12:07:18 +0100
From: Dominic Dunlop <domo@slipper.ip.lu>
Files: hints/machten.sh
Msg-ID: <v03010d00aef92fba6aca@[194.51.248.78]>
(applied based on p5p patch as commit a4c70ab8da3ec1d87c83e5c617f4550814ec1724)
Subject: 5.003_20, FreeBSD 3.0 and minor patch
Date: Wed, 8 Jan 1997 14:37:47 +0100
From: Ollivier Robert <roberto@eurocontrol.fr>
Files: Configure
Msg-ID: <Mutt.19970108143747.roberto@caerdonn.eurocontrol.fr>
(applied based on p5p patch as commit 50e0d465254be88fb90ac23584812a529741b4b1)
CORE LANGUAGE CHANGES
Subject: Fix overloading via inherited autoloaded functions
Date: Mon, 13 Jan 1997 05:22:47 -0500 (EST)
From: Ilya Zakharevich <ilya@math.ohio-state.edu>
Files: gv.c lib/overload.pm pod/perldiag.pod t/pragma/overload.t
Msg-ID: <199701131022.FAA22830@monk.mps.ohio-state.edu>
(applied based on p5p patch as commit a9bc755754f0db5e848e65dfd2e63a96af50ffd4)
Subject: Method call fixes: Don't cache in alias, don't skip undef
From: Chip Salzenberg <chip@atlantic.net>
Files: global.sym gv.c gv.h hv.c op.c pod/perlguts.pod pod/perltoc.pod pp.c pp_ctl.c pp_hot.c proto.h scope.c sv.c t/op/method.t
Subject: Formats can be closures
From: Chip Salzenberg <chip@atlantic.net>
Files: cv.h op.c perly.c perly.c.diff perly.y pp_sys.c sv.h
Subject: Quote 'foo' in C<$x{-foo}>
From: Chip Salzenberg <chip@atlantic.net>
Files: toke.c
Subject: Forbid C< x->{y} > and C< x->[0] > under C<strict refs>
From: Chip Salzenberg <chip@atlantic.net>
Files: op.c pod/perldiag.pod t/pragma/strict-refs
Subject: Allow <=> to return undef when operands are not ordered
From: Chip Salzenberg <chip@perl.com>
Files: MANIFEST pp.c t/op/cmp.t
CORE PORTABILITY
Subject: Re: Perl 5.003_20: OS/2 patches
Date: Fri, 10 Jan 1997 06:02:16 -0500 (EST)
From: Ilya Zakharevich <ilya@math.ohio-state.edu>
Files: hints/os2.sh os2/Changes os2/os2.c os2/os2ish.h pp_sys.c
Msg-ID: <199701101102.GAA19051@monk.mps.ohio-state.edu>
(applied based on p5p patch as commit 9a3e71f668bd84b1cf53dd3ea10f588d59ecfebb)
Subject: VMS patches for _20
Date: Tue, 14 Jan 1997 17:34:43 -0500 (EST)
From: Charles Bailey <bailey@HMIVAX.HUMGEN.UPENN.EDU>
Files: configpm dosish.h os2/os2ish.h plan9/plan9ish.h proto.h t/pragma/strict.t t/pragma/subs.t t/pragma/warning.t toke.c unixish.h vms/Makefile vms/config.vms vms/descrip.mms vms/genconfig.pl vms/perly_c.vms vms/test.com vms/vmsish.h x2p/a2p.h x2p/str.c
private-msgid: <01IE7MGK7ULQ003K5M@hmivax.humgen.upenn.edu>
Subject: Irix 6.3 & 6.4 and perl5.003_20
Date: Mon, 13 Jan 1997 17:42:50 -0500 (EST)
From: John Stoffel <jfs@fluent.com>
Files: MANIFEST hints/irix_6_3.sh hints/irix_6_4.sh
Msg-ID: <199701132242.RAA14601@jfs.Fluent.COM>
(applied based on p5p patch as commit 8a1e91d771b51ae31eed1ac5944c63934213fb07)
Subject: Patch: MachTen hints, Configure
Date: Tue, 14 Jan 1997 13:43:13 +0100
From: Dominic Dunlop <domo@slipper.ip.lu>
Files: Configure hints/machten.sh
private-msgid: <v03010d00af0123a93670@[194.51.248.75]>
Subject: Rename aux.sh to aux_3.sh for MS-LOSS
From: Chip Salzenberg <chip@atlantic.net>
Files: MANIFEST hints/aux_3.sh
DOCUMENTATION
Subject: Full documentation generation patch
Date: Wed, 15 Jan 97 11:16:28 +0100
From: Raphael Manfredi <Raphael_Manfredi@grenoble.hp.com>
Files: MANIFEST pod/roffitall pod/rofftoc
Msg-ID: <15309.853323388@lyon.grenoble.hp.com>
(applied based on p5p patch as commit a3270a1d7469cab9221ab0050a0e6695bd0047d8)
Subject: Document use of pos() and /\G/
Date: Mon, 13 Jan 1997 15:13:12 -0500
From: Gurusamy Sarathy <gsar@engin.umich.edu>
Files: pod/perlfunc.pod pod/perlnews.pod pod/perlop.pod pod/perlre.pod pod/perltoc.pod pod/perltrap.pod
Msg-ID: <199701132013.PAA26606@aatma.engin.umich.edu>
(applied based on p5p patch as commit b2a07c1c241ec86f010fc0ea3bfa54c8ec28be90)
Subject: Document new closure warnings
From: Chip Salzenberg <chip@atlantic.net>
Files: op.c pod/perldiag.pod
Subject: Misc. doc patches missing in _20
Date: Tue, 07 Jan 1997 22:55:33 -0500
From: Roderick Schertler <roderick@gate.net>
Files: pod/perlsub.pod pod/perltoc.pod pod/perlvar.pod
Msg-ID: <102.852695733@eeyore.ibcinc.com>
(applied based on p5p patch as commit b88f04ff2985d0899964b90ae56789d88f6b353e)
LIBRARY AND EXTENSIONS
Subject: Localize info about filesystems being case-forgiving
From: Chip Salzenberg <chip@atlantic.net>
Files: lib/File/Basename.pm pod/checkpods.PL pod/pod2html.PL pod/pod2latex.PL pod/pod2man.PL pod/pod2text.PL utils/c2ph.PL utils/h2ph.PL utils/h2xs.PL utils/perlbug.PL utils/perldoc.PL utils/pl2pm.PL utils/splain.PL x2p/find2perl.PL x2p/s2p.PL
Subject: Eliminate warning from C<use overload>
From: Chip Salzenberg <chip@atlantic.net>
Files: lib/overload.pm
OTHER CORE CHANGES
Subject: Fix C< eval { my $x; eval '$x' } >
From: Chip Salzenberg <chip@atlantic.net>
Files: op.c t/op/misc.t
Subject: Don't warn if eval '' uses outer func's lexicals
From: Chip Salzenberg <chip@atlantic.net>
Files: op.c
Subject: Avoid memory wastage in wait(); make pidstatus global
From: Chip Salzenberg <chip@atlantic.net>
Files: global.sym interp.sym perl.c perl.h pp_sys.c
Subject: Forbid ++ and -- on readonly values
Date: Fri, 10 Jan 1997 19:47:16 -0800 (PST)
From: "John Q. Linux" <jql@accessone.com>
Files: pp.c pp_hot.c
Msg-ID: <Pine.LNX.3.95.970110193330.11249D-100000@jql.accessone.com>
(applied based on p5p patch as commit 74c80e585086695d5428ab316ca82fd6931aeabd)
Subject: Keep array from dying during foreach(@array)
From: Chip Salzenberg <chip@atlantic.net>
Files: cop.h pp_ctl.c
Subject: Fix C< $a="simple"; split /($a)/o >
From: Chip Salzenberg <chip@atlantic.net>
Files: pp.c t/op/misc.t
Subject: Fix for anon-lists with tied entries coredump
Date: Fri, 10 Jan 1997 02:45:11 -0500
From: Gurusamy Sarathy <gsar@engin.umich.edu>
Files: pp.c
Msg-ID: <199701100745.CAA13057@aatma.engin.umich.edu>
(applied based on p5p patch as commit d976ac8220f8890bb7663152c4870f60e8e018c8)
Subject: Don't set SVf_PADBUSY on immortal SVs
From: Chip Salzenberg <chip@atlantic.net>
Files: op.c
Subject: Patch for Object subroutines
Date: Tue, 7 Jan 1997 20:56:02 -0500 (EST)
From: Ilya Zakharevich <ilya@math.ohio-state.edu>
Files: cop.h
Msg-ID: <199701080156.UAA15366@monk.mps.ohio-state.edu>
(applied based on p5p patch as commit 174150afa5efdafc0e94a18211d3c9aa06b15cd9)
Subject: Use an SVt_PVLV to hold stacked OP pointers when debugging
From: Chip Salzenberg <chip@atlantic.net>
Files: pp.c pp_hot.c
Subject: Undo change that freed large pad vars
From: Chip Salzenberg <chip@atlantic.net>
Files: scope.c
TESTS
Subject: UNIVERSAL tests
From: Roderick Schertler <roderick@gate.net>
Files: MANIFEST t/op/universal.t
Subject: Test deletion of array during foreach
From: Jarkko Hietaniemi <jhi@alpha.hut.fi>
Files: t/op/misc.t
UTILITIES
Subject: Don't search for pod if path is already valid
Date: Wed, 08 Jan 1997 15:25:19 -0800
From: Wayne Scott <wscott@ichips.intel.com>
Files: utils/perldoc.PL
Msg-ID: <199701082325.PAA04521@pdxlx008.intel.com>
(applied based on p5p patch as commit 88f0eda82bb679b4e6445ccb17e18d0781c6a5da)
Subject: Yet another perldoc option
Date: Thu, 3 Oct 1996 00:00:35 +0200
From: Gisle Aas <aas@aas.no>
Files: utils/perldoc.PL
Msg-ID: <199610022200.AAA15334@furubotn.sn.no>
(applied based on p5p patch as commit a2333f3625faa17fb193cfa25c3d598cb59f105f)
Subject: Re: perldoc, temp files, async pagers
Date: 07 Jan 1997 22:54:14 -0500
From: Roderick Schertler <roderick@gate.net>
Files: utils/perldoc.PL
Msg-ID: <pzwwtoom8p.fsf@eeyore.ibcinc.com>
(applied based on p5p patch as commit 7c36043de26da560a0f7eb04f36d232762c0092c)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
BUILD PROCESS
Subject: Make Configure default to the first domain in /etc/resolv.conf
From: Chip Salzenberg <chip@atlantic.net>
Files: Configure
Subject: Start all helper scripts with $startsh
From: Chip Salzenberg <chip@atlantic.net>
Files: Configure
Subject: Support libperl.so under FreeBSD
Date: Sun, 5 Jan 1997 22:41:49 +0100
From: Ollivier Robert <roberto@keltia.freenix.fr>
Files: Configure Makefile.SH
Msg-ID: <Mutt.19970105224149.roberto@keltia.freenix.fr>
(applied based on p5p patch as commit b126116e5ae3d57fa007f8a42fd506805b35163b)
CORE LANGUAGE CHANGES
Subject: Rescind named closures
From: Chip Salzenberg <chip@atlantic.net>
Files: Makefile.SH op.c perly.c perly.c.diff perly.y pp_hot.c
Subject: Fix: empty @_ when calling empty-proto subs without parens
Date: Sat, 04 Jan 1997 10:29:04 +0000
From: Graham Barr <bodg@tiuk.ti.com>
Files: perly.c perly.y
(applied based on p5p patch as commit 3112f5de73952f91aa4e8005d9852dfddbcf0402)
CORE PORTABILITY
Subject: Configure/perl5/Compartmented Mode Workstation (fwd)
Date: Mon, 06 Jan 1997 13:15:38 -0500 (EST)
From: Andy Dougherty <doughera@fractal.phys.lafayette.edu>
Files: Configure hints/dec_osf.sh
private-msgid: <Pine.SOL.3.95.970106131505.1662C-100000@fractal.lafayette.ed
Subject: Remove obsolete file "dl_os2.xs".
From: Ilya Zakharevich <ilya@math.ohio-state.edu>
Files: MANIFEST
DOCUMENTATION
Subject: tiny doc patches
Date: Sat, 04 Jan 1997 11:12:13 -0500
From: Roderick Schertler <roderick@gate.net>
Files: pod/perlapio.pod pod/perlnews.pod pod/perltoc.pod
Msg-ID: <23338.852394333@eeyore.ibcinc.com>
(applied based on p5p patch as commit b681178584626ba3718f1279845fd452317134c1)
Subject: doc patch for defined on perlfunc.pod
Date: 04 Jan 1997 21:28:30 -0500
From: Roderick Schertler <roderick@gate.net>
Files: pod/perlfunc.pod
Msg-ID: <pz91686ek1.fsf@eeyore.ibcinc.com>
(applied based on p5p patch as commit 38e3adfd2e3d40b46e465482945c4f3de4bb50ef)
Subject: doc patch: perldsc
Date: 04 Jan 1997 21:25:58 -0500
From: Roderick Schertler <roderick@gate.net>
Files: pod/perldsc.pod pod/perltoc.pod
Msg-ID: <pzafqo6eo9.fsf@eeyore.ibcinc.com>
(applied based on p5p patch as commit 4d42f92e5bf79556508016b7af91233b12e526eb)
Subject: scalar caller doc fix
Date: Mon, 06 Jan 1997 22:34:20 -0500
From: Roderick Schertler <roderick@gate.net>
Files: pod/perlfunc.pod
Msg-ID: <18245.852608060@eeyore.ibcinc.com>
(applied based on p5p patch as commit 218104faecb0ec19e0f4f89e084959e757a5230f)
Subject: Misc perlfunc updates
From: Tom Christiansen <tchrist@mox.perl.com>
Files: pod/perlfunc.pod pod/perltoc.pod
LIBRARY AND EXTENSIONS
Subject: sigaction() problems
Date: Mon, 06 Jan 1997 15:42:04 -0500
From: Roderick Schertler <roderick@gate.net>
Files: ext/POSIX/POSIX.pm ext/POSIX/POSIX.pod
Msg-ID: <12808.852583324@eeyore.ibcinc.com>
(applied based on p5p patch as commit 84e96f2bcc509ba2fb5d2c9608a30cc3cfdea41a)
Subject: Fix importation of FileHandle methods; fix POSIX docs
From: Chip Salzenberg <chip@atlantic.net>
Files: ext/POSIX/POSIX.pm ext/POSIX/POSIX.pod lib/FileHandle.pm
Subject: Patch: make hints files warn about db-recno failures
Date: Sun, 5 Jan 1997 12:34:25 +0100
From: Dominic Dunlop <domo@slipper.ip.lu>
Files: MANIFEST hints/aux.sh hints/broken-db.msg hints/freebsd.sh
(applied based on p5p patch as commit 692df45da95e2b7d14c4560347ef4555bb40b621)
OTHER CORE CHANGES
Subject: Fix C< sub foo (&@); sub bar (&); foo {}, bar {}, bar {} >
From: Chip Salzenberg <chip@atlantic.net>
Files: perly.c perly.c.diff perly.y
Subject: plug for safe/opcode leaks
Date: Tue, 07 Jan 1997 17:20:46 -0500
From: Doug MacEachern <dougm@osf.org>
Files: op.c
Msg-ID: <199701072220.RAA02117@postman.osf.org>
(applied based on p5p patch as commit 5cbfc2849d37f748a8facbcbf1c889c575943488)
Subject: Fix Dynaloader failures with DProf
Date: Mon, 06 Jan 1997 12:18:46 -0500
From: Gurusamy Sarathy <gsar@engin.umich.edu>
Files: pp_hot.c
private-msgid: <199701061718.MAA26909@aatma.engin.umich.edu>
TESTS
Subject: New test: comp/proto.t
Date: Mon, 06 Jan 1997 09:13:03 +0000
From: Graham Barr <bodg@tiuk.ti.com>
Files: MANIFEST t/comp/proto.t
(applied based on p5p patch as commit 8c1635e65dc1b3900503d444e985e3f0e5601454)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
CORE LANGUAGE CHANGES
Subject: Make method cache invisible to user code
From: Chip Salzenberg <chip@atlantic.net>
Files: dump.c gv.c gv.h hv.c op.c perl.c pp_hot.c pp_sys.c sv.c toke.c
Subject: Never parse "{m,s,y,tr,q{,q,w,x}}:{,:}" as package or label
From: Chip Salzenberg <chip@atlantic.net>
Files: toke.c
CORE PORTABILITY
Subject: Fix $^X under HP-UX
From: Chip Salzenberg <chip@atlantic.net>
Files: hints/hpux.sh toke.c
Subject: New hints/hpux.sh
Date: Tue, 31 Dec 1996 15:09:32 -0800
From: Jeff Okamoto <okamoto@hpcc123.corp.hp.com>
Files: hints/hpux.sh
private-msgid: <199612312309.AA283393772@hpcc123.corp.hp.com>
DOCUMENTATION
Subject: Perlguts, version 28
Date: Fri, 3 Jan 1997 13:10:46 -0800
From: Jeff Okamoto <okamoto@hpcc123.corp.hp.com>
Files: pod/perlguts.pod
private-msgid: <199701032110.AA102535846@hpcc123.corp.hp.com>
Subject: Miscellaneous pod patches
From: Ralf S. Engelschall <rse@engelschall.com>
Files: pod/Makefile pod/perldebug.pod pod/perlfunc.pod pod/perlguts.pod
Subject: expanded flock() docs
Date: Fri, 03 Jan 1997 19:31:11 -0500
From: Roderick Schertler <roderick@gate.net>
Files: pod/perlfunc.pod
Msg-ID: <4481.852337871@eeyore.ibcinc.com>
(applied based on p5p patch as commit 1fd81fbbe87d964ad1f7dbdce41e36f3781dcf82)
Subject: Use Text::Wrap in buildtoc; run buildtoc
From: Ulrich Pfeifer <pfeifer@charly.informatik.uni-dortmund.de>
Files: pod/buildtoc pod/perltoc.pod
Subject: Remove obsolete perlovl.pod
From: Chip Salzenberg <chip@atlantic.net>
Files: MANIFEST plan9/mkfile pod/perlovl.pod vms/Makefile vms/descrip.mms
OTHER CORE CHANGES
Subject: Fix segv when calling named closures
From: Chip Salzenberg <chip@atlantic.net>
Files: pp_hot.c
Subject: Finish rationalizing "undef value" warnings
From: Chip Salzenberg <chip@atlantic.net>
Files: doop.c pp.c sv.c t/op/assignwarn.t
Subject: Arrange for all "_<file" entries to be in %main::
From: Chip Salzenberg <chip@atlantic.net>
Files: gv.c lib/perl5db.pl
Subject: Introduce CVf_NODEBUG flag
Date: Wed, 01 Jan 1997 15:42:05 -0500
From: Gurusamy Sarathy <gsar@engin.umich.edu>
Files: cv.h pp_hot.c
Msg-ID: <199701012042.PAA25994@aatma.engin.umich.edu>
(applied based on p5p patch as commit a3d90dd510fe5a67ed9b80e603493d285c30aa97)
Subject: Reword 'may be "0"' warning per Larry; fix its line number
From: Chip Salzenberg <chip@atlantic.net>
Files: op.c pod/perldiag.pod
Subject: 5.003_18: perl_{con,des}truct fixes
Date: Fri, 03 Jan 1997 15:42:04 -0500
From: Doug MacEachern <dougm@osf.org>
Files: perl.c perl.h pod/perlembed.pod pod/perltoc.pod t/op/sysio.t
Msg-ID: <199701032042.PAA06766@postman.osf.org>
(applied based on p5p patch as commit 316c7b3d7b47e3143f94c7f8621e854c519d1e87)
Subject: Fix lost value from READLINE after TIEHANDLE
From: Gurusamy Sarathy <gsar@engin.umich.edu>
Files: pp_hot.c sv.h
TESTS
Subject: Create t/pragma directory; populate with new and old
From: Paul Marquess <pmarquess@bfsec.bt.co.uk>
Files: MANIFEST Makefile.SH t/TEST t/comp/use.t t/lib/locale.t t/op/overload.t t/op/use.t t/pragma/locale.t t/pragma/overload.t t/pragma/strict-refs t/pragma/strict-subs t/pragma/strict-vars t/pragma/strict.t t/pragma/subs.t t/pragma/warn-global t/pragma/warning.t
Subject: New tests: comp/colon.t and op/assignwarn.t
From: Robin Barker <rmb@cise.npl.co.uk>
Files: MANIFEST t/comp/colon.t t/op/assignwarn.t
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
CORE LANGUAGE CHANGES
Subject: Support C<delete @hash{@keys}>
From: Chip Salzenberg <chip@atlantic.net>
Files: op.c op.h opcode.pl pod/perldiag.pod pod/perlfunc.pod pp.c t/op/delete.t
Subject: Autovivify scalars
From: Chip Salzenberg <chip@atlantic.net>
Files: dump.c op.c op.h pp.c pp_hot.c
DOCUMENTATION
Subject: Update pods: perldelta -> perlnews, perli18n -> perllocale
From: Tom Christiansen <tchrist@perl.com>
Files: MANIFEST pod/perl.pod pod/perldelta.pod pod/perli18n.pod pod/perlnews.pod
Subject: perltoot.pod
Date: Mon, 09 Dec 1996 07:44:10 -0700
From: Tom Christiansen <tchrist@mox.perl.com>
Files: MANIFEST pod/perltoot.pod
Msg-ID: <199612091444.HAA09947@toy.perl.com>
(applied based on p5p patch as commit 32e22efaa9ec59b73a208b6c532a0b435e2c6462)
Subject: Perlguts, version 25
Date: Fri, 6 Dec 96 11:40:27 PST
From: Jeff Okamoto <okamoto@hpcc123.corp.hp.com>
Files: pod/perlguts.pod
private-msgid: <199612061940.AA055461228@hpcc123.corp.hp.com>
Subject: pod patches for English errors
Date: Mon, 09 Dec 1996 13:33:11 -0800
From: Steve Kelem <steve.kelem@xilinx.com>
Files: pod/*.pod
Msg-ID: <24616.850167191@castor>
(applied based on p5p patch as commit 0135f10892ed8a21c4dbd1fca21fbcc365df99dd)
Subject: Misc doc updates
Date: Sat, 14 Dec 1996 18:56:33 -0700
From: Tom Christiansen <tchrist@mox.perl.com>
Files: pod/*
Subject: Re: perldelta.pod
Here are some diffs to the _11 pods. I forgot to add perldelta to
perl.pod though.
And *PLEASE* fix the Artistic License so it no longer has the bogus
"whomever" misdeclined in the nominative case:
under the copyright of this Package, but belong to whomever generated
them, and may be sold commercially, and may be aggregated with this
It should obviously be "whoever".
p5p-msgid: <199612150156.SAA12506@mox.perl.com>
OTHER CORE CHANGES
Subject: Allow assignment to empty array values during foreach()
From: Chip Salzenberg <chip@atlantic.net>
Files: cop.h global.sym mg.c op.c perl.h pp_hot.c proto.h sv.c
Subject: Fix nested closures
From: Chip Salzenberg <chip@atlantic.net>
Files: op.c opcode.pl pp.c pp_ctl.c pp_hot.c
Subject: Fix core dump on auto-vivification
From: Chip Salzenberg <chip@atlantic.net>
Files: pp_hot.c
Subject: Fix core dump on C<open $undef_var, "X">
From: Chip Salzenberg <chip@atlantic.net>
Files: pp_sys.c
Subject: Fix -T/-B on globs and globrefs
From: Chip Salzenberg <chip@atlantic.net>
Files: pp_sys.c
Subject: Fix memory management of $`, $&, and $'
From: Chip Salzenberg <chip@atlantic.net>
Files: pp_hot.c regexec.c
Subject: Fix paren matching during backtracking
From: Chip Salzenberg <chip@atlantic.net>
Files: regexec.c
Subject: Fix memory leak and std{in,out,err} death in perl_{con,de}str
From: Chip Salzenberg <chip@atlantic.net>
Files: miniperlmain.c perl.c perl.h sv.c
Subject: Discard garbage bytes at end of prototype()
From: Chip Salzenberg <chip@atlantic.net>
Files: pp.c
Subject: Fix local($pack::{foo})
From: Chip Salzenberg <chip@atlantic.net>
Files: global.sym pp.c pp_hot.c proto.h scope.c
Subject: Disable warn, die, and parse hooks _before_ global destruction
From: Chip Salzenberg <chip@atlantic.net>
Files: perl.c
Subject: Re: Bug in formline
Date: Sun, 08 Dec 1996 14:58:32 -0500
From: Gurusamy Sarathy <gsar@engin.umich.edu>
Files: pp_ctl.c
Msg-ID: <199612081958.OAA26025@aatma.engin.umich.edu>
(applied based on p5p patch as commit b386bda18108ba86d0b76ebe2d8745eafa80f39e)
Subject: Fix C<@a = ($a,$b,$c,$d) = (1,2)>
From: Chip Salzenberg <chip@atlantic.net>
Files: pp_hot.c
Subject: Properly support and document newRV{,_inc,_noinc}
From: Chip Salzenberg <chip@atlantic.net>
Files: global.sym pod/perlguts.pod sv.c sv.h
Subject: Allow lvalue pos inside recursive function
From: Chip Salzenberg <chip@atlantic.net>
Files: op.c pp.c pp_ctl.c pp_hot.c
PORTABILITY
Subject: Make $privlib contents compatible with 5.003
From: Chip Salzenberg <chip@atlantic.net>
Files: INSTALL ext/Opcode/Safe.pm installperl lib/FileHandle.pm lib/Test/Harness.pm
Subject: Support $bincompat3 config variable; update metaconfig units
From: Chip Salzenberg <chip@atlantic.net>
Files: Configure MANIFEST compat3.sym config_h.SH embed.pl global.sym old_embed.pl old_global.sym old_perl_exp.SH perl_exp.SH
Subject: Look for gettimeofday() in Configure
Date: Wed, 11 Dec 1996 15:49:57 +0100
From: John Hughes <john@AtlanTech.COM>
Files: Configure config_H config_h.SH pp.c
Subject: perl5.003_11, Should base use of gettimeofday on HAS_GETTIMEOFDAY, not I_SYS_TIME
I've been installing perl5.003_11 on a SCO system that has the TCP/IP runtime
installed but not the TCP/IP development system.
Unfortunately the <sys/time.h> include file is included in the TCP/IP runtime
while libsocket.a is in the development system.
This means that pp.c decides to use "gettimeofday" because <sys/time.h> is
present but I can't link the perl that gets compiled.
So, here's a patch to base the use of "gettimeofday" on "HAS_GETTIMEOFDAY"
instead of "I_SYS_TIME". I also took the liberty of removing the special
case for plan9 (I assume plan9 has <sys/time.h> but no gettimeofday. Am I
right?).
p5p-msgid: <01BBE77A.F6F37F80@malvinas.AtlanTech.COM>
Subject: Make $startperl a relative path if people want portable scrip
From: Chip Salzenberg <chip@atlantic.net>
Files: Configure
Subject: Homogenize use of "eval exec" hack
From: Chip Salzenberg <chip@atlantic.net>
Files: Porting/Glossary eg/README eg/nih eg/sysvipc/ipcmsg eg/sysvipc/ipcsem eg/sysvipc/ipcshm lib/diagnostics.pm makeaperl.SH pod/checkpods.PL pod/perlrun.pod pod/pod2html.PL pod/pod2latex.PL pod/pod2man.PL pod/pod2text.PL utils/c2ph.PL utils/h2ph.PL utils/h2xs.PL utils/perlbug.PL utils/perldoc.PL utils/pl2pm.PL x2p/a2py.c x2p/find2perl.PL x2p/s2p.PL
Subject: LynxOS support
Date: Thu, 12 Dec 1996 09:25:00 PST
From: Greg Seibert <seibert@Lynx.COM>
Files: Configure MANIFEST hints/lynxos.sh t/op/stat.t
Msg-ID: <m0vYEsY-0000IZC@kzinti.lynx.com>
(applied based on p5p patch as commit 6693373533b15e559fd8f0f1877e5e6ec15483cc)
Subject: Re: db-recno.t failures with _11 on Freebsd 2.1-stable
Date: 11 Dec 1996 18:58:56 -0500
From: Roderick Schertler <roderick@gate.net>
Files: INSTALL hints/freebsd.sh
Msg-ID: <pzohg0r5tr.fsf@eeyore.ibcinc.com>
(applied based on p5p patch as commit 10e40321ee752c58e3407b204c74c8049894cb51)
Subject: VMS patches to 5.003_11
Date: Mon, 09 Dec 1996 23:16:10 -0500 (EST)
From: Charles Bailey <bailey@HMIVAX.HUMGEN.UPENN.EDU>
Files: MANIFEST regexec.c t/lib/filehand.t util.c vms/*
private-msgid: <01ICTR32LCZG001A1D@hmivax.humgen.upenn.edu>
TESTING
Subject: recurse recurse recurse ...
Date: Mon, 9 Dec 1996 23:44:27 +0200 (EET)
From: Jarkko Hietaniemi <jhi@cc.hut.fi>
Files: MANIFEST t/op/recurse.t
private-msgid: <199612092144.XAA29025@alpha.hut.fi>
UTILITIES, LIBRARY, AND EXTENSIONS
Subject: Add CPAN and Net::FTP
From: Chip Salzenberg <chip@atlantic.net>
Files: MANIFEST lib/CPAN.pm lib/CPAN/FirstTime.pm lib/CPAN/Nox.pm lib/Net/FTP.pm lib/Net/Netrc.pm lib/Net/Socket.pm pod/perlmod.pod
Subject: Add File::Compare
Date: Mon, 16 Dec 1996 18:44:59 GMT
From: Nick Ing-Simmons <nik@tiuk.ti.com>
Files: MANIFEST lib/File/Compare.pm pod/perlmod.pod
Msg-ID: <199612161844.SAA02152@pluto>
(applied based on p5p patch as commit ec971c5c328aca84fb827f69f2cc1dc3be81f830)
Subject: Add Tie::RefHash
Date: Sun, 15 Dec 1996 18:58:08 -0500
From: Gurusamy Sarathy <gsar@engin.umich.edu>
Files: MANIFEST lib/Tie/RefHash.pm pod/perlmod.pod
Msg-ID: <199612152358.SAA28665@aatma.engin.umich.edu>
(applied based on p5p patch as commit 9a079709134ebbf4c935cc8752fdb564e5c82b94)
Subject: Put "splain" in utils.
From: Chip Salzenberg <chip@atlantic.net>
Files: Makefile.SH installperl utils/Makefile utils/splain.PL
Subject: Some h2ph fixes
Date: Fri, 13 Dec 1996 11:34:12 -0800
From: Jeff Okamoto <okamoto@hpcc123.corp.hp.com>
Files: utils/h2ph.PL
Here is a message regarding changes to h2ph that should probably be folded
into the 5.004 release.
p5p-msgid: <199612131934.AA289845652@hpcc123.corp.hp.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
CORE LANGUAGE CHANGES
Subject: Fix precedence problems with subs as uniops or listops
From: Chip Salzenberg <chip@atlantic.net>
Files: perly.c perly.c.diff perly.h perly.y
Subject: Don't reset $. on open()
From: Chip Salzenberg <chip@atlantic.net>
Files: pp_sys.c
Subject: Support *glob{IO} (eventually deprecate *glob{FILEHANDLE})
From: Chip Salzenberg <chip@atlantic.net>
Files: pod/perlref.pod pp_hot.c sv.c
Subject: Don't let expression context force return context
From: Chip Salzenberg <chip@atlantic.net>
Files: op.c
Subject: Properly convert "1E2" et al to IV/UV
From: Chip Salzenberg <chip@atlantic.net>
Files: doio.c sv.c
Subject: Fix modulo operator in UV realm
From: Chip Salzenberg <chip@atlantic.net>
Files: pp.c
Subject: Fix stat(_) after stat(HANDLE)
From: Chip Salzenberg <chip@atlantic.net>
Files: pp_sys.c
Subject: Fix: s/// and "$x =~ $y" under 'use locale'
From: Chip Salzenberg <chip@atlantic.net>
Files: op.c toke.c
LIBRARY AND EXTENSIONS
Subject: {in,ob}structive pods
Date: Sat, 30 Nov 1996 09:52:57 -0700
From: Tom Christiansen <tchrist@mox.perl.com>
Files: MANIFEST lib/Class/Template.pm lib/File/stat.pm lib/Net/hostent.pm lib/Net/netent.pm lib/Net/protoent.pm lib/Net/servent.pm lib/Time/gmtime.pm lib/Time/localtime.pm lib/Time/tm.pm lib/User/grent.pm lib/User/pwent.pm
These "should" be ready for inclusion in 5.004, although I'd like to
update Class::Template's doc for legibility. Dean, may we please have
your permission to include this in the distribution?
(I did look a bit into using Class::MethodMaker, but it seemed
a bit complicated.)
I know: these all look remarkably similar on the inside. I keep trying
to find a way to abstract out some of it. Hopefully, they're reasonably
legible at least in code, if not in docs. :-)
Chip/Tim, please check the stat function for proper use of Symbol.
thanks,
--tom
#!/bin/sh
# This is a shell archive (produced by GNU sharutils 4.2).
# To extract the files from this archive, save it to some FILE, remove
# everything before the `!/bin/sh' line above, then type `sh FILE'.
#
# Made on 1996-11-30 09:52 MST by <tchrist@toy.perl.com>.
# Source directory was `/home/tchrist/hack'.
#
# Existing files will *not* be overwritten unless `-c' is specified.
#
# This shar contains:
# length mode name
# ------ ---------- ------------------------------------------
# 5024 -rw-r--r-- obstructs/Class/Template.pm
# 2782 -rw-r--r-- obstructs/File/stat.pm
# 3961 -rw-r--r-- obstructs/Net/hostent.pm
# 4435 -rw-r--r-- obstructs/Net/netent.pm
# 2973 -rw-r--r-- obstructs/Net/protoent.pm
# 3424 -rw-r--r-- obstructs/Net/servent.pm
# 2476 -rw-r--r-- obstructs/Time/gmtime.pm
# 2307 -rw-r--r-- obstructs/Time/localtime.pm
# 622 -rw-r--r-- obstructs/Time/tm.pm
# 2848 -rw-r--r-- obstructs/User/grent.pm
# 2899 -rw-r--r-- obstructs/User/pwent.pm
#
save_IFS="${IFS}"
IFS="${IFS}:"
gettext_dir=FAILED
locale_dir=FAILED
first_param="$1"
for dir in $PATH
do
if test "$gettext_dir" = FAILED && test -f $dir/gettext \
&& ($dir/gettext --version >/dev/null 2>&1)
then
set `$dir/gettext --version 2>&1`
if test "$3" = GNU
then
gettext_dir=$dir
fi
fi
if test "$locale_dir" = FAILED && test -f $dir/shar \
&& ($dir/shar --print-text-domain-dir >/dev/null 2>&1)
then
locale_dir=`$dir/shar --print-text-domain-dir`
fi
done
IFS="$save_IFS"
if test "$locale_dir" = FAILED || test "$gettext_dir" = FAILED
then
echo=echo
else
TEXTDOMAINDIR=$locale_dir
export TEXTDOMAINDIR
TEXTDOMAIN=sharutils
export TEXTDOMAIN
echo="$gettext_dir/gettext -s"
fi
touch -am 1231235999 $$.touch >/dev/null 2>&1
if test ! -f 1231235999 && test -f $$.touch; then
shar_touch=touch
else
shar_touch=:
echo
$echo 'WARNING: not restoring timestamps. Consider getting and'
$echo "installing GNU \`touch', distributed in GNU File Utilities..."
echo
fi
rm -f 1231235999 $$.touch
#
if mkdir _sh24166; then
$echo 'x -' 'creating lock directory'
else
$echo 'failed to create lock directory'
exit 1
fi
# ============= obstructs/Class/Template.pm ==============
if test ! -d 'obstructs'; then
$echo 'x -' 'creating directory' 'obstructs'
mkdir 'obstructs'
fi
if test ! -d 'obstructs/Class'; then
$echo 'x -' 'creating directory' 'obstructs/Class'
mkdir 'obstructs/Class'
fi
if test -f 'obstructs/Class/Template.pm' && test "$first_param" != -c; then
$echo 'x -' SKIPPING 'obstructs/Class/Template.pm' '(file already exists)'
else
$echo 'x -' extracting 'obstructs/Class/Template.pm' '(text)'
sed 's/^X//' << 'SHAR_EOF' > 'obstructs/Class/Template.pm' &&
package Class::Template;
require 5.000;
require Exporter;
X
@ISA = qw(Exporter);
@EXPORT = qw(members struct);
use strict;
X
# Template.pm --- struct/member template builder
# 12mar95
# Dean Roehrich
#
# changes/bugs fixed since 28nov94 version:
# - podified
# changes/bugs fixed since 21nov94 version:
# - Fixed examples.
# changes/bugs fixed since 02sep94 version:
# - Moved to Class::Template.
# changes/bugs fixed since 20feb94 version:
# - Updated to be a more proper module.
# - Added "use strict".
# - Bug in build_methods, was using @var when @$var needed.
# - Now using my() rather than local().
#
# Uses perl5 classes to create nested data types.
# This is offered as one implementation of Tom Christiansen's "structs.pl"
# idea.
X
=head1 NAME
X
Class::Template - struct/member template builder
X
=head1 EXAMPLES
X
=item * Example 1
X
X use Class::Template;
X
X struct( rusage => {
X ru_utime => timeval,
X ru_stime => timeval,
X });
X
X struct( timeval => [
X tv_secs => '$',
X tv_usecs => '$',
X ]);
X
X my $s = new rusage;
X
=item * Example 2
X
X package OBJ;
X use Class::Template;
X
X members OBJ {
X 'a' => '$',
X 'b' => '$',
X };
X
X members OBJ2 {
X 'd' => '@',
X 'c' => '$',
X };
X
X package OBJ2; @ISA = (OBJ);
X
X sub new {
X my $r = InitMembers( &OBJ::InitMembers() );
X bless $r;
X }
X
=head1 NOTES
X
Use '%' if the member should point to an anonymous hash. Use '@' if the
member should point to an anonymous array.
X
When using % and @ the method requires one argument for the key or index
into the hash or array.
X
Prefix the %, @, or $ with '*' to indicate you want to retrieve pointers to
the values rather than the values themselves.
X
=cut
X
Var: {
X $Class::Template::print = 0;
X sub printem { $Class::Template::print++ }
}
X
X
sub struct {
X my( $struct, $ref ) = @_;
X my @methods = ();
X my %refs = ();
X my %arrays = ();
X my %hashes = ();
X my $out = '';
X
X $out = "{\n package $struct;\n sub new {\n";
X parse_fields( $ref, \$out, \@methods, \%refs, \%arrays, \%hashes, 0 );
X $out .= " bless \$r;\n }\n";
X build_methods( $ref, \$out, \@methods, \%refs, \%arrays, \%hashes );
X $out .= "}\n1;\n";
X
X ( $Class::Template::print ) ? print( $out ) : eval $out;
}
X
sub members {
X my( $pkg, $ref ) = @_;
X my @methods = ();
X my %refs = ();
X my %arrays = ();
X my %hashes = ();
X my $out = '';
X
X $out = "{\n package $pkg;\n sub InitMembers {\n";
X parse_fields( $ref, \$out, \@methods, \%refs, \%arrays, \%hashes, 1 );
X $out .= " bless \$r;\n }\n";
X build_methods( $ref, \$out, \@methods, \%refs, \%arrays, \%hashes );
X $out .= "}\n1;\n";
X
X ( $Class::Template::print ) ? print( $out ) : eval $out;
}
X
X
sub parse_fields {
X my( $ref, $out, $methods, $refs, $arrays, $hashes, $member ) = @_;
X my $type = ref $ref;
X my @keys;
X my $val;
X my $cnt = 0;
X my $idx = 0;
X my( $cmt, $n );
X
X if( $type eq 'HASH' ){
X if( $member ){
X $$out .= " my(\$r) = \@_ ? shift : {};\n";
X }
X else{
X $$out .= " my(\$r) = {};\n";
X }
X @keys = keys %$ref;
X foreach (@keys){
X $val = $ref->{$_};
X if( $val =~ /^\*(.)/ ){
X $refs->{$_}++;
X $val = $1;
X }
X if( $val eq '@' ){
X $$out .= " \$r->{'$_'} = [];\n";
X $arrays->{$_}++;
X }
X elsif( $val eq '%' ){
X $$out .= " \$r->{'$_'} = {};\n";
X $hashes->{$_}++;
X }
X elsif( $val ne '$' ){
X $$out .= " \$r->{'$_'} = \&${val}::new();\n";
X }
X else{
X $$out .= " \$r->{'$_'} = undef;\n";
X }
X push( @$methods, $_ );
X }
X }
X elsif( $type eq 'ARRAY' ){
X if( $member ){
X $$out .= " my(\$r) = \@_ ? shift : [];\n";
X }
X else{
X $$out .= " my(\$r) = [];\n";
X }
X while( $idx < @$ref ){
X $n = $ref->[$idx];
X push( @$methods, $n );
X $val = $ref->[$idx+1];
X $cmt = "# $n";
X if( $val =~ /^\*(.)/ ){
X $refs->{$n}++;
X $val = $1;
X }
X if( $val eq '@' ){
X $$out .= " \$r->[$cnt] = []; $cmt\n";
X $arrays->{$n}++;
X }
X elsif( $val eq '%' ){
X $$out .= " \$r->[$cnt] = {}; $cmt\n";
X $hashes->{$n}++;
X }
X elsif( $val ne '$' ){
X $$out .= " \$r->[$cnt] = \&${val}::new();\n";
X }
X else{
X $$out .= " \$r->[$cnt] = undef; $cmt\n";
X }
X ++$cnt;
X $idx += 2;
X }
X }
}
X
X
sub build_methods {
X my( $ref, $out, $methods, $refs, $arrays, $hashes ) = @_;
X my $type = ref $ref;
X my $elem = '';
X my $cnt = 0;
X my( $pre, $pst, $cmt, $idx );
X
X foreach (@$methods){
X $pre = $pst = $cmt = $idx = '';
X if( defined $refs->{$_} ){
X $pre = "\\(";
X $pst = ")";
X $cmt = " # returns ref";
X }
X $$out .= " sub $_ {$cmt\n my \$r = shift;\n";
X if( $type eq 'ARRAY' ){
X $elem = "[$cnt]";
X ++$cnt;
X }
X elsif( $type eq 'HASH' ){
X $elem = "{'$_'}";
X }
X if( defined $arrays->{$_} ){
X $$out .= " my \$i;\n";
X $$out .= " \@_ ? (\$i = shift) : return \$r->$elem;\n";
X $idx = "->[\$i]";
X }
X elsif( defined $hashes->{$_} ){
X $$out .= " my \$i;\n";
X $$out .= " \@_ ? (\$i = shift) : return \$r->$elem;\n";
X $idx = "->{\$i}";
X }
X $$out .= " \@_ ? (\$r->$elem$idx = shift) : $pre\$r->$elem$idx$pst;\n";
X $$out .= " }\n";
X }
}
X
1;
SHAR_EOF
$shar_touch -am 1108060296 'obstructs/Class/Template.pm' &&
chmod 0644 'obstructs/Class/Template.pm' ||
$echo 'restore of' 'obstructs/Class/Template.pm' 'failed'
if ( md5sum --help 2>&1 | grep 'sage: md5sum \[' ) >/dev/null 2>&1 \
&& ( md5sum --version 2>&1 | grep -v 'textutils 1.12' ) >/dev/null; then
md5sum -c << SHAR_EOF >/dev/null 2>&1 \
|| $echo 'obstructs/Class/Template.pm:' 'MD5 check failed'
4ccfb1ef6cb0ef795d19325556a78797 obstructs/Class/Template.pm
SHAR_EOF
else
shar_count="`LC_ALL= LC_CTYPE= LANG= wc -c < 'obstructs/Class/Template.pm'`"
test 5024 -eq "$shar_count" ||
$echo 'obstructs/Class/Template.pm:' 'original size' '5024,' 'current size' "$shar_count!"
fi
fi
# ============= obstructs/File/stat.pm ==============
if test ! -d 'obstructs/File'; then
$echo 'x -' 'creating directory' 'obstructs/File'
mkdir 'obstructs/File'
fi
if test -f 'obstructs/File/stat.pm' && test "$first_param" != -c; then
$echo 'x -' SKIPPING 'obstructs/File/stat.pm' '(file already exists)'
else
$echo 'x -' extracting 'obstructs/File/stat.pm' '(text)'
sed 's/^X//' << 'SHAR_EOF' > 'obstructs/File/stat.pm' &&
package File::stat;
use strict;
X
BEGIN {
X use Exporter ();
X use vars qw(@ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
X @ISA = qw(Exporter);
X @EXPORT = qw(stat lstat);
X @EXPORT_OK = qw( $st_dev $st_ino $st_mode
X $st_nlink $st_uid $st_gid
X $st_rdev $st_size
X $st_atime $st_mtime $st_ctime
X $st_blksize $st_blocks
X );
X %EXPORT_TAGS = ( FIELDS => [ @EXPORT_OK, @EXPORT ] );
}
use vars @EXPORT_OK;
X
use Class::Template qw(struct);
struct 'File::stat' => [
X map { $_ => '$' } qw{
X dev ino mode nlink uid gid rdev size
X atime mtime ctime blksize blocks
X }
];
X
sub populate (@) {
X return unless @_;
X my $stob = new();
X @$stob = (
X $st_dev, $st_ino, $st_mode, $st_nlink, $st_uid, $st_gid, $st_rdev,
X $st_size, $st_atime, $st_mtime, $st_ctime, $st_blksize, $st_blocks )
X = @_;
X return $stob;
}
X
sub lstat (*) { populate(CORE::lstat(shift)) }
X
sub stat ($) {
X my $arg = shift;
X my $st = populate(CORE::stat $arg);
X return $st if $st;
X no strict 'refs';
X require Symbol;
X return populate(CORE::stat \*{Symbol::qualify($arg)});
}
X
1;
__END__
X
=head1 NAME
X
File::stat.pm - by-name interface to Perl's built-in stat() functions
X
=head1 SYNOPSIS
X
X use File::stat;
X $st = stat($file) or die "No $file: $!";
X if ( ($st->mode & 0111) && $st->nlink > 1) ) {
X print "$file is executable with lotsa links\n";
X }
X
X use File::stat qw(:FIELDS);
X stat($file) or die "No $file: $!";
X if ( ($st_mode & 0111) && $st_nlink > 1) ) {
X print "$file is executable with lotsa links\n";
X }
X
=head1 DESCRIPTION
X
This module's default exports override the core stat()
and lstat() functions, replacing them with versions that return
"File::stat" objects. This object has methods that
return the similarly named structure field name from the
stat(2) function; namely,
dev,
ino,
mode,
nlink,
uid,
gid,
rdev,
size,
atime,
mtime,
ctime,
blksize,
and
blocks.
X
You may also import all the structure fields directly into your namespace
as regular variables using the :FIELDS import tag. (Note that this still
overrides your stat() and lstat() functions.) Access these fields as
variables named with a preceding C<st_> in front their method names.
Thus, C<$stat_obj-E<gt>dev()> corresponds to $st_dev if you import
the fields.
X
To access this functionality without the core overrides,
pass the C<use> an empty import list, and then access
function functions with their full qualified names.
On the other hand, the built-ins are still available
via the C<CORE::> pseudo-package.
X
=head1 NOTE
X
While this class is currently implemented using the Class::Template
module to build a struct-like class, you shouldn't rely upon this.
X
=head1 AUTHOR
X
Tom Christiansen
SHAR_EOF
$shar_touch -am 1129130296 'obstructs/File/stat.pm' &&
chmod 0644 'obstructs/File/stat.pm' ||
$echo 'restore of' 'obstructs/File/stat.pm' 'failed'
if ( md5sum --help 2>&1 | grep 'sage: md5sum \[' ) >/dev/null 2>&1 \
&& ( md5sum --version 2>&1 | grep -v 'textutils 1.12' ) >/dev/null; then
md5sum -c << SHAR_EOF >/dev/null 2>&1 \
|| $echo 'obstructs/File/stat.pm:' 'MD5 check failed'
4d121fbb2e918b7f35c2b6fa2df6ffed obstructs/File/stat.pm
SHAR_EOF
else
shar_count="`LC_ALL= LC_CTYPE= LANG= wc -c < 'obstructs/File/stat.pm'`"
test 2782 -eq "$shar_count" ||
$echo 'obstructs/File/stat.pm:' 'original size' '2782,' 'current size' "$shar_count!"
fi
fi
# ============= obstructs/Net/hostent.pm ==============
if test ! -d 'obstructs/Net'; then
$echo 'x -' 'creating directory' 'obstructs/Net'
mkdir 'obstructs/Net'
fi
if test -f 'obstructs/Net/hostent.pm' && test "$first_param" != -c; then
$echo 'x -' SKIPPING 'obstructs/Net/hostent.pm' '(file already exists)'
else
$echo 'x -' extracting 'obstructs/Net/hostent.pm' '(text)'
sed 's/^X//' << 'SHAR_EOF' > 'obstructs/Net/hostent.pm' &&
package Net::hostent;
use strict;
X
BEGIN {
X use Exporter ();
X use vars qw(@ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
X @ISA = qw(Exporter);
X @EXPORT = qw(gethostbyname gethostbyaddr gethost);
X @EXPORT_OK = qw(
X $h_name @h_aliases
X $h_addrtype $h_length
X @h_addr_list $h_addr
X );
X %EXPORT_TAGS = ( FIELDS => [ @EXPORT_OK, @EXPORT ] );
}
use vars @EXPORT_OK;
X
use Class::Template qw(struct);
struct 'Net::hostent' => [
X name => '$',
X aliases => '@',
X addrtype => '$',
X 'length' => '$',
X addr_list => '@',
];
X
sub addr { shift->addr_list->[0] }
X
sub populate (@) {
X return unless @_;
X my $hob = new();
X $h_name = $hob->[0] = $_[0];
X @h_aliases = @{ $hob->[1] } = split ' ', $_[1];
X $h_addrtype = $hob->[2] = $_[2];
X $h_length = $hob->[3] = $_[3];
X $h_addr = $_[4];
X @h_addr_list = @{ $hob->[4] } = @_[ (4 .. $#_) ];
X return $hob;
}
X
sub gethostbyname ($) { populate(CORE::gethostbyname(shift)) }
X
sub gethostbyaddr ($;$) {
X my ($addr, $addrtype);
X $addr = shift;
X require Socket unless @_;
X $addrtype = @_ ? shift : Socket::AF_INET();
X populate(CORE::gethostbyaddr($addr, $addrtype))
}
X
sub gethost($) {
X if ($_[0] =~ /^\d+(?:\.\d+(?:\.\d+(?:\.\d+)?)?)?$/) {
X require Socket;
X &gethostbyaddr(Socket::inet_aton(shift));
X } else {
X &gethostbyname;
X }
}
X
1;
__END__
X
=head1 NAME
X
Net::hostent - by-name interface to Perl's built-in gethost*() functions
X
=head1 SYNOPSIS
X
X use Net::hostnet;
X
=head1 DESCRIPTION
X
This module's default exports override the core gethostbyname() and
gethostbyaddr() functions, replacing them with versions that return
"Net::hostent" objects. This object has methods that return the similarly
named structure field name from the C's hostent structure from F<netdb.h>;
namely name, aliases, addrtype, length, and addresses. The aliases and
addresses methods return array reference, the rest scalars. The addr
method is equivalent to the zeroth element in the addresses array
reference.
X
You may also import all the structure fields directly into your namespace
as regular variables using the :FIELDS import tag. (Note that this still
overrides your core functions.) Access these fields as variables named
with a preceding C<h_>. Thus, C<$host_obj-E<gt>name()> corresponds to
$h_name if you import the fields. Array references are available as
regular array variables, so for example C<@{ $host_obj-E<gt>aliases()
}> would be simply @h_aliases.
X
The gethost() funtion is a simple front-end that forwards a numeric
argument to gethostbyaddr() by way of Socket::inet_aton, and the rest
to gethostbyname().
X
To access this functionality without the core overrides,
pass the C<use> an empty import list, and then access
function functions with their full qualified names.
On the other hand, the built-ins are still available
via the C<CORE::> pseudo-package.
X
=head1 EXAMPLES
X
X use Net::hostent;
X use Socket;
X
X @ARGV = ('netscape.com') unless @ARGV;
X
X for $host ( @ARGV ) {
X
X unless ($h = gethost($host)) {
X warn "$0: no such host: $host\n";
X next;
X }
X
X printf "\n%s is %s%s\n",
X $host,
X lc($h->name) eq lc($host) ? "" : "*really* ",
X $h->name;
X
X print "\taliases are ", join(", ", @{$h->aliases}), "\n"
X if @{$h->aliases};
X
X if ( @{$h->addr_list} > 1 ) {
X my $i;
X for $addr ( @{$h->addr_list} ) {
X printf "\taddr #%d is [%s]\n", $i++, inet_ntoa($addr);
X }
X } else {
X printf "\taddress is [%s]\n", inet_ntoa($h->addr);
X }
X
X if ($h = gethostbyaddr($h->addr)) {
X if (lc($h->name) ne lc($host)) {
X printf "\tThat addr reverses to host %s!\n", $h->name;
X $host = $h->name;
X redo;
X }
X }
X }
X
=head1 NOTE
X
While this class is currently implemented using the Class::Template
module to build a struct-like class, you shouldn't rely upon this.
X
=head1 AUTHOR
X
Tom Christiansen
SHAR_EOF
$shar_touch -am 1129133896 'obstructs/Net/hostent.pm' &&
chmod 0644 'obstructs/Net/hostent.pm' ||
$echo 'restore of' 'obstructs/Net/hostent.pm' 'failed'
if ( md5sum --help 2>&1 | grep 'sage: md5sum \[' ) >/dev/null 2>&1 \
&& ( md5sum --version 2>&1 | grep -v 'textutils 1.12' ) >/dev/null; then
md5sum -c << SHAR_EOF >/dev/null 2>&1 \
|| $echo 'obstructs/Net/hostent.pm:' 'MD5 check failed'
27e11c684fe0e621da0109fa7ecef0d9 obstructs/Net/hostent.pm
SHAR_EOF
else
shar_count="`LC_ALL= LC_CTYPE= LANG= wc -c < 'obstructs/Net/hostent.pm'`"
test 3961 -eq "$shar_count" ||
$echo 'obstructs/Net/hostent.pm:' 'original size' '3961,' 'current size' "$shar_count!"
fi
fi
# ============= obstructs/Net/netent.pm ==============
if test -f 'obstructs/Net/netent.pm' && test "$first_param" != -c; then
$echo 'x -' SKIPPING 'obstructs/Net/netent.pm' '(file already exists)'
else
$echo 'x -' extracting 'obstructs/Net/netent.pm' '(text)'
sed 's/^X//' << 'SHAR_EOF' > 'obstructs/Net/netent.pm' &&
package Net::netent;
use strict;
X
BEGIN {
X use Exporter ();
X use vars qw(@ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
X @ISA = qw(Exporter);
X @EXPORT = qw(getnetbyname getnetbyaddr getnet);
X @EXPORT_OK = qw(
X $n_name @n_aliases
X $n_addrtype $n_net
X );
X %EXPORT_TAGS = ( FIELDS => [ @EXPORT_OK, @EXPORT ] );
}
use vars @EXPORT_OK;
X
use Class::Template qw(struct);
struct 'Net::netent' => [
X name => '$',
X aliases => '@',
X addrtype => '$',
X net => '$',
];
X
sub populate (@) {
X return unless @_;
X my $nob = new();
X $n_name = $nob->[0] = $_[0];
X @n_aliases = @{ $nob->[1] } = split ' ', $_[1];
X $n_addrtype = $nob->[2] = $_[2];
X $n_net = $nob->[3] = $_[3];
X return $nob;
}
X
sub getnetbyname ($) { populate(CORE::getnetbyname(shift)) }
X
sub getnetbyaddr ($;$) {
X my ($net, $addrtype);
X $net = shift;
X require Socket if @_;
X $addrtype = @_ ? shift : Socket::AF_INET();
X populate(CORE::getnetbyaddr($net, $addrtype))
}
X
sub getnet($) {
X if ($_[0] =~ /^\d+(?:\.\d+(?:\.\d+(?:\.\d+)?)?)?$/) {
X require Socket;
X &getnetbyaddr(Socket::inet_aton(shift));
X } else {
X &getnetbyname;
X }
}
X
1;
__END__
X
=head1 NAME
X
Net::netent - by-name interface to Perl's built-in getnet*() functions
X
=head1 SYNOPSIS
X
X use Net::netent qw(:FIELDS);
X getnetbyname("loopback") or die "bad net";
X printf "%s is %08X\n", $n_name, $n_net;
X
X use Net::netent;
X
X $n = getnetbyname("loopback") or die "bad net";
X { # there's gotta be a better way, eh?
X @bytes = unpack("C4", pack("N", $n->net));
X shift @bytes while @bytes && $bytes[0] == 0;
X }
X printf "%s is %08X [%d.%d.%d.%d]\n", $n->name, $n->net, @bytes;
X
=head1 DESCRIPTION
X
This module's default exports override the core getnetbyname() and
getnetbyaddr() functions, replacing them with versions that return
"Net::netent" objects. This object has methods that return the similarly
named structure field name from the C's netent structure from F<netdb.h>;
namely name, aliases, addrtype, and net. The aliases
method returns an array reference, the rest scalars.
X
You may also import all the structure fields directly into your namespace
as regular variables using the :FIELDS import tag. (Note that this still
overrides your core functions.) Access these fields as variables named
with a preceding C<n_>. Thus, C<$net_obj-E<gt>name()> corresponds to
$n_name if you import the fields. Array references are available as
regular array variables, so for example C<@{ $net_obj-E<gt>aliases()
}> would be simply @n_aliases.
X
The getnet() funtion is a simple front-end that forwards a numeric
argument to getnetbyaddr(), and the rest
to getnetbyname().
X
To access this functionality without the core overrides,
pass the C<use> an empty import list, and then access
function functions with their full qualified names.
On the other hand, the built-ins are still available
via the C<CORE::> pseudo-package.
X
=head1 EXAMPLES
X
The getnet() functions do this in the Perl core:
X
X sv_setiv(sv, (I32)nent->n_net);
X
The gethost() functions do this in the Perl core:
X
X sv_setpvn(sv, hent->h_addr, len);
X
That means that the address comes back in binary for the
host functions, and as a regular perl integer for the net ones.
This seems a bug, but here's how to deal with it:
X
X use strict;
X use Socket;
X use Net::netent;
X
X @ARGV = ('loopback') unless @ARGV;
X
X my($n, $net);
X
X for $net ( @ARGV ) {
X
X unless ($n = getnetbyname($net)) {
X warn "$0: no such net: $net\n";
X next;
X }
X
X printf "\n%s is %s%s\n",
X $net,
X lc($n->name) eq lc($net) ? "" : "*really* ",
X $n->name;
X
X print "\taliases are ", join(", ", @{$n->aliases}), "\n"
X if @{$n->aliases};
X
X # this is stupid; first, why is this not in binary?
X # second, why am i going through these convolutions
X # to make it looks right
X {
X my @a = unpack("C4", pack("N", $n->net));
X shift @a while @a && $a[0] == 0;
X printf "\taddr is %s [%d.%d.%d.%d]\n", $n->net, @a;
X }
X
X if ($n = getnetbyaddr($n->net)) {
X if (lc($n->name) ne lc($net)) {
X printf "\tThat addr reverses to net %s!\n", $n->name;
X $net = $n->name;
X redo;
X }
X }
X }
X
=head1 NOTE
X
While this class is currently implemented using the Class::Template
module to build a struct-like class, you shouldn't rely upon this.
X
=head1 AUTHOR
X
Tom Christiansen
SHAR_EOF
$shar_touch -am 1130091396 'obstructs/Net/netent.pm' &&
chmod 0644 'obstructs/Net/netent.pm' ||
$echo 'restore of' 'obstructs/Net/netent.pm' 'failed'
if ( md5sum --help 2>&1 | grep 'sage: md5sum \[' ) >/dev/null 2>&1 \
&& ( md5sum --version 2>&1 | grep -v 'textutils 1.12' ) >/dev/null; then
md5sum -c << SHAR_EOF >/dev/null 2>&1 \
|| $echo 'obstructs/Net/netent.pm:' 'MD5 check failed'
e75ca81b142c8df118f1cdddc285f71a obstructs/Net/netent.pm
SHAR_EOF
else
shar_count="`LC_ALL= LC_CTYPE= LANG= wc -c < 'obstructs/Net/netent.pm'`"
test 4435 -eq "$shar_count" ||
$echo 'obstructs/Net/netent.pm:' 'original size' '4435,' 'current size' "$shar_count!"
fi
fi
# ============= obstructs/Net/protoent.pm ==============
if test -f 'obstructs/Net/protoent.pm' && test "$first_param" != -c; then
$echo 'x -' SKIPPING 'obstructs/Net/protoent.pm' '(file already exists)'
else
$echo 'x -' extracting 'obstructs/Net/protoent.pm' '(text)'
sed 's/^X//' << 'SHAR_EOF' > 'obstructs/Net/protoent.pm' &&
package Net::protoent;
use strict;
X
BEGIN {
X use Exporter ();
X use vars qw(@ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
X @ISA = qw(Exporter);
X @EXPORT = qw(getprotobyname getprotobynumber getprotoent);
X @EXPORT_OK = qw( $p_name @p_aliases $p_proto );
X %EXPORT_TAGS = ( FIELDS => [ @EXPORT_OK, @EXPORT ] );
}
use vars @EXPORT_OK;
X
use Class::Template qw(struct);
struct 'Net::protoent' => [
X name => '$',
X aliases => '@',
X proto => '$',
];
X
sub populate (@) {
X return unless @_;
X my $pob = new();
X $p_name = $pob->[0] = $_[0];
X @p_aliases = @{ $pob->[1] } = split ' ', $_[1];
X $p_proto = $pob->[2] = $_[2];
X return $pob;
}
X
sub getprotoent ( ) { populate(CORE::getprotoent()) }
sub getprotobyname ($) { populate(CORE::getprotobyname(shift)) }
sub getprotobynumber ($) { populate(CORE::getprotobynumber(shift)) }
X
sub getproto ($;$) {
X no strict 'refs';
X return &{'getprotoby' . ($_[0]=~/^\d+$/ ? 'number' : 'name')}(@_);
}
X
1;
X
__END__
X
=head1 NAME
X
Net::protoent - by-name interface to Perl's built-in getproto*() functions
X
=head1 SYNOPSIS
X
X use Net::protoent;
X $p = getprotobyname(shift || 'tcp') || die "no proto";
X printf "proto for %s is %d, aliases are %s\n",
X $p->name, $p->proto, "@{$p->aliases}";
X
X use Net::protoent qw(:FIELDS);
X getprotobyname(shift || 'tcp') || die "no proto";
X print "proto for $p_name is $p_proto, aliases are @p_aliases\n";
X
=head1 DESCRIPTION
X
This module's default exports override the core getprotoent(),
getprotobyname(), and getnetbyport() functions, replacing them with
versions that return "Net::protoent" objects. They take default
second arguments of "tcp". This object has methods that return the
similarly named structure field name from the C's protoent structure
from F<netdb.h>; namely name, aliases, and proto. The aliases method
returns an array reference, the rest scalars.
X
You may also import all the structure fields directly into your namespace
as regular variables using the :FIELDS import tag. (Note that this still
overrides your core functions.) Access these fields as variables named
with a preceding C<p_>. Thus, C<$proto_obj-E<gt>name()> corresponds to
$p_name if you import the fields. Array references are available as
regular array variables, so for example C<@{ $proto_obj-E<gt>aliases()
}> would be simply @p_aliases.
X
The getproto() function is a simple front-end that forwards a numeric
argument to getprotobyport(), and the rest to getprotobyname().
X
To access this functionality without the core overrides,
pass the C<use> an empty import list, and then access
function functions with their full qualified names.
On the other hand, the built-ins are still available
via the C<CORE::> pseudo-package.
X
=head1 NOTE
X
While this class is currently implemented using the Class::Template
module to build a struct-like class, you shouldn't rely upon this.
X
=head1 AUTHOR
X
Tom Christiansen
SHAR_EOF
$shar_touch -am 1130095196 'obstructs/Net/protoent.pm' &&
chmod 0644 'obstructs/Net/protoent.pm' ||
$echo 'restore of' 'obstructs/Net/protoent.pm' 'failed'
if ( md5sum --help 2>&1 | grep 'sage: md5sum \[' ) >/dev/null 2>&1 \
&& ( md5sum --version 2>&1 | grep -v 'textutils 1.12' ) >/dev/null; then
md5sum -c << SHAR_EOF >/dev/null 2>&1 \
|| $echo 'obstructs/Net/protoent.pm:' 'MD5 check failed'
c8e24414a4b93b93dab2b257e15bdd38 obstructs/Net/protoent.pm
SHAR_EOF
else
shar_count="`LC_ALL= LC_CTYPE= LANG= wc -c < 'obstructs/Net/protoent.pm'`"
test 2973 -eq "$shar_count" ||
$echo 'obstructs/Net/protoent.pm:' 'original size' '2973,' 'current size' "$shar_count!"
fi
fi
# ============= obstructs/Net/servent.pm ==============
if test -f 'obstructs/Net/servent.pm' && test "$first_param" != -c; then
$echo 'x -' SKIPPING 'obstructs/Net/servent.pm' '(file already exists)'
else
$echo 'x -' extracting 'obstructs/Net/servent.pm' '(text)'
sed 's/^X//' << 'SHAR_EOF' > 'obstructs/Net/servent.pm' &&
package Net::servent;
use strict;
X
BEGIN {
X use Exporter ();
X use vars qw(@ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
X @ISA = qw(Exporter);
X @EXPORT = qw(getservbyname getservbyport getservent getserv);
X @EXPORT_OK = qw( $s_name @s_aliases $s_port $s_proto );
X %EXPORT_TAGS = ( FIELDS => [ @EXPORT_OK, @EXPORT ] );
}
use vars @EXPORT_OK;
X
use Class::Template qw(struct);
struct 'Net::servent' => [
X name => '$',
X aliases => '@',
X port => '$',
X proto => '$',
];
X
sub populate (@) {
X return unless @_;
X my $sob = new();
X $s_name = $sob->[0] = $_[0];
X @s_aliases = @{ $sob->[1] } = split ' ', $_[1];
X $s_port = $sob->[2] = $_[2];
X $s_proto = $sob->[3] = $_[3];
X return $sob;
}
X
sub getservent ( ) { populate(CORE::getservent()) }
sub getservbyname ($;$) { populate(CORE::getservbyname(shift,shift||'tcp')) }
sub getservbyport ($;$) { populate(CORE::getservbyport(shift,shift||'tcp')) }
X
sub getserv ($;$) {
X no strict 'refs';
X return &{'getservby' . ($_[0]=~/^\d+$/ ? 'port' : 'name')}(@_);
}
X
1;
X
__END__
X
=head1 NAME
X
Net::servent - by-name interface to Perl's built-in getserv*() functions
X
=head1 SYNOPSIS
X
X use Net::servent;
X $s = getservbyname(shift || 'ftp') || die "no service";
X printf "port for %s is %s, aliases are %s\n",
X $s->name, $s->port, "@{$s->aliases}";
X
X use Net::servent qw(:FIELDS);
X getservbyname(shift || 'ftp') || die "no service";
X print "port for $s_name is $s_port, aliases are @s_aliases\n";
X
=head1 DESCRIPTION
X
This module's default exports override the core getservent(),
getservbyname(), and
getnetbyport() functions, replacing them with versions that return
"Net::servent" objects. They take default second arguments of "tcp". This object has methods that return the similarly
named structure field name from the C's servent structure from F<netdb.h>;
namely name, aliases, port, and proto. The aliases
method returns an array reference, the rest scalars.
X
You may also import all the structure fields directly into your namespace
as regular variables using the :FIELDS import tag. (Note that this still
overrides your core functions.) Access these fields as variables named
with a preceding C<n_>. Thus, C<$serv_obj-E<gt>name()> corresponds to
$s_name if you import the fields. Array references are available as
regular array variables, so for example C<@{ $serv_obj-E<gt>aliases()
}> would be simply @s_aliases.
X
The getserv() function is a simple front-end that forwards a numeric
argument to getservbyport(), and the rest to getservbyname().
X
To access this functionality without the core overrides,
pass the C<use> an empty import list, and then access
function functions with their full qualified names.
On the other hand, the built-ins are still available
via the C<CORE::> pseudo-package.
X
=head1 EXAMPLES
X
X use Net::servent qw(:FIELDS);
X
X while (@ARGV) {
X my ($service, $proto) = ((split m!/!, shift), 'tcp');
X my $valet = getserv($service, $proto);
X unless ($valet) {
X warn "$0: No service: $service/$proto\n"
X next;
X }
X printf "service $service/$proto is port %d\n", $valet->port;
X print "alias are @s_aliases\n" if @s_aliases;
X }
X
=head1 NOTE
X
While this class is currently implemented using the Class::Template
module to build a struct-like class, you shouldn't rely upon this.
X
=head1 AUTHOR
X
Tom Christiansen
SHAR_EOF
$shar_touch -am 1130094396 'obstructs/Net/servent.pm' &&
chmod 0644 'obstructs/Net/servent.pm' ||
$echo 'restore of' 'obstructs/Net/servent.pm' 'failed'
if ( md5sum --help 2>&1 | grep 'sage: md5sum \[' ) >/dev/null 2>&1 \
&& ( md5sum --version 2>&1 | grep -v 'textutils 1.12' ) >/dev/null; then
md5sum -c << SHAR_EOF >/dev/null 2>&1 \
|| $echo 'obstructs/Net/servent.pm:' 'MD5 check failed'
b09a8a3151b490a083236f84aae0e689 obstructs/Net/servent.pm
SHAR_EOF
else
shar_count="`LC_ALL= LC_CTYPE= LANG= wc -c < 'obstructs/Net/servent.pm'`"
test 3424 -eq "$shar_count" ||
$echo 'obstructs/Net/servent.pm:' 'original size' '3424,' 'current size' "$shar_count!"
fi
fi
# ============= obstructs/Time/gmtime.pm ==============
if test ! -d 'obstructs/Time'; then
$echo 'x -' 'creating directory' 'obstructs/Time'
mkdir 'obstructs/Time'
fi
if test -f 'obstructs/Time/gmtime.pm' && test "$first_param" != -c; then
$echo 'x -' SKIPPING 'obstructs/Time/gmtime.pm' '(file already exists)'
else
$echo 'x -' extracting 'obstructs/Time/gmtime.pm' '(text)'
sed 's/^X//' << 'SHAR_EOF' > 'obstructs/Time/gmtime.pm' &&
package Time::gmtime;
use strict;
use Time::tm;
X
BEGIN {
X use Exporter ();
X use vars qw(@ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
X @ISA = qw(Exporter Time::tm);
X @EXPORT = qw(gmtime gmctime);
X @EXPORT_OK = qw(
X $tm_sec $tm_min $tm_hour $tm_mday
X $tm_mon $tm_year $tm_wday $tm_yday
X $tm_isdst
X );
X %EXPORT_TAGS = ( FIELDS => [ @EXPORT_OK, @EXPORT ] );
}
use vars @EXPORT_OK;
X
sub populate (@) {
X return unless @_;
X my $tmob = Time::tm->new();
X @$tmob = (
X $tm_sec, $tm_min, $tm_hour, $tm_mday,
X $tm_mon, $tm_year, $tm_wday, $tm_yday,
X $tm_isdst )
X = @_;
X return $tmob;
}
X
sub gmtime (;$) { populate CORE::gmtime(shift||time)}
sub gmctime (;$) { scalar CORE::gmtime(shift||time)}
X
1;
__END__
X
=head1 NAME
X
Time::gmtime.pm - by-name interface to Perl's built-in gmtime() function
X
=head1 SYNOPSIS
X
X use Time::gmtime;
X $gm = gmtime();
X printf "The day in Greenwich is %s\n",
X (qw(Sun Mon Tue Wed Thu Fri Sat Sun))[ gm->wday() ];
X
X use Time::gmtime w(:FIELDS;
X printf "The day in Greenwich is %s\n",
X (qw(Sun Mon Tue Wed Thu Fri Sat Sun))[ gm_wday() ];
X
X $now = gmctime();
X
X use Time::gmtime;
X use File::stat;
X $date_string = gmctime(stat($file)->mtime);
X
=head1 DESCRIPTION
X
This module's default exports override the core gmtime() function,
replacing it with a version that returns "Time::tm" objects.
This object has methods that return the similarly named structure field
name from the C's tm structure from F<time.h>; namely sec, min, hour,
mday, mon, year, wday, yday, and isdst.
X
You may also import all the structure fields directly into your namespace
as regular variables using the :FIELDS import tag. (Note that this
still overrides your core functions.) Access these fields as variables
named with a preceding C<tm_> in front their method names. Thus,
C<$tm_obj-E<gt>mday()> corresponds to $tm_mday if you import the fields.
X
The gmctime() funtion provides a way of getting at the
scalar sense of the original CORE::gmtime() function.
X
To access this functionality without the core overrides,
pass the C<use> an empty import list, and then access
function functions with their full qualified names.
On the other hand, the built-ins are still available
via the C<CORE::> pseudo-package.
X
=head1 NOTE
X
While this class is currently implemented using the Class::Template
module to build a struct-like class, you shouldn't rely upon this.
X
=head1 AUTHOR
X
Tom Christiansen
SHAR_EOF
$shar_touch -am 1129132196 'obstructs/Time/gmtime.pm' &&
chmod 0644 'obstructs/Time/gmtime.pm' ||
$echo 'restore of' 'obstructs/Time/gmtime.pm' 'failed'
if ( md5sum --help 2>&1 | grep 'sage: md5sum \[' ) >/dev/null 2>&1 \
&& ( md5sum --version 2>&1 | grep -v 'textutils 1.12' ) >/dev/null; then
md5sum -c << SHAR_EOF >/dev/null 2>&1 \
|| $echo 'obstructs/Time/gmtime.pm:' 'MD5 check failed'
8617e4442d682c2bc444e12b612f98e2 obstructs/Time/gmtime.pm
SHAR_EOF
else
shar_count="`LC_ALL= LC_CTYPE= LANG= wc -c < 'obstructs/Time/gmtime.pm'`"
test 2476 -eq "$shar_count" ||
$echo 'obstructs/Time/gmtime.pm:' 'original size' '2476,' 'current size' "$shar_count!"
fi
fi
# ============= obstructs/Time/localtime.pm ==============
if test -f 'obstructs/Time/localtime.pm' && test "$first_param" != -c; then
$echo 'x -' SKIPPING 'obstructs/Time/localtime.pm' '(file already exists)'
else
$echo 'x -' extracting 'obstructs/Time/localtime.pm' '(text)'
sed 's/^X//' << 'SHAR_EOF' > 'obstructs/Time/localtime.pm' &&
package Time::localtime;
use strict;
use Time::tm;
X
BEGIN {
X use Exporter ();
X use vars qw(@ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
X @ISA = qw(Exporter Time::tm);
X @EXPORT = qw(localtime ctime);
X @EXPORT_OK = qw(
X $tm_sec $tm_min $tm_hour $tm_mday
X $tm_mon $tm_year $tm_wday $tm_yday
X $tm_isdst
X );
X %EXPORT_TAGS = ( FIELDS => [ @EXPORT_OK, @EXPORT ] );
}
use vars @EXPORT_OK;
X
sub populate (@) {
X return unless @_;
X my $tmob = Time::tm->new();
X @$tmob = (
X $tm_sec, $tm_min, $tm_hour, $tm_mday,
X $tm_mon, $tm_year, $tm_wday, $tm_yday,
X $tm_isdst )
X = @_;
X return $tmob;
}
X
sub localtime (;$) { populate CORE::localtime(shift||time)}
sub ctime (;$) { scalar CORE::localtime(shift||time) }
X
1;
X
__END__
X
=head1 NAME
X
Time::localtime.pm - by-name interface to Perl's built-in localtime() function
X
=head1 SYNOPSIS
X
X use Time::localtime;
X printf "Year is %d\n", localtime->year() + 1900;
X
X $now = ctime();
X
X use Time::localtime;
X use File::stat;
X $date_string = ctime(stat($file)->mtime);
X
=head1 DESCRIPTION
X
This module's default exports override the core localtime() function,
replacing it with a version that returns "Time::tm" objects.
This object has methods that return the similarly named structure field
name from the C's tm structure from F<time.h>; namely sec, min, hour,
mday, mon, year, wday, yday, and isdst.
X
You may also import all the structure fields directly into your namespace
as regular variables using the :FIELDS import tag. (Note that this still
overrides your core functions.) Access these fields as
variables named with a preceding C<tm_> in front their method names.
Thus, C<$tm_obj-E<gt>mday()> corresponds to $tm_mday if you import
the fields.
X
The ctime() funtion provides a way of getting at the
scalar sense of the original CORE::localtime() function.
X
To access this functionality without the core overrides,
pass the C<use> an empty import list, and then access
function functions with their full qualified names.
On the other hand, the built-ins are still available
via the C<CORE::> pseudo-package.
X
=head1 NOTE
X
While this class is currently implemented using the Class::Template
module to build a struct-like class, you shouldn't rely upon this.
X
=head1 AUTHOR
X
Tom Christiansen
SHAR_EOF
$shar_touch -am 1129132196 'obstructs/Time/localtime.pm' &&
chmod 0644 'obstructs/Time/localtime.pm' ||
$echo 'restore of' 'obstructs/Time/localtime.pm' 'failed'
if ( md5sum --help 2>&1 | grep 'sage: md5sum \[' ) >/dev/null 2>&1 \
&& ( md5sum --version 2>&1 | grep -v 'textutils 1.12' ) >/dev/null; then
md5sum -c << SHAR_EOF >/dev/null 2>&1 \
|| $echo 'obstructs/Time/localtime.pm:' 'MD5 check failed'
4f44256053f0573143e7f1b78e3db9b1 obstructs/Time/localtime.pm
SHAR_EOF
else
shar_count="`LC_ALL= LC_CTYPE= LANG= wc -c < 'obstructs/Time/localtime.pm'`"
test 2307 -eq "$shar_count" ||
$echo 'obstructs/Time/localtime.pm:' 'original size' '2307,' 'current size' "$shar_count!"
fi
fi
# ============= obstructs/Time/tm.pm ==============
if test -f 'obstructs/Time/tm.pm' && test "$first_param" != -c; then
$echo 'x -' SKIPPING 'obstructs/Time/tm.pm' '(file already exists)'
else
$echo 'x -' extracting 'obstructs/Time/tm.pm' '(text)'
sed 's/^X//' << 'SHAR_EOF' > 'obstructs/Time/tm.pm' &&
package Time::tm;
use strict;
X
use Class::Template qw(struct);
struct('Time::tm' => [
X map { $_ => '$' } qw{ sec min hour mday mon year wday yday isdst }
]);
X
1;
__END__
X
=head1 NAME
X
Time::tm.pm - internal object used by Time::gmtime and Time::localtime
X
=head1 DESCRIPTION
X
This module is used internally as a base class by Time::localtime And
Time::gmtime functions. It creates a Time::tm struct object which is
addressable just like's C's tm structure from F<time.h>; namely with sec,
min, hour, mday, mon, year, wday, yday, and isdst.
X
This class is an internal interface only.
X
=head1 AUTHOR
X
Tom Christiansen
SHAR_EOF
$shar_touch -am 1129132696 'obstructs/Time/tm.pm' &&
chmod 0644 'obstructs/Time/tm.pm' ||
$echo 'restore of' 'obstructs/Time/tm.pm' 'failed'
if ( md5sum --help 2>&1 | grep 'sage: md5sum \[' ) >/dev/null 2>&1 \
&& ( md5sum --version 2>&1 | grep -v 'textutils 1.12' ) >/dev/null; then
md5sum -c << SHAR_EOF >/dev/null 2>&1 \
|| $echo 'obstructs/Time/tm.pm:' 'MD5 check failed'
02859f003106bb6eb92cc91bb9b37666 obstructs/Time/tm.pm
SHAR_EOF
else
shar_count="`LC_ALL= LC_CTYPE= LANG= wc -c < 'obstructs/Time/tm.pm'`"
test 622 -eq "$shar_count" ||
$echo 'obstructs/Time/tm.pm:' 'original size' '622,' 'current size' "$shar_count!"
fi
fi
# ============= obstructs/User/grent.pm ==============
if test ! -d 'obstructs/User'; then
$echo 'x -' 'creating directory' 'obstructs/User'
mkdir 'obstructs/User'
fi
if test -f 'obstructs/User/grent.pm' && test "$first_param" != -c; then
$echo 'x -' SKIPPING 'obstructs/User/grent.pm' '(file already exists)'
else
$echo 'x -' extracting 'obstructs/User/grent.pm' '(text)'
sed 's/^X//' << 'SHAR_EOF' > 'obstructs/User/grent.pm' &&
package User::grent;
use strict;
X
BEGIN {
X use Exporter ();
X use vars qw(@ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
X @ISA = qw(Exporter);
X @EXPORT = qw(getgrent getgrgid getgrnam getgr);
X @EXPORT_OK = qw($gr_name $gr_gid $gr_passwd $gr_mem @gr_members);
X %EXPORT_TAGS = ( FIELDS => [ @EXPORT_OK, @EXPORT ] );
}
use vars @EXPORT_OK;
X
use Class::Template qw(struct);
struct 'User::grent' => [
X name => '$',
X passwd => '$',
X gid => '$',
X members => '@',
];
X
sub populate (@) {
X return unless @_;
X my $gob = new();
X ($gr_name, $gr_passwd, $gr_gid) = @$gob[0,1,2] = @_[0,1,2];
X @gr_members = @{$gob->[3]} = split ' ', $_[3];
X return $gob;
}
X
sub getgrent ( ) { populate(CORE::getgrent()) }
sub getgrnam ($) { populate(CORE::getgrnam(shift)) }
sub getgrgid ($) { populate(CORE::getgrgid(shift)) }
sub getgr ($) { ($_[0] =~ /^\d+/) ? &getgrgid : &getgrnam }
X
1;
__END__
X
=head1 NAME
X
User::grent.pm - by-name interface to Perl's built-in getgr*() functions
X
=head1 SYNOPSIS
X
X use User::grent;
X $gr = getgrgid(0) or die "No group zero";
X if ( $gr->name eq 'wheel' && @{$gr->members} > 1 ) {
X print "gid zero name wheel, with other members";
X }
X
X use User::grent qw(:FIELDS;
X getgrgid(0) or die "No group zero";
X if ( $gr_name eq 'wheel' && @gr_members > 1 ) {
X print "gid zero name wheel, with other members";
X }
X
X $gr = getgr($whoever);
X
=head1 DESCRIPTION
X
This module's default exports override the core getgrent(), getgruid(),
and getgrnam() functions, replacing them with versions that return
"User::grent" objects. This object has methods that return the similarly
named structure field name from the C's passwd structure from F<grp.h>;
namely name, passwd, gid, and members (not mem). The first three
return scalars, the last an array reference.
X
You may also import all the structure fields directly into your namespace
as regular variables using the :FIELDS import tag. (Note that this still
overrides your core functions.) Access these fields as variables named
with a preceding C<gr_>. Thus, C<$group_obj-E<gt>gid()> corresponds
to $gr_gid if you import the fields. Array references are available as
regular array variables, so C<@{ $group_obj-E<gt>members() }> would be
simply @gr_members.
X
The getpw() funtion is a simple front-end that forwards
a numeric argument to getpwuid() and the rest to getpwnam().
X
To access this functionality without the core overrides,
pass the C<use> an empty import list, and then access
function functions with their full qualified names.
On the other hand, the built-ins are still available
via the C<CORE::> pseudo-package.
X
=head1 NOTE
X
While this class is currently implemented using the Class::Template
module to build a struct-like class, you shouldn't rely upon this.
X
=head1 AUTHOR
X
Tom Christiansen
SHAR_EOF
$shar_touch -am 1130094696 'obstructs/User/grent.pm' &&
chmod 0644 'obstructs/User/grent.pm' ||
$echo 'restore of' 'obstructs/User/grent.pm' 'failed'
if ( md5sum --help 2>&1 | grep 'sage: md5sum \[' ) >/dev/null 2>&1 \
&& ( md5sum --version 2>&1 | grep -v 'textutils 1.12' ) >/dev/null; then
md5sum -c << SHAR_EOF >/dev/null 2>&1 \
|| $echo 'obstructs/User/grent.pm:' 'MD5 check failed'
9fbf4010f722f9bc493657ec56f8ce5d obstructs/User/grent.pm
SHAR_EOF
else
shar_count="`LC_ALL= LC_CTYPE= LANG= wc -c < 'obstructs/User/grent.pm'`"
test 2848 -eq "$shar_count" ||
$echo 'obstructs/User/grent.pm:' 'original size' '2848,' 'current size' "$shar_count!"
fi
fi
# ============= obstructs/User/pwent.pm ==============
if test -f 'obstructs/User/pwent.pm' && test "$first_param" != -c; then
$echo 'x -' SKIPPING 'obstructs/User/pwent.pm' '(file already exists)'
else
$echo 'x -' extracting 'obstructs/User/pwent.pm' '(text)'
sed 's/^X//' << 'SHAR_EOF' > 'obstructs/User/pwent.pm' &&
package User::pwent;
use strict;
X
BEGIN {
X use Exporter ();
X use vars qw(@ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
X @ISA = qw(Exporter);
X @EXPORT = qw(getpwent getpwuid getpwnam getpw);
X @EXPORT_OK = qw(
X $pw_name $pw_passwd $pw_uid
X $pw_gid $pw_quota $pw_comment
X $pw_gecos $pw_dir $pw_shell
X );
X %EXPORT_TAGS = ( FIELDS => [ @EXPORT_OK, @EXPORT ] );
}
use vars @EXPORT_OK;
X
use Class::Template qw(struct);
struct 'User::pwent' => [
X name => '$',
X passwd => '$',
X uid => '$',
X gid => '$',
X quota => '$',
X comment => '$',
X gcos => '$',
X dir => '$',
X shell => '$',
];
X
sub populate (@) {
X return unless @_;
X my $pwob = new();
X
X ( $pw_name, $pw_passwd, $pw_uid,
X $pw_gid, $pw_quota, $pw_comment,
X $pw_gecos, $pw_dir, $pw_shell, ) = @$pwob = @_;
X
X return $pwob;
}
X
sub getpwent ( ) { populate(CORE::getpwent()) }
sub getpwnam ($) { populate(CORE::getpwnam(shift)) }
sub getpwgid ($) { populate(CORE::getpwgid(shift)) }
sub getpw ($) { ($_[0] =~ /^\d+/) ? &getpwgid : &getpwnam }
X
1;
__END__
X
=head1 NAME
X
User::pwent.pm - by-name interface to Perl's built-in getpw*() functions
X
=head1 SYNOPSIS
X
X use User::pwent;
X $pw = getpwnam('daemon') or die "No daemon user";
X if ( $pw->uid == 1 && $pw->dir =~ m#^/(bin|tmp)?$# ) {
X print "gid 1 on root dir";
X }
X
X use User::pwent qw(:FIELDS);
X getpwnam('daemon') or die "No daemon user";
X if ( $pw_uid == 1 && $pw_dir =~ m#^/(bin|tmp)?$# ) {
X print "gid 1 on root dir";
X }
X
X $pw = getpw($whoever);
X
=head1 DESCRIPTION
X
This module's default exports override the core getpwent(), getpwuid(),
and getpwnam() functions, replacing them with versions that return
"User::pwent" objects. This object has methods that return the similarly
named structure field name from the C's passwd structure from F<pwd.h>;
namely name, passwd, uid, gid, quota, comment, gecos, dir, and shell.
X
You may also import all the structure fields directly into your namespace
as regular variables using the :FIELDS import tag. (Note that this still
overrides your core functions.) Access these fields as
variables named with a preceding C<pw_> in front their method names.
Thus, C<$passwd_obj-E<gt>shell()> corresponds to $pw_shell if you import
the fields.
X
The getpw() funtion is a simple front-end that forwards
a numeric argument to getpwuid() and the rest to getpwnam().
X
To access this functionality without the core overrides,
pass the C<use> an empty import list, and then access
function functions with their full qualified names.
On the other hand, the built-ins are still available
via the C<CORE::> pseudo-package.
X
=head1 NOTE
X
While this class is currently implemented using the Class::Template
module to build a struct-like class, you shouldn't rely upon this.
X
=head1 AUTHOR
X
Tom Christiansen
SHAR_EOF
$shar_touch -am 1130094696 'obstructs/User/pwent.pm' &&
chmod 0644 'obstructs/User/pwent.pm' ||
$echo 'restore of' 'obstructs/User/pwent.pm' 'failed'
if ( md5sum --help 2>&1 | grep 'sage: md5sum \[' ) >/dev/null 2>&1 \
&& ( md5sum --version 2>&1 | grep -v 'textutils 1.12' ) >/dev/null; then
md5sum -c << SHAR_EOF >/dev/null 2>&1 \
|| $echo 'obstructs/User/pwent.pm:' 'MD5 check failed'
905033d579b32729f95a760e013dbde4 obstructs/User/pwent.pm
SHAR_EOF
else
shar_count="`LC_ALL= LC_CTYPE= LANG= wc -c < 'obstructs/User/pwent.pm'`"
test 2899 -eq "$shar_count" ||
$echo 'obstructs/User/pwent.pm:' 'original size' '2899,' 'current size' "$shar_count!"
fi
fi
rm -fr _sh24166
exit 0
p5p-msgid: <199611301652.JAA24201@toy.perl.com>
Subject: FileHandle that 'ISA' IO::File
Date: Mon, 2 Dec 1996 17:18:02 GMT
From: Nick Ing-Simmons <nik@tiuk.ti.com>
Files: MANIFEST lib/FileHandle.pm
Subject: FileHandle that 'is' and IO::File
Andreas Koenig <k@anna.in-berlin.de> writes:
>>>>>> Nick Ing-Simmons <nik@tiuk.ti.com> writes:
>
> > The patch will serve till we can get derived version working.
>
>I'm putting much hope in the your patch, Nick, because I have another
>problem pending. No test case yet, because I'm waiting for your
>FileHandle.pm.
>
>I'll let you know more details as soon as I have a structured view of
>the problem. Your patch will (hopefully) help me to get there,
>
>andreas
Please try attached.
Drop into lib/FileHandle.pm
p5p-msgid: <199612021718.RAA04416@pluto>
Subject: 10+ debugger patch
Date: Sun, 1 Dec 1996 06:37:31 -0500 (EST)
From: Ilya Zakharevich <ilya@math.ohio-state.edu>
Files: lib/perl5db.pl perl.c pod/perldebug.pod
Bugs corrected:
perl.c
a) Could have deadlocked debugging its own signal handler;
lib/perl5db.pl
pod/perldebug.pod
b) Documentation (internal and POD) updated;
c) NonStop now will not stop at end;
d) variable names more meaningful now;
e) Will not trace last line of itself now;
f) Dumping of looong lines in a program (see Config.pm) interruptable;
g) $@ not wiped by evalled expressions;
While updating the docs I was forced to change some API (to make it
documentable), which resulted in following improvements:
frame & 4 recognized: more verbose output;
frame changes style of TRACE;
Non-interruptable lines have no `:' in the listing;
frame outputs `require'd packages as well.
added Options AutoTrace inhibit_exit
Though this may look a lot, all the changes are not in the main flow
of execution (in frills which are usually disabled), so I think they
may be added even this late in the cycle. Documentation would be quite
messy without these changes.
As well as I know, the documentation is complete now, so one can
_really_ write a new debugger from scratch.
Enjoy,
p5p-msgid: <199612011137.GAA10864@monk.mps.ohio-state.edu>
Subject: DB_File 1.07
From: Paul Marquess <pmarquess@bfsec.bt.co.uk>
Files: ext/DB_File/DB_File.pm ext/DB_File/DB_File.xs t/lib/db-btree.t t/lib/db-recno.t
Subject: DB_File 1.08
From: Paul Marquess <pmarquess@bfsec.bt.co.uk>
Files: ext/DB_File/DB_File.pm ext/DB_File/DB_File.xs
OTHER CORE CHANGES
Subject: Eliminate spurious warning when splicing undefs
From: Chip Salzenberg <chip@atlantic.net>
Files: pp.c sv.h
Subject: Eliminate spurious warning from "x=" operator
From: Chip Salzenberg <chip@atlantic.net>
Files: op.c
Subject: Fix line numbers near control structures
From: Chip Salzenberg <chip@atlantic.net>
Files: op.c perly.c perly.c.diff perly.y proto.h
Subject: Don't let scalar unpack() underflow stack
From: Chip Salzenberg <chip@atlantic.net>
Files: pp.c
Subject: Fix core dump from precedence bug in "@foo" warning
From: Chip Salzenberg <chip@atlantic.net>
Files: toke.c
Subject: Move die() to utils.c; add varargs hack to croak()
From: Chip Salzenberg <chip@atlantic.net>
Files: pp_ctl.c util.c
Subject: Avoid memcmp() for magnitude test if it thinks char is signed
From: Chip Salzenberg <chip@atlantic.net>
Files: Configure config_H config_h.SH doop.c ext/SDBM_File/sdbm/pair.c ext/SDBM_File/sdbm/sdbm.h handy.h hv.c perl.h pp_hot.c proto.h regexec.c sv.c toke.c util.c
Subject: Fully paramaterize locales; disable all if NO_LOCALE
From: Chip Salzenberg <chip@atlantic.net>
Files: ext/POSIX/POSIX.xs op.c perl.h pp.c pp_sys.c sv.c util.c
PORTABILITY AND TESTING
Subject: Bitwise op fix for Alpha
From: Chip Salzenberg <chip@atlantic.net>
Files: pp.c
Subject: VMS patches for 5.003_10
Date: Wed, 04 Dec 1996 16:40:12 -0500 (EST)
From: Charles Bailey <bailey@HMIVAX.HUMGEN.UPENN.EDU>
Files: EXTERN.h INTERN.h old_perl_exp.SH perl.c perl.h perl_exp.SH pp.c pp_ctl.c pp_sys.c proto.h sv.c toke.c util.c utils/perldoc.PL vms/config.vms vms/descrip.mms vms/gen_shrfls.pl vms/genconfig.pl vms/vmsish.h
private-msgid: <01ICMALO8NMS001A1D@hmivax.humgen.upenn.edu>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
CORE LANGUAGE CHANGES
Subject: Allow &{sub {...}} without warning
From: Chip Salzenberg <chip@atlantic.net>
Files: toke.c
Subject: Make parens optional on [gs]ethost and [gs]et{pw,gr} function
From: Chip Salzenberg <chip@atlantic.net>
Files: toke.c
Subject: Fix syntax error with "$x [0]" and "$x {y}" and "@x {y}"
From: Chip Salzenberg <chip@atlantic.net>
Files: toke.c
DOCUMENTATION
Subject: Improve documentation for sysread() and syswrite()
From: Chip Salzenberg <chip@atlantic.net>
Files: pod/perlfunc.pod
Subject: Document how to use $SIG{ALRM} and alarm()
Date: Tue, 26 Nov 1996 11:42:49 -0500
From: Roderick Schertler <roderick@ibcinc.com>
Files: pod/perlfunc.pod
Msg-ID: <5898.849026569@eeyore.ibcinc.com>
(applied based on p5p patch as commit 5fa5e7dfc2abaaadd377c97cd1ebe78ea844da88)
OTHER CORE CHANGES
Subject: Hash key memory corruption fix and naming cleanup
From: Chip Salzenberg <chip@atlantic.net>
Files: hv.c hv.h perl.h
Subject: Undo broken perf. patch (PADTMP stealing)
From: Chip Salzenberg <chip@atlantic.net>
Files: sv.c
Subject: Make SV unstudied in sv_gets()
From: Chip Salzenberg <chip@atlantic.net>
Files: sv.c
Subject: Better support for UVs
From: Paul Marquess <pmarquess@bfsec.bt.co.uk>
Files: global.sym old_global.sym perl.h pp.c pp.h proto.h sv.c sv.h
Subject: Minor locale cleanups
From: Chip Salzenberg <chip@atlantic.net>
Files: t/lib/posix.t util.c
Accept "POSIX" locale as standard like "C". Reset locale to
'C' when testing strtod() in t/lib/posix.t.
Subject: Always taint result of sprintf() on float
From: Chip Salzenberg <chip@atlantic.net>
Files: doop.c
Subject: Fix spurious warning from bitwise string ops
From: Chip Salzenberg <chip@atlantic.net>
Files: doop.c
Subject: Eliminate warning on {,sys}read(,$newvar,)
From: Chip Salzenberg <chip@atlantic.net>
Files: doop.c pp_sys.c
Subject: Namespace cleanup
From: Chip Salzenberg <chip@atlantic.net>
Files: global.sym old_global.sym perl.h
Subject: Modify perl_exp.SH; create old_perl_exp.SH; document old_*
From: Chip Salzenberg <chip@atlantic.net>
Files: Configure INSTALL MANIFEST old_perl_exp.SH perl_exp.SH
PORTABILITY
Subject: Reliable signal patch
Date: Tue, 26 Nov 1996 05:40:50 -0500 (EST)
From: Kenneth Albanowski <kjahds@kjahds.com>
Files: global.sym mg.c old_global.sym perl.h pp_sys.c proto.h util.c
Msg-ID: <Pine.LNX.3.93.961126053209.294J-100000@kjahds.com>
(applied based on p5p patch as commit 679728958e74b0ccd6d61567d84851f1ef994e1f)
Subject: Emulate missing flock() with either fcntl() or lockf()
From: Chip Salzenberg <chip@atlantic.net>
Files: pp_sys.c
Subject: 3_09: minor patches for OS/2
Date: Wed, 27 Nov 1996 03:30:05 -0500 (EST)
From: Ilya Zakharevich <ilya@math.ohio-state.edu>
Files: doio.c global.sym malloc.c old_global.sym os2/Makefile.SHs os2/OS2/ExtAttr/Makefile.PL os2/OS2/PrfDB/Makefile.PL os2/OS2/Process/Makefile.PL os2/OS2/REXX/Makefile.PL os2/os2.c os2/os2ish.h perl.h
Subject: 3_09: minor patches
This patches mostly enable commpilation under OS/2, and fix malloc.c.
Enjoy,
p5p-msgid: <199611270830.DAA04985@monk.mps.ohio-state.edu>
Subject: Re: 5.003_09 and QNX
Date: Wed, 27 Nov 96 13:36:06 est
From: Norton Allen <nort@bottesini.harvard.edu>
Files: Configure MANIFEST README.qnx hints/qnx.sh qnx/ar qnx/cpp t/TEST toke.c util.c x2p/proto.h
Msg-ID: <9611271836.AA14460@bottesini.harvard.edu>
(applied based on p5p patch as commit c5117498be098729dc2af28089bd130c88c8d42b)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
CORE LANGUAGE CHANGES
Subject: Bitwise op sign rationalization
From: Chip Salzenberg <chip@atlantic.net>
Files: op.c opcode.pl pod/perlop.pod pod/perltoc.pod pp.c pp.h pp_hot.c proto.h sv.c t/op/bop.t
Make bitwise ops result in unsigned values, unless C<use
integer> is in effect. Includes initial support for UVs.
Subject: Defined scoping for C<my> in control structures
From: Chip Salzenberg <chip@atlantic.net>
Files: op.c perly.c perly.c.diff perly.h perly.y proto.h toke.c
Finally defines semantics of "my" in control expressions,
like the condition of "if" and "while". In all cases, scope
of a "my" var extends to the end of the entire control
structure. Also adds new construct "for my", which
automatically declares the control variable "my" and limits
its scope to the loop.
Subject: Fix ++/-- after int conversion (e.g. 'printf "%d"')
From: Chip Salzenberg <chip@atlantic.net>
Files: pp.c pp_hot.c sv.c
This patch makes Perl correctly ignore SvIVX() if either
NOK or POK is true, since SvIVX() may be a truncated or
overflowed version of the real value.
Subject: Make code match Camel II re: functions that use $_
From: Paul Marquess <pmarquess@bfsec.bt.co.uk>
Files: opcode.pl
Subject: Provide scalar context on left side of "->"
From: Chip Salzenberg <chip@atlantic.net>
Files: perly.c perly.y
Subject: Quote bearword package/handle FOO in "funcname FOO => 'bar'"
From: Chip Salzenberg <chip@atlantic.net>
Files: toke.c
OTHER CORE CHANGES
Subject: Warn on overflow of octal and hex integers
From: Chip Salzenberg <chip@atlantic.net>
Files: proto.h toke.c util.c
Subject: If -w active, warn for commas and hashes ('#') in qw()
From: Chip Salzenberg <chip@atlantic.net>
Files: toke.c
Subject: Fixes for pack('w')
From: Ulrich Pfeifer <pfeifer@charly.informatik.uni-dortmund.de>
Files: pp.c t/op/pack.t
Subject: More complete output from sv_dump()
From: Gurusamy Sarathy <gsar@engin.umich.edu>
Files: sv.c
Subject: Major '..' and debugger patches
From: Ilya Zakharevich <ilya@math.ohio-state.edu>
Files: lib/perl5db.pl op.c pp_ctl.c scope.c scope.h
Subject: Fix for formline()
From: Gurusamy Sarathy <gsar@engin.umich.edu>
Files: global.sym mg.c perl.h pod/perldiag.pod pp_ctl.c proto.h sv.c t/op/write.t
Subject: Fix stack botch in untie and binmode
From: Gurusamy Sarathy <gsar@engin.umich.edu>
Files: pp_sys.c
Subject: Complete EMBED, including symbols from interp.sym
From: Chip Salzenberg <chip@atlantic.net>
Files: MANIFEST embed.pl ext/DynaLoader/dlutils.c ext/SDBM_File/sdbm/sdbm.h global.sym handy.h malloc.c perl.h pp_sys.c proto.h regexec.c toke.c util.c x2p/Makefile.SH x2p/a2p.h x2p/handy.h x2p/util.h
New define EMBEDMYMALLOC makes embedding total by
avoiding "Mymalloc" etc.
Subject: Support old embedding for people who want it
From: Chip Salzenberg <chip@atlantic.net>
Files: MANIFEST Makefile.SH old_embed.pl old_global.sym
PORTABILITY
Subject: Miscellaneous VMS fixes
From: Charles Bailey <bailey@HMIVAX.HUMGEN.UPENN.EDU>
Files: lib/ExtUtils/Liblist.pm lib/ExtUtils/MM_VMS.pm lib/Math/Complex.pm lib/Time/Local.pm lib/timelocal.pl perl.h perl_exp.SH proto.h t/TEST t/io/read.t t/lib/findbin.t t/lib/getopt.t util.c utils/h2xs.PL vms/Makefile vms/config.vms vms/descrip.mms vms/ext/Stdio/Stdio.pm vms/ext/Stdio/Stdio.xs vms/perlvms.pod vms/test.com vms/vms.c
Subject: DJGPP patches (MS-DOS)
From: "Douglas E. Wegscheid" <wegscd@whirlpool.com>
Files: doio.c dosish.h ext/SDBM_File/sdbm/sdbm.c handy.h lib/AutoSplit.pm lib/Cwd.pm lib/File/Find.pm malloc.c perl.c perl.h pp_sys.c proto.h sv.c util.c
Subject: Patch to make Perl work under AmigaOS
From: "Norbert Pueschel" <pueschel@imsdd.meb.uni-bonn.de>
Files: MANIFEST hints/amigaos.sh installman lib/File/Basename.pm lib/File/Find.pm pod/pod2man.PL pp_sys.c util.c
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Date: Wed, 9 Oct 1996 22:32:22 -0400 (EDT)
From: Ilya Zakharevich <ilya@math.ohio-state.edu>
All the executable targets are moved into the same chunk with
shared library target, which is delegated to
$osname/Makefile.SHs if found.
config.h should depend on config_h.SH.
Remove mkmanifest target, since it will generate incorrectly
sorted MANIFEST file, I would imagine (I haven't checked).
|
| |
| |
| |
| |
| |
| | |
A new heredoc tag in Makefile.SH needs to be quoted.
shrpenv stuff moved to Configure.
|
| |
| |
| |
| |
| | |
For building shared libperl, relocate whole rule to
inside the if test -f $osname/Makefile.SHs case.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
# This is my patch perl5.003_03.pat to perl5.003_02
# The full description is below.
# Please execute the following commands before applying this patch.
# (You can feed this patch to 'sh' to do so.)
# Andy Dougherty <doughera@lafcol.lafayette.edu>
# Absorbed into Changes5.002
rm -f Changes.Conf
# Not needed.
rm -f ext/POSIX/mkposixman.pl
# Moved to README.os2. I'm not sure why the README files are
# here rather than in the appropriate subdirectories.
rm -f os2/README
# Not needed.
rm -f pod/Makefile.PL
# New test for bit ops
touch t/op/bop.t
# Patches that create new tests don't always make them executable.
chmod +x t/*/*.t
# Create a new directory for Porting and Patching info.
mkdir Porting
exit 0
This is patch perl5.003_03.pat to perl version 5.003_02.
This takes you from 5.003_02 to 5.003_03.
To apply this patch, run the above commands,
cd to your perl source directory and then type
patch -p1 -N < perl5.003_03.pat
The changes are described after each /^Index/ line below. This is
designed so you can examine each change with a command such as
csplit -k perl5.003_03.pat '/^Index:/' '{99}'
Patch and enjoy,
Andy Dougherty doughera@lafcol.lafayette.edu
Dept. of Physics
Lafayette College, Easton PA 18042
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Support the new simplified shared libperl mechanism.
Use new $make_set_make directive.
Remove redundant libperl Make variable.
Remove unnecessary MAB variable.
Remove dependency of minitest on lib/Config.pm, since it could
well have been a failure of configpm that inspired testing
miniperl in the first place!
|
| |
| |
| |
| |
| | |
This commit just represents the minor differences between applying
the patch from 5.003_01 to 5.003_02 and the 5.003_02 release tarball.
|
| | |
|
| |
| |
| |
| |
| | |
This commit just represents the minor differences between applying the
patches from 5.003 to 5.003_01 and the 5.003_01 release tarball.
|
|/
|
|
|
|
|
|
|
| |
Set shared library version number correctly on NeXT
Updates to OS/2 support
Correct typo in perl.exp
Add universal.c
Add configpm dependency to Config.pm
Remove chmod from test target -- last modification of source tree
|
| |
|
|
|
|
|
|
| |
Include the proper -Ilib for miniperl test.
Use ./miniperl in case user doesn't have '.' in PATH.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
[editor's note: no patch file was found for this release, so no
fine-grained changes]
I can't find the password for our ftp server, so I had to drop it into
ftp://ftp.sems.com/pub/incoming/perl5.002b3.tar.gz, which is a drop
directory you can't ls.
The current plan is that Andy is gonna whack on this a little more, and
then release a gamma in a few days when he's happy with it. So don't get
carried away. This is now *late* beta.
In other words, have less than the appropriate amount of fun. :-)
Larry
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
cd to your perl source directory, execute the command above, and type
patch -p1 -N < patch.2b1f
This patch includes patches for the following items:
Changes.Conf
Configure
MANIFEST
Makefile.SH
XSUB.h
ext/POSIX/POSIX.pm
ext/POSIX/POSIX.pod
ext/POSIX/POSIX.xs
ext/Socket/Socket.pm
gv.c
lib/Cwd.pm
lib/Sys/Syslog.pm
lib/diagnostics.pm
t/lib/socket.t
toke.c
The changes are described after each /^Index/ line below.
These are each described in detail below, after the corresponding
index line.
Patch and enjoy,
Andy Dougherty doughera@lafcol.lafayette.edu
Dept. of Physics
Lafayette College, Easton PA 18042
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If you're adventurous, have a look at
ftp://ftp.sems.com/pub/outgoing/perl5.0/perl5.002beta1.tar.gz
Many thanks to Andy for doing the integration.
Obviously, if you consult the bugs database, you'll note there are
still plenty of buglets that need fixing, and several enhancements that
I've intended to put in still haven't made it in (Hi, Tim and Ilya).
But I think it'll be pretty stable. And you can start to fiddle around
with prototypes (which are, of course, still totally undocumented).
Packrats, don't worry too much about readvertising this widely.
Nowadays we're on a T1 here, so our bandwidth is okay.
Have the appropriate amount of jollity.
Larry
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
To apply, change to your perl directory, run the command above, then
apply with
patch -p1 -N < thispatch.
This is a consolidation patch. It contains many of the most commonly
applied or agreed-to patches that have been circulating since
patch.1m.
It also changes the 'unofficial patchlevel' in perl.c.
There are some problems (see items marked with '***').
I will attempt to address those in a patch.1o in a few days.
This patch contains the following packages:
My Jumbo Configure patch vs. 1m, with subsequent patches 1, 2, and 3.
Mainly, this provides easier use of local libraries, documents
the installation process in a new INSTALL file, moves important
questions towards the beginning, and improves detection of
signal names (mostly for Linux).
xsubpp-1.922.
Patches from Larry:
eval "1" memory leak patch (as modified by GSAR to apply to 5.001m).
NETaa14551 Infinite loop in formats,
NETaa13729 scope.c patch (fixed problems on AIX and others)
NETaa14138 "substr() & s///" (pp_hot.c)
Patches from ftp.perl.com:
ftp://ftp.perl.com/pub/perl/src/patches/closure-bug.patch,
version of 20 Sep 1995
Includes fix for NETaa14347 (32k limit in regex), and other
fixes.
ftp://ftp.perl.com/pub/perl/src/patches/debugger.patch,
version of 27 Aug 1995
ftp://ftp.perl.com/pub/perl/src/patches/glob-undef.patch,
version of 4 Sep 1995
NETaa14421 $_ doesn't undef
ftp://ftp.perl.com/pub/perl/src/patches/op-segfault.patch,
version of 21 Aug 1995
ftp://ftp.perl.com/pub/perl/src/patches/warn-ref-hash-key.patch,
version of 5 Jun 1995
Tim Bunce's Jumbo DynaLoader patch for Perl5.001m, which is
NETaa14636 Jumbo DynaLoader patch for Perl5.001m, and
Additional patch for NETaa14636 Jumbo DynaLoader patch for Perl5.001m
version of 09 Oct 1995.
***This needs some additional parentheses.***
MakeMaker-5.00. Supercedes NETaa13540 (VMS MakeMaker patches).
(Updates minimod.PL as well.)
***This has a couple of minor problems.
pod2man is run even if it isn't available.
LD_RUN_PATH gets set to some mysterious values.***
NETaa14657 Paul Marquess Net::Ping patch. I've included
Net-Ping-1.00.
NETaa14661 Dean Roehrich DProf. Installed as ext/Devel/DProf.
Configure should pick this up automatically. (5 Apr 1995
version.)
NETaa13742 Jack Shirazi Socket in 5.001. I've also included
his socket.t test in t/lib/socket.t.
c2ph-1.7.
Dean's perlapi patches of Oct 12, 1995, which superceded those
of Oct 8, 1995. This is the one that did
mv perlapi.pid perlxs.pod.
NETaa14310 Tim Bunce A trivial patch for configpm (handy for shell scripts)
DB_File-1.0 patch from Paul Marquess (pmarquess@bfsec.bt.co.uk)
last modified 7th October 1995
version 1.0
Added or updated the following hints files:
hints/hpux.sh
hints/ncr_tower.sh
hints/netbsd.sh
hints/ultrix.sh
Patch and enjoy.
Andy Dougherty doughera@lafcol.lafayette.edu
Dept. of Physics
Lafayette College, Easton PA 18042
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
To apply, change to your perl directory, run the command above, then
apply with
patch -p1 -N < thispatch.
Highlights of this patch include:
1. Fixes for $sitelib, $d_stdio_ptr_lval, and $d_stdio_cnt_lval
when config.sh is re-used.
2. Move embed.h, keywords.h, and opcode.h dependencies to
a special regen_headers target that is ordinarily not used.
This is now analogous to the run_byacc target. As a cosmetic
side-effect, I transliterated embed_h.sh into embed.pl so that
it can run on non-unix systems as well.
3. Tests for gdbm_{sync,exists,setopt} in GDBM_File (needed for
Slackware 2.1).
For good measure, I've also thrown in the following patches I pulled
off the list, mostly unmodified from the originals.
1. Larry's "unofficial official" fix for the subroutine array context
problem.
2. Tim's __DATA__ patch. (I kept forgetting about this one.)
3. Malcom's USE_OP_MASK patch to pave the way for his Safe extension.
4. Spider's suggested renaming of regexec to pregexec and regcomp to
pregcomp to avoid conflicts with POSIX symbols on Digital Unix.
(I only added a brief explanatory comment to the relevant .c
files.)
5. Spider's installperl patch to avoid installing *.orig and and the
.exists files. (I changed this a little to include patch's ~
suffix, which is used on systems with short file names (in some
versions of patch)).
6. Raphael's "safe_unlink" patch to installperl, in case a copy
of perl is currently runniung.
7. xsubpp 1.9.
8. Tim's lib.pm module (with patched corrected spelling of 2nd :-).
9. Tim's Exporter module version patches.
10. Tim's MakeMaker patches for make test when LINKTYPE=static.
11. Randal's pod2html patches.
12. Spider's "picky compiler" patches for x2p/util.[ch]
13. Paul's updated source filtering patches.
Patch and enjoy. I hope nothing breaks :-).
Andy Dougherty doughera@lafcol.lafayette.edu
Dept. of Physics
Lafayette College, Easton PA 18042
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
To apply, change to your perl directory, run the commands above, then
apply with
patch -p1 -N < thispatch.
After you apply this patch, I would recommend:
rm config.sh
sh Configure [whatever options you use]
make depend
make
make test
Here are the highlights:
All pod documentation now installed, along with corresponding man
pages, if possible (Configure allows you to change this).
cppstdin no longer points back to the build directory. This
necessitated two changes to the test suite: comp/cpp.t is now a
front end that punts if cppstdin is not yet available (the old
perl4 trick doesn't work for perl5). The op/misc.t test
./perl -P -e 'use POSIX;' has been dropped since I couldn't think
of an elegant way to bypass it for systems that need the cppstdin
wrapper.
Grand autoload patch included (minus the installperl, lib/, and
ext/ changes). The lib/ changes are in patch.1g, and the
ext/ changes are in patch.1h.
Better detection and use of stdio variants, especially on SVR4.
Sarathy's consolidated patches (for ties) included.
New filter stuff included.
Three patches from Larry (gv.c, toke.c, pp_ctl.c)
Patch and enjoy,
Andy Dougherty doughera@lafcol.lafayette.edu
Dept. of Physics
Lafayette College Easton, PA 18042
Here's the file-by-file breakdown of what's included:
Changes.Conf
Document changes in the Configure & build process.
Configure
Upgrade to metaconfig PL55.
Add /opt hierarchy to paths searched for programs.
Tye McQueen's updated std stdio testing.
Prompting for installation info for perl module pages.
Add possible SITELIB to include site-specific include directories.
By default this is disabled, but it seemed a neat idea now that
the standard perl library is getting so big.
Check that the compiler chosen exists and actually supports the
options the user specified.
Correctly sort multiple shared library version numbers.
Use a compile & link test for gconvert(), dlopen(), and dlerror().
Do not include build directory name in cppstdin wrapper.
MANIFEST
Updated.
Makefile.SH
Reorganized a bit to support separate install.perl and install.man
targets to use the new installman script and to accomodate those who
don't want to install the man pages.
Organize cleanup of .SH files a little better.
No longer automatically make the pod/*.man files. This is done by
installman only if requested.
Include additional error messages and info for regenerating the
automatically maintained header files.
Add 'minitest' target.
README
Updated.
README.vms
Fix perl5-porters subscription info.
config_H
Updated.
config_h.SH
Updated.
configpm
Embedded pod.
configure
GNU configure-like front end to metaconfig's Configure.
Only supports a few options.
doio.c
Updated to use new std stdio testing.
embed.h
Add new symbols for filtering.
global.sym
see embed.h.
gv.c
C<sub method;> patch from lwall.
hints/README.hints
Updated.
hints/aux.sh
Updated.
hints/cxux.sh
Updated.
hints/epix.sh
New file.
hints/freebsd.sh
Updated.
hints/irix_4.sh
Updated.
hints/irix_5.sh
Updated.
hints/irix_6.sh
Updated.
hints/linux.sh
Updated.
hints/powerunix.sh
Updated.
installman
New file to install pod/*.pod and lib/*.p(m|od) man pages.
installperl
Move installation of man pages over to installman script.
Install pod/*.pod files in $privlib/pod/.
Preserve timestamps on .a files.
makedepend.SH
Now includes . and .. in PATH to explicitly find cppstdin wrapper.
opcode.h
opcode.pl
shmwrite fix.
perl.c
Changed unofficial patchlevel message.
Included optional SITELIB directory.
perl.h
#include <memory.h>
cryptswitch gone/filters added.
EUNICE replaced by UNLINK_ALL_VERSIONS. Only matters for VMS.
perldoc.SH
New file.
pod/perl.pod
Describe where modpods are.
pp_ctl.c
sort bug fix from lwall.
pp_hot.c
csh glob bug fix from tchrist.
Sarathy's consolidated "tie" patch for NETaa13753 N 2 trey
pp_sys.c
Emulate flock with lockf, if possible.
Use new std stdio unit.
proto.h
Filters stuff.
prototype for unlnk() is only needed #if UNLINK_ALL_VERSIONS
sv.c
Sarathy's consolidated "tie" patch for NETaa13753 N 2 trey
Sarathy's consolidated patch for nested ties.
Use new std stdio unit.
t/comp/cpp.aux
New file. This only gets called if cppstdin is avaiable.
t/comp/cpp.t
Calls cpp.aux test only if cppstdin is available.
t/op/misc.t
Drop
perl -P -e 'use POSIX;' test.
it couldn't work on systems without the cppstdin wrapper
installed, and is usually misleading when it fails anyway.
toke.c
filter stuff.
fix for NETaa13798 from lwall.
unixish.h
undef UNLINK_ALL_VERSIONS since it's irrelevant for unix.
util.c
s/EUNICE/UNLINK_ALL_VERSIONS/ for the unlnk() function.
vms/config.vms
VMS updates from Charles Bailey.
std stdio updates to match changes in perl sources.
add UNLINK_ALL_VERSIONS constant, but leave it #undef.
vms/ext/MM_VMS.pm
vms/ext/VMS/stdio/stdio.xs
vms/perlvms.pod
vms/vms.c
VMS updates from Charles Bailey.
x2p/Makefile.SH
Updated to match man page Configure questions.
Slight clean-up on .SH targets.
x2p/str.c
Use new std stdio unit.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is my patch patch.1d for perl5.001. A complete description is
given below, but here are the basic changes.
1. Linux: more tweaks so dynamic loading works under ELF
or (maybe) under dld. There are so many different dld versions
and so many different tool sets, it's hard to be more specific.
2. perl -e '$v=1e19+0' no longer dumps core on Intel x86
processors.
3. pod stuff:
a. Wrapped pod2* translators in a 'SH' wrapper so that they
have the proper path to perl at the top.
b. Fixed pod/ Makefile to call the pod2html translator
correctly. (Why do pod2man and pod2html work differently?)
c. Include latest (Feb 2, 1995) version of pod2html, fresh from
ftp.metronet.com.
4. MakeMaker 4.093.
5. GIMME and installperl patches from Tim Bunce.
6. Miscellaneous hint file updates.
Configure
Allow ' ' to mean 'none' in a few more places. This provides
a way for hint files to set something to an empty value and to
ensure that the empty value will be maintained when config.sh is
reused.
Fix silly ld typo that prevented hint file from actually setting
$ld.
MANIFEST
Now has pod/pod2*.SH.
Makefile.SH
Remove old libperl.a instead of blindly adding to it. Failure to
do this causes a problem if you originally used perl's malloc but
later changed your mind. The old malloc.o would still be in
libperl.a
ext/DynaLoader/dl_dlopen.xs
Use strerror(errno) instead of dlerror for NetBSD.
handy.h
Clarify & rework HAS_BOOL comments and code. No functionality is
changed, but I hope this is easier to follow.
hints/freebsd.sh
hints/isc.sh
hints/linux.sh
hints/netbsd.sh
hints/next_3_0.sh
hints/next_3_2.sh
hints/sco_3.sh
Miscellaneous updates. See the individual comments in the patches.
installperl
Run ranlib on installed .a libraries.
unlink() old versions of files before installing new ones, in
case the old ones are are write-protected.
lib/ExtUtils/MakeMaker.pm
Updated to 4.092 by Andreas Koenig. This features better
selection of shared library versions and shorter command lines for
static linking of new extensions. It is also more robust against
broken csh on Linux. (There's still a glob in the library
selection loop, however.)
I further updated it to 4.093 because I didn't like the
distclean target :-). It's just a sloppy quick fix, but that's
all I have time for now. I've also worked on the library version
selection stuff and the $(CC) command stuff a little more.
lib/TieHash.pm
Overdue removal of ambiguous ${pack} construction.
perl.h
New U_V macro to cast to the UV type (usually unsigned long).
pod/Makefile
Updated.
pod/pod2html.SH
Updated.
Converted to 'SH' wrapper so correct #!/path/to/perl gets used.
pod/pod2latex.SH
pod/pod2man.SH
Converted to 'SH' wrapper so correct #!/path/to/perl gets used.
pp_hot.c
GIMME patch from Tim Bunce.
pp_sys.c
Allow use of F_FREESP fcntl() directive to truncate files.
If HAS_MKDIR is not defined, the stat() call to check the result
of the system "mkdir" call was failing because the filename
pointer no longer pointed to the right location.
sv.c
Protect some (UV) casts by the new U_V() macro.
util.c
New cast_uv() function to support the U_V() macro, if needed.
cast_iv() and cast_uv() no longer assume 32-bit longs.
The various cast_() functions have also been simplified.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Configure
Updated to dist PL53.
Fix overlapping memcpy test.
Add check for ld. Use $cc instead, if on an ELF system.
With -d, don't reuse config.sh unless $myuname matches.
Warn more explicitly about changing compilers before reloading
old config.sh.
Detect Linux ELF format in nm scan.
Better detection of d_castneg. (ISC 4.1 was passing the test,
but couldn't cast in an argument list.)
Suggest -fpic for dynamic loading if you're using GNU CC under any
name.
No longer test for byacc, fmod, or drem, since they are not used.
Makefile.SH
Use $ld, not ld (only matters for SVR4)
Silence some byacc-related harmless error messages.
README
Suggest using -Dcc=gcc (or whatever).
Warn about reusing old config.sh. (The warning was already there
in 5.001; I've just expanded it a little.)
Warn against using GNU as and GNU ld on SunOS & Solaris.
config.H
config_h.SH
Updated to match Configure.
doio.c
Add socket includes.
ext/Fcntl/Fcntl.xs
Fix typo: s/SETFL/F_SETFL/;
handy.h
Check _G_HAVE_BOOL, not just if it's defined.
hints/dynix.sh
hints/hpux_9.sh
hints/linux.sh
hints/netbsd.sh
hints/titanos.sh
Updated. ELF on linux should probably work.
installperl
Install pod2html, pod2latex, and pod2man.
lib/ExtUtils/MakeMaker.pm
Updated to 4.091. (4.09 + a small writedoc() patch.)
myconfig
Now includes 'ld' command.
perl.c
Revised an #elif clause since Pyramid's cpp doesn't understand
#elif.
perl.h
Fix U_L, I_V, and I_32 cast macros to ensure that
the cast_ulong(), cast_iv(), and cast_i32() functions (if used)
are passed a double. In particular, the FIXSTATUS macros were
handing int's to U_L().
Remove unnecessary HAS_FMOD testing (See util.c).
proto.h
Remove my_fmod() prototype. (See util.c)
sv.h
Fix GV/CV typo.
util.c
Simplified cast_i32() and cast_iv() to mimic what *actually*
happens on a SPARC running SunOS 4.1.3. (Previously, they did
some complicated fmod() calculation. I've since discovered that's
not what happens on the SPARC.)
With this change, fmod() is no longer necessary. Hence my_fmod
is removed. This also means the HAS_FMOD and HAS_DREM tests are
no longer needed in Configure, so they are gone too.
vms/config.vms
Remove unnecessary HAS_FMOD and HAS_DREM defines.
x2p/Makefile.SH
Silence byacc-related things.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
fix]
This is my patch patch.1b for perl5.001.
[Actually, that's a lie. This is just a reposting of two of my
patches (removing some byacc dependencies and fixing some set*id
stuff) + one version of the x2p/walk.c emit_split() patch.
I've just usurped the letter 'b' to fit in my patch sequence.
You probably have already applied these as well, but again here they
are all packaged up nice and neatly for storage on ftp sites.]
Here's one possible solution to the byacc problem. Short summary:
make will think your perly.[ch] are out of date because perly.c.diff
has changed. They aren't really out of date, but the ordering of the
timestamps in the distribution fools make. I had put some traps in
perly.fixer to check to make sure that everything got run only if
you ran the same version of byacc (1.8) as Larry, but the traps aren't good
enough: There's a Cygnus version of byacc out there that also calls
itself 1.8 (with a +Cygnus xxx note attached). I don't think I'll
ever be able to reliably detect all mutant byacc's, so the safest
course of action seems to be to never run byacc.
(Yes, the perly.fixer check could be a _lot_ smarter. Volunteers?)
This simple-minded fix just puts in a
perly.c: perly.y
- touch perly.c
perly.h: perly.y
- touch perly.h
to bring perly.[ch] up to date, if needed.
The '-' are in case your source is read-only.
It also does the same trick in x2p/Makefile.SH.
WARNING! Danger! Larry, if you do this, it means you have to
explicitly call
make run_byacc
whenever you change perly.y, perly.c.diff, or
cd x2p; make run_byacc
if you change x2p/a2p.y.
However, it might be worth it. I leave it up to you.
|