perl.git
23 years agoperl 5.002beta2 patch: MANIFEST
Perl 5 Porters [Sat, 13 Jan 1996 03:30:43 +0000 (03:30 +0000)] 
perl 5.002beta2 patch: MANIFEST

Include Stub Readline library as part of new debugger.

Include hints file dec_osf for ODBM_File extension.

23 years agoperl 5.002beta2 patch: Configure
Perl 5 Porters [Thu, 11 Jan 1996 04:09:13 +0000 (04:09 +0000)] 
perl 5.002beta2 patch: Configure

Use nm -D on Linux with shared libraries, if the system
supports nm -D.

23 years agoAdd missing "" around $Config{startperl}.
Perl 5 Porters [Mon, 1 Jan 1996 23:11:27 +0000 (23:11 +0000)] 
Add missing "" around $Config{startperl}.

23 years agoUse new config_h.SH STARTPERL #define.
Perl 5 Porters [Mon, 1 Jan 1996 23:11:28 +0000 (23:11 +0000)] 
Use new config_h.SH STARTPERL #define.

23 years agoperl 5.002beta1h patch: vms/ext/MM_VMS.pm
Perl 5 Porters [Tue, 2 Jan 1996 03:33:32 +0000 (03:33 +0000)] 
perl 5.002beta1h patch: vms/ext/MM_VMS.pm

Updated for VMS.  This might be obsolete now that we have
lib/ExtUtils/MM_VMS.pm.

23 years agoUpdated for VMS.
Perl 5 Porters [Tue, 2 Jan 1996 03:34:26 +0000 (03:34 +0000)] 
Updated for VMS.

23 years agoperl 5.002beta1h patch: utils/pl2pm.PL
Perl 5 Porters [Wed, 3 Jan 1996 01:14:57 +0000 (01:14 +0000)] 
perl 5.002beta1h patch: utils/pl2pm.PL

Changed into a .PL extract file for proper setting of
$startperl.

Add _minimal_ pod documentation.

23 years agoperl 5.002beta1h patch: utils/perldoc.PL
Perl 5 Porters [Tue, 2 Jan 1996 01:28:08 +0000 (01:28 +0000)] 
perl 5.002beta1h patch: utils/perldoc.PL

Better error handling.

Updated to use Pod::Text, if available.

More VMS friendly.

New -u option .

23 years agoNew utility.
Perl 5 Porters [Sat, 18 Nov 1995 03:15:13 +0000 (03:15 +0000)] 
New utility.

23 years agoperl 5.002beta1h patch: utils/h2xs.PL
Perl 5 Porters [Tue, 2 Jan 1996 00:50:55 +0000 (00:50 +0000)] 
perl 5.002beta1h patch: utils/h2xs.PL

Add version stuff.

The old version didn't have a number.  This one's called 1.12.

23 years agoperl 5.002beta1h patch: utils/h2ph.PL
Perl 5 Porters [Tue, 2 Jan 1996 03:13:31 +0000 (03:13 +0000)] 
perl 5.002beta1h patch: utils/h2ph.PL

Add patch for AIX files which sometimes have #include<foo.h>,
i.e., no spaces after the word 'include'.

23 years agoperl 5.002beta1h patch: utils/c2ph.PL
Perl 5 Porters [Wed, 3 Jan 1996 01:05:41 +0000 (01:05 +0000)] 
perl 5.002beta1h patch: utils/c2ph.PL

Ungracefully merge the old c2ph.doc in as an embedded pod.

Delete lots of trailing spaces and tabs that have crept in.

23 years agoNew file to build the utilities.
Perl 5 Porters [Wed, 3 Jan 1996 01:06:18 +0000 (01:06 +0000)] 
New file to build the utilities.

23 years agoNew test.
Perl 5 Porters [Tue, 2 Jan 1996 02:43:53 +0000 (02:43 +0000)] 
New test.

23 years agoVMS changes ?
Perl 5 Porters [Tue, 2 Jan 1996 03:32:50 +0000 (03:32 +0000)] 
VMS changes ?

23 years agoRebuilt using pod/buildtoc and fmt.
Perl 5 Porters [Thu, 4 Jan 1996 01:04:20 +0000 (01:04 +0000)] 
Rebuilt using  pod/buildtoc and fmt.

23 years agoMention the Safe extension.
Perl 5 Porters [Thu, 4 Jan 1996 00:52:14 +0000 (00:52 +0000)] 
Mention the Safe extension.

23 years agoperl 5.002beta1h patch: pod/Makefile
Perl 5 Porters [Wed, 3 Jan 1996 02:06:41 +0000 (02:06 +0000)] 
perl 5.002beta1h patch: pod/Makefile

Include -I../lib so that pod2* can find the appropriate libraries.

The pod names are once again sorted.

The PERL line is wrong.  It should read
This file is automatically generated, but I happened to do it on
a system without miniperl avaialable, so my script fell back on
the perl default.

23 years agoperl 5.002beta1h patch: perl.h
Perl 5 Porters [Tue, 2 Jan 1996 23:21:55 +0000 (23:21 +0000)] 
perl 5.002beta1h patch: perl.h

5.002beta1 attempted some memory optimizations, but unfortunately
they can result in a memory leak problem.  This can be
avoided by #define STRANGE_MALLOC.  I do that here until
consensus is reached on a better strategy for handling the
memory optimizations.

Include maxo for the maximum number of operations (needed
for the Safe extension).

23 years agoperl 5.002beta1h patch: perl.c
Perl 5 Porters [Thu, 4 Jan 1996 02:13:53 +0000 (02:13 +0000)] 
perl 5.002beta1h patch: perl.c

Updated to say beta1h.

Move VMS env code.

23 years agoUpdated
Perl 5 Porters [Thu, 7 Dec 1995 11:09:56 +0000 (11:09 +0000)] 
Updated

23 years agoNew file.
Perl 5 Porters [Tue, 26 Dec 1995 06:55:30 +0000 (06:55 +0000)] 
New file.

23 years agoperl 5.002beta1h patch: miniperlmain.c
Perl 5 Porters [Wed, 3 Jan 1996 23:03:37 +0000 (23:03 +0000)] 
perl 5.002beta1h patch: miniperlmain.c

Better locale handling, courtesy of jhi.

Include a proper cast of NULL for non-prototyping compilers.

23 years agoGive a proper NAME description.
Perl 5 Porters [Tue, 2 Jan 1996 01:30:24 +0000 (01:30 +0000)] 
Give a proper NAME description.

23 years agoperl 5.002beta1h patch: mg.c
Perl 5 Porters [Thu, 4 Jan 1996 00:49:12 +0000 (00:49 +0000)] 
perl 5.002beta1h patch: mg.c

Set up a reliable signal handler, courtesy of Kenneth Albanowski.
This needs to be documented still.  The idea is that even on
System V systems, you won't have to reset the signal handler as
the first action inside your signal handler.

23 years agoUse the 'new' startperl variable.
Perl 5 Porters [Mon, 1 Jan 1996 23:11:28 +0000 (23:11 +0000)] 
Use the 'new' startperl variable.

23 years agoFix some old typos.
Perl 5 Porters [Mon, 1 Jan 1996 23:10:37 +0000 (23:10 +0000)] 
Fix some old typos.

23 years agoA patch from Tim Bunce (?)
Perl 5 Porters [Mon, 1 Jan 1996 23:10:37 +0000 (23:10 +0000)] 
A patch from Tim Bunce (?)

23 years agoperl 5.002beta1h patch: lib/Pod/Text.pm
Perl 5 Porters [Thu, 4 Jan 1996 01:16:50 +0000 (01:16 +0000)] 
perl 5.002beta1h patch: lib/Pod/Text.pm

New file.  This was created by Dov (???) and enhanced
by Kenneth Albanowski, but all based on Tom C.'s pod2text.
Unfortunately, they used a version of pod2text earlier than
the one in patch.2b1g.  I've tried to straighten this all out.

Equally unfortunately, we've all left Tom as the AUTHOR, even
though we can't hold him responsible for errors he didn't
introduce.  Oh well.

23 years agoVMS-specific changes.
Perl 5 Porters [Tue, 2 Jan 1996 03:30:49 +0000 (03:30 +0000)] 
VMS-specific changes.

23 years agoUpdated from xsubpp-1.924 to 1.929.
Perl 5 Porters [Tue, 2 Jan 1996 03:29:59 +0000 (03:29 +0000)] 
Updated from xsubpp-1.924 to 1.929.

23 years agoUpdated from MakeMaker 5.12 to 5.16.
Perl 5 Porters [Tue, 2 Jan 1996 01:07:10 +0000 (01:07 +0000)] 
Updated from MakeMaker 5.12 to 5.16.

