Permalink
Switch branches/tags
Commits on Mar 10, 1995
  1. perl5.000 patch.0o: [address] a few more Configure and build nits.

    Andy Dougherty
    Andy Dougherty committed Mar 10, 1995
    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.
Commits on Mar 5, 1995
  1. perl5.000 patch.0n: [address Configure and build issues]

    Andy Dougherty
    Andy Dougherty committed Mar 5, 1995
    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.
Commits on Feb 27, 1995
  1. perl5.000 patch.0m: [various fixes, hint file updates and documentation]

    Andy Dougherty
    Andy Dougherty committed Feb 27, 1995
    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).
Commits on Feb 21, 1995
  1. perl5.000 patch.0l: MakeMaker 4.085 and upgrade Configure to dist3 PL…

    Andy Dougherty
    Andy Dougherty committed Feb 21, 1995
    … 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.
Commits on Feb 11, 1995
  1. perl5.000 patch.0k: MakeMaker 4.06 and to fix minor portability and b…

    Andy Dougherty
    Andy Dougherty committed Feb 11, 1995
    …uild 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>
Commits on Feb 7, 1995
  1. perl5.000 patch.0j: fix minor portability and build problems remainin…

    Andy Dougherty
    Andy Dougherty committed Feb 7, 1995
    …g 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();
Commits on Jan 26, 1995
  1. perl5.000 patch.0i: fix glaring mistakes in patches a-h

    Andy Dougherty
    Andy Dougherty committed Jan 26, 1995
    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.
Commits on Jan 18, 1995
  1. perl5.000 patch.0g: [various portability fixes, and use latest metaco…

    Andy Dougherty
    Andy Dougherty committed Jan 18, 1995
    …nfig 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.
  2. perl5.000 patch.0f: [enable metaconfig (PL48) users to regenerate Con…

    Andy Dougherty
    Andy Dougherty committed Jan 18, 1995
    …figure]
    
    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.
  3. perl5.000 patch.0e: fix various non-broken things in the x2p/ directory

    Andy Dougherty
    Andy Dougherty committed Jan 18, 1995
    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.
  4. perl 5.000d : [hint file updates]

    Andy Dougherty
    Andy Dougherty committed Jan 18, 1995
    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.)
Commits on Jan 17, 1995
  1. MakeMaker 3.8

    Tim Bunce Andy Dougherty
    Tim Bunce authored and Andy Dougherty committed Jan 17, 1995
Commits on Jan 11, 1995
  1. [fix crash in regexec.c]

    Larry Wall Andy Dougherty
    Larry Wall authored and Andy Dougherty committed Jan 11, 1995
    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
  2. "unofficial" patches for some of the more spectacular [memory leaks]

    Larry Wall Andy Dougherty
    Larry Wall authored and Andy Dougherty committed Jan 13, 1995
    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.
  3. [return values correctly with G_EVAL]

    Larry Wall Andy Dougherty
    Larry Wall authored and Andy Dougherty committed Nov 19, 1994
    You need this patch for G_EVAL to return values correctly.
  4. duplicate DESTROY

    Larry Wall Andy Dougherty
    Larry Wall authored and Andy Dougherty committed Jan 11, 1995
    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
Commits on Dec 29, 1994
  1. MakeMaker 3.7

    Tim Bunce Andy Dougherty
    Tim Bunce authored and Andy Dougherty committed Dec 29, 1994
    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.
Commits on Dec 19, 1994
  1. This is my patch patch.0a for perl5.000.

    Tim Bunce Andy Dougherty
    Tim Bunce authored and Andy Dougherty committed Dec 19, 1994
    [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.
Commits on Oct 17, 1994
  1. perl 5.000

    Larry Wall
    Larry Wall committed Oct 17, 1994
    [editor's note: this commit combines approximate 4 months of furious
    releases of Andy Dougherty and Larry Wall - see pod/perlhist.pod for
    details.  Andy notes that;
     
    Alas neither my "Irwin AccuTrack" nor my DC 600A quarter-inch cartridge 
    backup tapes from that era seem to be readable anymore.  I guess 13 years 
    exceeds the shelf life for that backup technology :-(.
    ]
Commits on May 4, 1994
  1. perl 5.0 alpha 9

    Larry Wall
    Larry Wall committed May 4, 1994
    [editor's note: the sparc executables have not been included,
    and emacs backup files have been removed]
Commits on Apr 4, 1994
  1. perl 5.0 alpha 8

    Andy Dougherty
    Andy Dougherty committed Apr 4, 1994
    [the last one taken from the September '94 InfoMagic CD; a similar
    style of cleanup as the previous commits was performed]
Commits on Mar 18, 1994
  1. perl 5.0 alpha 6

    Larry Wall
    Larry Wall committed Mar 18, 1994
    [editor's note: cleaned up from the September '94 InfoMagic CD, just
    like the last commit]
Commits on Dec 10, 1993
  1. perl 5.0 alpha 5

    Larry Wall
    Larry Wall committed Dec 10, 1993
        
    [editor's note: the sparc executables have not been included,
    and emacs backup files and other cruft such as patch backup files have
    been removed.  This was reconstructed from a tarball found on the
    September 1994 InfoMagic CD]
  2. perl5a5:pat/inherit.pat

    Larry Wall
    Larry Wall committed Dec 10, 1993
    [random patch found in the perl-5alpha5 tarball applied separately]
  3. perl5a5:pat/env.pat

    Larry Wall
    Larry Wall committed Dec 10, 1993
    [random patch found in the perl-5alpha5 tarball applied separately]
Commits on Nov 10, 1993
  1. perl 5.0 alpha 4

    Larry Wall
    Larry Wall committed Nov 10, 1993
    [editor's note: the sparc executables have not been included, and
    emacs backup files have been removed.  This was reconstructed from a
    tarball found on the September 1994 InfoMagic CD; the date of this is
    approximate]
Commits on Oct 10, 1993
  1. perl 5.0 alpha 3

    Larry Wall
    Larry Wall committed Oct 10, 1993
    [editor's note: the sparc executables have not been included,
    and emacs backup files have been removed]
Commits on Oct 7, 1993
  1. perl 5.0 alpha 2

    Larry Wall
    Larry Wall committed Oct 7, 1993
    [editor's note: from history.perl.org.  The sparc executables
    originally included in the distribution are not in this commit.]
Commits on Feb 4, 1993
  1. perl 4.0 patch 36: (combined patch)

    Larry Wall
    Larry Wall committed Feb 4, 1993
    Since Ed Barton sent me a patch for the malignent form of "Malformed
    cmd links", I finally broke down and made a patch for the various
    other little things that have been accumulating on version 4.
Commits on Jun 22, 1992
  1. perl 4.0 patch 35: (combined patch)

    Larry Wall
    Larry Wall committed Jun 22, 1992
    Subject: bad interaction between backslash and hyphen in tr///
    Among other things, tr/\040-\126/ / was not doing a character range,
    due to a earlier botched fix to make \- work right.
    
    Subject: Configure test for presence of nroff was wrong
    If Loc doesn't find nroff, it sets $nroff to 'nroff'.  The man
    page test was tesing against the null string.
    
    Subject: installperl error message printed file mode in decimal, not octal
    A real, honest-to-goodnes nit.
    
    Subject: fixed up some filenames in MANIFEST
    Erroneously contained "pstruct", omitted hints/isc_3_2_3.sh.
Commits on Jun 11, 1992
  1. perl 4.0 patch 34: (combined patch)

    Larry Wall
    Larry Wall committed Jun 11, 1992
    Here's the typical cleanup patch that follows any large
    set of patches.  My testing organization is either too large
    or too small, depending on how you look at it, sigh...
Commits on Jun 8, 1992
  1. perl 4.0 patch 33: patch #20, continued

    Larry Wall
    Larry Wall committed Jun 8, 1992
    See patch #20.
  2. perl 4.0 patch 32: patch #20, continued

    Larry Wall
    Larry Wall committed Jun 8, 1992
    See patch #20.
  3. perl 4.0 patch 31: patch #20, continued

    Larry Wall
    Larry Wall committed Jun 8, 1992
    See patch #20.
  4. perl 4.0 patch 30: patch #20, continued

    Larry Wall
    Larry Wall committed Jun 8, 1992
    See patch #20.