23 years agoNew file. Incorporates VMS-specific items into MakeMaker.
Perl 5 Porters [Tue, 2 Jan 1996 01:07:10 +0000 (01:07 +0000)] 
New file.  Incorporates VMS-specific items into MakeMaker.

23 years agoperl 5.002beta1h patch: lib/Exporter.pm
Perl 5 Porters [Thu, 4 Jan 1996 01:02:08 +0000 (01:02 +0000)] 
perl 5.002beta1h patch: lib/Exporter.pm

Include Tim Bunce's enhanced Exporter.  I also tried to
resolve the two copies of documentation that I had.

23 years agoVMS patches.
Perl 5 Porters [Tue, 2 Jan 1996 03:28:57 +0000 (03:28 +0000)] 
VMS patches.

23 years agoHonor trailing \n in messages, as is done for warn().
Perl 5 Porters [Mon, 1 Jan 1996 23:10:38 +0000 (23:10 +0000)] 
Honor trailing \n in messages, as is done for warn().

23 years agoAvoid tainting problems.
Perl 5 Porters [Tue, 2 Jan 1996 03:10:36 +0000 (03:10 +0000)] 
Avoid tainting problems.

23 years agoperl 5.002beta1h patch: installperl
Perl 5 Porters [Wed, 3 Jan 1996 01:33:57 +0000 (01:33 +0000)] 
perl 5.002beta1h patch: installperl

Use new location of utility scripts.

Eliminate double '//' and extra "".

23 years agoUse fork if available.
Perl 5 Porters [Thu, 28 Dec 1995 03:06:11 +0000 (03:06 +0000)] 
Use fork if available.

23 years agoAddress change.
Perl 5 Porters [Tue, 2 Jan 1996 01:49:45 +0000 (01:49 +0000)] 
Address change.

23 years agoperl 5.002beta1h patch: hints/irix_6.sh
Perl 5 Porters [Tue, 2 Jan 1996 01:54:04 +0000 (01:54 +0000)] 
perl 5.002beta1h patch: hints/irix_6.sh

Address change.

Note SGI stdio/malloc related problem.

23 years agoNote SGI stdio/malloc related problem.
Perl 5 Porters [Tue, 2 Jan 1996 01:53:52 +0000 (01:53 +0000)] 
Note SGI stdio/malloc related problem.

23 years agoList of tested systems updated a little.
Perl 5 Porters [Tue, 12 Dec 1995 07:03:36 +0000 (07:03 +0000)] 
List of tested systems updated a little.

23 years agoAdded maxo and save_pptr items.
Perl 5 Porters [Tue, 2 Jan 1996 23:01:59 +0000 (23:01 +0000)] 
Added maxo and save_pptr items.

23 years agoUpdated to Oct 31, 1995 version.
Perl 5 Porters [Tue, 2 Jan 1996 03:27:32 +0000 (03:27 +0000)] 
Updated to Oct 31, 1995 version.

23 years agoVMS-specific updates.
Perl 5 Porters [Tue, 2 Jan 1996 03:28:02 +0000 (03:28 +0000)] 
VMS-specific updates.

23 years agoAuto-generated from global.sym and interp.sym.
Perl 5 Porters [Thu, 4 Jan 1996 00:28:08 +0000 (00:28 +0000)] 
Auto-generated from global.sym and interp.sym.

23 years agoVMS changes for kill.
Perl 5 Porters [Tue, 2 Jan 1996 03:27:07 +0000 (03:27 +0000)] 
VMS changes for kill.

23 years agoperl 5.002beta1h patch: config_h.SH
Perl 5 Porters [Wed, 3 Jan 1996 22:14:37 +0000 (22:14 +0000)] 
perl 5.002beta1h patch: config_h.SH

Check for HAS_SIGACCTION

Add STARTPERL define for C code (specifically, a2p).

23 years agoUpdated to match xsubpp-1.929.
Perl 5 Porters [Mon, 1 Jan 1996 22:57:57 +0000 (22:57 +0000)] 
Updated to match xsubpp-1.929.

23 years agoUpdated.
Perl 5 Porters [Tue, 2 Jan 1996 03:33:02 +0000 (03:33 +0000)] 
Updated.

23 years agoNow builds .PL utilities in the utils/ subdirectory.
Perl 5 Porters [Wed, 3 Jan 1996 01:28:30 +0000 (01:28 +0000)] 
Now builds .PL utilities in the utils/ subdirectory.

23 years agoperl 5.002beta1h patch: MANIFEST
Perl 5 Porters [Wed, 3 Jan 1996 01:37:54 +0000 (01:37 +0000)] 
perl 5.002beta1h patch: MANIFEST

Rearrange files some.  Try to move .PL utilities to a separate
utils/ subdirectory.

Merge c2ph.PL and c2ph.doc.

Add the Safe extension.

23 years agoperl 5.002beta1h patch: INSTALL
Perl 5 Porters [Wed, 3 Jan 1996 22:06:28 +0000 (22:06 +0000)] 
perl 5.002beta1h patch: INSTALL

Document how to skip various extensions.

Indicate that site_perl is typically under (not beside)
/usr/local/lib/perl5.

Mention how to avoid nm extraction.

23 years agoperl 5.002beta1h patch: Configure
Perl 5 Porters [Wed, 3 Jan 1996 22:14:37 +0000 (22:14 +0000)] 
perl 5.002beta1h patch: Configure

Upgraded to metaconfig patchlevel 60.

Add in usesafe variable to include or exclude the Safe extension.

Test for sigaction().

Check for pager.  This was actually accidental since perldoc.PL
mentions $pager and metaconfig has a unit to check for the
user's pager.  In retrospect, I decided the Configure check
didn't do any harm and some extension writers might decide to
use it.

Always put man1dir under $prefix unless a command line
override is used.

Allow command-line overrides of $man1ext and $man3ext.

Allow man1dir and man3dir names like .../man.1 instead of
just .../man1.

Lots of rearrangements of various pieces of Configure.
This might be because I ran metaconfig on a different
architecture.

libc searching now honors $libpth.  Previously, it (almost)
always looked in /usr/lib before checking /lib.

Only prompt user if voidflags is not 15.  If voidflags is 15, then
we presume all is well.

24 years agoperl5.001 patch.1h: [re-organisations and patch description]
Andy Dougherty [Thu, 25 May 1995 11:49:37 +0000 (23:49 +1200)] 
perl5.001 patch.1h: [re-organisations and patch description]

[editor's note: individual patches have been split from this combined
patch]

23 years agoThis is patch.2b1g to perl5.002beta1.
Andy Dougherty [Thu, 21 Dec 1995 00:01:16 +0000 (00:01 +0000)] 
This is patch.2b1g to perl5.002beta1.

cd to your perl source directory, and type
patch -p1 -N < patch.2b1g

This patch is just my packaging of Tom's documentation patches
he released as patch.2b1g.

Patch and enjoy,

    Andy Dougherty doughera@lafcol.lafayette.edu
    Dept. of Physics
    Lafayette College, Easton PA 18042

23 years agoThis is patch.2b1f to perl5.002beta1.
Andy Dougherty [Fri, 8 Dec 1995 00:34:53 +0000 (00:34 +0000)] 
This is patch.2b1f to perl5.002beta1.

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

23 years agoThis is patch.2b1e to perl5.002beta1. This is simply
Andy Dougherty [Tue, 5 Dec 1995 22:52:22 +0000 (22:52 +0000)] 
This is patch.2b1e to perl5.002beta1.  This is simply
an upgrade from MakeMaker-5.10 to MakeMaker-5.11.

Nothing else is included.

cd to your perl source directory and type
patch -p1 -N < patch.2b1e

Patch and enjoy,

    Andy Dougherty doughera@lafcol.lafayette.edu
    Dept. of Physics
    Lafayette College, Easton PA 18042

Here are Andreas' notes:

MakeMaker 5.11 is only half a step forward.

It fixes the most urgent problems and includes a few new subroutines
from Ilya's pen without actually using them. It does not yet install
into sitelib. It does not write a .packlist file anymore (this is a
transitory non-solution, I will try to replace the .packlist
computation by a safer replacement).

But it does fix the known bugs: extralibs was wrong, link() was called
on systems without link(), manpages for man1dir were installed
completely wrong, if xsubpp was too old we reached a runtime error,
libg++ could not be handled because of a missing \Q, xsubpp was called
with -noprototypes per default. A few installation directories didn't
keep up with the defaults from 5.002 when used with PREFIX.

I apologize for unresolved issues, especially with regard to Ilya's
changes, but I prefer to have one thing done before I try the next
changes.

Get it from CPAN/authors/id/ANDK/MakeMaker-5.11.tar.gz

The testing I have done is limited, because perl5.002b1d has problems
with some newXS calls. So extensions where I had to use xubpp could
not be compiled here. Wherever I had already run xsubpp, everything
seemed ok.

I append the Changes file below.

andreas

          Installation of files to INST_MAN1DIR was missing a
          $self->catdir and a dot between the filename and the
          MAN1EXT.

          There was a rare problem with the .packlist file: The
          .packlist entries are appended to the .packlist file in
          INST_ARCHAUTOLIB. The file is rewritten later to contain
          only unique entries. For the rewriting of the file I used
          perl -i.bak. That's not ok for AFS and dies if the .packlist
          file doesn't exist for any other reason.  THIS PROBLEM IS
          NOT YET RESOLVED. I have dropped support for .packlist until
          I have a nice fix for this.

          Don Jackson saw this on his sun4-sunos box.
              >Argument "Running '/bin/perl
          /usr/local/lib/perl5/ExtUtils/x..." isn't numeric
              >for right bitshift at
          /usr/local/lib/perl5/ExtUtils/MakeMaker.pm line 1708.
              >0 at /usr/local/lib/perl5/ExtUtils/MakeMaker.pm line
          1708.
              >Argument "Running '/bin/perl
          /usr/local/lib/perl5/ExtUtils/x..." isn't numeric
              >for right bitshift at
          /usr/local/lib/perl5/ExtUtils/MakeMaker.pm line 1734.
              >0 at /usr/local/lib/perl5/ExtUtils/MakeMaker.pm line
          1734.
          Was a precedence bug, solved.

          Ilya sent a big patch for OS2. It was a bit complicated to
          fold it in, so I included only the easy changes, and would
          like to reconsider the thing, when there is a bit more time
          and less pressure. All the new methods are included, but not
          yet used, so the next patch will be easier to comprehend.

          manifypods had no dependencies. Added them, although the
          correct solution would be to have dependencies on the
          produced manpages. The latter is not possible, because they
          contain colons.

          Two occurrences of \Q in did not have a coresponding \E.
          Fixed.

          Liblist choked on -lg++, because the \Q was missing
          completely. Fixed.

          Manifest.pm tried a link() even on systems without link()
          available. Fix supplied by Ilya applied.

          Introduced XS_VERSION to support a better matching control
          between the VERSION of the *.pm and the *.xs part of the
          package.

          Dropped the default -noprototype argument to xsubpp.

23 years agoThis is patch.2b1d to perl5.002beta1.
Andy Dougherty [Sat, 2 Dec 1995 03:25:17 +0000 (03:25 +0000)] 
This is patch.2b1d to perl5.002beta1.

cd to your perl source directory and type
patch -p1 -N < patch.2b1a

This patch includes patches for the following items:

    NETaa14710: Included bsdi_bsdos.sh hint file.

    pod/perlre.pod:  Mention 32bit limit.

    Configure Updates.

    Update Socket.xs to version 1.5.  This handles
    systems that might not have <sys/un.h>.

    Fix missing quotes in h2ph.PL

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

23 years agoThis is patch.2b1c to perl5.002beta1. This patch includes
Andy Dougherty [Sat, 2 Dec 1995 03:12:54 +0000 (03:12 +0000)] 
This is patch.2b1c to perl5.002beta1.  This patch includes
lib/SelfLoader, version 1.06, and
lib/Devel/SelfStubber, version 1.01.
These versions include prototype support.

This is simply re-posting these library modules.
I have also updated MANIFEST to include them.

Nothing else is included.

cd to your perl source directory and type
patch -p1 -N < patch.2b1c

Patch and enjoy,

    Andy Dougherty doughera@lafcol.lafayette.edu
    Dept. of Physics
    Lafayette College, Easton PA 18042

23 years agoMakeMaker-5.10
Andy Dougherty [Sat, 2 Dec 1995 02:58:02 +0000 (02:58 +0000)] 
MakeMaker-5.10

Upgrade to MakeMaker-5.10
and a revised minimod.PL that now writes a pod section into ExtUtils::Miniperl.

23 years agoxsubpp 1.924
Paul Marquess [Fri, 24 Nov 1995 09:01:17 +0000 (09:01 +0000)] 
xsubpp 1.924

23 years ago5.002 beta 1
Larry Wall [Mon, 20 Nov 1995 22:01:00 +0000 (10:01 +1200)] 
5.002 beta 1

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

23 years agoThis is my patch patch.1n for perl5.001. perl-5.001n
Andy Dougherty [Tue, 31 Oct 1995 03:33:09 +0000 (03:33 +0000)] 
This is my patch  patch.1n  for perl5.001.

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

24 years agoThis is my patch patch.1m for perl5.001.
Andy Dougherty [Thu, 22 Jun 1995 00:43:21 +0000 (00:43 +0000)] 
This is my patch  patch.1m  for perl5.001.

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

24 years agoThis is my patch patch.1l for perl5.001.
Andy Dougherty [Tue, 6 Jun 1995 01:41:07 +0000 (01:41 +0000)] 
This is my patch  patch.1l  for perl5.001.

To apply, change to your perl directory, run the command above, then
apply with
    patch -p1 -N  < thispatch.

This patch fixes all the Configure & build problems for which I have a
solution.

After you apply this patch, I would recommend:
    make distclean  # or at the very least   rm config.sh
    sh Configure [whatever options you use]
    make depend
    make
    make test

Patch and enjoy,

    Andy Dougherty doughera@lafcol.lafayette.edu
    Dept. of Physics
    Lafayette College, Easton PA 18042

Here are the file-by-file contents:

Changes.Conf
    Updated a bit.

Configure
    Now honors hints on <pwd.h>-related things (for CX/UX, in particular).

    Now honors previous values of d_stdio_ptr_lval and d_stdio_cnt_lval.

    DB test programs now conditionally include 'const'.

MANIFEST
    Updated.

config_H
    Updated.

config_h.SH
    Include trailing /**/ on STDIO_..._LVALUE defines.

hints/cxux.sh
    Simplified.
    Include info about failing test.

hints/epix.sh
    A guess at a dynamic loading fix.

hints/next_3.sh
    Add a few comments.

lib/Benchmark.pm
    Ensure numeric context on number of loop iterations.

op.c
    Spider's padlex and goto &$nonesuch patches.

perl.c
    fputs("\tUnofficial patchlevel 1l.\n",stdout);

pp_ctl.c
pp_hot.c
scope.c
    Spider's padlex and goto &$nonesuch patches.

24 years agoThis is my patch patch.1k for perl5.001.
Andy Dougherty [Tue, 6 Jun 1995 01:17:58 +0000 (01:17 +0000)] 
This is my patch  patch.1k  for perl5.001.

This patch brings you MakeMaker-4.15.  This is MakeMaker-4.13 plus
patches to provide the LD_RUN_PATH environment variable for building
shared libraries, and the appropriate -I flags for running xsubpp
while building perl.

To apply, change to your perl directory, run the command above, then
apply with
    patch -p1 -N  < thispatch.

After you apply this patch, you should apply patch.1l.

Patch and enjoy,

    Andy Dougherty doughera@lafcol.lafayette.edu
    Dept. of Physics
    Lafayette College, Easton PA 18042

24 years agoThis is my patch patch.1j for perl5.001.
Andy Dougherty [Mon, 5 Jun 1995 02:03:44 +0000 (02:03 +0000)] 
This is my patch  patch.1j  for perl5.001.

To apply, change to your perl directory and 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:
    Linux fixes:  Now correctly sets & uses stdio _ptr and _cnt
    tricks only when feasible (Configure, config_h.SH, config_H,
    doio.c, sv.c x2p/str.c)

    #!path-to-perl fixed to use $binexp instead of $bin.  This should
    really be fixed to do the correct perl start-up stuff.  Volunteers?
    (c2ph.SH, h2ph.SH, h2xs.SH, makeaperl.SH, perldoc.SH,
    pod/pod2*.SH, x2p/find2perl.SH, x2p/s2p.SH)

    hint updates:  hints/apollo.sh, hints/linux.sh, hints/freebsd.sh,
    hints/sco_3.sh.

    xsubpp version 1.7.  (includes CASE support)

    pod/perlbot updates.

    my lib/AutoLoader patch (to use @INC).

    [ON]DBM_File/Makefile.PL now have a few hint files.

    Other sundry small things.

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:

Configure
    Checks if File_ptr(fp) and File_cnt(fp) can be assigned to.

    Fix typo:  s/sytem/system/

MANIFEST
    Include new extension hint files.

README
    Some clarifications, thanks to John Stoeffel.  Tell users how to
    not use dynamic loading.

c2ph.SH
    Use $binexp instead of $bin.

config_H
    Updated to match config_h.SH.

config_h.SH
    Include defines for whether File_ptr(fp) and File_cnt(fp)
    can be assigned to.

doio.c
    Use defines for whether File_ptr(fp) and File_cnt(fp) can be assigned to.

ext/DynaLoader/DynaLoader.pm
    Improve error messages and a little documentation.

ext/NDBM_File/hints/solaris.pl
    New hint file.

ext/ODBM_File/Makefile.PL
    Removed -ldbm.nfs, since it's now in the sco hint file.

ext/ODBM_File/hints/sco.pl
ext/ODBM_File/hints/solaris.pl
ext/ODBM_File/hints/svr4.pl
    New hint files.

h2ph.SH
h2xs.SH
    Use $binexp instead of $bin.

hints/apollo.sh
hints/freebsd.sh
hints/linux.sh
hints/sco_3.sh
    Updated.

lib/AutoLoader.pm
    Eliminate else clause in sub import.

    Handle case where @INC contains relative paths.

lib/ExtUtils/xsubpp
    Update to version 1.7.  This includes CASE support.

lib/I18N/Collate.pm
    Updated documentation.

lib/ftp.pl
    Look for socket.ph or sys/socket.ph

lib/getcwd.pl
    Use defined().

makeaperl.SH
    Use $binexp instead of $bin.

perl.c
    fputs("\tUnofficial patchlevel 1j.\n",stdout);

perldoc.SH
    Use $binexp instead of $bin.

    Turn off debugging messages.

pod/perlbot.pod
    Updated.

pod/pod2html.SH
pod/pod2latex.SH
pod/pod2man.SH
    Use $binexp instead of $bin.

sv.c
    Use defines for whether File_ptr(fp) and File_cnt(fp) can be assigned to.

toke.c
    Fix spelling of ambiguous.

x2p/find2perl.SH
x2p/s2p.SH
    Use $binexp instead of $bin.

x2p/str.c
    Use defines for whether File_ptr(fp) and File_cnt(fp) can be assigned to.

24 years agoThis is my patch patch.1i for perl5.001.
Andy Dougherty [Tue, 30 May 1995 22:59:41 +0000 (22:59 +0000)] 
This is my patch  patch.1i  for perl5.001.

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.

24 years agoThis is my patch patch.1h for perl5.001.
Andy Dougherty [Wed, 24 May 1995 22:49:37 +0000 (22:49 +0000)] 
This is my patch  patch.1h  for perl5.001.

To apply, change to your perl directory, run the commands above, then
apply with
    patch -p1 -N  < thispatch.

After you apply this patch, you should apply patch.1i before
reConfiguring and rebuilding.

This patch just includes updates to the ext/ subdirectory.

Here are the highlights:
    Grand autoload patch.

    Embedded pods.

    DB_File and GDBM_File updates.

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:

ext/DB_File/DB_File.pm
    Updated to version 0.2

    Embedded pod.

ext/DB_File/DB_File.xs
    Updated to version 0.2

ext/DynaLoader/DynaLoader.pm
    Embedded pod.

ext/DynaLoader/README
    Updated to refer to pod documentation in DynaLoader.pm.

ext/Fcntl/Fcntl.pm
    Grand AutoLoader patch.

    Embedded pod.

ext/GDBM_File/GDBM_File.pm
    Grand AutoLoader patch.

    Embedded pod.

ext/GDBM_File/GDBM_File.xs
    Added gdbm_sync(), gdbm_exists(), and gdbm_setopt() functions.

ext/POSIX/POSIX.pm
    Grand AutoLoader patch.

    Embedded pod.

    move tan() into the .xs file.  (It didn't exist before.)

    Change usage message for chmod to reflect reality.

ext/POSIX/POSIX.xs
    move tan() into the .xs file.  (It didn't exist before.)

ext/SDBM_File/sdbm/sdbm.c
    Fix type of free prototype.

ext/Socket/Socket.pm
    Grand AutoLoader patch.

    Embedded pod.

24 years agoThis is my patch patch.1g for perl5.001.
Andy Dougherty [Tue, 30 May 1995 01:56:48 +0000 (01:56 +0000)] 
This is my patch  patch.1g  for perl5.001.

This patch only includes updates to the lib/ directory and
the removal of the pod/modpods.  The main things are the following:

The modpods are now embedded in their corresponding .pm files.

The Grand AutoLoader patch.

Updates to lib/ExtUtils/xsubpp by Paul Marquess
<pmarquess@bfsec.bt.co.uk>.

Minor changes to a very few modules and pods.

To apply, change to your perl directory, run the commands above, then
apply with
    patch -p1 -N  < thispatch.

After you apply this patch, you should go on to apply patch.1h and
patch.1i before reConfiguring and building.

Patch and enjoy,

Andy Dougherty doughera@lafcol.lafayette.edu
Dept. of Physics
Lafayette College, Easton PA

Here's the file-by-file description:

lib/AnyDBM_File.pm
    Embedded pod.

lib/AutoLoader.pm
    Grand AutoLoader patch.

    Embedded pod.

lib/AutoSplit.pm
    Grand AutoLoader patch.

    Embedded pod.

    Skip pod sections when splitting .pm files.

lib/Benchmark.pm
lib/Carp.pm
lib/Cwd.pm
lib/English.pm
    Grand AutoLoader patch.

    Embedded pod.

lib/Exporter.pm
    Grand AutoLoader patch.

    Embedded pod.

    Update comments to match behavior.

lib/ExtUtils/MakeMaker.pm
    Include installation of .pod and .pm files.

    Space out documentation for better printing with pod2man.

lib/ExtUtils/xsubpp
    Patches from Paul Marquess <pmarquess@bfsec.bt.co.uk>, 22 May 1995.
    Now at version 1.4.

lib/File/Basename.pm
    Embedded pod.

lib/File/CheckTree.pm
    Embedded pod.

lib/File/Find.pm
    Embedded pod.

    Included finddepth pod too.

lib/FileHandle.pm
    Embedded pod.

lib/Getopt/Long.pm
    Embedded pod.

    Fixed PERMUTE order bug.

lib/Getopt/Std.pm
    Embedded pod.

    Caught accessing undefined element off end of @arg array.

lib/I18N/Collate.pm
lib/IPC/Open2.pm
lib/IPC/Open3.pm
lib/Net/Ping.pm
    Embedded pod.

lib/Term/Complete.pm
    Embedded pod.

    Changed name from complete to Complete to match documentation and
    exported name.

lib/Text/Abbrev.pm
    Embedded pod.

lib/Text/Tabs.pm
    Updated.

lib/integer.pm
lib/less.pm
lib/sigtrap.pm
lib/strict.pm
lib/subs.pm
    Embedded pod.

24 years agoperl5.001 patch.1f
Andy Dougherty [Tue, 30 May 1995 21:28:07 +0000 (21:28 +0000)] 
perl5.001 patch.1f

This patch only includes updates for perlapi.pod, perlbot.pod,
perlcall.pod, and perlguts.pod from the authors.

24 years agoperl5.001 patch.1e
Andy Dougherty [Tue, 18 Apr 1995 01:06:04 +0000 (01:06 +0000)] 
perl5.001 patch.1e

Here's what's included:

Configure
    Change a few more spots so that ' ' is equivalent to "none".
    This allows hint files to set empty values for variables.

    Split cpp-symbol awk command for old awk (Harris Night Hawk).

hints/irix_5.sh
hints/irix_6.sh
    Explicitly use 'ld' rather than 'cc' to build dynamic modules.

hints/linux.sh
    Allow users to specify an alternate compiler on the command line, e.g.
    Configure -Dcc=gcc-elf.

lib/ExtUtils/MakeMaker.pm
    Fix CC substitution to allow c++ and variants as well.

perl.c
    fputs("Unofficial patchlevel 1e.\n",stdout);

pod/Makefile
    Include $(TEX) target for running pod2latex.
    Include some fixes from Bill Middleton.

24 years agoperl5.001 patch.1d
Andy Dougherty [Fri, 14 Apr 1995 22:32:18 +0000 (22:32 +0000)] 
perl5.001 patch.1d

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.

24 years agoperl5.001 patch.1c
Andy Dougherty [Thu, 6 Apr 1995 20:20:47 +0000 (20:20 +0000)] 
perl5.001 patch.1c

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.

24 years agoperl5.001 patch.1b: [byacc deps fix, set*id fixes, x2p/walk.c emit_split()
Andy Dougherty [Fri, 31 Mar 1995 00:56:10 +0000 (00:56 +0000)] 
perl5.001 patch.1b: [byacc deps fix, set*id fixes, x2p/walk.c emit_split()
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.

24 years ago[fix bug in print]
Larry Wall [Wed, 15 Mar 1995 16:34:28 +0000 (08:34 -0800)] 
[fix bug in print]

: In perl 5.001 the print function now only outputs one significant digit for the
: the results of some mathematical functions.
:
: $ cat mine
: #!/usr/bin/perl
: print sqrt(2), "\n";
: print 4 * atan2(1,1), "\n";
: print log(2), "\n";
: $ ./mine
: 1
: 3
: 0

Okay, I understand how this one happened.  This is a case where a
beneficial fix uncovered a bug elsewhere.  I changed the constant
folder to prefer integer results over double if the numbers are the
same.  In this case, they aren't, but it leaves the integer value there
anyway because the storage is already allocated for it, and it *might*
be used in an integer context.  And since it's producing a constant, it
sets READONLY.  Unfortunately, sv_2pv() bogusly preferred the integer
value to the double when READONLY was set.  This never showed up if you
just said

    print 1.4142135623731;

because in that case, there was already a string value.

Larry

24 years ago[fix s/// memory leak]
Larry Wall [Tue, 14 Mar 1995 00:43:53 +0000 (16:43 -0800)] 
[fix s/// memory leak]

In fixing another bug I installed a nasty memory leak in s///.  Here's the fix.

Larry

24 years agocleaner version of the official unofficial patch
Larry Wall [Mon, 13 Mar 1995 23:55:18 +0000 (15:55 -0800)] 
cleaner version of the official unofficial patch

: There were some warnings (AIX, xlc compiler):

Here's a cleaner version of the official unofficial patch, based on 5.001.

24 years agoOkay, here's your official unofficial closure leak patch
Larry Wall [Tue, 14 Mar 1995 23:25:31 +0000 (12:25 +1300)] 
Okay, here's your official unofficial closure leak patch

24 years agoPerl 5.001 perl-5.001
Larry Wall [Mon, 13 Mar 1995 06:32:14 +0000 (22:32 -0800)] 
Perl 5.001

[See the Changes file for a list of changes]

24 years agoperl5.000 patch.0o: [address] a few more Configure and build nits. perl-5.000o
Andy Dougherty [Fri, 10 Mar 1995 23:34:12 +0000 (23:34 +0000)] 
perl5.000 patch.0o: [address] a few more Configure and build nits.

This patch addresses a few more Configure and build nits.  Full
details are given below, but the main hightligths are (slightly)
better support for nested extensions and DLD and AIX MakeMaker fixes.

Configure
        Detect MachTen.  Thanks to Mark Pease <peasem@primenet.com>.
        Delete some tabs that caused a MachTen /bin/sh core dump!
        Detect extensions nested 1 level deep, e.g.  Devel/DProf/DProf.xs

MANIFEST
MANIFEST.new
        Include new hints/machten.sh hint file.

Makefile.SH
        Document why we use ./makedir instead of mkdir.

U/Extensions.U
        Detect extensions nested 1 level deep, e.g.  Devel/DProf/DProf.xs

U/dist3_051.pat
        Include MachTen patches.

configpm
        Convert nested extension names from filesytem-dependent Devel/DProf
        to perl5's internal naming scheme Devel::DProf.

doio.c
        A dup-related buglet fix from Hallvard B. Furuseth
        <h.b.furuseth@usit.uio.no>.

ext/DB_File/DB_File.pm
ext/DynaLoader/DynaLoader.pm
ext/Fcntl/Fcntl.pm
ext/GDBM_File/GDBM_File.pm
ext/POSIX/POSIX.pm
ext/Socket/Socket.pm
        Throw a qw() around @ISA elements to show "good style".

hints/machten.sh
        new file.

lib/ExtUtils/MakeMaker.pm
        Bump version number to 4.086.
        Fix AIX buglet -- needed to specify NAME.
        Linux/DLD/gcc-2.6.2:  We no longer load .sa libraries (except
        libm.sa, which is apparently still o.k.

util.c
        Another dup-related buglet fix.

24 years agoperl5.000 patch.0n: [address Configure and build issues]
Andy Dougherty [Sun, 5 Mar 1995 22:11:42 +0000 (22:11 +0000)] 
perl5.000 patch.0n: [address Configure and build issues]

This is my patch  patch.0n  for perl5.000.

This _very_ small patch
    1.  updates the linux and dec_osf hints files,
    2.  adds sv_isobject to global.sym,
    3.  updates Configure to deal with recent Linux nm output, and
    4.  fixes the names in File::Path.

This patch addresses only Configure and build issues for which I have
tested solutions.  It does nothing else.  Maybe some of the other patches
floating around should be included.  Maybe not.  I'm afraid I just
don't have time to think about them now.

Unless something's broken, I hope not to issue any more patches :-)
(Yes, I've said that before, but this one's _really_ small, and linux
support was broken.:-)  Thanks to Kenneth Albanowski for researching,
implementing, and testing the Linux patch.

24 years agoperl5.000 patch.0m: [various fixes, hint file updates and documentation]
Andy Dougherty [Mon, 27 Feb 1995 22:35:59 +0000 (22:35 +0000)] 
perl5.000 patch.0m: [various fixes, hint file updates and documentation]

This is my patch  patch.0m  for perl5.000.
This patch fixes all remaining problems that I am aware of, and for
which I have a solution.  It also updates some hint files and
documentation.

Here's what's new:

Configure
        Protect against spaces in uname -m output (unicos).
        Look in <stdlib.h> for malloctype and freetype.
        Check if user has void free() or int free().
        Look in linux/signal.h for signal names.

MANIFEST
MANIFEST.new
        Two new hint files:  cxux.sh and PowerUNIX.sh.
        Sorted.

README
        Indicate what gets installed and where it usually goes.
    Thanks to Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>
    for suggesting this.

U/Myinit.U
        Update extliblist comment.

U/dist3_051.pat
    This file contains patches to dist 3 (PL 51) that I used to generate
    Configure for perl.

U/mallocsrc.U
        Look in <stdlib.h> for malloctype and freetype.
        Check if user has void free() or int free().

config_h.SH
config.H
        Add Free_t to handle void free() vs. int free().

ext/DynaLoader/README
        Updated comment.

ext/POSIX/POSIX.pm
        creat() has 2 arguments, not 3 (thanks, Paul).

ext/POSIX/POSIX.xs
        Fix return type of lseek.

ext/SDBM_File/sdbm/sdbm.h
        Add I_STDLIB guard on #include <stdlib.h>

ext/util/extliblist
        Add note indicating this is obsolete.  Don't remove it because
    people might be using it for their own private extensions.

hints/PowerUNIX.sh
hints/cxux.sh
        New files.  Written by Tom.Horsley@mail.hcsc.com

hints/linux.sh
        Simplified.

lib/ExtUtils/MakeMaker.pm
        Typo fixed, only affected aix?

malloc.c
        Allow for possible int free().

perl.h
pp_sys.c
util.c
        If the user is not using vfork, move the #define vfork fork
    util after various #include files.  Since vfork() and fork() might
    have different prototypes, the #define could cause a conflict in
    system header files.  (Reported for 386bsd.)

Makefile.SH
        make realclean will remove h2xs and makeaperl (but leave behind
        the .SH versions, of course).

24 years agoperl5.000 patch.0l: MakeMaker 4.085 and upgrade Configure to dist3 PL 51.
Andy Dougherty [Tue, 21 Feb 1995 01:14:24 +0000 (01:14 +0000)] 
perl5.000 patch.0l: MakeMaker 4.085 and upgrade Configure to dist3 PL 51.

Here's what's new:

    Configure
        Generated by metaconfig PL 51.
        Correctly set ./mips on a MIPS system.
        Improved (we hope) handling of $archname.
    MANIFEST
    MANIFEST.new
        Made .SH files out of h2xs and makeaperl so that they get the
        correct path-to-perl at the top.
    Makefile.SH
        Propagate $(perllib) to extensions.
    U/dist3_051.patches
        Two patches to apply on top of metaconfig PL 51.  I've sent
            them off for inclusion in the next metaconfig update.
    config_h.SH
    config.H
        Regenerated.  Only the order of elements has changed.
    ext/DB_File/Makefile.PL
    ext/GDBM_File/Makefile.PL
    ext/NDBM_File/Makefile.PL
        Add -L/usr/local/lib to LIBS variable.
    ext/POSIX/POSIX.xs
        Place #ifdef around FD_CLOEXEC (needed for Apollo).
    ext/SDBM_File/sdbm/Makefile.PL
        Simplified, thanks to MakeMaker enhancements.
    ext/util/make_ext
        Pass through $(perllib) argument for cflags.
    h2xs.SH
        Changed from h2xs to h2xs.SH.  Now finds correct path to perl.
    hints/next_3_2.sh
        Updated for hppa.
    hints/solaris_2.sh
        Remove potentially problematic -lmalloc from $libswanted.
    hints/unicos.sh
        Look in /usr/include/rpcsvc for dbm.h.
    installperl
        Install h2xs.
    lib/Cwd.pm
        Use 'my' variable to avoid clobbering $_.
    lib/ExtUtils/MakeMaker.pm
        Upgraded from 4.06 to 4.085.
        Lots of documentation improvements.
        EXE_FILES to refer to an array of executable files to install.
        Reduce chatter during build process.
        Don't count a useful -L/path option as a successful search for
            a particular library.
        Cleanup handling of aix external symbols.
        Create/update perllocal.pod to indicate what we've done.
    makeaperl.SH
        Changed from makeaperl to makeaperl.SH.  Now finds correct path
            to perl.
    x2p/util.c
        Delete unused setenv() and envix() functions.
    x2p/util.h
        Delete unused setenv() and envix() prototypes.
    vms/config.vms
        Define I_SYS_STAT and I_SYS_TYPES.

24 years agoperl5.000 patch.0k: MakeMaker 4.06 and to fix minor portability and build problems...
Andy Dougherty [Sat, 11 Feb 1995 01:17:38 +0000 (01:17 +0000)] 
perl5.000 patch.0k: MakeMaker 4.06 and to fix minor portability and build problems reported even after patches 0a through 0j

MakeMaker 4.06 allows you to build extensions away from the source
tree with either static or dynamic loading.

In a rare act of prescience, I've also fixed some un-reported bugs.
Specifically, there were several places where Configure said you could
specify things using ~name notation, but, in fact, you couldn't.

In detail, here's what's included:

Configure
        Check I_SYS_TYPES for x2p/a2p.h
        Improve and generalize $osvers detection for DEC Alpha
    (now will work even for osvers > 3.)
        No longer override hint-file setting of $archname.
        Don't tell users ~name is ok for Dynamic loading file.  It's not.

MANIFEST
MANIFEST.new
        Updated.

Makefile.SH
        Some trailing ' ' removed from lines.
        New target lib/ExtUtils/Miniperl.pm built.  This stashes away
    miniperlmain.c in the library so new static extensions can be
    built away from the source tree.
        Minor cleanup.

U/Oldconfig.pat.2
        This is a patch to be applied against dist-PL 50 to upgrade
    the DEC OSF/1 version detection.

U/archlib.U
        Preserve previous value for $archname.  Otherwise this is
    identical to the unit in dist-PL 50.

U/dlsrc.U
        Users may not use ~name notation to find the dynamic loading
    module.  (Back in early alpha days they could, but that hasn't
    worked since the DynaLoader module was introduced.

config.H
        Updated.

config_h.SH
        Updated.

hints/dec_osf.sh
        Updated.  Simplified.  Don't use ld -no_archive (at least as
    the default).  It only worked because some versions *ignored* it.

hints/mpeix.sh
        Add a few comments.  I should have added more.

hints/next_3_0.sh
        New hint file from Kevin White <klwhite@magnus.acs.ohio-state.edu>

hints/ultrix_4.sh
        Separate out flags not appropriate for gcc.

installperl
        Install sperl.o.

lib/ExtUtils/MakeMaker.pm
        Upgraded from 4.03 to 4.06.  Many improvements.  Now possible
        to build and install new extensions outside the source tree,
        for both static and dynamic loading.

lib/File/Path.pm
        New.  Creates or removes a series of directories

makeaperl
        New utility to create a new perl binary from static extensions

minimod.PL
        New.  minimod.PL writes the contents of miniperlmain.c into the
        module ExtUtils::Miniperl for later perusal (when the perl
        source is deleted)

perl.c
        ARCHLIB and PRIVLIB changed to ARCHLIB_EXP and PRIVLIB_EXP,
        since perl is not prepared to deal with ~name expansion.  The
        _EXP variables are pre-expanded by Configure.

proto.h
        NeXt 3.0 couldn't handle the  #ifdef __attribute line.
    It said 'illegal #ifdef'.

vms/config.vms
        s/ARCHLIB/ARCHLIB_EXP/;
        s/PRIVLIB/PRIVLIB_EXP/;
        Add in I_SYS_STAT and I_SYS_TYPES, since the source now looks
    for them.

vms/ext/MM_VMS.pm
        New file.

x2p/a2p.h
        Include <sys/types.h>

24 years agoperl5.000 patch.0j: fix minor portability and build problems remaining even after...
Andy Dougherty [Tue, 7 Feb 1995 01:51:12 +0000 (01:51 +0000)] 
perl5.000 patch.0j: fix minor portability and build problems remaining even after patches 0a through 0i

Specifically, here's what's included:

Configure
        Regenerated with metaconfig patchlevel 50.  This changed
    a variety of things, mostly related to selecting and changing
    the installation prefix.
        Handle csh, sed, and byacc no matter what the setting of
    d_portable.  (This was causing glob problems in patch.0i).
        Set d_portable to default to 'y'.  It doesn't matter anyway,
    but gives people a warm fuzzy feeling.
        Remove useless d_group and d_passwd tests.
        Add check for <sys/stat.h>.
        Improve & generalize AIX version detection.
        Consider /opt/man/man1 as a possible place to install man pages.
        Be a little more robust about OS version changes when deciding
    if the output of uname -a has really changed.

MANIFEST
MANIFEST.new
        Added hints/mpeix.sh.

README
        Tell users the Configure defaults are probably right.

Makefile.SH
        Better detection of whether user has byacc.
        Use $(MAKE) instead of make.

U/Loc_sed.U
        Works again with d_portable='define'.

U/Myinit.U
        Set d_portable=define as default.

U/d_byacc.U
        Detect whether user has byacc even if d_portable=define.

U/d_csh.U
        Works again with d_portable='define'.

U/d_group.U
        Empty file to avoid useless metaconfig test.

U/d_passwd.U
        Empty file to avoid useless metaconfig test.

U/dist.patch
        This file contains two minor updates to dist3 PL50 that were used
    to generage Configure.

U/i_sysstat.U
        New test.  See if sys/stat.h is available.

config.H
        Updated.

config_h.SH
        Updated to metaconfig patchlevel 50.

ext/NDBM_File/Makefile.PL
ext/ODBM_File/Makefile.PL
        Add -lucb for SVR4 systems.

handy.h
        Protect agains g++-2.6.3, which predefines bool.  g++ can be
    used to compile an extension, but not perl itself.  Still, the
    extension will #include "perl.h", which eventually gets
    "handy.h", which #define's bool.  If this happens to you, add
    -DHAS_BOOL to your ccflags in your extension, or else ensure that
    _G_config.h is #include'd before perl.h.  (_G_config.h will define
    _G_HAVE_BOOL, if indeed your version of g++ has bool.)

hints/aix.sh
        Updated.  Handles AIX 3.2.x and 4.1.  Comments included!

hints/hpux_9.sh
        Updated.
hints/irix_4.sh
        Updated.   Includes comments for IRIX 4.0.4

hints/linux.sh
        Updated.  Beginnings of ELF support added, but completely
    untested.

hints/mpeix.sh
        New hint file.

hints/solaris_2.sh
        Useless ccflags="$ccflags" line removed.

hints/svr4.sh
        Updated.

installperl
        Doesn't  use Config anymore (it already reads config.sh
    directly.  That's probably backwards, but, oh well.
        Install perl.exp for AIX.

lib/ExtUtils/MakeMaker.pm
        Upgraded from 4.01 to 4.03.

makedepend.SH
        Use $MAKE instead of plain make.

Index: op.c
        Remove overlapping strcpy().

perl.h
        Add test for <sys/stat.h>.
        Delete unused VOIDSIG stuff.
        Delete unused   typedef struct lstring Lstring;

perl_exp.SH
        Add safexxxx calls.

pp_sys.c
        Delete wayward break in HAS_ALARM section.

proto.h
        Change true and false (!) in function prototypes to please
    g++-2.6.3, which has true and false built in.  (See notes for
    handy.h.)

Index: unixish.h
        Long-overdue housekeeping.
        HAS_GROUP and HAS_PASSWD are always defined.

util.c
        Yet another (char*) cast for bcmp.

vms/config.vms
        Changed comments to match unixish.h.

writemain.SH
        Now correctly handles nested static extensions.  Recent
    MakeMakers have moved where they get built.

x2p/a2p.h
        More definitions that will doubtless cause trouble somewhere
    else.

x2p/a2py.c
x2p/walk.c
        Remove unprotected  char *strchr();

24 years agoperl5.000 patch.0i: fix glaring mistakes in patches a-h
Andy Dougherty [Thu, 26 Jan 1995 00:40:50 +0000 (00:40 +0000)] 
perl5.000 patch.0i: fix glaring mistakes in patches a-h

This patch does the following things:
    1.  Fix various bonehead errors I introduced in patches a-g.
    2.  Incorporate MakeMaker changes to bring it up to version 4.01 (mostly).
    3.  Stick in things I forgot in patches a-g (e.g. AIX).
    4.  Some minor additional cleanup in x2p/ for even pickier compilers.
    5.  More hints updates (hpux and next).
    6.  Include newest dl_hpux.xs.

I didn't have time to
    1.  Fix the overlapping strcpy() in op.c
    2.  Restore h2xs to Larry's original design to process <>.
    3.  take out unnecessary "use Config" in installperl.
    4.  Add in vms patches.

I forgot to
    [If I remembered what i forgot, I wouldn't have forgotten it. :]

I deliberately decided *not* to
    1.  Touch pod/*
    2.  deal with overloading

Specifically, here's what's included:

Configure
        Regenerated to be sure it's up-to-date.

Makefile.SH
        Build extension libraries right into lib/auto/whatever.
        Don't set CCCDLFLAGS since we don't use it anyway.
        Take care to avoid modifying lib/Config.pm without reason
        Visit DynaLoader for  `make clean'.  (Previously only did
    so for `make realclean'.)
        @echo "Note that make realclean does not delete config.sh"
        Include config.h dependency.

U/i_db.U
config_h.SH
config.H
        Remove unwanted quotes around db_hashtype and db_prefixtype.

configpm
        Allow specification of alternate name for lib/Config.pm,
        so the makefile mv-if-diff trick saves needless re-making.

ext/DynaLoader/DynaLoader.pm
        Updated warning messages and comments.

ext/DynaLoader/dl_hpux.xs
        Updated to version 2.1.  Now uses bootstrap files.

ext/util/make_ext
        Explicitly use #!/bin/sh to start it up.  This is useful
    for testing make_ext.
        Improve & simplify Nested::Extension::Processing.
        More robust handling of `make clean'.

hints/hpux_9.sh
        Support both the bundled and unbundled compilers.

hints/next_3_2.sh
        Back to using -posix rather than POSIX_SOURCE.  And that only
    for ext/POSIX/POSIX.xs.

installperl
        Special ranlib treatment for NeXT, which gets confused about
    timestamps in libraries, even when you just copy the library.
        Supply missing '$' in samepath() function.

lib/AutoSplit.pm
        New parameters.

lib/ExtUtils/MakeMaker.pm
        Upgraded from 3.8 to 4.01.

lib/ExtUtils/xsubpp
        Documentation changed from man to pod.

lib/Getopt/Long.pm
        Avoid typo warning.
        Drop unused $optx.

lib/Text/Tabs.pm
        Fix package name.

makedepend.SH
        Explicitly start with $startsh.
        Catch cpp that prints # <stdin> instead of line numbers.

perl.h
        Fix bonehead mistake that ended up calling my_fmod even if
    not needed.

perl_exp.SH
        also add symbols from interp.sym

proto.h
        Delete 2 redundant prototypes (newBINOP and newUNOP).

util.c
        Add (char *) casts to unsigned char args to bcmp.

x2p/a2p.h
        Rearrange order of <string?.h> and bcopy & bzero stuff.
        Change a few function prototypes to void, to reflect actual
    usage.

x2p/a2py.c
        Change a few function types to void, to reflect actual usage.

x2p/handy.h
        Make *alloc declarations match those in x2p/util.c.

x2p/util.c
        Make *alloc declarations match those in x2p/handy.h.

x2p/walk.c
        Add a (Size_t) cast for comparison of 1 to the result of strlen().

Thanks to all who's work is included here.  Little of it is mine.

24 years ago[fix crash in regexec.c]
Larry Wall [Wed, 11 Jan 1995 22:06:42 +0000 (14:06 -0800)] 
[fix crash in regexec.c]

In article <3ekgoo@giga.bga.com> jamshid@ses.com (Jamshid Afshar) writes:
: I'm getting some unexpected behavior for a small perl script on SunOS
: 4.1.3 perl 4.0p36.  The same script crashes under perl 5.0 on HP-UX.
: That script is at the end of this article -- it's as small as I could
: make it and still reproduce the crash.

Here's an unofficial patch for the problem in Perl 5.

Larry

24 years ago"unofficial" patches for some of the more spectacular [memory leaks]
Larry Wall [Fri, 13 Jan 1995 18:28:56 +0000 (10:28 -0800)] 
"unofficial" patches for some of the more spectacular [memory leaks]

To: Simon Parsons <S.Parsons@fulcrum.co.uk>

: I am on a Sun sparc running Solaris 5.3 / 5.4
:
: Are there any patches available for perl5.000, or a list of know bugs?
: I am having problems with a script running out of memory, which may be
: causes by memory leaks. The process size grows steadily up to approx
: 8Meg (over a couple of minutes) an then grows to approx 22Meg (in 2 or
: 3 seconds) before running out of memory. purify indicates memory
: leaks, but I am not sure whether this is as a result of perl
: abandoning memory as it exits.

5.001 will contain fixes for a number of memory leaks.  Here are some
unofficial patches for some of the more spectacular ones.  The one
for sv.c is the likeliest one to be affecting you, unless you're doing
a lot of evals.

24 years ago[return values correctly with G_EVAL]
Larry Wall [Sat, 19 Nov 1994 01:01:34 +0000 (17:01 -0800)] 
[return values correctly with G_EVAL]

You need this patch for G_EVAL to return values correctly.

24 years agoduplicate DESTROY
Larry Wall [Wed, 11 Jan 1995 19:01:09 +0000 (11:01 -0800)] 
duplicate DESTROY

In order to fix the duplicate DESTROY bug, I need to remove [the
modified] lines from sv_setsv.

Basically, copying an object shouldn't produce another object without an
explicit blessing.  I'm not sure if this will break anything.  If Ilya
and anyone else so inclined would apply this patch and see if it breaks
anything related to overloading (or anything else object-oriented), I'd
be much obliged.

By the way, here's a test script for the duplicate DESTROY.  You'll note
that it prints DESTROYED twice, once for , and once for .  I don't
think an object should be considered an object unless viewed through
a reference.  When accessed directly it should behave as a builtin type.

#!./perl

 = new main;
 = '';

sub new {
    my ;
    local /tmp/ssh-vaEzm16429/agent.16429 = bless $a;
    local  = ;      # Bogusly makes  an object.
    /tmp/ssh-vaEzm16429/agent.16429;
}

sub DESTROY {
    print "DESTROYED\n";
}

Larry

24 years agoperl5.000 patch.0g: [various portability fixes, and use latest metaconfig for Configure]
Andy Dougherty [Wed, 18 Jan 1995 03:44:04 +0000 (03:44 +0000)] 
perl5.000 patch.0g: [various portability fixes, and use latest metaconfig for Configure]

This patch incorporates various portability fixes and uses the latest
metaconfig to generate Configure (and config_h.SH).

It would take a long time to summarize all that I've changed.  I
haven't included many code changes because I'm trying *not* to
duplicate bug fixes Larry may already have applied.

Here's an older description I prepared that's still mostly accurate:

I've also included a few portability fixes in the main source, but
these are certainly not a complete set of everything that's been
reported.

Don't be put off by the size of the patch.  Mostly, it's just
rearrangement of the parts in Configure and some cosmetic changes.

Since gcc often supports long long, I had started to add quad support
to Configure.  Since SunOS 4.1.3 defines a conflicting "quad"
structure, I changed the name from 'quad' to Quad_t, consistent with
other Configure "types."  I also changed "QUAD" to "HAS_QUAD".
However, it turns out it's pretty hard to actually *use* Quad_t.
Neither system I have access to can sprintf() a "long long", nor can
they carry one around in an IV, unless I make IV "long long", which I
didn't want to force generally.  Thus I wonder whether any but a
precious few could actually use Quad_t, and dropped the tests from
Configure.  I left in the s/quad/Quad_t/ and s/QUAD/HAS_QUAD/ stuff in
case someone else wants to pick it up, and also because I was too lazy
to take it back out :-).

Some highlights:

Configure
    Several new options.  Use Configure -h to learn more.  Also,
        read the directions Configure prints. :-)
    Spaces now allowed in -D command line options.
    New -O option that overrides config.sh.
    You can start interactively and then change that to accepting
        all the defaults by specifying &-d at any Configure prompt.  This
        is useful if you have to re-run Configure to only change a few
        settings.
    Signal type set correctly for the cast{i32,neg} tests.
    archname detection improved a bit
    guard against ksh users who have set -u
    Oldconfig.U cleaned up and regularized a bit more.
    Guard against hint files using (and over-writing) $tmp.
    Command line options now are processed after metaconfig INIT
        lines.  Thus things like Configure -Uuseposix should work now.
    Various miscellaneous clean-ups.
    better use/detection of tr.
    i_db.U now checks for hash and prefix type (I think!)  I can't
        test it here.
    i_?db*.U now all check for an associated function before deciding
        to include or not the header.
MANIFEST
MANIFEST.new
        Sorted & updated.
Makefile.SH
    Some shells/makes bombed out on   test -d lib/auto || mkdir lib/auto
        Use makedir instead.
README
    Some additional notes that people won't read :-).
cflags.SH
        Now calls $startsh.  Weird things were happening on Intergraph,
and this might be related.
config.H
    Updated.
config_h.SH
    Regenerated.
deb.c
        Varargs dependencies on STANDARD_C replaced by I_STDARG.
doop.c
        quad stuff.
ext/DB_File/DB_File.xs
    Use the new DB_Hash_t and DB_Prefix_t symbols.
ext/SDBM_File/sdbm/sdbm.h
    Fix #defines to be more robust.
mg.c
    Replace VOIDSIG by metaconfig's Signal_t.
opcode.h
opcode.pl
    semop only takes 2 arguments, not 3.
perl.c
    Better guard on getenv() prototype.  A hint file can use this, if
        necessary.  Me, I think some compilers are just too picky.
perl.h
    The (very) beginnings of some Quad support.  See above.
    Remove the very troublesome sprintf() prototype.  Since we don't
        _use_ the return value anyway (since it's not portable) this
        should be o.k.  The problem was that some systems CAN_PROTOTYPE
        but include char *sprintf(); in <stdio.h>.  That's incompatible
        with the version we used to have in perl.h.  Most people have
        a prototype for sprintf() in <stdio.h>.  Those that don't probably
        can get by without it anyway.
    Protect the timesbuf by the specific HAS_TIMES test.  Some older
        gcc-2.something/Solaris 2.something installations apparently don't
        have times.
pp.c
    More quad stuff.
pp_ctl.c
    s/STANDARD_C/I_STDARG/ for varargs stuff.
pp_sys.c
    use Signal_t.
proto.h
   Update to match new metaconfig names.
util.c
    s/STANDARD_C/I_STDARG/ for varargs stuff.
    comment out <unistd.h>.  A pause prototype was causing problems on
        some systems.
vms/config.vms
    Changed to use Signal_t.

24 years agoperl5.000 patch.0f: [enable metaconfig (PL48) users to regenerate Configure]
Andy Dougherty [Wed, 18 Jan 1995 02:44:39 +0000 (02:44 +0000)] 
perl5.000 patch.0f: [enable metaconfig (PL48) users to regenerate Configure]

This patch enables metaconfig (PL48) users to regenerate Configure.  A few
of the units are considerably enhanced from those distributed with
perl5.000.  (This patch assumes that you do *not* have the units from
perl5beta3i installed.  Sorry if that's an inconvenience.)

In particular, *dbm testing also checks for an appropriate
library function, not just the right header files.

The dynamic loading unit U/dlsrc.U has also been updated to support
SVR4 dynamic loading.

The U/i_db.U unit now checks for the types for the various structure
members that have been causing problems.

Note that at a minimum, you need to be sure you have
the cext='.xs' line from this .package file in your own.  That tells
metaconfig that it should look in .xs files (as well as the usual
.[chy] files) for C symbols.

24 years agoperl5.000 patch.0e: fix various non-broken things in the x2p/ directory
Andy Dougherty [Wed, 18 Jan 1995 02:37:01 +0000 (02:37 +0000)] 
perl5.000 patch.0e: fix various non-broken things in the x2p/ directory

This patch fixes various non-broken things in the x2p/ directory.
Mostly, I've supplied function prototypes to satisfy particularly
picky compilers.

I've also updated Makefile.SH to know that the byacc-generated a2p.c
is now included with the distribution so that we no longer need to go
looking for yacc/bison/byacc and deal with various library issues or
command line options to support those various compiler compilers.

I've included a2p.c generated by byacc-1.9.  Larry, feel free to
use your own from byacc-1.8 instead.

24 years agoperl 5.000d : [hint file updates]
Andy Dougherty [Wed, 18 Jan 1995 02:27:49 +0000 (02:27 +0000)] 
perl 5.000d : [hint file updates]

This patch consolidates most of the hint file updates I've been
collecting since perl5.000's release.  Some of the updates don't make
any sense until you also apply the Configure patches in patch.0g.
(A few late arrivals are also in patch.0g.)

24 years agoMakeMaker 3.8
Tim Bunce [Tue, 17 Jan 1995 04:09:00 +0000 (04:09 +0000)] 
MakeMaker 3.8

24 years agoMakeMaker 3.7
Tim Bunce [Thu, 29 Dec 1994 19:47:28 +0000 (19:47 +0000)] 
MakeMaker 3.7

This patch patches the following:

 - lib/ExtUtils/MakeMaker.pm

        Most, if not all, the MakeMaker support for no perl source
        is now included. Recent ld and mkbootstrap patches applied.
        -lX11_s suffix fix applied.

 - Makefile.SH

        Fix nested module problem which affected make_ext

 - ext/DynaLoader/DynaLoader.pm

        Change error message to
        "Can't load module $module, dynamic loading not available in this perl"

 - ext/util/make_ext

        A very minor tweak to allow for Deeply::Nested::Modules

 - h2xs

        Major reorganisation. Mainly aimed at simplifying for later
        enhancements. The constant() and AUTOLOAD functions can no
        longer be individually enabled or disabled - it never made
        any sense - they need each other. Header file parsing code
        has been simplified (may allow prototypes to be parsed later).
        The .pm file always inherits from AutoLoader.

I hope not to issue another MakeMaker patch till after Perl5.001!

If you want to play with the (as yet untested) no-perl-source mechanism
you'll need to start by doing something like this:

        cp ext/xsubpp ext/typemap  $(PERL_LIB)/ExtUtils
        cp *.h                     $(PERL_ARCHLIB)/CORE

And then try executing Makefile.PL away from (not under) the perl
source code. You should get a 'Unable to locate perl source' warning
and the PERL_SRC macro will be undefined. Let me know how it goes but
be aware that any problems/fixes are unlikely to turn up in an official
MakeMaker patch till after Perl5.001.

*Please* test this patch and report your findings back to the list so
Larry knows that all is well (or not :-).

Best wishes for a Happy New Year to you all.
Tim Bunce.

24 years agoThis is my patch patch.0a for perl5.000.
Tim Bunce [Mon, 19 Dec 1994 22:27:00 +0000 (22:27 +0000)] 
This is my patch  patch.0a  for perl5.000.

[Actually, that's a lie.  This is just MakeMaker 3.6.  I've just
usurped the letter 'a' to fit it into my patch sequence.]

        Andy Dougherty                  doughera@lafcol.lafayette.edu
        Dept. of Physics
        Lafayette College, Easton PA

this patch includes:

- My recently posted 'Very small patches to AutoSplit.pm and Cwd.pm'
  (with no changes).

- A previous small patch to DynaLoader .bs handling with one addition:
  !     if (-f $bs) {
  !     if (-s $bs) { # only read file if it's not empty

- A recently posted patch to hints/aix.sh (with cosmetic changes).

Hopefully no further changes to MakeMaker will be needed before perl5.001.
If any changes are required I intend that they will be release as patches
to be applied over this one. This is the last MakeMaker jumbo patch for
perl5.000.

Patch and enjoy.

Regards,
Tim Bunce.

p.s. I'll be around until about 4pm GMT tomorrow (Tuesday), after that
I'm off for Christmas. This has been a great year for me. I have very
much enjoyed working with the perl5-porters and I wish you all a
wonderful and merry Christmas and a very happy New Year.