# This is a patch for perl-5.6.0 to update it to perl-5.6.1. # It was generated by makepatch 1.92 (2.0BETA) on Sun Apr 8 20:15:33 2001. # # To apply this patch, chdir to source directory perl-5.6.0 and enter # # /bin/sh # patch -p1 -N < rm -f MAINTAIN rm -f README.posix-bc rm -f ebcdic.c rm -f lib/CGI.pm rm -f lib/unicode/Is/DCinital.pl rm -f lib/unicode/Props.txt rm -f lib/unicode/UCD300.html rm -f lib/unicode/Unicode.300 rm -f lib/unicode/Unicode3.html rm -f pod/Makefile rm -f pod/Win32.pod rm -f pod/buildtoc rm -f utils/perlbc.PL rm -f vms/subconfigure.com rm -f vos/config.def rm -f vos/config.h rm -f vos/config_h.SH_orig touch Porting/repository.pod touch README.aix touch README.bs2000 touch README.macos touch README.solaris touch ext/B/B/Concise.pm touch ext/DynaLoader/dl_dllload.xs touch ext/DynaLoader/dl_mac.xs touch ext/DynaLoader/hints/netbsd.pl touch ext/POSIX/hints/svr4.pl touch ext/re/hints/aix.pl touch hints/nonstopux.sh touch jpl/ChangeLog touch jpl/README.JUST-JNI mkdir jpl/docs touch jpl/docs/Tutorial.pod touch lib/CGI.pm touch lib/CGI/Util.pm touch lib/File/Spec/Epoc.pm touch lib/File/Temp.pm touch lib/Pod/LaTeX.pm touch lib/Pod/Text/Overstrike.pm touch lib/Win32.pod touch lib/unicode/BidiMirr.txt touch lib/unicode/CaseFold.txt touch lib/unicode/Is/BidiAL.pl touch lib/unicode/Is/BidiBN.pl touch lib/unicode/Is/BidiLRE.pl touch lib/unicode/Is/BidiLRO.pl touch lib/unicode/Is/BidiNSM.pl touch lib/unicode/Is/BidiPDF.pl touch lib/unicode/Is/BidiRLE.pl touch lib/unicode/Is/BidiRLO.pl touch lib/unicode/Is/Blank.pl touch lib/unicode/Is/Cf.pl touch lib/unicode/Is/Cs.pl touch lib/unicode/Is/DCfraction.pl touch lib/unicode/Is/DCmedial.pl touch lib/unicode/Is/LbrkAI.pl touch lib/unicode/Is/LbrkAL.pl touch lib/unicode/Is/LbrkB2.pl touch lib/unicode/Is/LbrkBA.pl touch lib/unicode/Is/LbrkBB.pl touch lib/unicode/Is/LbrkBK.pl touch lib/unicode/Is/LbrkCB.pl touch lib/unicode/Is/LbrkCL.pl touch lib/unicode/Is/LbrkCM.pl touch lib/unicode/Is/LbrkCR.pl touch lib/unicode/Is/LbrkEX.pl touch lib/unicode/Is/LbrkGL.pl touch lib/unicode/Is/LbrkHY.pl touch lib/unicode/Is/LbrkID.pl touch lib/unicode/Is/LbrkIN.pl touch lib/unicode/Is/LbrkIS.pl touch lib/unicode/Is/LbrkLF.pl touch lib/unicode/Is/LbrkNS.pl touch lib/unicode/Is/LbrkNU.pl touch lib/unicode/Is/LbrkOP.pl touch lib/unicode/Is/LbrkPO.pl touch lib/unicode/Is/LbrkPR.pl touch lib/unicode/Is/LbrkQU.pl touch lib/unicode/Is/LbrkSA.pl touch lib/unicode/Is/LbrkSG.pl touch lib/unicode/Is/LbrkSP.pl touch lib/unicode/Is/LbrkSY.pl touch lib/unicode/Is/LbrkXX.pl touch lib/unicode/Is/LbrkZW.pl touch lib/unicode/Is/Me.pl touch lib/unicode/Is/Nl.pl touch lib/unicode/Is/Pc.pl touch lib/unicode/Is/Pf.pl touch lib/unicode/Is/Pi.pl touch lib/unicode/Is/Sk.pl touch lib/unicode/Is/SpacePerl.pl touch lib/unicode/Is/SylAA.pl touch lib/unicode/Is/SylAAI.pl touch lib/unicode/Is/SylAI.pl touch lib/unicode/Is/SylEE.pl touch lib/unicode/Is/SylII.pl touch lib/unicode/Is/SylN.pl touch lib/unicode/Is/SylOO.pl touch lib/unicode/Is/SylWAA.pl touch lib/unicode/Is/SylWEE.pl touch lib/unicode/Is/SylWII.pl touch lib/unicode/Is/SylWO.pl touch lib/unicode/Is/SylWOO.pl touch lib/unicode/Is/SylWU.pl touch lib/unicode/PropList.txt touch lib/unicode/README.perl touch lib/unicode/UCD301.html touch lib/unicode/UCDFF301.html touch lib/unicode/Unicode.301 touch os2/os2add.sym touch pod/Makefile.SH touch pod/buildtoc.PL touch pod/perlclib.pod touch pod/perldebtut.pod touch pod/perlebcdic.pod touch pod/perlmodlib.PL touch pod/perlnewmod.pod touch pod/perlrequick.pod touch pod/perlretut.pod touch pod/perlutil.pod touch t/lib/b.t touch t/lib/cgi-esc.t touch t/lib/cgi-pretty.t touch t/lib/class-struct.t touch t/lib/ftmp-mktemp.t touch t/lib/ftmp-posix.t touch t/lib/ftmp-security.t touch t/lib/ftmp-tempfile.t touch t/lib/gol-oo.t touch t/lib/peek.t touch t/lib/selfloader.t touch t/lib/syslog.t touch t/lib/tie-refhash.t touch t/lib/tie-splice.t touch t/lib/tie-substrhash.t touch t/op/anonsub.t touch t/op/concat.t touch t/op/length.t touch t/op/my_stash.t touch t/op/regmesg.t touch t/op/reverse.t touch t/op/utf8decode.t touch t/pod/find.t mkdir t/run touch t/run/runenv.t touch vms/vmspipe.com touch vos/config.alpha.def touch vos/config.alpha.h touch vos/config.ga.def touch vos/config.ga.h touch vos/configure_perl.cm touch vos/install_perl.cm touch win32/sncfnmcs.pl exit # End of preamble. Index: patchlevel.h ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/patchlevel.h Wed Mar 22 12:23:11 2000 --- perl-5.6.1/patchlevel.h Sun Apr 8 18:14:57 2001 *************** *** 5,11 **** #define PERL_REVISION 5 /* age */ #define PERL_VERSION 6 /* epoch */ ! #define PERL_SUBVERSION 0 /* generation */ /* The following numbers describe the earliest compatible version of Perl ("compatibility" here being defined as sufficient binary/API --- 5,11 ---- #define PERL_REVISION 5 /* age */ #define PERL_VERSION 6 /* epoch */ ! #define PERL_SUBVERSION 1 /* generation */ /* The following numbers describe the earliest compatible version of Perl ("compatibility" here being defined as sufficient binary/API Index: AUTHORS ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/AUTHORS Mon Dec 27 18:18:12 1999 --- perl-5.6.1/AUTHORS Sat Apr 7 23:09:16 2001 *************** *** 1,120 **** ! # Two sections: the real one and the virtual one. ! # The real section has three \t+ fields: alias, name, email. ! # The sections are separated by one or more empty lines. ! # The virtual section (each record two \t+ separated fields) builds ! # meta-aliases based on the real section. ! ! alan.burlison Alan Burlison Alan.Burlison@UK.Sun.com ! allen Norton T. Allen allen@huarp.harvard.edu ! bradapp Brad Appleton bradapp@enteract.com ! cbail Charles Bailey bailey@newman.upenn.edu ! dgris Daniel Grisinger dgris@dimensional.com ! dmulholl Daniel Yacob dmulholl@cs.indiana.edu ! dogcow Tom Spindler dogcow@merit.edu ! domo Dominic Dunlop domo@slipper.ip.lu ! doug Doug MacEachern dougm@pobox.com ! doughera Andy Dougherty doughera@lafcol.lafayette.edu ! gbarr Graham Barr gbarr@ti.com ! gerti Gerd Knops gerti@BITart.com ! gibreel Stephen Zander gibreel@pobox.com ! gnat Nathan Torkington gnat@frii.com ! gsar Gurusamy Sarathy gsar@activestate.com ! hansmu Hans Mulder hansmu@xs4all.nl ! ilya Ilya Zakharevich ilya@math.ohio-state.edu ! jbuehler Joe Buehler jbuehler@hekimian.com ! jfs John Stoffel jfs@fluent.com ! jhi Jarkko Hietaniemi jhi@iki.fi ! jon Jon Orwant orwant@media.mit.edu ! jvromans Johan Vromans jvromans@squirrel.nl ! k Andreas Koenig andreas.koenig@franz.ww.tu-berlin.de ! kjahds Kenneth Albanowski kjahds@kjahds.com ! krishna Krishna Sethuraman krishna@sgi.com ! kstar Kurt D. Starsinic kstar@isinet.com ! lstein Lincoln D. Stein lstein@genome.wi.mit.edu ! lutherh Luther Huffman lutherh@stratcom.com ! lutz Mark P. Lutz mark.p.lutz@boeing.com ! lwall Larry Wall larry@wall.org ! makemaker MakeMaker list makemaker@franz.ww.tu-berlin.de ! mbiggar Mark A Biggar mab@wdl.loral.com ! mbligh Martin J. Bligh mbligh@sequent.com ! mike Mike Stok mike@stok.co.uk ! millert Todd Miller millert@openbsd.org ! laszlo.molnar Laszlo Molnar Laszlo.Molnar@eth.ericsson.se ! mpeix Mark Bixby markb@cccd.edu ! muir David Muir Sharnoff muir@idiom.com ! neale Neale Ferguson neale@VMA.TABNSW.COM.AU ! nik Nick Ing-Simmons nik@tiuk.ti.com ! okamoto Jeff Okamoto okamoto@corp.hp.com ! paul_green Paul Green Paul_Green@stratus.com ! pmarquess Paul Marquess Paul.Marquess@btinternet.com ! pomeranz Hal Pomeranz pomeranz@netcom.com ! pudge Chris Nandor pudge@pobox.com ! pueschel Norbert Pueschel pueschel@imsdd.meb.uni-bonn.de ! pvhp Peter Prymmer pvhp@forte.com ! raphael Raphael Manfredi Raphael_Manfredi@pobox.com ! rdieter Rex Dieter rdieter@math.unl.edu ! rsanders Robert Sanders Robert.Sanders@linux.org ! roberto Ollivier Robert roberto@keltia.freenix.fr ! roderick Roderick Schertler roderick@argon.org ! roehrich Dean Roehrich roehrich@cray.com ! tsanders Tony Sanders sanders@bsdi.com ! schinder Paul Schinder schinder@pobox.com ! scotth Scott Henry scotth@sgi.com ! seibert Greg Seibert seibert@Lynx.COM ! spider Spider Boardman spider@Orb.Nashua.NH.US ! smccam Stephen McCamant smccam@uclink4.berkeley.edu ! sugalskd Dan Sugalski sugalskd@osshe.edu ! sundstrom David Sundstrom sunds@asictest.sc.ti.com ! tchrist Tom Christiansen tchrist@perl.com ! thomas.dorner Dorner Thomas Thomas.Dorner@start.de ! timb Tim Bunce Tim.Bunce@ig.co.uk ! tom.horsley Tom Horsley Tom.Horsley@mail.ccur.com ! tye Tye McQueen tye@metronet.com ! wayne.thompson Wayne Thompson Wayne.Thompson@Ebay.sun.com ! ! PUMPKING gsar ! aix jhi ! amiga pueschel ! beos dogcow ! bsdos tsanders ! cfg jhi ! cgi lstein ! complex jhi,raphael ! cpan k ! cxux tom.horsley ! cygwin win32 ! dec_osf jhi,spider ! dgux roderick ! doc tchrist ! dos laszlo.molnar ! dynix/ptx mbligh ! ebcdic vms,vmesa,posixbc ! filespec kjahds ! freebsd roberto ! hpux okamoto,jhi ! irix scotth,krishna,jfs,kstar ! jpl gibreel ! linux kjahds,kstar ! locale jhi,domo ! lynxos lynxos ! machten domo ! mm makemaker ! mvs pvhp ! netbsd jhi ! openbsd millert ! os2 ilya ! plan9 lutherl ! posix-bc thomas.dorner ! powerux tom.horsley ! qnx allen ! solaris doughera,alan.burlison ! step gerti,hansmu,rdieter ! sunos4 doughera ! svr4 tye ! unicos jhi,lutz ! uwin jbuehler ! vmesa neale ! vms sugalskd,cbail ! vos paul_green ! warn pmarquess ! win32 gsar --- 1,557 ---- ! # To give due honor to those who have made Perl 5 what is is today, ! # here are easily-from-changelogs-extractable people and their ! # (hopefully) current and preferred email addresses (as of late 2000 ! # if known) from the Changes files. These people have either submitted ! # patches or suggestions, or their bug reports or comments have inspired ! # the appropriate patches. Corrections, additions, deletions welcome. ! # ! -- ! Aaron B. Dossett ! Abigail ! Achim Bohnet ! Adam Krolnik ! Akim Demaille ! Alan Burlison ! Alan Champion ! Alan Harder ! Alan Modra ! Albert Chin-A-Young ! Albert Dvornik ! Alexander Smishlajev ! Allen Smith ! Ambrose Kofi Laing ! Andreas Klussmann ! Andreas König ! Andreas Schwab ! Andrew Bettison ! Andrew Cohen ! Andrew M. Langmead ! Andrew Pimlott ! Andrew Vignaux ! Andrew Wilcox ! Andy Dougherty ! Anno Siegel ! Anthony David ! Anton Berezin ! Art Green ! Artur ! Barrie Slaymaker ! Barry Friedman ! Ben Tilly ! Benjamin Low ! Benjamin Stuhl ! Benjamin Sugars ! Bernard Quatermass ! Bill Campbell ! Bill Glicker ! Billy Constantine ! Blair Zajac ! Boyd Gerber ! Brad Appleton ! Brad Howerter ! Brad Hughes ! Brad Lanam ! Brent B. Powers ! Brian Callaghan ! Brian Clarke ! Brian Grossman ! Brian Harrison ! Brian Jepson ! Brian Katzung ! Brian Reichert ! Brian S. Cashman ! Bruce Barnett ! Bruce J. Keeler ! Bruce P. Schuck ! Bud Huff ! Byron Brummer ! Calle Dybedahl ! Carl M. Fongheiser ! Carl Witty ! Cary D. Renzema ! Casey R. Tweten ! Castor Fu ! Chaim Frenkel ! Charles Bailey ! Charles F. Randall ! Charles Lane ! Charles Wilson ! Chip Salzenberg ! Chris Faylor ! Chris Nandor ! Chris Wick ! Christian Kirsch ! Christopher Chan-Nui ! Christopher Davis ! Chuck D. Phillips ! Chuck Phillips ! Chunhui Teng ! Clark Cooper ! Clinton Pierce ! Colin Kuskie ! Conrad Augustin ! Conrad E. Kimball ! Craig A. Berry ! Craig Milo Rogers ! Dale Amon ! Damian Conway ! Damon Atkins ! Dan Boorstein ! Dan Carson ! Dan Schmidt ! Dan Sugalski ! Daniel Chetlin ! Daniel Grisinger ! Daniel Muińo ! Daniel S. Lewart ! Daniel Yacob ! Danny R. Faught ! Danny Sadinoff ! Darrell Kindred ! Darrell Schiebel ! Darren/Torin/Who Ever... ! Dave Bianchi ! Dave Hartnoll ! Dave Nelson ! Dave Schweisguth ! David Billinghurst ! David Campbell ! David Couture ! David Denholm ! David Dyck ! David F. Haertig ! David Filo ! David Glasser ! David Hammen ! David J. Fiander ! David Kerry ! David Muir Sharnoff ! David R. Favor ! David Sparks ! David Starks-Browning ! David Sundstrom ! Davin Milun ! Dean Roehrich ! Dennis Marsa ! dive ! Dominic Dunlop ! Dominique Dumont ! Doug Campbell ! Doug MacEachern ! Douglas E. Wegscheid ! Douglas Lankshear ! Dov Grobgeld ! Drago Goricanec ! Ed Mooring ! Ed Peschko ! Elaine -HFB- Ashton ! Eric Arnold ! Eric Bartley ! Eric E. Coe ! Eric Fifer ! Erich Rickheit ! Eryq ! Etienne Grossman ! Eugene Alterman ! Fabien Tassin ! Felix Gallo ! Florent Guillaume ! Frank Crawford ! Frank Ridderbusch ! Frank Tobin ! François Désarménien ! Fréderic Chauveau ! G. Del Merritt ! Gabe Schaffer ! Gary Clark ! Gary Ng <71564.1743@compuserve.com> ! Gerben Wierda ! Gerd Knops ! Giles Lean ! Gisle Aas ! Gordon J. Miller ! Grace Lee ! Graham Barr ! Graham TerMarsch ! Greg Bacon ! Greg Chapman ! Greg Earle ! Greg Kuperberg ! Greg Seibert ! Greg Ward ! Gregory Martin Pfeil ! Guenter Schmidt ! Guido Flohr ! Gurusamy Sarathy ! Gustaf Neumann ! Guy Decoux ! H.J. Lu ! H.Merijn Brand ! Hal Pomeranz ! Hallvard B Furuseth ! Hannu Napari ! Hans Mulder ! Hans de Graaff ! Harold O Morris ! Harry Edmon ! Helmut Jarausch ! Henrik Tougaard ! Hershel Walters ! Holger Bechtold ! Horst von Brand ! Hubert Feyrer ! Hugo van der Sanden ! Hunter Kelly ! Huw Rogers ! Ian Maloney ! Ian Phillipps ! Ignasi Roca ! Ilya Sandler ! Ilya Zakharevich ! Inaba Hiroto ! Irving Reid ! J. David Blackstone ! J. van Krieken ! JD Laub ! JT McDuffie ! Jack Shirazi ! Jacqui Caren ! Jake Hamby ! James FitzGibbon ! Jamshid Afshar ! Jan D. ! Jan Dubois ! Jan Pazdziora ! Jan-Erik Karlsson ! Jan-Pieter Cornet ! Jared Rhine ! Jarkko Hietaniemi ! Jason A. Smith ! Jason Shirk ! Jason Stewart ! Jason Varsoke ! Jay Rogers ! Jeff Bouis ! Jeff McDougal ! Jeff Okamoto ! Jeff Pinyan ! Jeff Urlwin ! Jeffrey Friedl ! Jeffrey S. Haemer ! Jens Hamisch ! Jens T. Berger Thielemann ! Jens Thomsen ! Jens-Uwe Mager ! Jeremy D. Zawodny ! Jerome Abela ! Jim Anderson ! Jim Avera ! Jim Balter ! Jim Meyering ! Jim Miner ! Jim Richardson ! Joachim Huober ! Jochen Wiedmann ! Joe Buehler ! Joe Smith ! Joel Rosi-Schwartz ! Joerg Porath ! Joergen Haegg ! Johan Holtman ! Johan Vromans ! Johann Klasek ! John Bley ! John Borwick ! John Cerney ! John D Groenveld ! John Hasstedt ! John Hughes ! John L. Allen ! John Macdonald ! John Nolan ! John Peacock ! John Pfuntner ! John Rowe ! John Salinas ! John Stoffel ! John Tobey ! Jon Orwant ! Jonathan Biggar ! Jonathan D Johnston ! Jonathan Fine ! Jonathan I. Kamens ! Jonathan Roy ! Joseph N. Hall ! Joseph S. Myers ! Joshua Pritikin ! Juan Gallego ! Julian Yip ! Justin Banks ! Ka-Ping Yee ! Karl Glazebrook ! Karl Heuer ! Karl Simon Berg ! Karsten Sperling ! Kaveh Ghazi ! Keith Neufeld ! Keith Thompson ! Ken Estes ! Ken Fox ! Ken MacLeod ! Ken Shan ! Kenneth Albanowski ! Kenneth Duda ! Keong Lim ! Kevin O'Gorman ! Kevin White ! Kim Frutiger ! Kragen Sitaker ! Krishna Sethuraman ! Kurt D. Starsinic ! Kyriakos Georgiou ! Larry Parmelee ! Larry Schuler ! Larry Schwimmer ! Larry W. Virden ! Larry Wall ! Lars Hecking ! Laszlo Molnar ! Len Johnson ! Les Peters ! Lincoln D. Stein ! Lionel Cons ! Luca Fini ! Lupe Christoph ! Luther Huffman ! M. J. T. Guy ! Major Sébastien ! Makoto MATSUSHITA ! Malcolm Beattie ! Marc Lehmann ! Marc Paquette ! Marcel Grunauer ! Mark A Biggar ! Mark Bixby ! Mark Dickinson ! Mark Hanson ! Mark K Trettin ! Mark Kaehny ! Mark Kettenis ! Mark Klein ! Mark Knutsen ! Mark Kvale ! Mark Leighton Fisher ! Mark Murray ! Mark P. Lutz ! Mark Pease ! Mark Pizzolato ! Mark R. Levinson ! Mark-Jason Dominus ! Martijn Koster ! Martin J. Bligh ! Martin Jost ! Martin Lichtin ! Martin Plechsmid ! Marty Lucich ! Martyn Pearce ! Masahiro KAJIURA ! Mathias Koerber ! Matt Kimball ! Matthew Black ! Matthew Green ! Matthew T Harden ! Matthias Ulrich Neeracher ! Matthias Urlichs ! Maurizio Loreti ! Michael Cook ! Michael De La Rue ! Michael Engel ! Michael G Schwern ! Michael H. Moran ! Michael Mahan ! Michael Stevens ! Michele Sardo ! Mik Firestone ! Mike Fletcher ! Mike Hopkirk ! Mike Rogers ! Mike Stok ! Mike W Ellwood ! Milton Hankins ! Milton L. Hankins ! Molnar Laszlo ! Murray Nesbitt ! Nathan Kurz ! Nathan Torkington ! Neale Ferguson ! Neil Bowers ! Nicholas Clark ! Nick Duffek ! Nick Gianniotis ! Nick Ing-Simmons ! Norbert Pueschel ! Norton T. Allen ! Olaf Flebbe ! Olaf Titz ! Ollivier Robert ! Owen Taylor ! Patrick Hayes ! Patrick O'Brien ! Paul A Sand ! Paul David Fardy ! Paul Green ! Paul Hoffman ! Paul Holser ! Paul Johnson ! Paul Marquess ! Paul Moore ! Paul Rogers ! Paul Saab ! Paul Schinder ! Pete Peterson ! Peter Chines ! Peter Gordon ! Peter Haworth ! Peter J. Farley III ! Peter Jaspers-Fayer ! Peter Prymmer ! Peter Scott ! Peter Wolfe ! Peter van Heusden ! Petter Reinholdtsen ! Phil Lobbes ! Philip Hazel ! Philip Newton ! Piers Cawley ! Piotr Klaban ! Prymmer/Kahn ! Quentin Fennessy ! Radu Greab ! Ralf S. Engelschall ! Randal L. Schwartz ! Randy J. Ray ! Raphael Manfredi ! Raymund Will ! Rex Dieter ! Rich Morin ! Rich Salz ! Richard A. Wells ! Richard Foley ! Richard L. England ! Richard L. Maus, Jr. ! Richard Soderberg ! Richard Yeh ! Rick Delaney ! Rick Pluta ! Rickard Westman ! Rob Henderson ! Robert Partington ! Robert Sanders ! Robert Spier ! Robin Barker ! Robin Houston ! Rocco Caputo ! Roderick Schertler ! Rodger Anderson ! Ronald F. Guilmette ! Ronald J. Kimball ! Ruben Schattevoy ! Rujith S. de Silva ! Russ Allbery ! Russell Fulton ! Russell Mosemann ! Ryan Herbert ! SAKAI Kiyotaka ! Samuli Kärkkäinen ! Scott Gifford ! Scott Henry ! Sean Robinson ! Sean Sheedy ! Sebastien Barre ! Shigeya Suzuki ! Shimpei Yamashita ! Shishir Gundavaram ! Simon Cozens ! Simon Leinen ! Simon Parsons ! Slaven Rezic ! Spider Boardman ! Stephane Payrard ! Stephanie Beals ! Stephen McCamant ! Stephen O. Lidie ! Stephen P. Potter ! Stephen Zander ! Steve A Fink ! Steve Kelem ! Steve McDougall ! Steve Nielsen ! Steve Pearlmutter ! Steve Vinoski ! Steven Hirsch ! Steven Knight ! Steven Morlock ! Steven N. Hirsch ! Steven Parkes ! Sven Verdoolaege ! SynaptiCAD, Inc. ! Taro KAWAGISHI ! Ted Ashton ! Ted Law ! Teun Burgers ! Thad Floryan ! Thomas Bowditch ! Thomas Conté ! Thomas Dorner ! Thomas Kofler ! Thomas König ! Tim Adye ! Tim Ayers ! Tim Bunce ! Tim Conrow ! Tim Freeman ! Tim Jenness ! Tim Mooney ! Tim Witham ! Timur I. Bakeyev ! Tkil ! Todd C. Miller ! Tom Bates ! Tom Christiansen ! Tom Horsley ! Tom Hughes ! Tom Phoenix ! Tom Spindler ! Tony Camas ! Tony Cook ! Tony Sanders ! Tor Lillqvist ! Trevor Blackwell ! Tuomas J. Lukka ! Tye McQueen ! Ulrich Kunitz ! Ulrich Pfeifer ! Vadim Konovalov ! Valeriy E. Ushakov ! Vishal Bhatia ! Vlad Harchev ! Vladimir Alexiev ! W. Phillip Moore ! Warren Hyde ! Warren Jones ! Wayne Berke ! Wayne Scott ! Wayne Thompson ! Wilfredo Sánchez ! William J. Middleton ! William Mann ! William R Ward ! William Setzer ! Winfried König ! Wolfgang Laun ! Yary Hluchan ! Yasushi Nakajima ! Yitzchak Scott-Thoennes ! Yutaka OIWA ! Yutao Feng ! Zachary Miller Index: Changes ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/Changes Wed Mar 22 21:39:54 2000 --- perl-5.6.1/Changes Sun Apr 8 20:11:44 2001 *************** *** 5,80 **** individual change may also be obtained through ftp and rsync--see perlhack.pod for the details. ! ! --------------- ! CAST AND CREW ! --------------- ! ! To give due honor to those who have made Perl what is is today, ! here are some of the more common names in the Changes file, and their ! current addresses (as of February 2000): ! ! Gisle Aas ! Abigail ! Kenneth Albanowski ! Russ Allbery ! Brad Appleton ! Greg Bacon ! Robin Barker ! Vishal Bhatia ! Spider Boardman ! Tom Christiansen ! Mark-Jason Dominus ! Jan Dubois ! Dominic Dunlop ! Eric Fifer ! Hallvard B Furuseth ! M. J. T. Guy ! Jarkko Hietaniemi ! Tom Hughes ! Nick Ing-Simmons ! Andreas Koenig ! Douglas Lankshear ! Doug MacEachern ! Raphael Manfredi ! Paul Marquess ! Stephen McCamant ! Laszlo Molnar ! Hans Mulder ! Chris Nandor ! Matthias Neeracher ! Jeff Okamoto ! Ulrich Pfeifer ! Tom Phoenix ! Joshua Pritikin ! Peter Prymmer ! Norbert Pueschel ! Dean Roehrich ! Hugo van der Sanden ! Michael G Schwern ! Roderick Schertler ! Kurt D. Starsinic ! Benjamin Stuhl ! Dan Sugalski ! Nathan Torkington ! Larry W. Virden ! Johan Vromans ! Ilya Zakharevich ! ! And the Keepers of the Patch Pumpkin: ! ! Charles Bailey ! Graham Barr ! Malcolm Beattie ! Tim Bunce ! Andy Dougherty ! Gurusamy Sarathy ! Chip Salzenberg ! ! And, of course, the Author of Perl: ! ! Larry Wall ! NOTE: Each change entry shows the change number; who checked it into the repository; when; description of the change; which branch the change --- 5,11 ---- individual change may also be obtained through ftp and rsync--see perlhack.pod for the details. ! [The "CAST AND CREW" list has been moved to AUTHORS.] NOTE: Each change entry shows the change number; who checked it into the repository; when; description of the change; which branch the change *************** *** 87,92 **** --- 18,7341 ---- +> branched (from elsewhere) !> merged changes (from elsewhere) + The Message-Ids in the change entries refer to the email messages sent + to the perl5-porters mailing list. You can retrieve the messages for + example from http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/ + + This file contains only changes that affect the maint-5.6 branch. + Cross-references to changes imported from other branches (principally, + the mainline) are indicated by change numbers. Detailed log entries + corresponding to these change numbers are available in the Changes + file in the latest development release. + + + -------------- + Version v5.6.1 + -------------- + + ____________________________________________________________________________ + [ 9651] By: gsar on 2001/04/09 03:11:19 + Log: update Changes, patchlevel.h &c. + Branch: maint-5.6/perl + ! Changes patchlevel.h pod/perldelta.pod pod/perlhist.pod + ! pod/perltoc.pod + ____________________________________________________________________________ + [ 9649] By: gsar on 2001/04/09 02:35:43 + Log: tweak perldelta as suggested by Jarkko + Branch: maint-5.6/perl + ! pod/perldelta.pod + ____________________________________________________________________________ + [ 9646] By: gsar on 2001/04/09 00:48:04 + Log: add note about ithreads and Thread.pm (too many people are + confused by the fact that Thread.pm is built and installed + under non-5005threads but doesn't work) + Branch: maint-5.6/perl + ! ext/Thread/Thread.pm ext/Thread/Thread.xs + ____________________________________________________________________________ + [ 9645] By: gsar on 2001/04/09 00:19:03 + Log: update perldelta.pod for changes in 5.6.1 + Branch: maint-5.6/perl + ! Changes pod/perldelta.pod + ____________________________________________________________________________ + [ 9640] By: gsar on 2001/04/08 19:20:46 + Log: integrate change#9634 from mainline + + Fix the perlmodlib generation (didn't understand separate .pod + files; didn't understand -- as the name-thing separator). + Update the CPAN mirrors list. + Branch: maint-5.6/perl + ! pod/perlmodlib.pod + !> pod/perlmodlib.PL + ____________________________________________________________________________ + [ 9639] By: gsar on 2001/04/08 18:57:31 + Log: on windows, many of the README.* pods were being copied to the wrong + location + Branch: maint-5.6/perl + ! win32/Makefile win32/makefile.mk + ____________________________________________________________________________ + [ 9638] By: gsar on 2001/04/08 18:38:25 + Log: update to latest JPL from the anoncvs repository + Branch: maint-5.6/perl + + jpl/ChangeLog jpl/README.JUST-JNI jpl/docs/Tutorial.pod + ! MANIFEST jpl/JNI/JNI.pm jpl/JNI/JNI.xs jpl/JNI/Makefile.PL + ! jpl/PerlInterpreter/PerlInterpreter.h jpl/README + ____________________________________________________________________________ + [ 9632] By: gsar on 2001/04/08 16:36:06 + Log: add $Tie::RefHash::VERSION + Branch: maint-5.6/perl + ! lib/Tie/RefHash.pm + ____________________________________________________________________________ + [ 9624] By: gsar on 2001/04/08 06:08:17 + Log: test in t/pod/* were busted + + these tests are still not enabled in t/{harness,TEST} + Branch: maint-5.6/perl + ! lib/Pod/Find.pm t/pod/emptycmd.t t/pod/find.t t/pod/for.t + ! t/pod/headings.t t/pod/include.t t/pod/included.t t/pod/lref.t + ! t/pod/multiline_items.t t/pod/nested_items.t + ! t/pod/nested_seqs.t t/pod/oneline_cmds.t t/pod/pod2usage.t + ! t/pod/poderrs.t t/pod/podselect.t t/pod/special_seqs.t + ____________________________________________________________________________ + [ 9623] By: gsar on 2001/04/08 03:37:01 + Log: integrate change#9470 from mainline + + Subject: Re: [ID 20010215.006] Bad arg length for Socket::unpack_sockaddr_un, length is 14 ... + Branch: maint-5.6/perl + !> ext/Socket/Socket.xs + ____________________________________________________________________________ + [ 9605] By: gsar on 2001/04/07 11:52:40 + Log: can't optimize away scope entry if tr/// is present + Branch: maint-5.6/perl + ! op.c t/op/tr.t + ____________________________________________________________________________ + [ 9597] By: gsar on 2001/04/06 18:06:35 + Log: integrate change#9464 from mainline (addendum to change#8313) + + Subject: [PATCH @9452] Better peep()ing for foreach() loops + Branch: maint-5.6/perl + !> op.c + ____________________________________________________________________________ + [ 9595] By: gsar on 2001/04/06 14:57:17 + Log: add a low-impact fix to accomodate darwin-ism + Branch: maint-5.6/perl + ! ext/Errno/Errno_pm.PL + ____________________________________________________________________________ + [ 9594] By: jhi on 2001/04/06 14:55:14 + Log: Integrate changes #9528,9593 from mainline into maintperl; + tweaking the editor/IDE/shell list. + Branch: maint-5.6/perl + !> pod/perlfaq3.pod + ____________________________________________________________________________ + [ 9592] By: gsar on 2001/04/06 14:45:18 + Log: integrate change#9477 from mainline (base.pm doc tweak) + + missing doc entry for fmod() + Branch: maint-5.6/perl + ! lib/Math/BigFloat.pm + !> lib/base.pm + ____________________________________________________________________________ + [ 9587] By: gsar on 2001/04/06 07:31:30 + Log: add README.macos (from Chris Nandor) + + tyop in change#9555 + Branch: maint-5.6/perl + + README.macos + ! MANIFEST pod/buildtoc.PL pod/perl.pod pod/perlfaq9.pod + ! win32/Makefile win32/makefile.mk + ____________________________________________________________________________ + [ 9586] By: gsar on 2001/04/06 07:08:54 + Log: fixes for Math::BigFloat bugs; add fmod() (from John Peacock) + Branch: maint-5.6/perl + ! lib/Math/BigFloat.pm t/lib/bigfltpm.t + ____________________________________________________________________________ + [ 9585] By: gsar on 2001/04/06 06:58:44 + Log: integrate changes#9555,9556,9563..9567,9570..9575,9577..9578 + from mainline + + Subject: [PATCH] Base64 update to perlfaq9.pod + + Subject: [PATCH AUTHORS] Housekeeping + + Subject: Re: Not OK: perl v5.6.1 +fools-gold on darwin 1.3 (UNINSTALLED) + Mac OS X (Darwin) has extra pwent fields. + + Subject: [PATCH B::*] print control-character vars readably + Needs EBCDICification. + + Subject: [PATCH B::Deparse] lexical variables with ridiculously long names that are used in list assignments + + Subject: [PATCH B::*] cope with SVf_IVisUV, and cope with $^^ and friends + + Subject: [PATCH B::Deparse] "${foo}bar", "${foo}[1]" etc. + + Subject: [PATCH B::Deparse] binmode is no longer an UNOP + + Subject: [PATCH B::Deparse] regex quoting, and a minor milestone + + Subject: [PATCH B::Deparse] suppress "unintialized value" warnings + + Subject: bleadperl / hex ignores variable length and/or tr doesn't null terminate ( with patch) + + Subject: patch for t/op/oct.t that shows need for patch supplied with bug 20010404.009, (bugs in hex and oct) + + FreeBSD hints tweak from Anton Berezin. + + Subject: [PATCH foolperl & bleadperl] README.vms update + + Subject: Re: [PATCH foolperl & bleadperl] README.vms update + Branch: maint-5.6/perl + !> AUTHORS README.vms ext/B/B.pm ext/B/B/Concise.pm + !> ext/B/B/Debug.pm ext/B/B/Deparse.pm ext/B/B/Terse.pm + !> hints/freebsd.sh pod/perlfaq9.pod pp.c t/op/oct.t t/op/pwent.t + ____________________________________________________________________________ + [ 9584] By: gsar on 2001/04/06 04:09:00 + Log: keep eval"" CVs alive until the end of the statement in which + they're called; this avoids a coredump ensuing from search for + lexicals in code such as: + + sub bug { + my $s = @_; + eval q[sub { eval 'sub { &$s }' }]; + } + bug("x")->()->(); + + this code still doesn't work as intended (as it has remained + since time immemorial), but it doesn't provoke a coredump anymore + Branch: maint-5.6/perl + ! embed.h embed.pl global.sym objXSUB.h perlapi.c + ! pod/perlguts.pod pp_ctl.c proto.h scope.c scope.h sv.c + ____________________________________________________________________________ + [ 9551] By: gsar on 2001/04/05 00:18:34 + Log: tr/// doesn't null-terminate the result in some situations + (from Gisle Aas) + Branch: maint-5.6/perl + ! doop.c t/op/tr.t + ____________________________________________________________________________ + [ 9550] By: gsar on 2001/04/04 20:04:17 + Log: B::Deparse fix for ${^FOO} and documentation for PVX() method + (from Robin Houston) + Branch: maint-5.6/perl + ! ext/B/B.pm ext/B/B/Deparse.pm + ____________________________________________________________________________ + [ 9548] By: gsar on 2001/04/04 18:51:49 + Log: integrate changes#9460,9462,9482,9521,9522 + + Subject: PATCH: B::Debug should show LOOP-specific fields + + Subject: B::Deparse precedence bug. (Patch included.) + + Subject: Re: [ID 20010330.003] O=Deparse,-p does not preserve "operational semantics" + + Subject: [PATCH B::Concise] @stash_array = split(/pat/, str); + + Subject: [PATCH B::Concise] padname values may have bogus SvCUR + Branch: maint-5.6/perl + !> ext/B/B.pm ext/B/B.xs ext/B/B/Concise.pm ext/B/B/Debug.pm + !> ext/B/B/Deparse.pm ext/B/B/Showlex.pm + ____________________________________________________________________________ + [ 9547] By: gsar on 2001/04/04 18:49:16 + Log: s/djSP/dSP/ + Branch: maint-5.6/perl + ! ext/Thread/Thread.xs + ____________________________________________________________________________ + [ 9545] By: gsar on 2001/04/04 18:38:52 + Log: integrate change#8837 from mainline + + Subject: [patch] -Wall cleanup round 2 + Branch: maint-5.6/perl + !> ext/B/B.xs ext/Data/Dumper/Dumper.xs ext/Devel/DProf/DProf.xs + !> ext/Devel/Peek/Peek.xs ext/Fcntl/Fcntl.xs + !> ext/File/Glob/Glob.xs ext/GDBM_File/GDBM_File.xs ext/IO/IO.xs + !> ext/IPC/SysV/SysV.xs ext/Opcode/Opcode.xs ext/POSIX/POSIX.xs + !> ext/SDBM_File/SDBM_File.xs + ____________________________________________________________________________ + [ 9544] By: gsar on 2001/04/04 17:49:57 + Log: "double" should be "NV"; standard typemap is missing entry + for NV + Branch: maint-5.6/perl + ! ext/B/B.xs ext/B/B/C.pm lib/ExtUtils/typemap + ____________________________________________________________________________ + [ 9539] By: gsar on 2001/04/04 03:01:14 + Log: another tweak needed for SunOS 4.1.x build (from Mike Guy) + Branch: maint-5.6/perl + ! Makefile.SH + ____________________________________________________________________________ + [ 9538] By: gsar on 2001/04/04 01:00:38 + Log: fflush() is a macro on SunOS 4.1.x, so provide a wrapper + for use with _fwalk() (fix for change#7705) + Branch: maint-5.6/perl + ! util.c + ____________________________________________________________________________ + [ 9533] By: gsar on 2001/04/03 14:30:07 + Log: better fix for change#9517 to accomodate UNC paths like + \\server\share\foo, and paths with trailing backslash + like c:\this\ + Branch: maint-5.6/perl + ! utils/perldoc.PL x2p/find2perl.PL x2p/s2p.PL + ____________________________________________________________________________ + [ 9530] By: gsar on 2001/04/03 04:56:41 + Log: accomodate VMS "mailbox overflow" quirk in testsuite (from + Craig Berry) + Branch: maint-5.6/perl + ! t/lib/socket.t + ____________________________________________________________________________ + [ 9524] By: gsar on 2001/04/03 01:09:12 + Log: EPOC fix for lib/io_udp.t failure (from Olaf Flebbe) + Branch: maint-5.6/perl + ! pp_sys.c + ____________________________________________________________________________ + [ 9517] By: gsar on 2001/04/02 19:52:21 + Log: many of the utilities interpolate literal paths within doublequotes + (fails on dosish platforms where path contains backslashes) + Branch: maint-5.6/perl + ! utils/perldoc.PL x2p/find2perl.PL x2p/s2p.PL + ____________________________________________________________________________ + [ 9516] By: gsar on 2001/04/02 05:49:37 + Log: a foolish release + Branch: maint-5.6/perl + ! Changes patchlevel.h pod/perldelta.pod pod/perlhist.pod + ! pod/perltoc.pod + ____________________________________________________________________________ + [ 9515] By: gsar on 2001/04/02 05:04:29 + Log: add missing changelog summaries + Branch: maint-5.6/perl + ! Changes + ____________________________________________________________________________ + [ 9514] By: gsar on 2001/04/02 04:07:13 + Log: add some notes about gutsy threading matters + Branch: maint-5.6/perl + ! pod/perlguts.pod + ____________________________________________________________________________ + [ 9513] By: gsar on 2001/04/02 03:25:21 + Log: add more prominent caveat notices about experimental features + Branch: maint-5.6/perl + ! pod/perlfork.pod pod/perlunicode.pod + ____________________________________________________________________________ + [ 9512] By: gsar on 2001/04/02 02:54:33 + Log: integrate changes#9479,9509 from mainline + + [PATCH] File::Glob stuff for Mac OS + + [PATH bsd_glob.c perl@9472] Shut up gcc warning in bsd_glob.c + Branch: maint-5.6/perl + !> ext/File/Glob/Glob.pm ext/File/Glob/bsd_glob.c + !> t/lib/glob-basic.t t/lib/glob-case.t t/lib/glob-global.t + !> t/lib/glob-taint.t + ____________________________________________________________________________ + [ 9511] By: gsar on 2001/04/02 02:38:24 + Log: README.win32 tweaks; add a note about alternative location for + getting a gcc-2.95.2 that will build perl properly on windows + Branch: maint-5.6/perl + ! README.win32 + ____________________________________________________________________________ + [ 9507] By: jhi on 2001/04/01 19:24:01 + Log: Integrate changes #9378,9458,9469,9475,9489,9490,9505,9506 + from mainline to maintperl: pod tweaks. + Branch: maint-5.6/perl + !> pod/perldebug.pod pod/perldiag.pod pod/perlfaq1.pod + !> pod/perlguts.pod pod/perlhack.pod pod/perlop.pod + !> pod/perlvar.pod + ____________________________________________________________________________ + [ 9501] By: gsar on 2001/04/01 07:21:57 + Log: fix the perlembed notes on multiple interpreters + + fix ExtUtils::Embed to work passably on Windows + Branch: maint-5.6/perl + ! lib/ExtUtils/Embed.pm pod/perlembed.pod + ____________________________________________________________________________ + [ 9496] By: gsar on 2001/03/31 23:22:28 + Log: various nits identified by the Borland 5.5 compiler; remove suppression + of a few warnings + Branch: maint-5.6/perl + ! ext/File/Glob/bsd_glob.c sv.c win32/win32.h + ____________________________________________________________________________ + [ 9495] By: gsar on 2001/03/31 21:03:08 + Log: avoid redefinition warnings under Borland 5.02 + Branch: maint-5.6/perl + ! win32/makefile.mk + ____________________________________________________________________________ + [ 9494] By: gsar on 2001/03/31 20:18:59 + Log: nits spotted by Borland compiler + Branch: maint-5.6/perl + ! utf8.h win32/win32.h + ____________________________________________________________________________ + [ 9493] By: gsar on 2001/03/31 20:18:05 + Log: fix a broken workaround for Borland compiler in change#4739 + (caused weird "short reads" on DATA, which caused op/misc.t to fail) + Branch: maint-5.6/perl + ! toke.c + ____________________________________________________________________________ + [ 9491] By: gsar on 2001/03/31 17:01:56 + Log: Cwd::chdir() doesn't set $ENV{PWD} correctly on windows when the + directory is relative (need to fetch the full path name *before* + the chdir!) + + this is a followup patch for change#6749 + Branch: maint-5.6/perl + ! lib/Cwd.pm + ____________________________________________________________________________ + [ 9426] By: gsar on 2001/03/29 00:28:04 + Log: dmake can only handle == and != in comparisons; support building + with Borland's VCL libraries (from Vadim Konovalov) + Branch: maint-5.6/perl + ! win32/makefile.mk + ____________________________________________________________________________ + [ 9416] By: jhi on 2001/03/28 18:06:07 + Log: Integrate change #9409 from mainline to maintperl. + + Yet another tweak on AIX dynaloading. + Branch: maint-5.6/perl + !> ext/DynaLoader/dl_aix.xs ext/DynaLoader/hints/aix.pl + ____________________________________________________________________________ + [ 9415] By: gsar on 2001/03/28 17:13:01 + Log: integrate changes#9377,9385,9401 from mainline + + Subject: RE: 5.6.0 BUG: Lexical warnings aren't lexical + + If directory entries compare equal case-insensitively, + retry case-sensitively. + + Subject: [PATCH] B::Terse and warnings + Branch: maint-5.6/perl + !> ext/B/B.pm ext/B/B/Terse.pm ext/File/Glob/bsd_glob.c gv.c + !> t/pragma/warn/perl + ____________________________________________________________________________ + [ 9312] By: gsar on 2001/03/23 16:25:25 + Log: add execute bit to files with shebang lines in the repository; + avoid clobbering execute bit in Porting/makerel + Branch: maint-5.6/perl + ! (edit 144 files) + ____________________________________________________________________________ + [ 9306] By: jhi on 2001/03/23 12:51:36 + Log: There are AIXes without /usr/include/load.h, + patch from H.Merijn Brand. + Branch: maint-5.6/perl + ! ext/DynaLoader/hints/aix.pl + ____________________________________________________________________________ + [ 9299] By: gsar on 2001/03/22 16:53:45 + Log: back out changes#7532,7521 for now (appears to have problems + on IRIX) + Branch: maint-5.6/perl + ! ext/POSIX/POSIX.pm ext/POSIX/POSIX.pod ext/POSIX/POSIX.xs + ! ext/POSIX/typemap pod/perlvar.pod + ____________________________________________________________________________ + [ 9292] By: gsar on 2001/03/22 07:12:00 + Log: integrate changes#8306,8532 from mainline (missing USE_PURE_BISON + fixes) + Branch: maint-5.6/perl + !> embed.h embed.pl objXSUB.h perlapi.c perly.y proto.h toke.c + ____________________________________________________________________________ + [ 9290] By: jhi on 2001/03/22 05:57:01 + Log: Move MacOS Classic higher in the list of supported platforms. + Branch: maint-5.6/perl + ! pod/perlport.pod + ____________________________________________________________________________ + [ 9289] By: gsar on 2001/03/22 05:35:04 + Log: revert part of change#6438 for compatibility (av_reify() + appears to be needed to implement av_splice()ish things + in XS) + Branch: maint-5.6/perl + ! embed.pl global.sym objXSUB.h perlapi.c + ____________________________________________________________________________ + [ 9288] By: gsar on 2001/03/22 03:09:19 + Log: update copyright year + Branch: maint-5.6/perl + ! EXTERN.h INTERN.h README av.c av.h cop.h cv.h deb.c doio.c + ! doop.c dump.c form.h gv.c gv.h handy.h hv.c hv.h mg.c mg.h + ! op.c op.h perl.c perl.h perlio.c perly.y pp.c pp.h pp_ctl.c + ! pp_hot.c pp_sys.c regcomp.c regexec.c run.c scope.c sv.c sv.h + ! toke.c utf8.c utf8.h util.c util.h x2p/EXTERN.h x2p/INTERN.h + ! x2p/a2p.c x2p/a2p.h x2p/a2p.y x2p/a2py.c x2p/hash.c x2p/hash.h + ! x2p/proto.h x2p/str.c x2p/str.h x2p/util.c x2p/util.h + ! x2p/walk.c + ____________________________________________________________________________ + [ 9286] By: gsar on 2001/03/21 19:49:54 + Log: makefile.mk tweak + Branch: maint-5.6/perl + ! win32/Makefile win32/makefile.mk + ____________________________________________________________________________ + [ 9283] By: jhi on 2001/03/21 17:17:35 + Log: Integrate change #9282 from mainline into maintperl, + 4-arg UTF-8 substr(). + Branch: maint-5.6/perl + !> pp.c + ____________________________________________________________________________ + [ 9281] By: gsar on 2001/03/21 17:03:14 + Log: makefile.mk defaults to GCC, not BORLAND (as mentioned in README.win32) + Branch: maint-5.6/perl + ! win32/makefile.mk + ____________________________________________________________________________ + [ 9280] By: gsar on 2001/03/21 17:01:20 + Log: some tweaks to change#9278 (fork() emulation should be enabled + by setting BUILD_FLAVOR instead of changing the defaults) + Branch: maint-5.6/perl + ! win32/makefile.mk + ____________________________________________________________________________ + [ 9279] By: gsar on 2001/03/21 16:47:19 + Log: integrate change#9271 from mainline; a tweak to Glob.pm docs + Branch: maint-5.6/perl + ! ext/File/Glob/Glob.pm + !> lib/Cwd.pm + ____________________________________________________________________________ + [ 9278] By: jhi on 2001/03/21 14:35:10 + Log: Subject: [PATCH: 5.6.1-trial3] Borland C++ for Win32 fixes + From: "Vadim Konovalov" + Date: Wed, 21 Mar 2001 01:53:51 +0300 + Message-ID: <004101c0b190$a749ea20$f7c030d4@vad> + Branch: maint-5.6/perl + ! win32/makefile.mk win32/win32sck.c + ____________________________________________________________________________ + [ 9277] By: jhi on 2001/03/21 13:58:28 + Log: Integrate change #9270 from mainline to maintperl: + continued 4-arg UTF-8 substr() fixing. + Branch: maint-5.6/perl + !> pp.c t/op/substr.t + ____________________________________________________________________________ + [ 9266] By: gsar on 2001/03/20 19:16:43 + Log: VMS piping fixes (from Charles Lane) + Branch: maint-5.6/perl + ! vms/vms.c vms/vmspipe.com + ____________________________________________________________________________ + [ 9265] By: gsar on 2001/03/20 17:53:52 + Log: cut-n-paste goof in change#9264 + Branch: maint-5.6/perl + ! ext/File/Glob/Glob.xs + ____________________________________________________________________________ + [ 9264] By: gsar on 2001/03/20 17:43:47 + Log: do alphabetical sorting by default (for csh compatibility); + bsd_glob() does ASCII sort by default as usual, unless + GLOB_ALPHASORT was specified + Branch: maint-5.6/perl + ! ext/File/Glob/Changes ext/File/Glob/Glob.pm + ! ext/File/Glob/Glob.xs ext/File/Glob/bsd_glob.c + ! ext/File/Glob/bsd_glob.h + ____________________________________________________________________________ + [ 9263] By: gsar on 2001/03/20 16:40:08 + Log: integrate change#9255 from mainline (unicode fix) + + substr($bytestr, i, n, $charstr) + Branch: maint-5.6/perl + !> Todo-5.6 pp.c t/op/substr.t + ____________________________________________________________________________ + [ 9262] By: gsar on 2001/03/20 15:57:41 + Log: revert the leak fix in change#9142 (problem needs a more experimental + fix unsuitable for 5.6.1) + Branch: maint-5.6/perl + ! scope.c + ____________________________________________________________________________ + [ 9260] By: jhi on 2001/03/20 14:05:46 + Log: Subject: [PATCH perl-5.6.1-TRIAL3/run.c] printf warning + From: Robin Barker + Date: Tue, 20 Mar 2001 10:12:04 GMT + Message-Id: <200103201012.KAA04738@tempest.npl.co.uk> + Branch: maint-5.6/perl + ! run.c + ____________________________________________________________________________ + [ 9259] By: jhi on 2001/03/20 14:04:39 + Log: Subject: [MacPerl-Porters] [PATCH] POSIX, File::Path (Mac OS) for 5.6.1 and 5.7 + From: Chris Nandor + Date: Tue, 20 Mar 2001 00:40:56 -0500 + Message-Id: + Branch: maint-5.6/perl + ! ext/POSIX/POSIX.xs lib/File/Path.pm + ____________________________________________________________________________ + [ 9256] By: jhi on 2001/03/20 04:43:12 + Log: Subject: [PATCH: 5.6.1-trial3] test fixes and installation cleanliness for OS/390 + From: Peter Prymmer + Date: Mon, 19 Mar 2001 16:43:13 -0800 (PST) + Message-ID: + Branch: maint-5.6/perl + ! installperl t/comp/proto.t t/comp/require.t t/op/regmesg.t + ____________________________________________________________________________ + [ 9250] By: jhi on 2001/03/19 21:18:00 + Log: A more robust solution for the 64bitall AIX dynaloading + problem, from Jens-Uwe Mager. + Branch: maint-5.6/perl + ! ext/DynaLoader/dl_aix.xs ext/DynaLoader/hints/aix.pl + ____________________________________________________________________________ + [ 9247] By: jhi on 2001/03/19 19:59:53 + Log: 64-bit AIX dynaloading problem (see #9244) idea + from Jens-Uwe Mager. + Branch: maint-5.6/perl + ! ext/DynaLoader/dl_aix.xs + ____________________________________________________________________________ + [ 9245] By: jhi on 2001/03/19 19:05:19 + Log: Integrate change #9243 from mainline into maintperl. + + Subject: [PATCH perl-5.6.1-TRIAL3/README.vmesa] bad =item paragraphs + Branch: maint-5.6/perl + !> README.vmesa + ____________________________________________________________________________ + [ 9244] By: jhi on 2001/03/19 19:03:15 + Log: Get 64bitall AIX building, but still does not test okay: + dynaloading anything fails, for example for op/defins: + Can't load '../lib/auto/File/Glob/Glob.so' for module File::Glob: loadbind: A system call received a parameter that is not valid. at ../lib/XSLoader.pm line 75. at ../lib/File/Glob.pm line 99 + (update: fixed by #9247,9250) + Branch: maint-5.6/perl + ! hints/aix.sh + ____________________________________________________________________________ + [ 9241] By: gsar on 2001/03/19 17:34:46 + Log: VMSify tests (from Charles Lane) + Branch: maint-5.6/perl + ! t/lib/filehand.t t/lib/texttabs.t + ____________________________________________________________________________ + [ 9239] By: gsar on 2001/03/19 09:23:17 + Log: this is 5.6.1-trial3 + Branch: maint-5.6/perl + ! Changes + ____________________________________________________________________________ + [ 9238] By: gsar on 2001/03/19 08:47:04 + Log: some new symbols are only available under ithreads + Branch: maint-5.6/perl + ! makedef.pl + ____________________________________________________________________________ + [ 9237] By: gsar on 2001/03/19 08:42:28 + Log: update patchlevel.h, Changes, &c. + Branch: maint-5.6/perl + ! Changes patchlevel.h pod/perlhist.pod + !> AUTHORS + ____________________________________________________________________________ + [ 9236] By: gsar on 2001/03/19 08:17:49 + Log: integrate changes#8068,8717 from mainline + + [PATCH 5.7.0@8047] RE: [ID 20001013.009] DB_File issues warning when setting element to undef + + [PATCH CPAN 1.59_51] warning message (not!) + Branch: maint-5.6/perl + !> ext/GDBM_File/GDBM_File.pm ext/GDBM_File/typemap + !> ext/NDBM_File/NDBM_File.pm ext/NDBM_File/typemap + !> ext/ODBM_File/ODBM_File.pm ext/ODBM_File/typemap + !> ext/SDBM_File/SDBM_File.pm ext/SDBM_File/typemap lib/CPAN.pm + !> t/lib/gdbm.t t/lib/ndbm.t t/lib/odbm.t t/lib/sdbm.t + ____________________________________________________________________________ + [ 9235] By: gsar on 2001/03/19 08:07:09 + Log: integrate changes#8617,8713,8715,8716,8721,8953,8963 from mainline + + [PATCH] Add missing CV flags to dump.c + + Re: [patch] Re: PL_ptr_table + + Fixup non-ithread build after 8713 + + Generated files form 8713 etc. + + Correct the correction :-( + + Documenting coderef @INC (Re: CPAN "make this script work" feature) + + Subject: Re: sync sync sync: have I missed any patches? + Replace djSP with dSP. + Branch: maint-5.6/perl + !> cop.h doio.c doop.c dump.c embed.h embed.pl ext/B/B/C.pm + !> ext/B/B/CC.pm global.sym objXSUB.h perl.c perlapi.c + !> pod/perlhack.pod pp.c pp.h pp_ctl.c pp_hot.c pp_sys.c proto.h + !> sv.c sv.h win32/perlhost.h + ____________________________________________________________________________ + [ 9234] By: gsar on 2001/03/19 07:22:05 + Log: revert the change#9090 integrate for now (change looks somewhat + incomplete in that [ha]v_exists() need something similar; lacks + tests; &c.) + Branch: maint-5.6/perl + ! hv.c + ____________________________________________________________________________ + [ 9233] By: gsar on 2001/03/19 07:10:01 + Log: some refcounts were incorrect in perl_clone(); avoid hang in global + destruction when there are unreferenced scalars (SvREFCNT==0) + Branch: maint-5.6/perl + ! sv.c + ____________________________________________________________________________ + [ 9232] By: jhi on 2001/03/19 05:11:02 + Log: Regen api and toc. + Branch: maint-5.6/perl + ! pod/perlapi.pod pod/perltoc.pod + ____________________________________________________________________________ + [ 9231] By: jhi on 2001/03/19 04:06:03 + Log: Integrate changes in #9070,9072,9101 from mainline into maintperl, + add a lost line in pp.c:pp_chop(), update to new op/chop. + + Clarify the description differentiating for and while; inspired by + + Subject: [ID 20010306.004] || != named unary operator + + The $Is_MacOS needs to be declared. + Branch: maint-5.6/perl + ! pp.c t/op/chop.t + !> lib/ExtUtils/Manifest.pm pod/perlop.pod pod/perlsyn.pod + ____________________________________________________________________________ + [ 9230] By: jhi on 2001/03/19 03:48:16 + Log: Integrate changes #7971(perlio),8982,9061,9062,9068,9069, + 9079,9083,9089,9090,9091 from mainline to maintperl. + + Quieten some noise in Win32 builds + + Fixes the bugs 20010221.005 and 20010221.008: "the taint checker..." + + The perlretut was still talking about the old \p and \P + definitions. + + More tweakage on the Unicode character class descriptions. + + Subject: Re: [ID 20010305.012] chop() against list assignment returns char chopped from el zero + + Subject: 'no *POSIX' Patch speeding up make on BS2000 + + Subject: [PATCH] perldata.pod here-doc docs + + Add /sbin and /usr/sbin to the list of directories scanned + for setuid programs. Takes care of bug id 20010309.003. + + Subject: Re: [ID 19990808.001] [PATCH] FETCH triggered on exists() + + In op/stat #35 better to scan all the potential directories + for setuids, not just the first one. + Branch: maint-5.6/perl + ! Makefile.SH + !> doio.c hv.c lib/unicode/mktables.PL makedepend.SH perl.h + !> pod/perldata.pod pod/perlretut.pod pp.c t/op/chop.t + !> t/op/stat.t toke.c win32/win32.h + ____________________________________________________________________________ + [ 9229] By: jhi on 2001/03/19 02:31:50 + Log: Subject: [MacPerl-Porters] [PATCH] Portability fixes for Mac OS / maint-5.6 + From: Chris Nandor + Date: Sat, 10 Mar 2001 14:22:19 -0500 + Message-Id: + Branch: maint-5.6/perl + ! ext/B/defsubs_h.PL ext/DynaLoader/dl_mac.xs + ! ext/Errno/Errno_pm.PL lib/ExtUtils/Manifest.pm perlsfio.h + ! t/lib/b.t t/lib/errno.t + ____________________________________________________________________________ + [ 9228] By: jhi on 2001/03/19 02:29:59 + Log: Integrate changes #9113,9122 from mainline into maintperl. + + Subject: [PATCH: perl@9092, dist-3.0@70] OS/390 mydomain last gasp before silly guess (was Re: What do I need to build EBCDIC perl?) + Branch: maint-5.6/perl + !> Configure README.os390 hints/os390.sh + ____________________________________________________________________________ + [ 9227] By: jhi on 2001/03/19 02:22:35 + Log: Integrate #9115,9121,9128,9163,9171,9174,9175 from mainline + into maintperl. + + Subject: Re: [ID 20010305.005] "use integer" doesn't make rand() return integers + + Forgot to check-in the larger part of #9120, duh. + + Subject: Another patch for integer.pm POD + + h2ph strictness and cleanliness from Kurt Starsinic. + + Borland filename case problem. + + h2ph strictness and cleanliness from Kurt Starsinic. + + Subject: [PATCH] the uncontroversial doc patches + Branch: maint-5.6/perl + +> win32/sncfnmcs.pl + !> MANIFEST README.os2 README.win32 ext/GDBM_File/GDBM_File.pm + !> ext/GDBM_File/GDBM_File.xs lib/integer.pm + !> pod/perl5005delta.pod pod/perldebtut.pod pod/perlfunc.pod + !> pod/perlhack.pod pod/perllexwarn.pod pod/perllocale.pod + !> pod/perllol.pod pod/perlmod.pod pod/perlmodlib.pod + !> pod/perlport.pod pod/perlrun.pod pod/perltoc.pod + !> pod/perlxs.pod pod/perlxstut.pod utils/h2ph.PL + ____________________________________________________________________________ + [ 9226] By: jhi on 2001/03/19 02:10:21 + Log: Integrate changes #9207,9214 from mainline into maintperl. + + podchecker relaxations: =over has an *optional* number after it, + and whitespace in L<> is okay. + Branch: maint-5.6/perl + !> lib/Pod/Checker.pm lib/Pod/ParseUtils.pm pod/perlpod.pod + !> t/pod/poderrs.xr + ____________________________________________________________________________ + [ 9224] By: jhi on 2001/03/19 02:06:11 + Log: Integrate change #9223 from mainline to maintperl. + + Document -Dmksymlinks. + Branch: maint-5.6/perl + !> INSTALL + ____________________________________________________________________________ + [ 9222] By: jhi on 2001/03/19 01:15:35 + Log: The -Dmksymlinks wasn't working for maintperl. + Branch: maint-5.6/perl + ! Configure + ____________________________________________________________________________ + [ 9219] By: gsar on 2001/03/19 00:16:55 + Log: remove duplicated tests + Branch: maint-5.6/perl + ! t/op/re_tests + ____________________________________________________________________________ + [ 9208] By: jhi on 2001/03/18 20:12:12 + Log: Integrate changes #8128,9132 from mainline into maintperl, + Tie::SubstrHash fixes. + Branch: maint-5.6/perl + !> lib/Tie/SubstrHash.pm t/lib/tie-substrhash.t + ____________________________________________________________________________ + [ 9197] By: gsar on 2001/03/18 12:15:57 + Log: more thorough cleaning of arenas--keep going until no more + SvREFCNT_dec()s occur (this fixes the problem that causes the + pesky "Scalars leaked" warnings) + Branch: maint-5.6/perl + ! embed.pl perl.c proto.h sv.c t/op/sort.t + ____________________________________________________________________________ + [ 9168] By: jhi on 2001/03/15 14:13:22 + Log: Integrate changes #9120,9167 from mainline to maintperl. + + Subject: [PATCH 5.6.1] OS/2 docs + + Subject: [PATCH 5.6.1] perldoc + Branch: maint-5.6/perl + !> os2/Changes utils/perldoc.PL + ____________________________________________________________________________ + [ 9162] By: gsar on 2001/03/15 00:56:53 + Log: avoid warnings + Branch: maint-5.6/perl + ! t/op/magic.t + ____________________________________________________________________________ + [ 9161] By: gsar on 2001/03/15 00:52:09 + Log: clearing of $ENV{PERL_DESTRUCT_LEVEL} interferes with purify + results + Branch: maint-5.6/perl + ! t/op/magic.t + ____________________________________________________________________________ + [ 9154] By: gsar on 2001/03/14 17:48:18 + Log: PerlIO_stdoutf() wasn't properly supported under PERL_IMPLICIT_SYS + (caused Storable 1.0.10 to break on windows) + Branch: maint-5.6/perl + ! embed.h embed.pl global.sym globals.c iperlsys.h objXSUB.h + ! perlapi.c proto.h + ____________________________________________________________________________ + [ 9152] By: gsar on 2001/03/14 07:29:40 + Log: back out changes#9012,9010,9009 and parts of change#9016 + (causes ABRs under purify, and some prerequisites don't + seem to be there in 5.6.x) + Branch: maint-5.6/perl + ! doop.c op.c t/op/tr.t toke.c + ____________________________________________________________________________ + [ 9142] By: gsar on 2001/03/14 03:20:48 + Log: fix another memory leak reported by purify (tie callbacks that + croak can leak when wiping out magic) + Branch: maint-5.6/perl + ! scope.c + ____________________________________________________________________________ + [ 9138] By: gsar on 2001/03/14 01:18:00 + Log: remove squelch controls for "Scalars leaked" messages in most places + (these are now cured) + Branch: maint-5.6/perl + ! t/comp/proto.t t/op/lex_assign.t t/op/local.t t/op/pat.t + ! t/op/regexp.t t/pragma/strict-vars t/pragma/warn/op + ! t/pragma/warn/regcomp t/pragma/warn/toke t/pragma/warnings.t + ____________________________________________________________________________ + [ 9137] By: gsar on 2001/03/14 00:57:04 + Log: fix leak in pregcomp() when RE fails to compile (e.g. m/\\/) + Branch: maint-5.6/perl + ! regcomp.c + ____________________________________________________________________________ + [ 9133] By: gsar on 2001/03/13 22:46:20 + Log: integrate change#9067 from mainline + + Re: [PATCH: 5.6.1 trial2] DynaLoading for OS/390 build option + Branch: maint-5.6/perl + !> lib/ExtUtils/MM_Unix.pm + ____________________________________________________________________________ + [ 9131] By: gsar on 2001/03/13 22:30:42 + Log: make the error text look more consistent in hints/hpux.sh + Branch: maint-5.6/perl + ! hints/hpux.sh + ____________________________________________________________________________ + [ 9116] By: gsar on 2001/03/13 00:55:53 + Log: Win32::GetCwd() returns C: instead of C:\ in the root directory + under ithreads + Branch: maint-5.6/perl + ! win32/perlhost.h + ____________________________________________________________________________ + [ 9108] By: gsar on 2001/03/12 10:21:31 + Log: fix memory leak in C arising from a refcount + loop between the outer sub and the inner prototype anonsub + + this also enables closures returned by subroutines that + subsequently get redefined to work without generating coredumps :) + + completely removed the free_closures() hack--it shouldn't be + needed anymore + Branch: maint-5.6/perl + + t/op/anonsub.t + ! MANIFEST embed.h embed.pl op.c op.h pod/perlapi.pod pp_ctl.c + ! proto.h sv.c + ____________________________________________________________________________ + [ 9076] By: jhi on 2001/03/07 22:59:39 + Log: Integrate change #7784 from mainline into maintperl. + + Subject: [PATCH 5.7.0] lexicals not recognized in a run-time (?{}) + Branch: maint-5.6/perl + !> pp_ctl.c t/op/pat.t + ____________________________________________________________________________ + [ 9064] By: gsar on 2001/03/07 06:29:24 + Log: fix memory leak in pack("Bb",...) + Branch: maint-5.6/perl + ! perl.c + ____________________________________________________________________________ + [ 9055] By: jhi on 2001/03/06 02:21:26 + Log: Integrate the change #9054 from mainline: + retract the PMOP cleanup patch pending further investigation. + Branch: maint-5.6/perl + !> op.c op.h + ____________________________________________________________________________ + [ 9050] By: jhi on 2001/03/05 21:44:29 + Log: Integrate changes #9033 and #9044 from mainline into maintperl, + Sarathy's fix for ID 20010301.005. + Branch: maint-5.6/perl + !> op.c op.h + ____________________________________________________________________________ + [ 9030] By: jhi on 2001/03/05 13:46:49 + Log: Subject: [PATCH 5.6.1] OS/2 cleanup + From: Ilya Zakharevich + Date: Mon, 5 Mar 2001 02:29:44 -0500 + Message-ID: <20010305022944.A10117@math.ohio-state.edu> + Branch: maint-5.6/perl + + os2/os2add.sym + ! MANIFEST lib/ExtUtils/MM_OS2.pm lib/ExtUtils/MM_Unix.pm + ! makedef.pl os2/Changes os2/Makefile.SHs + ! os2/OS2/REXX/Makefile.PL os2/OS2/REXX/REXX.pm + ! os2/OS2/REXX/REXX.xs os2/OS2/REXX/t/rx_cmprt.t os2/os2.c + ! os2/os2.sym os2/os2ish.h + ____________________________________________________________________________ + [ 9028] By: gsar on 2001/03/05 09:58:38 + Log: various nits in MM_Unix.pm found by disabling SelfLoader + Branch: maint-5.6/perl + ! lib/ExtUtils/MM_Unix.pm + ____________________________________________________________________________ + [ 9026] By: jhi on 2001/03/05 02:14:59 + Log: Integrate change #9025 from mainline to maintperl, + retract \N{U+HHHH}. + Branch: maint-5.6/perl + !> lib/charnames.pm pod/perldiag.pod pod/perlretut.pod + !> t/lib/charnames.t toke.c + ____________________________________________________________________________ + [ 9019] By: jhi on 2001/03/04 18:18:43 + Log: Integrate changes #9017 and 9018 from mainline into maintperl. + + \N{U+HHHH} fix. + + pattern in G_ARRAY context + Branch: maint-5.6/perl + !> pp_hot.c t/op/pat.t toke.c + ____________________________________________________________________________ + [ 9016] By: jhi on 2001/03/04 17:41:22 + Log: Integrate changes #9013,9014,9015 from mainline into maintperl. + + Tweak the get*ent() OS/2 prototypes. + + Add the \N{U+HHHH} syntax. + + More tr/// UTF-8 fixes from Inaba Hiroto. + Branch: maint-5.6/perl + !> doop.c lib/charnames.pm os2/os2.c pod/perldiag.pod + !> pod/perlretut.pod t/lib/charnames.t t/op/tr.t toke.c + ____________________________________________________________________________ + [ 9012] By: gsar on 2001/03/04 06:26:14 + Log: avoid warning (nit in change#9009) + Branch: maint-5.6/perl + ! toke.c + ____________________________________________________________________________ + [ 9011] By: gsar on 2001/03/04 06:15:24 + Log: lib/charnames.t fails in 5.6.x because of older Unicode + data + + TODO: need to revisit this after updating lib/unicode/... + Branch: maint-5.6/perl + ! t/lib/charnames.t + ____________________________________________________________________________ + [ 9010] By: gsar on 2001/03/04 06:08:36 + Log: change#9009 breaks build (no "didrange" variable in 5.6.x) + Branch: maint-5.6/perl + ! toke.c + ____________________________________________________________________________ + [ 9009] By: jhi on 2001/03/03 19:27:20 + Log: Integrate change #9008 from mainline to maintperl, + UTF-8 tr/// fixes from Inaba Hiroto. + Branch: maint-5.6/perl + !> doop.c op.c t/op/tr.t toke.c + ____________________________________________________________________________ + [ 9006] By: jhi on 2001/03/03 18:58:06 + Log: Subject: [PATCH 5.6.1] More robust Math::Complex + From: Ilya Zakharevich + Date: Sat, 3 Mar 2001 12:51:50 -0500 + Message-ID: <20010303125150.A2147@math.ohio-state.edu> + + Be more robust in our quest for the infinite. + Branch: maint-5.6/perl + ! lib/Math/Complex.pm + ____________________________________________________________________________ + [ 9005] By: jhi on 2001/03/03 17:55:50 + Log: The #8982 modified for perl 5.6.x, from Radu Greab. + Branch: maint-5.6/perl + ! doio.c + ____________________________________________________________________________ + [ 9003] By: jhi on 2001/03/03 17:15:52 + Log: Integrate change #9002 from mainline to maintperl. + + Subject: [perl-5.6.x, perl-current] accept for EPOC + Branch: maint-5.6/perl + !> pp_sys.c + ____________________________________________________________________________ + [ 8999] By: jhi on 2001/03/03 17:09:28 + Log: Subject: [PATCH 5.6.1] syslog.t + From: Ilya Zakharevich + Date: Sat, 3 Mar 2001 02:11:17 -0500 + Message-ID: <20010303021116.A11897@math.ohio-state.edu> + Branch: maint-5.6/perl + ! t/lib/syslog.t + ____________________________________________________________________________ + [ 8998] By: jhi on 2001/03/03 17:07:50 + Log: Subject: Re: [PATCH 5.7.0] compiling on OS/2: 5.6.1 too + From: Ilya Zakharevich + Date: Sat, 3 Mar 2001 01:53:52 -0500 + Message-ID: <20010303015352.A11741@math.ohio-state.edu> + Branch: maint-5.6/perl + ! opcode.pl os2/os2.c + ____________________________________________________________________________ + [ 8997] By: jhi on 2001/03/03 17:03:30 + Log: Subject: [PATCH 5.6.1] compiling on OS/2 + From: Ilya Zakharevich + Date: Sat, 3 Mar 2001 01:59:59 -0500 + Message-ID: <20010303015959.B11741@math.ohio-state.edu> + Branch: maint-5.6/perl + ! hints/os2.sh + ____________________________________________________________________________ + [ 8995] By: jhi on 2001/03/03 00:35:22 + Log: Integrate changes #8099,8218,8220,8221,8227,8304,8317, + 8318,8320,8337,8503,8877,8890,8903,8971 from mainline + to maintperl. + + Subject: Re: [ID 20000328.039] [PATCH] Eliminate Configure use of /tmp + + Add Configure option -Dmksymlinks which will create a symlink + forest if the current/build differs from the source directory. + (8218,8220,8221,8317,8318,8971) + + Subject: Re: A Configure option like 'otherlibdirs' but for *pre*pending? + (Document APPLLIB_EXP in INSTALL.) + + If running byacc write-enable also perly.h. + + DB3 NDBM/ODBM emulation tweaks from Stanislav Brabec . + + Subject: [PATCH 5.7.1/Configure] failure to set src='.' + + Sanity check for conflicting thread flavours. + + Fix the sys/fcntl.h problem reported by Peter Prymmer. + + Add few CPUs/architectures to the Cppsym scan, + add -perlio to archname if so selected (modified 8890) + + Be more helpful for devel builders, suggested by John L. Allen. + (admittedly pointless change for maintperl, but the usedevel + code is there already) + Branch: maint-5.6/perl + !> Configure INSTALL Makefile.SH Porting/Glossary + !> Porting/config.sh Porting/config_H config_h.SH embed.pl + !> epoc/config.sh ext/NDBM_File/NDBM_File.xs + !> ext/ODBM_File/ODBM_File.xs t/io/fs.t warnings.pl + !> win32/config.bc win32/config.gc win32/config.vc + ____________________________________________________________________________ + [ 8993] By: jhi on 2001/03/02 23:22:12 + Log: Regenerate various files for maint. + Branch: maint-5.6/perl + ! Porting/Glossary Porting/config.sh Porting/config_H objXSUB.h + ! perlapi.c pod/perlapi.pod pod/perltoc.pod proto.h + ____________________________________________________________________________ + [ 8991] By: jhi on 2001/03/02 21:00:08 + Log: Retract the #8742 part of #8986, backward compat. + Branch: maint-5.6/perl + ! embed.pl + ____________________________________________________________________________ + [ 8990] By: jhi on 2001/03/02 20:40:07 + Log: Retract the #8919 part of #8987, not applicable to the 5.6 branch. + Branch: maint-5.6/perl + ! hv.c + ____________________________________________________________________________ + [ 8987] By: jhi on 2001/03/02 19:43:40 + Log: Integrate changes #8784,8839,8843,8847,8849,8859,8866, + 8873,8874,8876,8879,8901,8902,8908,8913,8918,8919,8946,8947,8948, + 8950,8952,8955 from mainline to maintperl. + + Subject: [PATCH: perl@8773] small fixups to perlclib.pod + + Put to rest the 20010205.001, the email address checking (not) regex. + + fork() not everywhere, cleanup temp files. + + The #8843 wasn't quite right: %Config needs to imported. + + Subject: [PATCH perl@8841] glob-basic.t, runenv.t fix-ups + (#8849: the glob-basic hunk needed massaging as it depended + on Schwern's large-scale (unintegrated) patches) + + Skip the Perl_sys_intern_clear and Perl_sys_intern_init. + + Upgrade to CGI.pm 2.752, from Lincoln Stein. + (Note: there were some conflicts due to EBCDIC and EPOC + patches, in general I preferred the repository code.) + (When 2.753 comes out, we need to synchronize.) + + Subject: [PATCH] fix for charnames above FFFF + + Subject: [patch perl@8841] One URL update and a possible OS Version snag for perlport.pod + + If no sfio, no -lsfio. + + Run run/*.t also in minitest. + + Subject: [PATCH perl 5.7.0] malloc message address offset + + Subject: [PATCH 5.7.0] don't zero CvFLAGS before checking for CvCONST! + + Subject: fix for parameter -Dm (for perl@8867) + + Subject: [PATCH: perl@8892] was Re: hashing order difference? + (make the test more portable) + + Subject: Re: [PATCH] fix for charnames above FFFF + + Subject: Re: I'm losing the war... + (hv_store() not working correctly in ENV_IS_CASELESS case.) + + Subject: Modified README.bs2000 + + Subject: [PATCH: perl@8935] -Dt padsv($var) + + Subject: [PATCH: perl@8890] small fix in pod/perlop.pod + + Subject: PATCH: extra tests to check on negative float to unsigned cast + + Subject: [PATCH] XPUSH[insp] was Re: progress + + Subject: Re: Compile with perlcc.. + Branch: maint-5.6/perl + !> (integrate 36 files) + ____________________________________________________________________________ + [ 8986] By: jhi on 2001/03/02 18:51:25 + Log: Integrate changes #8689,8697,8724,8726,8731,8742,8754,8755, + 8763,8767,8770,8772,8795,8796,8813,8822,8823 from mainline + to maintperl. + + Subject: Re: [PATCH lots of pod/] s/chop/chomp/g + + Subject: [DOC PATCH] overload.pm nits + + Add header for LIB$ prototypes (C. Berry) + + Convert fwrite()s to sockets to write()s, since some socket stacks + don't take kindly to stdio. + Ignore "expected" SS$_NOLOGNAM when doing internal LNM lookups + (for often optional LNMs) + Correct a few typos + (C. Bailey) + + Subject: [PATCH: 5.6.1 trial2 && perl@8671] provide EBCDIC CGI::Util::escape() and test + + De-cut-and-pasto. + + Subject: Re: [PATCH embed.pl] Forgot to add ./lib to @INC for File::Glob + + Upgrade to Text-Tabs+Wrap-2001.0131 from David Muir Sharnoff. + + Upgrade to CPAN 1.59_54, from Andreas König. + + Bogus shebang. + + Subject: [PATCH] Document makepatch in Porting/patching + + UTF-8 documentation. + + Subject: Re: [PATCH] pod/perlclib.pod - Replacements for C library functions + + Sort the MANIFEST. + + Subject: [ID 20010210.002] perldiag doesn't include the "Scalars leaked" message + + Subject: [PATCH @8807] toke.c cleanup: scan_str() + + Subject: [PATCH perl.c] Fixing PERL5OPT (was Re: Warnings, strict, and CPAN) + + Add run/*.t to testables. + + TODO: integrate #8784. + Branch: maint-5.6/perl + +> pod/perlclib.pod t/lib/cgi-esc.t t/run/runenv.t + !> (integrate 28 files) + ____________________________________________________________________________ + [ 8984] By: jhi on 2001/03/02 16:00:17 + Log: Integrate changes #8978,8979,8980,8981,8983 from mainline. + + perlfaq1 reworded to suggest 5.6.0 or 5.005_03, or POSSIBLY + 5.004_05, and mention the suidperl August 2000 security problem. + (#8978,#8981) + + Subject: [ID 20010301.004] Technically speaking in perldata + + Subject: [PATCH] File::Copy for bleadperl, maintperl + + Subject: [PATCH 5.7.0/5.6.0+] VMS piping ... cleanup at interpreter exit + + (The #8982, fix for 20010221.005 and 20010221.008, + would be nice too but it didn't integrate cleanly.) + Branch: maint-5.6/perl + !> lib/File/Copy.pm pod/perldata.pod pod/perlfaq1.pod vms/vms.c + ____________________________________________________________________________ + [ 8974] By: gsar on 2001/03/01 16:28:21 + Log: fix for bugid 20010226.008 + + the problem was that some of the pointers (PL_last_lop and + PL_last_uni specifically) into the lex buffers weren't correctly + being invalidated when the buffer changed; this would leave the + pointers pointing at an arbitrary location in the buffer if + the buffer didn't need to be reallocated, or point into freed + memory if the buffer had to be realloced + + TODO item for bugdb maintainers: check other seemingly random + parser-related bugs--they might be cured by this + Branch: maint-5.6/perl + ! toke.c + ____________________________________________________________________________ + [ 8960] By: jhi on 2001/02/27 22:51:33 + Log: Subject: [PATCH perl@8958 and 5.6.1-trial2] configure.com bug fixing spree + From: "Craig A. Berry" + Date: Tue, 27 Feb 2001 16:11:44 -0600 + Message-Id: <5.0.2.1.0.20010227150548.02a200f8@exchi01> + Branch: maint-5.6/perl + ! configure.com vms/descrip_mms.template + ____________________________________________________________________________ + [ 8957] By: jhi on 2001/02/27 06:15:07 + Log: Subject: [5.6.x] EPOC additions + From: Olaf Flebbe + Date: Mon, 26 Feb 2001 23:33:46 +0100 (CET) + Message-ID: + Branch: maint-5.6/perl + ! AUTHORS README.epoc epoc/createpkg.pl pp_sys.c + ____________________________________________________________________________ + [ 8945] By: jhi on 2001/02/26 14:19:53 + Log: Integrate the t/op/sprintf.t parts of #7909 and #8944 from mainline + to maintperl, listing the known failures on the tests 129 and 130. + Branch: maint-5.6/perl + !> t/op/sprintf.t + ____________________________________________________________________________ + [ 8917] By: jhi on 2001/02/23 20:27:51 + Log: Integrate change #8916 from mainline, + do away with USE_WIN32_RTL_ENV. + Branch: maint-5.6/perl + !> perl.c util.c win32/win32.c win32/win32.h win32/win32iop.h + ____________________________________________________________________________ + [ 8911] By: jhi on 2001/02/23 04:20:02 + Log: Integrate changes #8896,8897,8898,8906,8907,8908 from mainline. + + Duplicated environment freeing, File::Temp 0.12, + op/append portability (EBCDIC) tweak. + Branch: maint-5.6/perl + !> lib/File/Temp.pm perl.c t/lib/ftmp-mktemp.t t/lib/ftmp-posix.t + !> t/op/append.t + ____________________________________________________________________________ + [ 8910] By: jhi on 2001/02/23 02:07:33 + Log: Integrate change #8909 from mainline, a better Borland + putenv() workaround. + Branch: maint-5.6/perl + !> perl.c + ____________________________________________________________________________ + [ 8900] By: jhi on 2001/02/23 01:18:02 + Log: Integrate changes #8898,8899 from mainline, environ handling. + Branch: maint-5.6/perl + !> perl.c + ____________________________________________________________________________ + [ 8894] By: gsar on 2001/02/22 19:06:18 + Log: integrate changes#6162,6163 from mainline (missing leak fixes!) + + fix memory leak in method call optimization (change#3768); + made Cfoo()"> leak + + fix memory leak in C (bug in change#4579) + Branch: maint-5.6/perl + !> op.c + ____________________________________________________________________________ + [ 8886] By: jhi on 2001/02/22 12:49:24 + Log: Integrate changes #8883,8884 from mainline to maintperl. + + Subject: [patch: perl@8867] embed.{h|pl} need not mention ebcdic_control ... + Subject: Re: File::Temp::_gettemp warning + Branch: maint-5.6/perl + !> embed.h embed.pl lib/File/Temp.pm + ____________________________________________________________________________ + [ 8885] By: jhi on 2001/02/22 12:43:59 + Log: Based on + + Subject: [ID 20010222.001] POSIX.xs IV vs NV bug + From: schwab@suse.de + Date: Thu, 22 Feb 2001 13:08:09 +0100 + Message-Id: <200102221208.f1MC89H09364@sykes.suse.de> + + but the fix done slightly differently because the other + half was already done in #8664. + Branch: maint-5.6/perl + ! ext/POSIX/POSIX.xs + ____________________________________________________________________________ + [ 8882] By: jhi on 2001/02/21 19:41:33 + Log: Integrate change #8881 from mainlin to maintperl. + + Subject: [PATCH - perl8585] glob-in-eval memory leak fix + Branch: maint-5.6/perl + !> op.c + ____________________________________________________________________________ + [ 8871] By: jhi on 2001/02/21 14:07:29 + Log: Integrate change #8868 from pureperl to maintperl. + + Fixed reference count loop caused by sv_magic. + Branch: maint-5.6/perl + !> sv.c + ____________________________________________________________________________ + [ 8863] By: jhi on 2001/02/20 20:55:11 + Log: Integrate change #8860,8861 from mainline into maintperl. + + "pseudo-literal j" + + Subject: [PATCH: 5.6.1 trial2 && perl@8807] workaround VMS I/O problem in Test.pm for bug ID 20010213.009 + Branch: maint-5.6/perl + !> lib/Test.pm pod/perlop.pod + ____________________________________________________________________________ + [ 8856] By: jhi on 2001/02/20 17:33:16 + Log: Integrate change #8848 from mainline to maintperl: ?DBM_File cleanup. + Branch: maint-5.6/perl + !> ext/GDBM_File/GDBM_File.pm ext/NDBM_File/NDBM_File.pm + !> ext/ODBM_File/ODBM_File.pm ext/SDBM_File/SDBM_File.pm + !> t/lib/gdbm.t t/lib/ndbm.t t/lib/odbm.t t/lib/sdbm.t + ____________________________________________________________________________ + [ 8855] By: jhi on 2001/02/20 17:32:13 + Log: Integrate pureperl changes #8844,8845,8850 to maintperl. + + Fixed %^H scoping bug + + Removed GV <-> CV refcount loop + + Removed %ENV refcount loop + Branch: maint-5.6/perl + !> gv.c op.c perl.c pp.c scope.c + ____________________________________________________________________________ + [ 8854] By: jhi on 2001/02/20 17:25:06 + Log: Subject: Addition to readme.win32 for Borland C++ compilers + Date: Tue, 20 Feb 2001 02:15:25 +0300 + From: "Vadim Konovalov" + Message-ID: <011c01c09aca$93bbbec0$367b55c2@vad> + + Document Borland compiler misbehaviour. + Branch: maint-5.6/perl + ! README.win32 + ____________________________________________________________________________ + [ 8853] By: jhi on 2001/02/20 17:22:25 + Log: The assimilation of ebcdic.c didn't quite work at the first try, + patches from Thomas Dorner. + Branch: maint-5.6/perl + ! handy.h util.c + ____________________________________________________________________________ + [ 8852] By: jhi on 2001/02/20 17:20:15 + Log: Subject: [PATCH] More Mac OS patches for maint-5.6 + From: Chris Nandor + Date: Tue, 20 Feb 2001 08:32:45 -0500 + Message-Id: + Branch: maint-5.6/perl + ! makedef.pl mg.c + ____________________________________________________________________________ + [ 8831] By: jhi on 2001/02/18 19:14:20 + Log: Integrate change #8827 from mainline. + + UTF8 tweaks. + Branch: maint-5.6/perl + !> sv.c utf8.c + ____________________________________________________________________________ + [ 8818] By: jhi on 2001/02/18 02:24:50 + Log: FAQ nit from Chris Fedde. + Branch: maint-5.6/perl + ! pod/perlfaq4.pod + ____________________________________________________________________________ + [ 8810] By: jhi on 2001/02/15 13:35:08 + Log: Upgrade to podlators 1.08, from Russ Allbery. + Branch: maint-5.6/perl + ! lib/Pod/Man.pm lib/Pod/Text.pm + ____________________________________________________________________________ + [ 8809] By: jhi on 2001/02/15 13:26:38 + Log: (accidentally empty check-in) + Branch: maint-5.6/perl + ! lib/Test/Harness.pm + ____________________________________________________________________________ + [ 8808] By: jhi on 2001/02/15 13:23:47 + Log: Subject: [PATCH 5.6.1-TRIAL2] perldoc.PL using install directories + From: Russ Allbery + Date: 14 Feb 2001 10:15:41 -0800 + Message-ID: + + perldoc was hardcoding $Config{installscript}, which breaks + when install* isn't where Perl ends up (such as with AFS). + + Use $Config{scriptdir} instead. + Branch: maint-5.6/perl + ! utils/perldoc.PL + ____________________________________________________________________________ + [ 8806] By: jhi on 2001/02/14 14:25:31 + Log: Integrate changes #8803,8804,8805 from mainline. + + Duplicate environment for JPL so that JDK 1.2/1.3 don't get upset. + + Don't skip too much of the locale error message if no environ array, + from Chris Nandor. + + More MacOS Classic fixes from Chris Nandor. + Branch: maint-5.6/perl + !> doop.c lib/Cwd.pm perl.c perl.h util.c + ____________________________________________________________________________ + [ 8801] By: jhi on 2001/02/13 17:55:19 + Log: Integrate change #8792 from mainline. + + Subject: buncha MacPerl patches for bleadperl + From: Chris Nandor + Date: Tue, 13 Feb 2001 00:02:43 -0500 + Message-Id: + Branch: maint-5.6/perl + !> lib/AutoLoader.pm lib/AutoSplit.pm lib/ExtUtils/MakeMaker.pm + !> lib/File/Basename.pm makedef.pl perl.c pp_ctl.c + !> t/lib/basename.t toke.c util.h + ____________________________________________________________________________ + [ 8800] By: jhi on 2001/02/13 17:46:43 + Log: When doing that Fpos_t used in PerlIO_getpos proto needs + to be forced to Off_t. + + Subject: [ID 20010201.009] 5.6.1-TRIAL2 sfio build fails + From: nick@ccl4.org + Date: Thu, 1 Feb 2001 12:01:04 +0000 + Message-Id: <20010201120103.E11401@plum.flirble.org> + Branch: maint-5.6/perl + ! iperlsys.h perlio.c + ____________________________________________________________________________ + [ 8799] By: jhi on 2001/02/13 16:52:51 + Log: Duplex duplex hunk hunk. + Branch: maint-5.6/perl + ! Makefile.SH + ____________________________________________________________________________ + [ 8794] By: jhi on 2001/02/13 14:26:51 + Log: Integrate change #8793 from mainline, FAQ updates. + Branch: maint-5.6/perl + !> pod/perlfaq5.pod pod/perlfaq6.pod pod/perlfaq9.pod + ____________________________________________________________________________ + [ 8791] By: jhi on 2001/02/13 14:10:39 + Log: Integrate change #8790 from mainline. + + environ array wrongly assumed in Perl_init_i18nl10n(), + Branch: maint-5.6/perl + !> util.c + ____________________________________________________________________________ + [ 8789] By: jhi on 2001/02/13 13:58:07 + Log: Integrate changes #8373,8487,8544,8783 from mainline. + + Synchronize the EBCDIC platforms (os390,posix-bc,vmesa): + hints files, the dynaloading, assimilate ebcdic into util.c. + Branch: maint-5.6/perl + - ebcdic.c + ! MANIFEST hints/posix-bc.sh + !> Makefile.SH embed.h embed.pl ext/DynaLoader/dl_dllload.xs + !> handy.h hints/os390.sh hints/vmesa.sh installperl objXSUB.h + !> perlapi.c proto.h util.c + ____________________________________________________________________________ + [ 8786] By: jhi on 2001/02/13 05:54:34 + Log: Subject: perl@8671 on posix-bc aka BS2000 Posix (small Patch included!) + From: Dorner Thomas + Date: Mon, 12 Feb 2001 15:06:26 +0100 + Message-ID: <6727B1DACFCDD311A757009027CA8D69010A8853@Ex02.inhouse.start.de> + Branch: maint-5.6/perl + ! Makefile.SH + ____________________________________________________________________________ + [ 8782] By: jhi on 2001/02/13 02:00:07 + Log: Add OpenBSD to the list of 5.6.1-okay platforms. + Branch: maint-5.6/perl + ! pod/perlport.pod + ____________________________________________________________________________ + [ 8781] By: jhi on 2001/02/13 01:58:44 + Log: OpenBSD hints update for 5.6.1-TRIAL2 from Todd C. Miller. + Branch: maint-5.6/perl + ! hints/openbsd.sh + ____________________________________________________________________________ + [ 8780] By: jhi on 2001/02/13 01:57:33 + Log: Synchronize the regexp tests between maintperl and mainline. + Branch: maint-5.6/perl + !> t/op/re_tests + ____________________________________________________________________________ + [ 8777] By: jhi on 2001/02/13 00:17:54 + Log: Subject: Re: [ID 20010212.006] Core dump with /((?:hard|soft)cover)?/ + From: Hugo + Date: Tue, 13 Feb 2001 00:11:11 +0000 + Message-Id: <200102130011.AAA14310@crypt.compulink.co.uk> + Branch: maint-5.6/perl + ! regcomp.c t/op/re_tests + ____________________________________________________________________________ + [ 8776] By: jhi on 2001/02/12 23:25:52 + Log: Add VOS to the list of 5.6.1 known-to-be-working platforms. + Branch: maint-5.6/perl + ! pod/perlport.pod + ____________________________________________________________________________ + [ 8775] By: jhi on 2001/02/12 23:04:28 + Log: VOS updates for 5.6-TRIAL2 from Paul Green. + Branch: maint-5.6/perl + ! README.vos vos/Changes vos/build.cm vos/config.alpha.def + ! vos/config.alpha.h vos/config.ga.def vos/config.ga.h + ! vos/configure_perl.cm + ____________________________________________________________________________ + [ 8758] By: jhi on 2001/02/10 18:01:17 + Log: Integrate changes #8701,8704,8756 from pureperl to maintperl. + + Fixed UMRs and leak in Perl_pmtrans() + + Several leaks an UMRs fixed, mainly in the area of Perl_pmtrans and + associated UTFied tr/// code. Also fixed scoping leak of + PL_reg_start_tmp. + + newATTRSUB leaks when an attempt to redefine the active sort sub is + made. + Branch: maint-5.6/perl + !> op.c regcomp.c + ____________________________________________________________________________ + [ 8748] By: jhi on 2001/02/09 18:31:34 + Log: Integrate changes #8673,8674,8676 from maintperl into mainline, + plus manual tweakage. + + Sync the perlfaq2 between mainline and maintperl. + Branch: maint-5.6/perl + ! pod/perlfaq2.pod + Branch: perl + !> pod/perlfaq2.pod + ____________________________________________________________________________ + [ 8746] By: jhi on 2001/02/09 18:03:43 + Log: Integrate changes #8699,8708,8709,8744,8745 from mainline. + + Subject: perlfaq2, re: perlmongers + + Subject: Re: [PATCH pod/[bt]ootc?.pod] Adding mention of useful CPAN modules + + Subject: [PATCH pod/perlmodlib.PL 5.6.1-TRIAL2] Up to date CPAN mirror list + + Subject: [ID 20010205.001] typo in perlfaq9 + + Subject: [ID 20010208.002] unordered explanation in perlcall + Branch: maint-5.6/perl + !> pod/perlapi.pod pod/perlboot.pod pod/perlcall.pod + !> pod/perlfaq2.pod pod/perlfaq9.pod pod/perlmodlib.PL + !> pod/perlobj.pod pod/perltoot.pod pod/perltootc.pod + ____________________________________________________________________________ + [ 8740] By: jhi on 2001/02/09 17:03:46 + Log: Subject: [PATCH perl-current] perlfaq3.pod, URL for vile + From: "Brendan O'Dea" + Date: Sun, 4 Feb 2001 11:17:56 +1100 + Message-ID: <20010204111756.A16301@compusol.com.au> + Branch: maint-5.6/perl + ! pod/perlfaq3.pod + ____________________________________________________________________________ + [ 8739] By: jhi on 2001/02/09 17:01:59 + Log: Subject: [PATCH: perl-5.6.1-TRIAL2] installhtml change to build prettier html files + From: "Indy Singh" + Date: Fri, 2 Feb 2001 15:09:59 -0500 + Message-ID: <02b601c08d54$23fd3560$d24b7018@cr637287a> + + Html files will be generated with a header to make them look + a little less bare. + Branch: maint-5.6/perl + ! installhtml + ____________________________________________________________________________ + [ 8738] By: jhi on 2001/02/09 16:58:48 + Log: Subject: [PATCH: perl-5.6.1-TRIAL2] Win32 Makefile change to move html directory + From: "Indy Singh" + Date: Fri, 2 Feb 2001 15:08:23 -0500 + Message-ID: <02b501c08d53$ec354550$d24b7018@cr637287a> + + Html files will be installed in a more logical and easier to + find directory. E.g. c:\perl\html instead of c:\perl\lib\pod\html + Branch: maint-5.6/perl + ! win32/Makefile win32/makefile.mk + ____________________________________________________________________________ + [ 8736] By: jhi on 2001/02/09 16:42:31 + Log: Latin nit from Philip Newton. + Branch: maint-5.6/perl + ! README.hpux + ____________________________________________________________________________ + [ 8733] By: jhi on 2001/02/09 15:35:47 + Log: Subject: Re: [PATCH: 5.6.1 trial 2 && perl@8671] some coded char set issues in perlre.pod + From: Prymmer/Kahn + Date: Thu, 8 Feb 2001 21:21:22 -0800 (PST) + Message-ID: + Branch: maint-5.6/perl + ! pod/perlre.pod + ____________________________________________________________________________ + [ 8732] By: jhi on 2001/02/09 15:26:17 + Log: Rename README.posix-bc to README.bs2000 (to avoid the + confusion of a "perlposix-bc.pod"), add a few missing + arch pods, regen toc. + Branch: maint-5.6/perl + +> README.bs2000 + - README.posix-bc + ! MANIFEST pod/buildtoc.PL pod/perl.pod pod/perlport.pod + ! pod/perltoc.pod win32/Makefile win32/makefile.mk + ____________________________________________________________________________ + [ 8728] By: jhi on 2001/02/09 14:46:06 + Log: Subject: [PATCH: 5.6.1 trial 2 && perl@8671] podify README.vmesa + From: Peter Prymmer + Date: Thu, 8 Feb 2001 13:00:30 -0800 (PST) + Message-ID: + Branch: maint-5.6/perl + ! README.vmesa win32/Makefile win32/makefile.mk + ____________________________________________________________________________ + [ 8727] By: jhi on 2001/02/09 14:33:25 + Log: Integrate change #8712 from mainline. + + [PATCH: perl-5.6.1 trial2 && perl@8671] VMS specific simplification for Pod::Find + Branch: maint-5.6/perl + !> lib/Pod/Find.pm + ____________________________________________________________________________ + [ 8725] By: jhi on 2001/02/09 04:56:47 + Log: Add NonStopUX to the list of 5.6.1-proven platforms. + Branch: maint-5.6/perl + ! pod/perlport.pod + ____________________________________________________________________________ + [ 8723] By: jhi on 2001/02/09 03:29:29 + Log: Integrate change #8722 from mainline. + + The Im() function wasn't returning zero for non-Math::Complex + arguments. The bug reported by John Gamble. + Branch: maint-5.6/perl + !> lib/Math/Complex.pm + ____________________________________________________________________________ + [ 8703] By: gsar on 2001/02/06 02:29:37 + Log: $(MAKE) distclean doesn't clean up properly on windows + Branch: maint-5.6/perl + ! win32/Makefile win32/makefile.mk + ____________________________________________________________________________ + [ 8702] By: gsar on 2001/02/06 01:00:46 + Log: tweak change#8659 to keep it simple + Branch: maint-5.6/perl + ! utils/perldoc.PL + ____________________________________________________________________________ + [ 8701] By: gsar on 2001/02/05 22:45:41 + Log: change#8693 was missing testsuite changes + Branch: maint-5.6/perl + !> t/lib/db-btree.t t/lib/db-hash.t t/lib/db-recno.t + ____________________________________________________________________________ + [ 8695] By: gsar on 2001/02/05 03:27:34 + Log: thread.h tweak to enable 5005threads on HP-UX 10.20 with DCE threads + Branch: maint-5.6/perl + ! thread.h + ____________________________________________________________________________ + [ 8693] By: gsar on 2001/02/04 22:38:49 + Log: integrate changes#7801,8068,8094,8108,8196 from mainline (DB_File + changes) + Branch: maint-5.6/perl + !> ext/DB_File/Changes ext/DB_File/DB_File.pm + !> ext/DB_File/DB_File.xs ext/DB_File/dbinfo ext/DB_File/typemap + !> ext/DB_File/version.c + ____________________________________________________________________________ + [ 8687] By: jhi on 2001/02/03 17:11:42 + Log: HP-UX thread patches from Merijn H. Brand. + Branch: maint-5.6/perl + ! README.hpux hints/hpux.sh + ____________________________________________________________________________ + [ 8682] By: jhi on 2001/02/03 05:52:11 + Log: IRIX hints fix from Scott Henry, get Configure -Dcc="cc -64 -mips3" + to work correctly. + Branch: maint-5.6/perl + ! hints/irix_6.sh + ____________________________________________________________________________ + [ 8681] By: jhi on 2001/02/03 05:47:33 + Log: perlport tweaks from Peter Prymmer and Chris Nandor. + Branch: maint-5.6/perl + ! pod/perlport.pod + ____________________________________________________________________________ + [ 8680] By: jhi on 2001/02/02 21:39:49 + Log: perlport update from Peter Prymmer. + Branch: maint-5.6/perl + ! pod/perlport.pod + ____________________________________________________________________________ + [ 8678] By: gsar on 2001/02/02 16:02:12 + Log: note about bincompat, slightly modified (from Lupe Christoph) + Branch: maint-5.6/perl + ! README.solaris + ____________________________________________________________________________ + [ 8677] By: jhi on 2001/02/02 15:46:20 + Log: Supported platforms updates. + Branch: maint-5.6/perl + ! pod/perlport.pod + ____________________________________________________________________________ + [ 8676] By: jhi on 2001/02/02 03:41:26 + Log: A couple more perlfaq2 tweaks. + Branch: maint-5.6/perl + ! pod/perlfaq2.pod + ____________________________________________________________________________ + [ 8675] By: jhi on 2001/02/02 03:17:44 + Log: Misedit in #8661. + Branch: maint-5.6/perl + ! Configure + ____________________________________________________________________________ + [ 8674] By: jhi on 2001/02/02 03:14:38 + Log: Damien again. + Branch: maint-5.6/perl + ! pod/perlfaq2.pod + ____________________________________________________________________________ + [ 8673] By: jhi on 2001/02/02 03:12:40 + Log: perlfaq update from Elaine Ashton. + Branch: maint-5.6/perl + ! pod/perlfaq2.pod + ____________________________________________________________________________ + [ 8672] By: jhi on 2001/02/02 03:07:08 + Log: UTF-8 s/// patch from Inaba Hiroto. + Branch: maint-5.6/perl + ! pp_ctl.c pp_hot.c + ____________________________________________________________________________ + [ 8669] By: jhi on 2001/02/01 21:57:02 + Log: Subject: Re: [PATCH perl5.6.1-TRIAL2] long C<=item>s in perlmodlib.pod + From: Robin Barker + Date: Thu, 1 Feb 2001 16:59:05 GMT + Message-Id: <200102011659.QAA01274@tempest.npl.co.uk> + Branch: maint-5.6/perl + ! pod/perlmodlib.PL + ____________________________________________________________________________ + [ 8667] By: gsar on 2001/02/01 16:59:11 + Log: add ppaddr as one of the compatibility symbols under -DPERL_POLLUTE + Branch: maint-5.6/perl + ! embed.pl embedvar.h + ____________________________________________________________________________ + [ 8666] By: gsar on 2001/02/01 16:34:51 + Log: add missing entries to win32/config.?c + Branch: maint-5.6/perl + ! win32/config.bc win32/config.gc win32/config.vc + ! win32/config_H.bc win32/config_H.gc win32/config_H.vc + ____________________________________________________________________________ + [ 8665] By: jhi on 2001/02/01 14:58:51 + Log: Subject: Re: [ID 20010201.006] bad pointer from perlfunc to perlmod + From: "Stephen P. Potter" + Date: Thu, 01 Feb 2001 10:45:46 -0500 + Message-Id: <200102011545.KAA31479@spotter.yi.org> + Branch: maint-5.6/perl + ! pod/perlfunc.pod + ____________________________________________________________________________ + [ 8664] By: gsar on 2001/02/01 14:52:37 + Log: need to use INT2PTR instead of a straight cast or ia64 fails + posix.t (from Brendan O'Dea ) + Branch: maint-5.6/perl + ! ext/POSIX/POSIX.xs + ____________________________________________________________________________ + [ 8663] By: jhi on 2001/02/01 14:09:13 + Log: Allow the float to be fuzzier. + Branch: maint-5.6/perl + ! t/lib/peek.t + ____________________________________________________________________________ + [ 8662] By: jhi on 2001/02/01 13:59:00 + Log: Subject: [PATCH perl5.6.1-TRIAL2] long C<=item>s in perlmodlib.pod + From: Robin Barker + Date: Thu, 1 Feb 2001 13:05:39 GMT + Message-Id: <200102011305.NAA26160@tempest.npl.co.uk> + Branch: maint-5.6/perl + ! pod/perlmodlib.pod + ____________________________________________________________________________ + [ 8661] By: jhi on 2001/02/01 13:57:38 + Log: Subject: [PATCH] Re: v5.6.1 trial2 is available + Date: Thu, 01 Feb 2001 14:15:41 +0100 + From: "H.Merijn Brand" + Message-Id: <20010201141104.303F.H.M.BRAND@hccnet.nl> + + Have the $ccflags in the gcc version test (strange, this change + is claimed to be have been integrated already) + Branch: maint-5.6/perl + ! Configure + ____________________________________________________________________________ + [ 8660] By: jhi on 2001/02/01 13:44:10 + Log: Integrate changes #7950,7964,7962 from mainline. + + Find the stdchar signedness using cpp, should fix some of + the Solaris compiler warnings reported by Alan Burlison. + Branch: maint-5.6/perl + !> Configure config_h.SH + ____________________________________________________________________________ + [ 8659] By: jhi on 2001/02/01 05:35:32 + Log: Subject: [PATCH 5.6.1-TRIAL? and 5.7.?] perldoc uses unescaped backslashes in filenames + From: Jan Dubois + Date: Wed, 31 Jan 2001 21:17:03 -0800 + Message-ID: <8qrh7t069jt32m98sap53l9dfoge0vjrle@4ax.com> + Branch: maint-5.6/perl + ! utils/perldoc.PL + ____________________________________________________________________________ + [ 8658] By: jhi on 2001/02/01 04:33:17 + Log: Integrate the README.os390 and README.posix-bc parts of mainline + changes #8373,8486, 8544,8556. (The hints/os390.sh,Makefile.SH, + installperl parts were taken care of by #8657.) + Branch: maint-5.6/perl + !> README.os390 README.posix-bc + ____________________________________________________________________________ + [ 8657] By: jhi on 2001/02/01 04:29:21 + Log: Subject: [PATCH: 5.6.1 trial2] DynaLoading for OS/390 build option + From: Peter Prymmer + Date: Wed, 31 Jan 2001 18:18:11 -0800 (PST) + Message-ID: + Branch: maint-5.6/perl + + ext/DynaLoader/dl_dllload.xs + ! MANIFEST Makefile.SH hints/os390.sh installperl + ____________________________________________________________________________ + [ 8656] By: jhi on 2001/02/01 04:25:45 + Log: Subject: [PATCH: 5.6.1 trial2]Not OK: perl v5.6.1 +v5.6.1-TRIAL2 on os390 05.00 (UNINSTALLED) + From: Peter Prymmer + Date: Wed, 31 Jan 2001 15:26:57 -0800 (PST) + Message-ID: + Branch: maint-5.6/perl + ! lib/Math/BigInt.pm lib/bigint.pl t/lib/b.t t/pragma/sub_lval.t + ____________________________________________________________________________ + [ 8655] By: jhi on 2001/02/01 04:14:47 + Log: Subject: [ID 20010131.066] Not OK: perl v5.6.1 +v5.6.1-TRIAL2 on os2 2.40 (UNINSTALLED) + From: troc@netrus.net + Date: Wed, 31 Jan 2001 22:31:26 -0500 + Message-Id: <200102010331.WAA117.85@rocco.homenet> + Branch: maint-5.6/perl + ! os2/os2.c + ____________________________________________________________________________ + [ 8654] By: jhi on 2001/02/01 04:12:52 + Log: Solaris 2.7 i386 #defines SP in /usr/include/sys/reg.h + as reported by Alan Burlison. + Branch: maint-5.6/perl + ! pp.h + ____________________________________________________________________________ + [ 8653] By: jhi on 2001/02/01 04:05:12 + Log: Subject: [ID 20010131.042] Not OK: perl v5.6.1 +v5.6.1-TRIAL2 on VMS_AXP V7.2-1 + From: dsugalski@northernlight.com + Date: Wed, 31 Jan 2001 18:54:11 -0500 + Message-Id: <01013118541126@monsoon.stratus.northernlight.com> + Branch: maint-5.6/perl + ! configure.com + ____________________________________________________________________________ + [ 8652] By: jhi on 2001/02/01 04:03:11 + Log: Misplaced #endif. + + Subject: [perl-5-6-1-trial2] patches for EPOC + From: Olaf Flebbe + Date: Wed, 31 Jan 2001 23:15:34 +0100 (CET) + Message-ID: + Branch: maint-5.6/perl + ! epoc/epocish.c + ____________________________________________________________________________ + [ 8651] By: jhi on 2001/02/01 04:00:25 + Log: Integrate changes #8647,8648,8650 from mainline. + + Macrofy a magic UTF-8 test. + + Protect PL_numeric_radix_sv with USE_NUMERIC_LOCALE. + + Watch out for cross compiling for EPOC (usually done on linux). + Branch: maint-5.6/perl + !> ext/Errno/Errno_pm.PL sv.c utf8.c utf8.h + ____________________________________________________________________________ + [ 8649] By: gsar on 2001/02/01 00:46:00 + Log: perl_clone() wants to clone PL_numeric_radix_sv (fix for change#8626) + Branch: maint-5.6/perl + ! sv.c + ____________________________________________________________________________ + [ 8646] By: gsar on 2001/01/31 15:55:12 + Log: update Changes + Branch: maint-5.6/perl + ! Changes + ____________________________________________________________________________ + [ 8645] By: gsar on 2001/01/31 15:10:14 + Log: Configure tweak suggested by Peter Prymmer + Branch: maint-5.6/perl + ! Configure + ____________________________________________________________________________ + [ 8644] By: gsar on 2001/01/31 15:06:32 + Log: more files need to be writable in the source distribution + Branch: maint-5.6/perl + ! Porting/makerel + ____________________________________________________________________________ + [ 8643] By: jhi on 2001/01/31 14:59:46 + Log: Integrate changes #8258,8278,8279 from mainline. + + Make the large file tests more robust/talkative. + Branch: maint-5.6/perl + !> t/lib/syslfs.t t/op/lfs.t + ____________________________________________________________________________ + [ 8642] By: gsar on 2001/01/31 14:53:48 + Log: integrate changes#8311,8334 from mainline + + Add a new MakeMaker variable PM_FILTER that defines a Unix + filter to be run on each .pm during the pm_to_blib() phase, + a fixed version of + Subject: PATCH (blead 8269) ExtUtils::MakeMaker + + Subject: PATCH 5.6.1 & blead 8327 -- workaround for t/io/fs.t + Apparently, the glibc2.2 + linux 2.4.0 + NFS combination prevent + accurate reading of the "atime". + Branch: maint-5.6/perl + !> lib/ExtUtils/Install.pm lib/ExtUtils/MM_Unix.pm + !> lib/ExtUtils/MM_VMS.pm lib/ExtUtils/MM_Win32.pm + !> lib/ExtUtils/MakeMaker.pm t/io/fs.t + ____________________________________________________________________________ + [ 8641] By: jhi on 2001/01/31 14:46:37 + Log: Upgrade to Getopt::Long 2.25, from Johan Vromans. + Branch: maint-5.6/perl + ! lib/Getopt/Long.pm + ____________________________________________________________________________ + [ 8640] By: gsar on 2001/01/31 14:40:24 + Log: make regen_all + Branch: maint-5.6/perl + ! patchlevel.h pod/perlmodlib.pod pod/perltoc.pod + ____________________________________________________________________________ + [ 8639] By: gsar on 2001/01/31 14:37:25 + Log: refresh windows config files + Branch: maint-5.6/perl + ! win32/Makefile win32/config_H.bc win32/config_H.gc + ! win32/config_H.vc win32/makefile.mk + ____________________________________________________________________________ + [ 8638] By: gsar on 2001/01/31 14:28:10 + Log: makefile tweaks for windows: introduce a bulk-switch to enable + same options as ActivePerl; sync changes with makefile.mk + Branch: maint-5.6/perl + ! win32/Makefile win32/makefile.mk + ____________________________________________________________________________ + [ 8636] By: jhi on 2001/01/31 02:38:32 + Log: Integrate changes #7884,8122,8155,8197,8213[just to /nolog part, + no perlio],8257,8380,8479,8515 from mainline. + + Subject: [PATCH perl@7795 (and earlier)] VMS test cleanup + + Subject: Re: [ID 20001214.011] Unreachable value in a search list logical name + Subject: [PATCH perl@8133] fix-up for VMS extensions + + In VMS embedded perls couldn't access the statically built Socket. + + Subject: [patch: perl@8211]VMS: add -Duseperlio capacity to configure.com (8213) + + Further VMS piping fixes from Charles Lane. + + Subject: [PATCH] make t/op/misc.t work on VMS + + Add tracing for debugging extensions builds in VMS. + + Subject: [PATCH perl@8506] typo in last week's configure.com frenzy + Branch: maint-5.6/perl + !> configure.com doio.c t/op/misc.t vms/descrip_mms.template + !> vms/ext/DCLsym/Makefile.PL vms/ext/Stdio/Makefile.PL + !> vms/test.com vms/vms.c vms/vmsish.h vms/vmspipe.com + ____________________________________________________________________________ + [ 8635] By: jhi on 2001/01/31 01:46:41 + Log: Integrate change #7732 from mainline. + + Sparc 64-bit pack() fix from Jens Hamisch. + Branch: maint-5.6/perl + !> pp.c + ____________________________________________________________________________ + [ 8634] By: jhi on 2001/01/31 01:41:16 + Log: One spot missing from #8626. + Branch: maint-5.6/perl + ! sv.c + ____________________________________________________________________________ + [ 8633] By: jhi on 2001/01/31 00:49:17 + Log: Integrate change #7495 from mainline. + + Subject: [PATCH: perl@7483] generalize AIX ccversion hack for re extension + Branch: maint-5.6/perl + !> MANIFEST ext/re/Makefile.PL + ____________________________________________________________________________ + [ 8632] By: jhi on 2001/01/30 23:38:49 + Log: Integrate change #8396 from mainline. + + Subject: [PATCH] add SO_REUSEPORT to export list in Socket.pm for + better multicast support (resend) + Branch: maint-5.6/perl + !> ext/Socket/Socket.pm + ____________________________________________________________________________ + [ 8631] By: jhi on 2001/01/30 23:28:03 + Log: Integrate changes #7514,7813,8113,8144,8397,8398,8490 from mainline. + + More AIX lore. (7514, ext/re/hints/aix.pl) + + Subject: Re: [PATCH bleadperl] Re: Not OK: perl5.7.0 +DEVEL7706 +Duseperlio on AIX4.[23] + + Subject: Re: [PATCH bleadperl] Re: Not OK: perl5.7.0 +DEVEL7706 +Duseperlio on AIX4.[23] (7813, strictly speaking not yet necessary, but harmless and goes well with #8490) + + Subject: [ID 20001214.002] Net::Ping patch + + Subject: [patch perl@8133] Typo in my Net::Ping doc patch :( + + Subject: [PATCH] add ReusePort option to IO::Socket::INET for better multicast support (resend) + + Add ReuseAddr as a (preferred) alias for Reuse as we now + also have ReusePort. + + Subject: [PATCH: perl@8482] minor typos in some dl_$foo.xs files + Branch: maint-5.6/perl + +> ext/re/hints/aix.pl + !> ext/DynaLoader/dl_aix.xs ext/DynaLoader/dl_dlopen.xs + !> ext/IO/lib/IO/Socket/INET.pm lib/Net/Ping.pm + ____________________________________________________________________________ + [ 8630] By: jhi on 2001/01/30 23:03:59 + Log: Integrate changes #8215,8587 from mainline: missing pod nits. + + read() documentation tweak for 20001121.004. + + Subject: [ID 20010128.003] [PATCH] perlre.pod buglet + Branch: maint-5.6/perl + !> pod/perlfunc.pod pod/perlre.pod + ____________________________________________________________________________ + [ 8629] By: jhi on 2001/01/30 22:41:57 + Log: Integrate change #8098 from mainline. + + fastgetcwd is defined using a glob alias on a $^O dependent basis + and there was no default assignment or perl subroutine. + Branch: maint-5.6/perl + !> lib/Cwd.pm + ____________________________________________________________________________ + [ 8628] By: jhi on 2001/01/30 21:58:52 + Log: Integrate change #7866 from mainline. + + File::Temp 0.11. + Branch: maint-5.6/perl + !> lib/File/Temp.pm t/lib/ftmp-tempfile.t + ____________________________________________________________________________ + [ 8627] By: jhi on 2001/01/30 21:39:44 + Log: Integrate changes #8075,8086,8228 from mainline. + + Darwin is not Windows. (8075,8086) + + Subject: [PATCH 5.6.1-TRIAL1 and @8223]; was Re: Perlbug 20000322.006 status +update + Branch: maint-5.6/perl + !> lib/CGI.pm lib/Pod/Select.pm lib/Text/ParseWords.pm + !> pod/perl.pod pod/perl5004delta.pod pod/perl5005delta.pod + !> pod/perldiag.pod pod/perlembed.pod pod/perlfaq4.pod + !> pod/perllocale.pod pod/perlmodlib.pod pod/perlretut.pod + ____________________________________________________________________________ + [ 8626] By: jhi on 2001/01/30 21:22:11 + Log: Integrate with tweakery the change #8625 from mainline, + the multibyte decimal separator fix ("fa_IR locale failure"). + Branch: maint-5.6/perl + ! embedvar.h perlapi.h + !> intrpvar.h perl.c perl.h sv.c util.c + ____________________________________________________________________________ + [ 8624] By: gsar on 2001/01/30 20:17:03 + Log: regen_headers + Branch: maint-5.6/perl + ! Makefile.SH pod/perlintern.pod + ____________________________________________________________________________ + [ 8623] By: gsar on 2001/01/30 19:42:34 + Log: backout change#7431 and its dependents (causes spurious rebuilds + of autogenerated files) + + fix benign b.t failure + Branch: maint-5.6/perl + ! Makefile.SH t/lib/b.t + ____________________________________________________________________________ + [ 8621] By: gsar on 2001/01/30 19:24:47 + Log: integrate changes#8259,8442,8444,8445,8448,8449,8451,8455 + from mainline + + Subject: podlators 1.06 released + + Subject: [PATCH @8436] Eliminate op_children + + (Replaced by #8448) Traces of op_children (cleanup of #8442) + + (Replaced by #8448) More op_children traces (cleanup of #8442). + + Subject: [PATCH #3 @8436] Re: Eliminate op_children + Replace #8444 and #8445. + + Under 5.005 threads and debugging crashed in Debian 2.2 Linux/x86 + at the setting of the ofs_sv in new_struct_thread() as the + thr->Tofs_sv (PL_ofs_sv) was still 0xabab.... (this is what + uninitialized fields are, uh, initialized with), + SvREFCNT_inc()ing that invited a core dump. + + podlators 1.07, from Russ Allbery. + + Subject: [PATCH] regcomp.c old feature removal + From: mjd@plover.com + Date: 16 Jan 2001 14:43:18 -0000 + Message-ID: <20010116144318.7140.qmail@plover.com> + Branch: maint-5.6/perl + +> lib/Pod/Text/Overstrike.pm + !> MANIFEST bytecode.pl ext/B/B.xs ext/B/B/Asmdata.pm + !> ext/B/B/Bytecode.pm ext/B/B/C.pm ext/B/B/Concise.pm + !> ext/B/B/Debug.pm ext/ByteLoader/byterun.c + !> ext/ByteLoader/byterun.h lib/Pod/Man.pm lib/Pod/Text/Color.pm + !> lib/Pod/Text/Termcap.pm op.c op.h pod/pod2text.PL regcomp.c + !> util.c + ____________________________________________________________________________ + [ 8620] By: gsar on 2001/01/30 18:48:32 + Log: integrate changes#8243,8254,8255,8313,8314,8363,8383,8390,8416, + 8417,8418,8419,8424,8427,8430,8441,8563 from mainline (TODO: b.t + now fails one test) + + Subject: [PATCH] lvalue AUTOLOAD. No, really. + + Subject: [PATCH] Interesting syntax idea + Make opens + bareword assigns do typeglob assigns. + + Tests for #8254. + + Subject: [PATCH @8269] Continue blocks and B::Deparse + Make the peephole optimizer to bypass more null ops and + and rewrite the deparse handling of continue blocks. + + Subject: Re: [PATCH @8269] Continue blocks and B::Deparse + Doc tweak on #8313. + + Subject: [PATCH @8344] Fix spurious GVSV OPpOUR_INTRO + + Subject: [PATCH @8382] Remove FileHandle/IO dependence in t/io/openpid.t + + Subject: [PATCH perl@8269] Opcode.XS, fix memory leak + + Subject: RE: [PATCH] [ID 20001223.002] lvalues in list context + Replace 10000 with RETVAL_MAX, and compute RETVAL_MAX + according to the platform. + + Subject: [PATCH @8404] Consolidated lvalue sub changes + + Subject: Re: [PATCH] [ID 20001223.002] lvalues in list context + + Rename RETVAL_MAX to RETURN_UNLIMITED_NUMBER. + + Subject: B::Concise -- an improved replacement for B::Terse + + The B::Terse drop-in replacement wasn't quite drop-in. + + The LVRET macro needed an aTHX. + + Use the /^Perl_/-less form of is_lvalue_sub(). + + Subject: [PATCH @8545] [ID 20000808.005] OP_REFGEN as an lvalue + Branch: maint-5.6/perl + +> ext/B/B/Concise.pm + !> (integrate 27 files) + ____________________________________________________________________________ + [ 8616] By: jhi on 2001/01/30 18:20:58 + Log: Integrate partly the change #8615 from mainline, the t/op/each.t + part isn't applicable to maintperl. + + UTF-8 nit from Inaba Hiroto. + Branch: maint-5.6/perl + !> pod/perlapi.pod utf8.c + ____________________________________________________________________________ + [ 8613] By: gsar on 2001/01/30 16:39:59 + Log: make it possible to run the tests outside the source tree + (there's still a dependency on ../lib being the library + location) + Branch: maint-5.6/perl + ! t/base/term.t t/io/tell.t t/lib/dprof/V.pm t/op/flip.t + ____________________________________________________________________________ + [ 8612] By: gsar on 2001/01/30 16:31:12 + Log: perldoc nit on windows + Branch: maint-5.6/perl + ! utils/perldoc.PL + ____________________________________________________________________________ + [ 8611] By: gsar on 2001/01/30 16:22:54 + Log: canonicalize paths when doing chdir() on windows (or Cwd::getcwd() + gets weird results) + Branch: maint-5.6/perl + ! win32/vdir.h + ____________________________________________________________________________ + [ 8610] By: gsar on 2001/01/30 16:12:45 + Log: avoid uninitialized value warnings + Branch: maint-5.6/perl + ! win32/bin/search.pl + ____________________________________________________________________________ + [ 8609] By: gsar on 2001/01/30 16:08:01 + Log: support for -Dusethreads build under HP-UX 10.20 and DCE threads + library (11.0 and later have pthreads but 10.x don't) + Branch: maint-5.6/perl + ! hints/hpux.sh thread.h + ____________________________________________________________________________ + [ 8608] By: gsar on 2001/01/30 15:48:55 + Log: perl's internal variables are not for public consumption, + move their docs from perlapi.pod to perlintern.pod + Branch: maint-5.6/perl + ! intrpvar.h perlapi.c pod/perlapi.pod pod/perlintern.pod + ! thrdvar.h + ____________________________________________________________________________ + [ 8607] By: gsar on 2001/01/30 15:44:27 + Log: mistakenly branched perl56delta.pod, revert + Branch: maint-5.6/perl + - pod/perl56delta.pod + !> pod/perldelta.pod + ____________________________________________________________________________ + [ 8606] By: gsar on 2001/01/30 14:20:24 + Log: integrate changes#7984,7987,8010 from mainline (gets rid of + dTHR which has been a noop for a while now, except for the + compatibility definition in thread.h) + Branch: maint-5.6/perl + !> (integrate 45 files) + ____________________________________________________________________________ + [ 8605] By: jhi on 2001/01/30 05:43:58 + Log: Mark the UTF-8 APIs as experimental. + Branch: maint-5.6/perl + ! embed.pl pod/perlapi.pod + ____________________________________________________________________________ + [ 8604] By: jhi on 2001/01/30 05:38:40 + Log: Nits from earlier integrates. + Branch: maint-5.6/perl + ! lib/Carp/Heavy.pm + !> sv.c + ____________________________________________________________________________ + [ 8603] By: jhi on 2001/01/30 05:27:26 + Log: Regenerate Porting files. + Branch: maint-5.6/perl + ! Porting/Glossary Porting/config.sh Porting/config_H + ____________________________________________________________________________ + [ 8602] By: jhi on 2001/01/30 05:14:59 + Log: Integrate changes #7891,8034,8078,8110,8111,8112,8277,8291, + 8310,8339,8447,8492,8493,8505,8525: documentation changes. + + Subject: Re: perlfaq style changes + + Subject: DOC PATCH 5.6.0: -s return value incompletely documented + + Subject: [PATCH] docs on NaN + + Subject: [patch] perlfaq7 + + Subject: [ID 20001214.003] [PATCH bleadperl] POSIX::tmpnam() is dangerous + + Subject: [PATCH] Re: [ID 20001013.006] XS subs are not define()ed + + Subject: [PATCH] open() example in perlfunc.pod + + Podify README.mpeix (a new version from the web) + + Subject: [PATCH 5.[67].1]; as Re: [PATCH 5.6.1-TRIAL1 and @8223]; was Re: Perlbug 20000322.006 status update + + Subject: [PATCH] format and rewording in perlfaq.pod + + Subject: [PATCH] API Variable documentation + + Memory management calls documentation. + + Subject: [PATCH: perl@8482] README.vms URL updates + + Subject: Minor typos in perlfaq2.pod + + Subject: [PATCH] pod/perlvar.pod + Branch: maint-5.6/perl + +> pod/perl56delta.pod + ! pod/buildtoc.PL pod/perl.pod pod/perltoc.pod + !> README.amiga README.epoc README.mpeix README.vms + !> ext/POSIX/POSIX.pod lib/CPAN.pm lib/Carp/Heavy.pm + !> lib/Win32.pod pod/perlapi.pod pod/perlfaq.pod pod/perlfaq1.pod + !> pod/perlfaq2.pod pod/perlfaq6.pod pod/perlfaq7.pod + !> pod/perlfunc.pod pod/perlop.pod pod/perlrequick.pod + !> pod/perlvar.pod thrdvar.h + ____________________________________________________________________________ + [ 8601] By: jhi on 2001/01/30 04:38:35 + Log: Integrate changes #8036,8096,8253 from mainline: + hints changes. + + Subject: [ID 20001207.004] [PATCH 5.6.0 and 5.7.x] add NCR MP-RAS support + Subject: [8095] HP-UX 11.00 / cc / 64bitint & 64bitall / perlio + + Output the (apparent) version of gcc in Tru64. + Branch: maint-5.6/perl + +> ext/POSIX/hints/svr4.pl + !> MANIFEST ext/POSIX/Makefile.PL hints/dec_osf.sh hints/hpux.sh + !> hints/svr4.sh t/lib/bigfltpm.t + ____________________________________________________________________________ + [ 8600] By: jhi on 2001/01/30 04:04:01 + Log: Integrate changes #7863,7868,7875,7876,7888,8384,8480 from mainline: + locale fixes. + + sprintf() does not taint since print() does not. (7863,7875,7876,7888) + + Debian allows /usr/bin/locale to exist without any locales. (7868) + + Allow the locale test needing POSIX and the taint test + needing IPC::SysV to run under 'minitest' (basically, + bail out if loading the extension fails). (8384) + + Cleanup the locale.t output (8480) + Branch: maint-5.6/perl + !> pod/perllocale.pod sv.c t/op/misc.t t/op/taint.t + !> t/pragma/locale.t + ____________________________________________________________________________ + [ 8599] By: jhi on 2001/01/30 03:51:04 + Log: Missing generated files from #8598. + Branch: maint-5.6/perl + ! embed.h global.sym objXSUB.h perlapi.c proto.h + ____________________________________________________________________________ + [ 8598] By: jhi on 2001/01/30 03:41:54 + Log: Integrate change #8555 from mainline, manually integrate parts + of changes 8452 and 8583. + + Subject: [PATCH] utf8.c documentation (8452) + + No point in checking the length if the pointer is bogus. (8555) + + Introduce bytes_from_utf8() and implement sv_eq() using it, + tr/// did not handle UTF-8 ranges, \ before a raw UTF-8 character + produced "Malformed UTF-8 character" warning, "\x{100}\N{CENT SIGN}" + was malformed. (8583) + Branch: maint-5.6/perl + ! embed.pl t/lib/charnames.t t/op/tr.t toke.c + !> pod/perlapi.pod sv.c utf8.c + ____________________________________________________________________________ + [ 8597] By: gsar on 2001/01/30 02:37:26 + Log: get PERL_OBJECT build going again on windows + Branch: maint-5.6/perl + ! embed.h embed.pl global.sym objXSUB.h perlapi.c + ! pod/perlapi.pod proto.h sv.c + ____________________________________________________________________________ + [ 8586] By: gsar on 2001/01/29 13:43:44 + Log: make the BOM detection code not call tell() until it has to + (meant to fix esoteric compatibility issues where PL_rsfp + is overridden) + Branch: maint-5.6/perl + ! toke.c + ____________________________________________________________________________ + [ 8580] By: jhi on 2001/01/28 05:16:25 + Log: Revert the change to sv_2pv() done by #8054: Someone who + did SvNV_set() on a scalar that also happened to be POK, + followed by sv_2pv() won't get the right coercion anymore. + [Sarathy] + Branch: maint-5.6/perl + ! sv.c + ____________________________________________________________________________ + [ 8579] By: jhi on 2001/01/28 05:15:04 + Log: Remove the #8084 effect: do not allow -Q to be interpreted + as -&Q(), this is too much wiggle room. + Branch: maint-5.6/perl + ! toke.c + ____________________________________________________________________________ + [ 8578] By: jhi on 2001/01/28 05:12:45 + Log: Needed bits of #8439 (should have been in #8576), + mainly for lval substr(). + Branch: maint-5.6/perl + ! mg.c pp.c pp_hot.c + ____________________________________________________________________________ + [ 8577] By: jhi on 2001/01/28 05:02:46 + Log: A missing check-in. + Branch: maint-5.6/perl + ! utf8.c + ____________________________________________________________________________ + [ 8576] By: jhi on 2001/01/28 04:26:18 + Log: Integrate changes #8425,8436,8439,8517 from mainline. + The 8439 was not truly integrated because it had too many + dependencies on the development branch and because it introduced + concepts too bold for a maintenance branch (such as the qu operator). + + Subject: [PATCH perl@8342] -Wformat + + Tighten some of the UTF-8 tests a bit. + + More UTF-8 patches from Inaba Hiroto. (8439, but only partly) + - The substr lval was still not okay. + - Now pp_stringify and sv_setsv copies source's UTF8 flag + even if IN_BYTE. pp_stringify is called from fold_constants + at optimization phase and "\x{100}" was made SvUTF8_off under + use bytes (the bytes pragma is for "byte semantics" and not + for "do not produce UTF8 data") + Branch: maint-5.6/perl + ! t/lib/charnames.t t/op/substr.t toke.c + !> sv.c t/pragma/utf8.t + ____________________________________________________________________________ + [ 8575] By: jhi on 2001/01/28 04:01:51 + Log: Integrate changes #8378,8379,8385,8386,8405 from mainline. + + Subject: One more patch for UTF8 (UTF-8 fixes for 'x' and tr////) + + Subject: [ID 20001230.003] UTF-8 tr still hurts + + Test cases for #8385 (from Simon's "torture.pl") + + Start fixing UTF-8 lval substr() (8405) + Branch: maint-5.6/perl + !> doop.c embed.h embed.pl mg.c op.c pod/perlapi.pod pp.c proto.h + !> regcomp.c regexec.c t/op/substr.t t/op/tr.t toke.c utf8.c + ____________________________________________________________________________ + [ 8574] By: jhi on 2001/01/28 03:09:06 + Log: Integrate changes #8328,8329,8330,8331,8332,8341,8343,8377 + from mainline. + + UTF-8 cleanup. + + Subject: [PATCH perl@8327] strings with \x{..} in the middle are corrupted + + "\x{FF}\xFF" was broken. + + Tests for #8329 and #8330. + + Add a note about EBCDIC versus UTF-8 to a potential problem spot. + + IRIX compiler noticed that the bof initialization might be + bypassed by control flow. + + Make explicit our assumption that (for now) "\x{80}" produces UTF-8. + Branch: maint-5.6/perl + !> doop.c op.c pp.c pp_ctl.c pp_hot.c pp_sys.c regcomp.c + !> regexec.c sv.c t/op/bop.t toke.c utf8.c + ____________________________________________________________________________ + [ 8572] By: jhi on 2001/01/28 02:04:49 + Log: Integrate changes #8267,8272[perlio],8274,8298,8300,8303, + 8305,8323,8324 from mainline. The 8267,8272, and 8298 were + not really integrated but instead salvaged by hand + (they had too many dependencies on the development release + to be cleanly integratable). + + Subject: more UTF8 test suites and an UTF8 patch + + Tweak for MULTIPLICITY/USE_PERLIO + + Signedness nit. + + Turn SvUTF8 off if not required in pp_chr and pp_stringify. + + Use the UTF8_XXX macros in is_utf8_char(). + + Rewrite pp_concat() in terms of sv_catsv(). The . operator + should now be UTF-8-proof. + + Subject: [PATCH perl@8269] scanning two hex-constants + fails on EBCDIC environment (script length.t) + + Add some Unicode chop() tests. + Branch: maint-5.6/perl + ! doop.c mg.c pp.c pp_hot.c toke.c utf8.c + !> sv.c t/op/chop.t utf8.h + ____________________________________________________________________________ + [ 8571] By: jhi on 2001/01/28 00:35:59 + Log: Integrate changes #8090,8093[perlio,only the sv.c tweak], + 8245,8247,8248,8249,8250,8251,8260,8263,8264,8265 from mainline. + + Subject: [PATCH] Re: Breadperl & Tk (sv_utf8_upgrade fixes) + + The maxiters upper limit sanity check (guarding against + non-progress) assumed bytes instead of characters in s/// + and split(). + + Signedness nit. + + sv_catsv() rewrite (8248,8249,8251,8260,8263,8264,8265) + join() should now be UTF-8-proof. + + More split // UTF-8 tests. (8250) + Branch: maint-5.6/perl + !> doop.c hv.c pp.c pp_hot.c sv.c t/op/join.t utf8.c utf8.h + !> util.c + ____________________________________________________________________________ + [ 8570] By: jhi on 2001/01/27 22:15:46 + Log: Integrate changes #7941,7943,7944,7958,7967,7995,7996,7998, + 8004,8005,8023,8024,8028,8030,8031,8033,8039,8042,8052[perlio], + 8053[perlio],8054[perlio,+sv.c(-PerlIO_isutf8),+require.t], + 8084,8204,8244,8333 from mainline. + + For -Q where Q might be a one-letter sub name one does no more + get a warning about an unknown filetest (7941,7943,7944,8084). + + Subject: Re: [ID 20001130.011] expression parsing bug ? + + Make uv_to_utf8() to zero-terminate its output buffer. + + Split off t/op/length.t (7995) + + Split off t/op/utf8decode.t (7996) + + Remove an unnecessary 'use utf8' from the utf8.t (7998) + + Split off t/op/concat.t (8004) + + Split off t/op/ver.t (8005) + + Document utf8_length(), utf8_distance(), and utf8_hop(). + + Document utf8_to_uv() better. + + Introduce macros for UTF8 decoding (8028,8033). + + Add test for reverse() (8030,8031). + + Subject: [PATCH] Re: ebcdic <-> ascii tables interjected in uv <-> utf8 considered harmful (8039,8333) + + Do not return the Unicode replacement character on UTF-8 + decoding failure. + + Typo/thinko in S_scan_const() - seeing high bit sets has_utf8 + not this_utf8 i.e. the output string has one, but don't mess + with source assumption. (8052,8053) + + Tweak t/comp/require.t to add a 'use bytes' to permit its dubious + writing of BOM to a non-utf8 stream. Fix SvPVutf8() - sv_2pv() + was not expecting to be called with something that was already + SvPOK() - (we just fossiked with SvUTF8 bit). Fix that and also + just use the SvPV macro in sv_2pvutf8() to avoid the issue/overhead. + (8054) + + Recode the naughty binary bytes in utf8decode.t using the \xHH. + + Make some panic messages a bit more logical. + Branch: maint-5.6/perl + +> t/op/concat.t t/op/length.t t/op/reverse.t t/op/utf8decode.t + !> MANIFEST doop.c embed.pl lib/ExtUtils/Liblist.pm op.c + !> pod/perlapi.pod pod/perldiag.pod pp.c pp_hot.c regcomp.c + !> regexec.c sv.c t/comp/require.t t/op/misc.t t/op/ver.t + !> t/pragma/utf8.t t/pragma/warn/toke t/pragma/warn/utf8 toke.c + !> utf8.c utf8.h + ____________________________________________________________________________ + [ 8569] By: jhi on 2001/01/27 19:16:43 + Log: Integrate changes #7750 from perlio and #8566 from mainline. + Branch: maint-5.6/perl + !> regexec.c sv.c + ____________________________________________________________________________ + [ 8568] By: jhi on 2001/01/27 18:06:51 + Log: Integrate changes #7355[-doio.c],7691,7744,7753[perlio], + 7783,7790[perlio],7869,7871,7872,7911,7916,7932, + 7935[-perlio.c],7936,7959,7965 from mainline. + + Change the "big byte" error message to "Wide character". + (7355, the croak-if-wide-chars-in-print part ignored) + + Use UINT64_C(). + + Introduce Perl_utf8_length(). + + diff -se shows these as different (7753, forgotten check-ins) + + Subject: [PATCH] doop.c - UTF8 tr/// + + If we use (aTHX_ ...) then put Perl_ on the front. + + Make utf8_length() and utf8_distance() to be less forgiving + about bad UTF-8. + + Test line numbers are different with utf8. + + No need to scan till infinity, 13 is enough. (7872,7911) + + Subject: [PATCH] Tokeniser debugging + + Subject: Re: question about retlen in utf8.c:Perl_utf8_to_uv() + + Subject: [PATCH perl@7930] toke.c perlio.c -Wformat nits (only toke.c) + + Be more careful in Perl_sv_utf8_downgrade(). + + Use DO_UTF8(). + + Raw zero bytes in text files confuse at least GNU patch 2.1. + Branch: maint-5.6/perl + !> doop.c embed.h embed.pl global.sym handy.h objXSUB.h op.c + !> perl.c perl.h perlapi.c pod/perlapi.pod pod/perldiag.pod + !> pod/perlrun.pod proto.h scope.h sv.c t/op/re_tests + !> t/pragma/utf8.t toke.c utf8.c utf8.h + ____________________________________________________________________________ + [ 8553] By: jhi on 2001/01/26 15:19:39 + Log: Integrate change #7792 from perlio (multiplicity fix), + fix the AV leak in regex DEBUGGING (tiny part of the + polymorphic regexp patch #8143). + Branch: maint-5.6/perl + ! regcomp.c + !> scope.h + ____________________________________________________________________________ + [ 8551] By: jhi on 2001/01/26 02:33:19 + Log: Integrate changes #7760,7815,7870,7873,7874,7877,7878,7879,7881, + 7937,7938,7939,7940,7968,7969,8403,8414,8510 from mainline. + + Subject: [PATCH 5.7.0] The first step in removing recursion from the REx engine + + Subject: [PATCH 5.7.0] Overeager visited-positions optimizations + + Message nit. + + BOUND regex opcodes (\b, \B) could try to scan zero length UTF-8. + + Debug dump of ANYOFUTF8 was garbage (data from ANYOF). + + (the cleanup of unused submatches in regtry() and regcppop()) + + Fix for 20001130.008 and 20001130.010, the PL_regnpar wasn't + stored and restored, and thusly was trounced by the utf8 swash + routines. + + use utf8 not required to use \x{}. + + Removed two more tests that make no sense in UTF-8 since the test + data is not in UTF-8. + + Get the three different space character classes right under utf8. + + Implement ANYOFUTF8 regprop() dumping. + + Subject: Re: [ID 20001029.005] Regex error: "cd. (A. Tw)" !~ /\((\w\. \w+)\)/ + + Document the regex context pushing/popping a bit better. + Branch: maint-5.6/perl + +> lib/unicode/Is/Blank.pl lib/unicode/Is/SpacePerl.pl + !> MANIFEST lib/unicode/mktables.PL pod/perlre.pod regcomp.c + !> regexec.c scope.h t/op/pat.t t/op/re_tests t/op/regexp.t + !> t/op/regmesg.t utf8.c + ____________________________________________________________________________ + [ 8549] By: jhi on 2001/01/25 15:22:28 + Log: Undo 6475: { use utf8; chr(128..255) } is better off producing bytes. + Branch: maint-5.6/perl + ! pod/perlfunc.pod pp.c t/pragma/utf8.t + ____________________________________________________________________________ + [ 8548] By: jhi on 2001/01/25 15:02:55 + Log: Integrate changes #7997,8063,8492,8547 from mainline. + + Subject: Re: STRLEN - what? + + Subject: [PATCH] perlguts.pod + + Memory management calls documentation. + + Layout using tabulator is not a good idea in a pod. + Branch: maint-5.6/perl + !> pod/perlguts.pod + ____________________________________________________________________________ + [ 8546] By: jhi on 2001/01/25 14:31:12 + Log: Integrate changes #8188,8189,8208,8209,8210,8212,8374,8388 + from mainline. + + Subject: [DOC PATCH: perl@7953] update list of lang. sensitive editors/IDES + + Subject: [DOC PATCH: perl@8150, 5.6.1-TRIAL1] update list of lang. sensitive editors/IDES + + More Win32 editor/IDE/shell hints. + + More Win32 Perling. + + Yet another editor edit. + + Edit edit edit. + + IDE/editor section tweaking. + + Few more IDE/editor nits from p5p. + Branch: maint-5.6/perl + !> pod/perlfaq3.pod + ____________________________________________________________________________ + [ 8543] By: jhi on 2001/01/25 03:52:08 + Log: Integrate change #8462,8469 from mainline. + + In VMS Perl subversion (perl -V) is undef. + Branch: maint-5.6/perl + !> configure.com + ____________________________________________________________________________ + [ 8542] By: jhi on 2001/01/25 03:44:55 + Log: Integrate changes #7835,7850,8315,8316 from mainline. + + Solaris hints. + Branch: maint-5.6/perl + !> hints/solaris_2.sh + ____________________________________________________________________________ + [ 8541] By: jhi on 2001/01/25 03:39:28 + Log: Integrate #8336 from mainline. + Branch: maint-5.6/perl + !> hv.c + ____________________________________________________________________________ + [ 8540] By: jhi on 2001/01/25 03:23:50 + Log: Retract #8539. + Branch: maint-5.6/perl + ! pod/perlfaq3.pod + ____________________________________________________________________________ + [ 8539] By: jhi on 2001/01/25 03:21:55 + Log: (Retracted by #8540.) + Branch: maint-5.6/perl + ! pod/perlfaq3.pod + ____________________________________________________________________________ + [ 8538] By: jhi on 2001/01/25 03:14:07 + Log: Subject: [re-patch: 5.6.1-TRIAL1] was Re: [PATCH 5.6.1-TRIAL1]VMS buildpatches + From: Peter Prymmer + Date: Mon, 18 Dec 2000 13:10:35 -0800 (PST) + Message-ID: + + The VMS bits. + Branch: maint-5.6/perl + ! configure.com vms/descrip_mms.template + ____________________________________________________________________________ + [ 8537] By: jhi on 2001/01/25 03:06:09 + Log: Integrate #7710,7824,7973 from mainline. + Branch: maint-5.6/perl + !> Configure Porting/Glossary Porting/config.sh Porting/config_H + !> config_h.SH configure.com epoc/config.sh hints/aix.sh malloc.c + !> regcomp.c sv.c vos/config.alpha.def vos/config.alpha.h + !> vos/config.ga.def vos/config.ga.h win32/config.bc + !> win32/config.gc win32/config.vc + ____________________________________________________________________________ + [ 8536] By: jhi on 2001/01/24 13:50:20 + Log: Revert the edits made by me so far to the 5.6 branch since + the TRIAL1 since I did edits when I should have been using + integrates. Bad programmer. (Will integrate them properly later.) + Undoes #8347, #8349, #8350, #8351, #8353, #8355, #8376, #8463, #8470. + The #8353 will not be reapplied at least for now since + the UTF-8 hash keys need more thinking. + (The patches #8347, #8354, #8454, #8473 were okay since they + were original edits made specifically for the 5.6.1-TRIAL1.) + Branch: maint-5.6/perl + ! Configure Porting/Glossary Porting/config.sh Porting/config_H + ! config_h.SH configure.com embed.pl epoc/config.sh hints/aix.sh + ! hints/solaris_2.sh hv.c hv.h malloc.c perlapi.c + ! pod/perlapi.pod pod/perlfaq3.pod proto.h regcomp.c sv.c + ! t/op/each.t vms/descrip_mms.template vos/config.alpha.def + ! vos/config.alpha.h vos/config.ga.def vos/config.ga.h + ! win32/config.bc win32/config.gc win32/config.vc + ____________________________________________________________________________ + [ 8473] By: gsar on 2001/01/18 11:42:31 + Log: unsubmitted trial1 change + Branch: maint-5.6/perl + ! Changes + ____________________________________________________________________________ + [ 8470] By: jhi on 2001/01/18 04:16:00 + Log: Subject: [PATCH: perl@8453] Re: subversion undef on VMS (was Re: [ID 20001218.033] Not OK: perl v5.6.1 +v5.6.1-TRIAL1 on VMS_AXP V7.2-1) + From: Peter Prymmer + Date: Wed, 17 Jan 2001 13:07:11 -0800 (PST) + Message-ID: + Replace #8463. + Branch: maint-5.6/perl + ! configure.com + ____________________________________________________________________________ + [ 8463] By: jhi on 2001/01/17 06:12:42 + Log: (Replaced by #8470) + + Subject: subversion undef on VMS (was Re: [ID 20001218.033] Not OK: perl v5.6.1 +v5.6.1-TRIAL1 on VMS_AXP V7.2-1) + From: "Craig A. Berry" + Date: Tue, 16 Jan 2001 23:38:46 -0600 + Message-Id: + Branch: maint-5.6/perl + ! configure.com + ____________________________________________________________________________ + [ 8454] By: jhi on 2001/01/16 16:12:39 + Log: Subject: [PATCH: perl-5.6.1-TRIAL1] Win32 Makefile fixes - v2 + From: "Indy Singh" + Date: Wed, 10 Jan 2001 20:17:49 -0500 + Message-ID: <003001c07b6c$524630b0$00957018@roadhog> + Branch: maint-5.6/perl + ! win32/Makefile + ____________________________________________________________________________ + [ 8376] By: jhi on 2001/01/09 04:32:32 + Log: integrate changes #7775, #8316, #8316 from mainline + Branch: maint-5.6/perl + ! hints/solaris_2.sh + ____________________________________________________________________________ + [ 8357] By: jhi on 2001/01/07 21:16:09 + Log: Update the EPOC cross SDK URL. + Branch: maint-5.6/perl + ! README.epoc + ____________________________________________________________________________ + [ 8355] By: jhi on 2001/01/06 20:27:15 + Log: integrate change #8336 from mainline + + Scoping of %^H still broken in both perl@8269 and perl-5.6.1-TRIAL1 + Branch: maint-5.6/perl + ! hv.c + ____________________________________________________________________________ + [ 8354] By: jhi on 2001/01/06 20:24:29 + Log: Subject: [PATCH 5.6.1-TRIAL1 and @8223]; was Re: Perlbug 20000322.006 status update + From: Robin Barker + Date: Fri, 22 Dec 2000 12:17:38 GMT + Message-Id: <200012221217.MAA21332@tempest.npl.co.uk> + + The patch reformats some long =item lines so they give + correct output via pod2man | nroff -man + + Subject: [PATCH 5.[67].1]; as Re: [PATCH 5.6.1-TRIAL1 and @8223]; was Re: Perlbug 20000322.006 status update + From: Robin Barker + Date: Tue, 2 Jan 2001 15:35:03 GMT + Message-Id: <200101021535.PAA15161@tempest.npl.co.uk> + + Here is a _further_ patch which corrects a few more errors: + * an empty C<=item> in CPAN.pm + * patching the wrong file (pod/perlamiga.pod not README.amiga) + * leaving empty C<=item>s which formatted incorrectly + * over long C<=item>s revealed by latest patch to Pod::Man + Branch: maint-5.6/perl + ! README.amiga lib/CGI.pm lib/CPAN.pm lib/Pod/Select.pm + ! lib/Text/ParseWords.pm lib/Win32.pod pod/perl.pod + ! pod/perl5004delta.pod pod/perl5005delta.pod pod/perlapi.pod + ! pod/perldelta.pod pod/perldiag.pod pod/perlembed.pod + ! pod/perlfaq4.pod pod/perllocale.pod pod/perlmodlib.pod + ! pod/perlrequick.pod pod/perlretut.pod pod/perlsub.pod + ____________________________________________________________________________ + [ 8353] By: jhi on 2001/01/06 20:21:10 + Log: integrate changes #7980, 8056, 8057 from mainline + + UTF-8 hash keys. + Branch: maint-5.6/perl + ! embed.h embed.pl hv.c hv.h perlapi.c proto.h t/op/each.t + ____________________________________________________________________________ + [ 8352] By: jhi on 2001/01/06 20:18:44 + Log: Forgotten from #8438. + Branch: maint-5.6/perl + ! epoc/epocish.h + ____________________________________________________________________________ + [ 8351] By: jhi on 2001/01/06 20:18:12 + Log: Forgotten from #8347. + Branch: maint-5.6/perl + ! config_h.SH + ____________________________________________________________________________ + [ 8350] By: jhi on 2001/01/06 20:00:19 + Log: Thinko in #8347. + Branch: maint-5.6/perl + ! regcomp.c + ____________________________________________________________________________ + [ 8349] By: jhi on 2001/01/06 18:05:30 + Log: Copy the FAQ3 IDE section from the development branch, + changes originally by Peter Prymmer. + Branch: maint-5.6/perl + ! pod/perlfaq3.pod + ____________________________________________________________________________ + [ 8348] By: jhi on 2001/01/06 18:03:02 + Log: EPOC updates for TRIAL1. + + Subject: [5.6.1 trial1] EPOC update + From: Olaf Flebbe + Date: Sun, 31 Dec 2000 16:04:52 +0100 (CET) + Message-ID: + + Subject: epoc patch2 for perl-5.6.1-trial1 + From: Olaf Flebbe + Date: Sat, 6 Jan 2001 13:55:53 +0100 (CET) + Message-ID: + Branch: maint-5.6/perl + ! README.epoc epoc/config.sh epoc/createpkg.pl epoc/epoc.c + ! epoc/epocish.c + ____________________________________________________________________________ + [ 8347] By: jhi on 2001/01/06 17:29:10 + Log: integrate changes #7710,7824,7973 from mainline, + plus VMS nits from Peter Prymmer and Dan Sugalski. + + AIX 4.2 (using latest patchlevels on 20001130) has a broken bind + library (getprotobyname and getprotobynumber are outversioned by + the same calls in libc, at least for xlc version 3. + + Add HAS_SBRK_PROTO. + + Fixes for signedness warnings noticed by VMSperlers. + Branch: maint-5.6/perl + ! Configure Porting/Glossary Porting/config.sh Porting/config_H + ! configure.com epoc/config.sh hints/aix.sh malloc.c regcomp.c + ! sv.c vms/descrip_mms.template vos/config.alpha.def + ! vos/config.alpha.h vos/config.ga.def vos/config.ga.h + ! win32/config.bc win32/config.gc win32/config.vc + + ____________________________________________________________________________ + [ 8182] By: gsar on 2000/12/18 09:53:47 + Log: delete spurious files + Branch: maint-5.6/perl + - lib/CGI/eg/make_links.pl lib/CGI/eg/wilogo.gif vos/config.def + - vos/config.h vos/config_h.SH_orig + ____________________________________________________________________________ + [ 8181] By: gsar on 2000/12/18 09:46:08 + Log: regen perltoc + Branch: maint-5.6/perl + ! pod/buildtoc.PL pod/perl.pod pod/perlapi.pod pod/perltoc.pod + ____________________________________________________________________________ + [ 8180] By: gsar on 2000/12/18 09:20:27 + Log: integrate changes#7924..7926,7946,7952 from mainline + + A test works better if it has the right 1..$n output. + + All the core library users of Class::Struct seem to be + using "use Class::Struct 'struct';" instead of the bare + "use Class::Struct;", which isn't documented in Class::Struct. + This can't be right. + + Make the Class::Struct import() wiser. + + Upgrade to CPAN 1.59_51, from Andreas König. + + Subject: Re: long shell lines + Split overly long shell command lines. + Branch: maint-5.6/perl + !> lib/CPAN.pm lib/CPAN/FirstTime.pm lib/ExtUtils/MM_Unix.pm + !> lib/File/stat.pm t/lib/class-struct.t + ____________________________________________________________________________ + [ 8179] By: gsar on 2000/12/18 08:55:54 + Log: integrate changes#7889,7890,7900,7903,7904,7907,7910,7917, + 7918,7919,7988,8907 from mainline (various) + + Subject: [ID 20001127.004] White space problem in perlamiga.pod + + Subject: [PATCH perl@7825] Re: [ID 20001122.006] weird behaviour of $| + + Subject: [PATCH] perlcc.PL cleanups + + Subject: [PATCH] Updating perltie.pod for arrays + + Subject: [ID 20001128.002] what's the point of example code if it is buggy? + Subject: Re: [PATCH] Updating perltie.pod for arrays + Subject: Re: [PATCH] Updating perltie.pod for arrays + + One more perltie.pod nit from Casey R. Tweten. + + Subject: [PATCH] $^O win32 -> MSWin32 + plus similar nits for vms, err, VMS, and UNICOS. + + Subject: Re: Minor suggestion for Sys::Syslog [PATCH] + More checking in case someone has broken their services or + protocol databases. + + Make "use Class::Struct 'struct';" work again (broken by #7617); + add a test for Class::Struct. + + Integrate the "skip" messages to explain(). + + Subject: [PATCH: perl@8892] treat unicoding and null bytes in op/append.t + Branch: maint-5.6/perl + +> t/lib/class-struct.t + !> MANIFEST README.amiga ext/Sys/Syslog/Syslog.pm gv.c + !> lib/Class/Struct.pm pod/perlipc.pod pod/perltie.pod + !> t/lib/syslfs.t t/op/lfs.t utils/perlcc.PL + ____________________________________________________________________________ + [ 8178] By: gsar on 2000/12/18 08:16:30 + Log: avoid redefinition warnings on windows due to sys/socket.h getting + #included before win32.h + Branch: maint-5.6/perl + ! win32/include/sys/socket.h + ____________________________________________________________________________ + [ 8177] By: gsar on 2000/12/18 05:24:04 + Log: make regen_headers; fix POSIX.xs problems; remove outdated + code from sys/socket.h that makes build fail now + Branch: maint-5.6/perl + ! ext/POSIX/POSIX.xs global.sym objXSUB.h perlapi.c + ! pod/perlapi.pod + !> win32/include/sys/socket.h + ____________________________________________________________________________ + [ 8176] By: gsar on 2000/12/18 05:20:17 + Log: update Changes + Branch: maint-5.6/perl + ! Changes patchlevel.h + ____________________________________________________________________________ + [ 8175] By: gsar on 2000/12/18 04:57:48 + Log: integrate changes#7643,7646..7649,7651..7654,7658,7659, + 7661..7665,7667..7669,7671,7673,7676,7677,7681..7683, + 7689..7697,7699..7701,7703,7705,7714,7715,7718..7723, + 7725,7726,7729..7732,7737,7748,7749,7758,7759,7761,7773, + 7775,7776,7782,7785..7787,7804,7807,7808,7810,7811,7816, + 7823,7825,7838 + + Subject: Re: [PATCH] README.solaris + + Add getpagesize() probing, on non-UNIX guess 'undef'. + + Simplify the getpagesize() unit by dropping the + pagesize probe since it's nowadays slightly more + complicated because of sysconf(). (Note: if some + platform really needs the -lPW for getpagesize, + I just broke it.) + TODO: a new pagesize unit. + + Subject: [PATCH] fwd: Re: [ID 20001105.011] Perl 5.6.0 documentation glitch + + MachTen doesn't really do mmap() and munmap(). + Subject: [PATCHES Bleadperl] Re: PerlIO - what all of you can all do. + + More README.solaris updates from Andy Dougherty. + + Copy the s// information of README.hpux also to the perlrun. + + Add HAS_FSYNC, lack noticed by Nicholas Clark. + + Add a metaconfig unit for fsync. + + Subject: [ID 20001112.004] man perlfunc omits tell()'s error return + + Many subdocumented return values of the IO extension now documented. + ungetc and write still left subdocumented. + Subject: [PATCH] (was Re: IO::Handle::ungetc) + + Document tell() on special streams. + + Subject: [ID 20001112.006] IO::Seekable::getpos doesn't check for fgetpos() failure + + Subject: [ID 20001112.007] sfio's sftell isn't ftell + + Couple of tests from #7660 salvaged. + + Tweak the definition of the bit complement on UTF-8 data: + if none of the characters in the string are > 0xff, + the result is a complemented byte string, not a (UTF-8) + char string. Based on the summary in + Subject: Re: [ID 20000918.005] ~ on wide chars + This should give us the maximum backward (pre-char string) + compatibility and utf8 compatibility. The other alternative + would be to limit the bit complement to be always byte only, + taking the least significant byte of the chars. + + Cleanup messy #ifdef. + + Typos in #7667. + + Declare reg_data like reg_substr_data. + + Placate nervous compilers that see longer than ints switch()ing. + + Remove the new two tests of lib/io_xs for now, they seem to + fail under perlio on some platforms. + + Subject: Re: [ID 20001112.008] perlio.c's PerlIO_getpos ingores error return + + Subject: [ID 20001113.003] utf8_to_uv on malformed utf returns wrong values + + Subject: tiny typo in perl5db.pl + + Subject: some additions for makefiles for win32 (for perl@7674) + + Hoist the duplicated socket/netdb include logic to perl.h; + undef SETERRNO in case SOCKS has defined it. Based on: + Subject: [ID 20001114.002] Code-Cleanups concerning SOCKS5 and Solaris + + Regen Configure. + + Defined INT64_C() and UINT64_C() unless defined by + (a macro to define signed and unsigned integer constants). + + Use UINT64_C(). + Subject: [ID 20001114.006] 5.7.0-7680 Solaris 8, 64 bit, utf8 patch + + Use u_int32_t for the size of hash_cb(), not size_t. + Subject: [ID 20001114.003] Solaris 8, 64 Bit DB_file patch + + Quit utf8_to_uv() instantly if curlen == 0. + + Subject: [PATCH: perl@7674] updates to README.os390 + + Subject: [PATCH: perl@7674 + Scott-Thoennes] hush warnings about malformed EBCDIC text + + EBCDIC tweaks. + Subject: [PATCH: perl@7674 ++] fixes for warnings and regmesg (reprise) + + Linenumber fix. + + SOCKS has its own USE_THREADS, based on + Subject: [ID 20001114.002] et. al. bugfix followup + + UINT64_C() work continues. + + Detypo. + + The type of the hash_cb() size argument is tricky. + + Add fwalk() probe to the configuration files and regen perltoc. + + Subject: perllocale.pod changes + + Avoid an infinite loop in VMS when utils scripts are run + with no arguments, from Charles Lane. + + Subject: Re: Bug in Carp::Heavy/5.6.0? + + For Solaris use64bitall the stdchar needs a little bit of help. + + The long double hints can be here or there. + + Test tweak for the open pragma. + + Also the 64bitall hints can be either here or there. + + As surmised the #7719 wasn't a good move. + + Subject: Fix for 20000409.001 + + Subject: Fix for 20000815.006 + It's really 20000518.006. + + Subject: [PATCH 5.6.0 README.win32] very minor typos + + Subject: Fix for README.amiga (20000323.033) + + Explain in more detail the {} syntax ambiguousity. + Subject: [PATCH] Re: [ID 20001117.003] map { "$_", 1} @array is syntax error + + Sparc 64-bit pack() fix from Jens Hamisch. + + Upgrade to CPAN.pm 1.58_93 (the RC1 for 1.59), from Andreas König. + + Subject: podlators 1.05 available + + Subject: [ID 20001118.006] [PATCH] perl@7707 djgpp/config.over, hints/dos_djgpp.sh and Storable.pm + + Subject: [perl 7711: EPOC] updates + + Make certain MacOS Classic has NO_ENVIRON_ARRAY. + + Miraculous typo. + + sysseek() instead of seek(). + + Solaris hints tweaks. + + Assume SOCKS is broken in all 64bitall platforms, not just Solaris. + This may be overly harsh but until proven otherwise, we think this + way, or until we have a simple test for Configure (having to start + up servers is does not count as simple) to check for the problems. + + Remove the shared object before attempting to create + (by linking) a new one. E.g. in AIX not removing + becomes quite painful if one tries to do more than one + build in the same tree (an interrupted build, for example), + since the AIX' shared dynaloader seemingly keeps the shared + objects open and therefore 'busy' for quite a while, even when + nobody is using the objects, leading into link failures. + + Subject: [ID 20001120.010] typo in lib/Cwd.pm broke Cwd::chdir + + Subject: DOC PATCH 5.6.0 perlreftut + + Subject: [PATCH: perl@7777] add system locale testing for VMS + + Subject: [PATCH] Test.pm POD peculiarity + + Subject: [ID 20001120.002] [PATCH] io_sock.t fails without 'localhost' + + Subject: [ID 20001120.003] [PATCH] io_udp.t fails without 'localhost' + + Subject: Re: perl@7777 + Detypoing. + + Subject: [PATCH: perl@7777] make VMS' test.com tail compatible w/ unix + + Go ahead and #include in perl.h. + + Subject: [PATCH perl@7795] small cleanup task for test suite + + Subject: Re: av.c patch (having slight problems) + unshift() speedup. + + Reach back one higher up when searching for PERL_SRC. + Branch: maint-5.6/perl + +> lib/File/Spec/Epoc.pm + !> (integrate 88 files) + ____________________________________________________________________________ + [ 8174] By: gsar on 2000/12/18 03:53:09 + Log: integrate changes#7602,7604..7611,7614,7616..7619,7621..7623, + 7625..7629,7631..7634,7637,7639,7642 from mainline + + Fix for the tie-refhash string table leaks. + + Subject: [patch perl@7595] VMS configure.com tweak + + More careful detection of how well NVs and UVs mix. + Subject: [PATCH] Re: NV preserving UV (wasRe: [ID 20001007.002] Not OK: perl v5.7.0 +DEVEL7158 on armv4l-linux-64int 2.2.17-rmk1 (UNINSTALLED)) + Added some SIGFPE paranoia. + + Forgot to bump the line numbers in #7601. + + Subject: PATCH std stdio for (Free)BSD + + Deleting $ENV{PATH} in VMS is not recommendable. + + Locale buglets. + Subject: RE: Locales support (setlocale) fixes + + Do not test UTF-8 locales since that the tests would require + polymorphic regexen. + + Subject: [PATCH bleadperl] Re: Patch 7533 prevents malloc.c from compiling on MachTen + + A missing aTHX_. + + Subject: [ID 20001108.013] spelling + + Subject: [PATCH] Class::Struct at compile time + + Make deleting for %ENV work for (newer versions of) VMS, + from Craig A. Berry. + + Forgot from #7618. + + More VMS moves on environment handling, from Charles Lane. + + Remove unused extra arguments. + + Typo in an ifndef. + Subject: Re: [PATCH 5.7.0] better messages from malloc() + + Subject: [PATCH: perl@7613] updates to Porting/pumpkin.pod + All except the "cow orker" change. + + The generated boot_* headers are wrong. Pickier compiler, + such as KAI C++ will refuse to compile the resulting perlmain. + Subject: [ID 20001109.005] Bug in minimod.pl, perl 5.6.0 + + There's no =head3. + + Disable only the tests 99 and 166 for UTF-8 locales. + + Missing dTHXs. + Subject: RE: perl@7595 builds not on cygwin + + Subject: Re: bash -c exit and linux hints + + Various doc oddball characters. + Subject: [ID 20001106.004] Perl 5.6.0 bugs + + Subject: [PATCH] IO::Seekable pod + + Amdahl UTS hints updates. + Subject: [ID 20001109.016] Trouble going from 5.4 to 5.6 + + Explain better why certain regex tests are skipped. + Subject: Re: tests skipped: unknown reason + + Subject: [PATCH] README.solaris + + Subject: [PATCH perl@7638] cygwin port + Branch: maint-5.6/perl + +> README.solaris + !> (integrate 26 files) + ____________________________________________________________________________ + [ 8173] By: gsar on 2000/12/18 03:37:02 + Log: integrate changes#7472,7474..7478,7481,7485,7489,7493,7494,7496, + 7497,7499..7503,7505..7507,7509..7513,7515..7523,7526..7534, + 7536,7540,7542,7544..7546,7549,7553,7556,7557,7559,7561..7563, + 7565,7568..7572,7576,7578..7589,9592..7594,7596..7601 from mainline + + Better create a true mailing list for the repository keepers. + + Subject: [ID 20001027.007] uniq array in perlfaq + + De-quoted-unreadable to ISO Latin 1. + (There's one ISO-2022-JP name in Changes5.004.) + + Have only one master list of AUTHORS, drop unmaintained MAINTAIN. + + The #7476 needs a MANIFEST change, too. + + Add also emailless people. + + UTF-8 decoder tweak. + + Make \x{...} consistently produce UTF-8. + Subject: Re: \x{...} is confused + + Subject: [Chris Winters ] patch to ExtUtils::Manifest + + Add a perlbug flag, -A, to avoid acknowledgement messages. + Subject: PATCH (Re: [ID 20001030.008] OK: perl v5.7.0 +DEVEL7445 on i586-linux 2.2.16 (UNINSTALLED)) + + Use Errno magic. + Subject: [ID 20001030.009] [PATCH] ftmp-mktemp failing + + Subject: [PATCH: perl@7483] CRLF fix for cgi-function.t tests + + Subject: [PATCH: perl@7483] fix coded control chars in cgi-html.t + + Subject: [ID 20001030.001] 5.7.0-7489: Null-Pointer reference in mg.c + + Be more lenient on bad UTF-8 when doing bit arithmetics. + Subject: Re: [ID 20000918.005] ~ on wide chars + (The ord() part of the patch skipped.) + + Subject: perlfaq style changes + + AUTHORS tweaks. + + Whitespace style tweak. Was originally going to see to + Subject: PATCH (Re: PerlIO - Configure tweak for Linux/glibc?) + but that had already been taken care of. + + The compiler is either gcc or cc, from Tom Bates. + + The osname has been lowercased by now, from Tom Bates. + + The NonStop-UX libraries have a novel way to say NaN. + + printf UVs the correct way, noticed by Robin Barker. + + Subject: [PATCH] startperl to respect versiononly + + AUTHORS updates. + + Subject: [ID 20001031.004] Uninitialized auto variable in regcomp.c + + Subject: [ID 20001101.001] Net::Ping icmp odd $bytes + + Subject: [ID 20001005.004] doc bug: perlsec misleading re file output + + Generalize the Camel wording. + Subject: Re: perlfaq style changes + + Subject: [ID 20001005.006] Documentation -- description of qr// + + C.pm part of + Subject: [ID 20001010.001] [Daniel.Stutz@astaro.de: perlcc and C.pm in perl-5.7.0] + + Locale warning explanation tweak. + + Subject: [ID 20000904.004] perlsec Manual Page Incorrect Doing "Safe Backticks" + + Make the POSIX::setuid and POSIX::setgid to really call setuid() + and setgid() because they were just changing $< and $( which means + only changing the real uid/gid, as opposed to changing both + real and effective ids. (The alternative way could have been + in POSIX.pm to change $> and $), too, but making a direct call + to the C API feels cleaner.) Fixes the bug + Subject: [ID 20000904.005] POSIX::setuid() Doesn't Call setuid() + + Expand %Config variables and %ENV variables only if + so requested during build time using the + PERL_BUILD_EXPAND_CONFIG_VARS and PERL_BUILD_EXPAND_ENV_VARS. + Not expanding makes relocating distributions easier. + + More tweaking on the #7522 theme. + + Test::Harness revealed buglets in the new DynaLoader. + Subject: [ID 20001102.001] Not OK: perl v5.7.0 +DEVEL7523 on i686-linux 2.2.16a (UNINSTALLED) + + Add Tie::RefHash::Nestable (lives in Tie/RefHash.pm), + fix a autovivification bug in Tie::RefHash, add tests for both. + Subject: Re: Tie::RefHash: use hash refs as keys in nested hashes + + Detpyo. + + recv() can fail and return undef. + Subject: [ID 20001102.003] Net::Ping patch: "Bad arg lenght" error appears if host is unreachable + + Fix the problem discussed in + Subject: [ID 20001015.004] Fwd: Tie::SubstrHash -- bug & fix (all Perl versions) + originally from Linc Madison. Also Andreas König's comments + taken into account. Some other problems with Tie::SubstrHash + fixed: didn't croak when the table exceeded the requested number + of entries (as documented) but instead when the number of entries + exceeded the size of the table, a croak() had an unnecessary \n, + didn't have a CLEAR method, documented that there is no exists(). + Didn't fix to be strict-proof because the module uses &foo; and + dynamic scope. Added a test script exercizing both first tamely + the basic functionality, and then the failure cases reported by + Linc Madison. + + Subject: [PATCH] Perl@7504, vms/gen_shrfls.pl + + The #7521 touched things it shouldn't have. + + Subject: [PATCH 5.7.0] better messages from malloc() + + Subject: Re: README.aix + + Add FCNTL_CAN_LOCK. + Subject: Re: [ID 20001030.011] Not OK: perl v5.7.0 +DEVEL7481 on VMS_AXP V7.1 (UNINSTALLED) + Subject: Re: [ID 20001030.011] Not OK: perl v5.7.0 +DEVEL7481 on VMS_AXP V7.1 (UNINSTALLED) + + Locale tweakery. Add test case for bug id 20000809.003 to op/misc, + create a "fast path" for locale name probing using "locale -a" + if available, squash finally hopefully the s?printf resetting + the numeric locale (since, IIUC perllocale, it never shouldn't). + + More Changes tweakery. + + Dying is too strict here, better just skip. + + Subject: Locales support (setlocale) fixes + Modified quite a bit to be more portable. + + Configure would use a bad $myuname from an old config.sh. + Subject: [PATCH 5.6.1-to-be and 5.7.x] Very old Configure myuname bug + + Fix for + Subject: [ID 20001004.006] undef is never tainted + An undef read from a slurped file was not tainted. + + Fix for + Subject: [ID 20001004.007] taint propogation is inconsistent + The culprit was sv_setsv() which was rather blindly + propagating taint, which lead to behaviour where if + a tainted anon hash value was seen all the hash values + from then on at that level became tainted, or at any + upper levels in the case of nested anon hashes. + + Test tweak: show also the failed locales. + Subject: [ID 20001105.001] Not OK: perl v5.7.0 +DEVEL7523 on i86pc-solaris 2.8 + + A fix of sorts for 20000329.026, a better error message + for a missing "use charnames" when using the \N{...}. + + Subject: [Corrected/tested PATCH] Re: [ID 20001102.008] Not OK: perl v5.7.0 +DEVEL7503 on i686-linux 2.2.16 + + Add =pod to be tidy. + + Fix for bug id 19990615.008, pos() unset during s///ge. + + Add a note for future generations about bug id 20000229.006. + + Use -dM for gcc (the suggested patch did it only for Linux, + but I think it can be generalized). + Subject: Re: connect and $!{EINPROGRESS} pb (was [ID 20001030.010] [PATCH] io_multihomed.t failing) + + opmini.o can linger from Configures past. + + Document that the evaled syntax errors cause scalar leaks. + + Fix for + Subject: [ID 20000728.005] perl -P broken + (hopefully). The fix is also not complete, it seems to break + BOM swallowing for libc5 systems, but until someone figures + out a way to do this without ftell(), this will do. + + AUTHORS updates. + + Subject: Re: rsync'ed patches vs. rsync'ed source + + Admit that the test leaks scalars. + + Sanitize the environment further. + + VOS updates from Paul Green. + + Document %ENV = () portability issues. + + Make the stdio test program of 7427 less noisy while being + compiled so that Digital UNIX wouldn't get both + d_stdio_ptr_lval_nochange_cnt and d_stdio_ptr_lval_sets_cnt + undefined. This makes perlio happy. + + glibc5 detection by __GNU_LIBRARY__. + + %ENV note tweaks from Dan Sugalski. + + Varargs don't always work too well if one puts an unsigned + char on the stack and pop an unsigned quad off the stack. + Subject: Re: [ID 20001103.002] Not OK: perl v5.7.0 +DEVEL7523 on os2-64int-ld-2.30 (UNINSTALLED) + + Subject: Pod updates + + Fake support of holey files in win/dosish platforms. + Subject: SDBM_File under MS-Windows95/98 does not work correctly. (APR#1302) + + A doc addition for bug id 20001105.019, beware \p. + + Tweak #7587. + + Subject: [PATCH perl@7573] configure.com and st-lock.t changes for + + perlhack updates from H.Merijn Brand. + + Subject: [PATCH perl@7573] cygwin port + Synchronize with Cygwin 1.1.5. + + Bad thinko in #7581 (I used the test program with the expanded + values as-is). + + Make perlbug not insist on dumping to a file when stdout isn't a tty. + Subject: [PATCH] perlbug.PL + + Overrideable keys, each, pop, push, shift, splice, unshift. + Subject: [PATCH] prototyped functions that should be overrideable + + Try to avoid flockless and emulationless places. + Branch: maint-5.6/perl + +> t/lib/tie-refhash.t t/lib/tie-substrhash.t + - MAINTAIN + !> (integrate 111 files) + ____________________________________________________________________________ + [ 8171] By: gsar on 2000/12/18 02:49:24 + Log: integrate changes#7447,7448,7450,7454,7456,7457,7460,7462, + 7465..7471 from mainline + + Remains of the old UTF-8 API, utf8_to_uv_chk(): didn't link + in platforms that strictly require all the symbols being present + at link time. + + Subject: [PATCH: perl@7446] restore missing d_stdio_cnt_lval to VMS + + Subject: [ID 20001025.011] [PATCH] t/io/open.t perl@7369[ 7350] breaks VMS perl + + Subject: [ID 20001026.006] C gives uninitialized warning + + Subject: [PATCH] todo + + Subject: [ID 20001027.002] Patch 7380 followup - Perl_modfl *must* be defined + + Use $sort, $uniq (and $tr) consistently as wondered + by Nicholas Clark. + + Too enthusiastic editing in #7460. + + The reëntrant version shouldn't be needed unless USE_PURE_BISON. + + Upgrade to CPAN 1.58_55. + Subject: CPAN.pm status + + Subject: [ID 20001027.005] Nit in perlos2.pod - space needs deleted on line 118 + + Make target reordering to avoid pointless re-makes. + Subject: Re: Total re-make of 'make okfile' after 7451 ? + + Subject: [ID 20001027.010] [PATCH] Add info on building CPAN modules to README.dos + + Subject: DOC PATCH 5.6.0 + + Add the repository doc by Malcolm, Sarathy, and by Simon, + name as suggested by Michael Bletzinger . + Branch: maint-5.6/perl + +> Porting/repository.pod + !> Configure MANIFEST Makefile.SH README.dos README.os2 + !> config_h.SH configure.com embed.h embed.pl handy.h lib/CPAN.pm + !> lib/CPAN/FirstTime.pm perl.h pod/perlfunc.pod pod/perltodo.pod + !> pp.c proto.h t/io/open.t t/op/assignwarn.t toke.c + ____________________________________________________________________________ + [ 8169] By: gsar on 2000/12/18 02:33:34 + Log: integrate changes#7416,7417,7420..7422,7424,7426..7429,7431..7433, + 7435..7441,7445 from mainline + + Make the UTF-8 decoding stricter and more verbose when + malformation happens. This involved adding an argument + to utf8_to_uv_chk(), which involved changing its prototype, + and prefer STRLEN over I32 for the UTF-8 length, which as + a domino effect necessitated changing the prototypes of + scan_bin(), scan_oct(), scan_hex(), and reg_uni(). + The stricter UTF-8 decoding checking uses Markus Kuhn's + UTF-8 Decode Stress Tester from + http://www.cl.cam.ac.uk/~mgk25/ucs/examples/UTF-8-test.txt + + Run vms/vms_yfix.pl, should have done that after changing + perly.c in #7382. + + Subject: [PATCH 5.7.0] static linking with uninstalled perl + + (Replaced by #7440.) + Subject: Re: [ID 20001022.001] Not OK: perl v5.7.0 +DEVEL7368 on i686-linux 2.2.16 + + Fix the bug ID 20001024.005, the bug introduced by #7416. + + Subject: Re: [ID 20001023.003] PATCH perlfaq5 [perl-current] + + Fix the bug reported in + From: andreas.koenig@anima.de (Andreas J. Koenig) + Also make is_utf8_char() stricter. + + Missed the header file changes from #7425. + + Check if stdio supports tweaking lval and cnt simultaneously. + Subject: PATCH (Re: PerlIO - Configure tweak for Linux/glibc?) + + Stratus VOS updates from Paul Green. + + Podify README.epoc and README.vos. + + Add targets to Makefile.SH, most importantly + 'regen_all' which also remembers to update vms/perly*. + + Subject: Minor update to find2perl, for portability + + Subject: patch 7416 breaks sv.c on AIX and HP-UX (patch included) + + Subject: [ID 20001024.007] [PATCH] "Dump local *FH" causes SEGV + + Rename UTF8LEN() to be UNISKIP(), too confusing to have + UTF8LEN() and UTF8SKIP(). + + Allow poking holes at the UTF-8 decoding strictness. + + Continue the internal UTF-8 API tweaking. + Rename utf8_to_uv_chk() back to utf8_to_uv() because it's + used much more than the simpler API, now called utf8_to_uv_simple(). + Still not quite happy with API, too much partial duplication + of functionality. + + A new version of making the syslog test more robust. + (Replaces #7421.) + Subject: Re: [ID 20001022.001] Not OK: perl v5.7.0 +DEVEL7368 on i686-linux 2.2.16 + + buildtoc target tweaks. + + Integrate with vmsperl #7430 by Charles Bailey: + + Cleanup from prior patch (Charles Lane?): + - improve handling of MFDs in Basename and Path + - default to no xsubpp line # munging when building debug images + Branch: maint-5.6/perl + +> vos/config.alpha.def vos/config.alpha.h vos/config.ga.def + +> vos/config.ga.h vos/configure_perl.cm vos/install_perl.cm + !> (integrate 67 files) + ____________________________________________________________________________ + [ 8168] By: gsar on 2000/12/18 02:05:49 + Log: integrate changes#7512,7733 from mainline (regex bugfixes) + + Subject: [ID 20001031.004] Uninitialized auto variable in regcomp.c + From: Martin Husemann + + Subject: [PATCH 5.7.0] restore match data on backtracing + From: Ilya Zakharevich + Branch: maint-5.6/perl + !> regcomp.c regexec.c t/op/re_tests + ____________________________________________________________________________ + [ 8167] By: gsar on 2000/12/18 01:55:22 + Log: integrate changes#7858,7986 from mainline + + C in pseudo-fork()ed process may diddle + parent's memory; fix it by keeping track of the actual pad + offset rather than a raw pointer (this change is probably also + relevant to non-ithreads case to avoid fallout from reallocs of + the pad array, but is currently only enabled for the ithreads + case in the interests of minimal disruption to existing "well + tested" code) + + fix open(FOO, ">&MYSOCK") failure under Windows 9x (problem is + due to the notorious GetFileType() bug in Windows 9x, which fstat() + tickles) + Branch: maint-5.6/perl + !> embed.h embed.pl global.sym objXSUB.h perlapi.c pp_ctl.c + !> proto.h scope.c scope.h sv.c t/op/fork.t win32/perlhost.h + !> win32/win32.c win32/win32.h win32/win32sck.c + ____________________________________________________________________________ + [ 8166] By: gsar on 2000/12/18 01:52:59 + Log: integrate changes#7626,7632,7717,7738,7814,7817,7902,7912,7915 + from mainline (xsubpp and ExtUtils::LibList fixups, various + other small items) + + The generated boot_* headers are wrong. Pickier compiler, + such as KAI C++ will refuse to compile the resulting perlmain. + Subject: [ID 20001109.005] Bug in minimod.pl, perl 5.6.0 + + Various doc oddball characters. + Subject: [ID 20001106.004] Perl 5.6.0 bugs + + Subject: [PATCH] Re: 20001101.003 PDL + + Subject: [PATCH 5.7.0] etags broken again + + Subject: [PATCH 5.7.0] Liblist finally works + + Subject: [PATCH 5.7.0] Liblist returns found libraries + + Subject: [PATCH] Re: 5.6 bug: split /^/ implies /m modifier (from CLPM) + + Subject: [PATCH 5.7.0] OUT keyword for xsubpp + + Subject: Re: [PATCH 5.7.0] OUT keyword for xsubpp + OUT keyword nits. + Subject: Re: [PATCH 5.7.0] OUT keyword for xsubpp + OUT and IN_OUT documentation. + Branch: maint-5.6/perl + !> emacs/cperl-mode.el emacs/ptags lib/ExtUtils/Liblist.pm + !> lib/ExtUtils/MM_VMS.pm lib/ExtUtils/MakeMaker.pm + !> lib/ExtUtils/xsubpp lib/unicode/syllables.txt minimod.pl + !> pod/perlfunc.pod pod/perlxs.pod pod/perlxstut.pod t/op/split.t + !> win32/bin/search.pl + ____________________________________________________________________________ + [ 8165] By: gsar on 2000/12/18 01:28:45 + Log: integrate changes#7533,7563,7611,7623 from mainline (various + malloc.c embellishments) + Branch: maint-5.6/perl + !> malloc.c pod/perldiag.pod + ____________________________________________________________________________ + [ 8164] By: gsar on 2000/12/18 01:23:33 + Log: integrate changes#7419,7806,8129 from mainline (various h2xs + fixups) + Branch: maint-5.6/perl + !> utils/h2xs.PL + ____________________________________________________________________________ + [ 8163] By: gsar on 2000/12/18 01:17:50 + Log: integrate changes#7493,7599,7803 from mainline (various perlbug + fixups) + Branch: maint-5.6/perl + !> Makefile.SH utils/perlbug.PL + ____________________________________________________________________________ + [ 8162] By: gsar on 2000/12/18 00:25:43 + Log: always export Perl_deb() (it is required by re.xs whether + Perl is built with or without -DDEBUGGING) + Branch: maint-5.6/perl + ! makedef.pl + ____________________________________________________________________________ + [ 8161] By: gsar on 2000/12/18 00:23:38 + Log: integrate change#7414 from mainline + + Undo the basename() part of #7412 since the lib/basename + tests would need upgrading too. + + squelch two tests in tr.t that rely on tr/// paranoia change + that's not in 5.6.x + Branch: maint-5.6/perl + ! t/op/tr.t + !> lib/File/Basename.pm + ____________________________________________________________________________ + [ 8160] By: gsar on 2000/12/18 00:05:30 + Log: missing change in previous integrate + Branch: maint-5.6/perl + !> README.aix + ____________________________________________________________________________ + [ 8159] By: gsar on 2000/12/18 00:03:38 + Log: integrate changes#7205..7210,7212,7214..7219,7222,7223,7225,7226, + 7228,7230..7241,7243,7346,7347,7350..7354,7356,7358..7360,7362, + 7363,7365..7368,7370..7374,7376..7386,7391,7393..7399,7404..7408, + 7410..7413 from mainline + + Introduce the man[24-8] variables, from Andy Dougherty. + + Upgrade to CPAN 1.58, from Andreas König. + + An updated EBCDIC tr patch. + Subject: Re: [PATCH: perl@7181] op/tr tests on OS/390 + + Subject: [PATCH] 5.6.0 & 5.7.1, VMS fixes + + Two thirds of + Subject: Proposed patches, Install.pm getopts.pl termcap.pl + The Install.pm changes will be submitted separately because + they need some work and discussion still. + + The Install.pm third of + Subject: Proposed patches, Install.pm getopts.pl termcap.pl + + Subject: [PATCH: perl@7181] was: Re: off to a bad start on fixing regression tests + + Subject: [PATCH 5.7.0] IVs in mtats + + Subject: [PATCH 5.7.0] Perl API for mstats + + Ilya implemented the memory profiling API. + + In Amdahl UTS "struct sv" is defined by a system header, + . + + Slight tweak of the code to appease Amdahl UTS cc. + + Amdahl UTS doesn't seem to do dynaloading. + + Use UTF8SKIP(), from Simon Cozens. + + Thinko in #7222. + + op/sprintf.t patch for OS/390 (and any other host with limited + floating-point exponent length) + Subject: Re: [ID 20001006.014] Not OK: perl v5.7.0 +DEVEL7158 on os390 05.00 (UNINSTALLED) [PATCH bleadperl] + + Tweak #7225. + Subject: Re: [ID 20001006.014] Not OK: perl v5.7.0 +DEVEL7158 on os390 05.00 (UNINSTALLED) [PATCH bleadperl] + + Subject: RFC: a (temporary?) way around utf8.pm for EBCDIC + + Needs to be conditional on SunOS 4. + Subject: [Pach 5.7.0@7229] Removing -ldb from the core build + + Test cases for bug id 20000323.056 (the bug seems to be fixed). + + Add test for bug id 20000427.003 (which seems to have + been fixed) (also duplicate as 20000427.004, though + with a higher severity). Move one utf8 from op/append + to pragma/utf8, tag the tests with bug ids. + + Document FNCASE=y as discussed in the bug 20000902.009. + + split() utf8 fixes. Should fix both 20001014.001 and 20000426.003. + The problem was that rx->minlen was in chars while pp_split() + thought it would be in bytes. + + Make ~(chr(a).chr(b)) eq chr(~a).chr(~b) on utf8. + Subject: [PATCH] Re: [ID 20000918.005] ~ on wide chars + + Fix few quad issues, which for example broke chr(~chr(~0)) for UTF8. + + Fix a couple of compiler-noted nits in #7235. + + Tweak the test of #7235. + + One more ~utf8 tweak. + + -w cleanup. + Subject: Re: Problems with bleadperl + + Subject: small pod patch + + Subject: [PATCH perlguts.pod] Document offset hack + + Add Charles Lane. + + Add the capability to include/exclude branches. + + Subject: [ID 20001016.012] [PATCHes Included]OK: perl v5.7.0 on dos-djgpp djgpp + + Detect early whether the std streams have gone bad. + Subject: PATCH (was Re: [ID 20001016.007] Not OK: perl v5.7.0 +DEVEL7228 on i586-linux 2.2.16 (UNINSTALLED)) + + More IoTYPE sprinkling. + + Workaround for a sfio bug where the stream error indicator + is not cleared as documented. + Subject: PATCH (was Re: [ID 20001016.007] Not OK: perl v5.7.0 +DEVEL7228 on i586-linux 2.2.16 (UNINSTALLED)) + + Clarify documentation on 'use bytes'. + Subject: Re: What does 'use bytes' "mean" ? + + Show the failed remote port, instead of the failing line number. + Subject: [PATCH 5.6.1 Debugger] More diagnostics + + Make Cwd more bulletproof in chrooted environments. + Subject: [ID 20001018.001] Fix for Cwd.pm (chroot) + + Subject: Pod patch for Devel::Peek + + Subject: Re: [ID 20001013.008] perl 5.6.0 on AIX 4.3.2 w/GCC 2.95.2 + + Borland C fstat() never saw the fd as writable. + Subject: fix for Borland's weak "stat" (perl@7211) + + Missing change from #7362. + + Subject: [PATCH 5.7.0] Re: [ID 20001018.008] flip-flop bug when there's no + + Add the test case for the bug id 20000730.004 which seems + to have been fixed by now. + + Fix of sorts for bug id 20000901.092. There seems to be no trace + of a 'pmshort' anywhere in the B, so the offending line was simply + removed. + + Subject: Re: [ID 20001013.008] perl 5.6.0 on AIX w/GCC + + Subject: PATCH do_print has 2 PerlIO_error()s + + NonStop-UX patches from Tom Bates + + Typo noted by Mark Lutz. + + Subject: PATCH CR+LF should be "\cM\cJ" in perlop + + In the latest compiler builds cccdlflags must not become -fpic, + from Wilfredo Sánchez. + + Subject: [PATCH] Perl 5.6.0/5.7.0, vms/gen_shrfls.pl update + + Subject: [PATCH] Perl 5.6.0/5.7.0 enable DProf test for VMS + + SOCKS function redefinitions need prototypes, too, otherwise + for example 32 bit versus 64 bit differences cause a lot of + problems. Part of + Subject: [ID 20001016.017] [jens: 5.7.0 Solaris 8, 64 Bit, Workshop 6.0 Compiler] + + Portability tweak on #7377. + Subject: Re: [nick@cow.org.uk: [ID 20001020.004] Not OK: perl v5.7.0 +DEVEL7368 on i386-freebsd-64all 4.1-stable (UNINSTALLED)] + + Don't write double values through long double pointers, + based on a part of + Subject: [ID 20001016.017] [jens: 5.7.0 Solaris 8, 64 Bit, Workshop 6.0 Compiler] + + Reëntrancy fix. + Subject: [PATCH perl@7229] Rentrant parser and yylex() + + Make scan_num() reëntrant, as suggested in + Subject: [PATCH perl@7229] Rentrant parser and yylex() + + Fix for ID 20001020.006, concatenating an unset submatch + with utf8 resulted in "Modification of a read-only value". + + Fix for ID 20000915.011, IO::Select warning for an undefined fd. + + The #7383 was right only in the context of the original bug report, + not in more general case. + + Update Changes. + + Testcases for a #7383,#7385 related bug. + Subject: PATCH Re: [ID 20001020.006] "$2$utf8" == modification of read-only-variable + + Subject: [PATCH@blead Tie/Array.pm] Re: [ID 20001020.002] Tie::Array SPLICE method is buggy + + Tweak the Is* definitions of Unicode character classes + to better match the official categorizations; embrace + the official categorizations; add the combining marks + as alpha (and -numeric); fix DCinital (a typo and edito) + to be DCmedial. + + Hints tweak from Anton Berezin. + + Subject: installman go-faster stripes + Subject: Re: installman go-faster stripes + + Subject: [ID 20001021.003] updated hints/openbsd.sh + + Subject: [PATCH bleadperl] -MO=C falls over on package + + Subject: PATCH $Config::Config{ldlibpthname} in ext/DynaLoader/DynaLoader_pm.PL + + Subject: [PATCH] Re: [ID 20000121.007] XXX documentation in man ExtUtils::MakeMaker + + Doc patch. + Subject: [ID 19991128.002] \&{'foo'} not caught by strict refs + + Retract #7404 with a patch from Robin Barker, via Andy Dougherty. + + Subject: Re: [ID 20001021.005] SEGV with regex match + + Subject: Re: [20000731.007] potential syntax error not detected [PATCH] + + The change #7187 was not so good on VMS. + Subject: [PATCH perl@7369] VMS perldoc.PL fix for double quoted temp filename + + Subject: [PATCH: perl@7386] miscellaneous typos in 3 pods + + Miscellaneous MacOS Classic library updates from Matthias Neeracher. + + Document PERL_INSTALL_ROOT of #7210. + Branch: maint-5.6/perl + +> README.aix hints/nonstopux.sh lib/unicode/Is/DCmedial.pl + +> t/lib/tie-splice.t + - lib/unicode/Is/DCinital.pl + !> (integrate 112 files) + ____________________________________________________________________________ + [ 8156] By: gsar on 2000/12/17 22:49:13 + Log: integrate changes#7069..7077,7079,7081..7087,7090,7092,7093, + 7096..7104,7109..7117,7119..7124,7126,7128,7129,7133,7134, + 7136..7139,7141..7146,7148,7149,7151,7153..7155,7157,7158, + 7160,7161,7164,7165,7169..7178,7180..7191,7193..7197,7199, + 7201,7204 from mainline + + Remove vestiges of tr//CU. + Subject: [ID 20000912.009] perlunicode.pod still mentions tr///CU + Subject: Re: [ID 20000912.009] perlunicode.pod still mentions tr///CU + + The return value of setlocale must be copied away. + Subject: [ID 20000913.001] Heap corruption in Perl_init_i18nl10n + + Allow chop() and chomp() to be overridden. + Subject: [PATCH] Re: [ID 20000911.006] I can override glob but not chop? + + Hints optimization. + Subject: Minor nit + + Subject: [PATCH] de-wall t/README + + Subject: Re: Two advertising clauses need to be removed + + Batch of UTF-8 patches from Simon Cozens. + + Fix for a parsing bug, not for the original bug. + Subject: Re: [ID 20000910.005] Another segfault with regexes. + + Compilation warnings and an error. + + Subject: File::Find 5.7.0 POD nits + + Subject: [PATCH perl-5.7.0] continued -Wformat support + + The one that got away. + + Subject: Re: perl@7078 + + UTF8-encoded version of 256 is 0xc4 0x80; test that a char is + convertable to bytes by checking it doesn't go above 0xc3 + Subject: Re: perl@7078 + + Replace #7084 with + Subject: Re: perl@7078 + + We don't need to count the high bit bytes, a boolean is enough. + + Subject: [PATCH] utf8.c apidoc + + Subject: Re: perl@7078 + + Botched the #7090 check-in. + + Fix for the charnames.t failures from Spider Boardman. + + Re-instate Perl_utf8_to_uv without checking parameter - added in change 7075. + i.e. rename Simon's function to Perl_utf8_to_uv_chk, change all calls to it + to use new name and add Perl_utf8_to_uv() as a wrapper which calls it passing + 0 to checking to get the warning. + + Subject: [PATCH] Nits in perlmod.pod + + Subject: Re: Trapping by opmask sets strange parser state [PATCH] + + Subject: Re: unicode support and perl [ID 20000901.097] + + Subject: Re: unicode support and perl [ID 20000901.097] + + Subject: [PATCH perl@7065] another VMS my_fwrite() fix for Storable + + Subject: [PATCH] Re: [ID 20000915.010] Infinite loop with -MO=Deparse + + Subject: [ID 20000917.002] 5.7.0 and blead@7095 make html makes man + + Subject: [PATCH@blead] Fix some recursion in overload.pm + + s/Robin Parker/Robin Barker/ + + Subject: [PATCH] Fix aliasing of tied filehandles + + Subject: Re: [ID 20000912.008] substr replacement of tainted data (bug) + + Subject: Re: [PATCH 5.005_64 missed] + + SOCK_DGRAM and listen() do not mix as reported in + Subject: [ID 20000930.001] Bug in perl 5.00503 IO::Socket + The patch for 5.7.0+ had to be reengineered, though. + + Subject: DOC PATCH 5.6.0 + + Subject: [PATCH 5.7.0] Minor optimization in re_intuit_start + + Document the issue (is not a syntax error, kind of) + Subject: Re: [ID 20000901.011] the list (1,,3) ought to be a syntax error + + Subject: [ID 20000928.002] perlcc & ByteCode.pm option mismatch + Did not apply cleanly, manual intervention was needed. + + Subject: [PATCH] DLL not restartabke with threaded perl + + Inside require() $^S was always left undefined. + Subject: Re: Tiny 2-byte change to fix debugger's eval bug + + Subject: [PATCH pod/perlop.pod] Documentation glitch in magic autoincrement. + + OpenBSD flags tweak from Todd C. Miller, tweaked some more by Abigail. + + Regen headers. + + Subject: [PATCH 5.7.0] Epoc update + + Introduce NO_ENVIRON_ARRAY (and USE_ENVIRON_ARRAY) defines + as suggested by Olaf Flebbe and Nick Clark. + + Subject: [ID 20000915.007] Not OK: perl v5.7.0 +DEVEL7092 on os2-64int-ld 2.30 '(UNINSTALLED)' + + Misplaced else. + + Scale down the VMS message boxes, by Charles Lane. + Fix for ID 20000903.009, workaround at + http://www.xray.mpe.mpg.de/mailing-lists/vmsperl/2000-09/msg00039.html + + Subject: [ID 20001003.006] B::Debug not -w clean + + Test harness update to sync with the new perlcc, + from Simon Cozens. + + One remaining nit less at the VMS mailbox sizing. + + Subject: [PATCH: 7131] PWPASSWD problem for passwd less pwd's + + It is possible to have no hosts database at all. Pointed out in + Subject: [PATCH: 7131] PWPASSWD problem for passwd less pwd's + + Subject: [PATCH 5.7.0] h2xs not working + Subject: [PATCH 5.7.0] h2xs not documenting the created module + + Subject: [PATCH] 5.6.0 & 5.7.0 VMS TZ fix for VMS6.2 and earlier + + Subject: perlhack.pod Patch for Externals Tools + + Subject: [PATCH perlrun.pod] Re: [ID 20000930.002] perlrun nor perldelta mention -s modification + + Subject: Re: [PATCH 5.7.0] h2xs not documenting the created module + + Enable disabling scripts installation by Configure -Uinstallscripts, + suggested by H. Merijn Brand. + + Code around the stat-on-a-pipe-returns-a-mode-of-zero bug + reported several times by Dominic Dunlop, for example in + ID 20000315.008. Patch from Dominic. Patch affects at + least MachTen, and possibly other oldish BSDs. Should not + break non-broken platforms (tested on LinuxPPC). + + Regen toc. + + Subject: Re: Questions about Tie::Array and perl modules + Bug reported and fix suggested by Philip D Crow . + + Patch from Simon Cozens to avoid using utf8 routines in EBCDIC. + + Tweak #7153. + + IO::Handle->syswrite() did not handle length omission + like CORE::syswrite() does. + Subject: [Fwd] IO::Handle, syswrite and arguments + The original patch from andrew@ugh.net.au. + + Also the $ccflags is needed for the C compiler check. + Subject: Configure (check for C-compiler) + + Eliminate $Is_VMS code from the test. + Subject: Re: [ID 20001004.005] Not OK: perl v5.7.0 +DEVEL7129 on VMS_AXP V7.1 + + Fix bug in #7157 (s/cflags/ccflags); moved the -o foo + as the first option of cc/ld because of ultrapicky compilers + (e.g. OS/390 R2.5) + + Change the version number of Tie::Handle in the core to 4.0, + the (unrelated) Tie::Handle in CPAN will remain at 3.0. + Subject: Note on Tie::Handle + + UTF8ize split() so that the cloned substrings get the UTF8 + flag of the original scalar. Problem reported by Simon Cozens. + + save_re_context() could reset PL_curcop to freed memory, causing core + dumps in code such as C + + Subject: PATCH 5.6 perldebguts grammar cleanup + + Add a todo note about overloadable assertions. + + on Windows, LoadLibrary() could load an extension DLL multiple + times if forward slashes are used in the path + + on Windows, cwd strings in the environment should be of the + form =X:=X:\foo instead of =X=X:\foo\ + + on Windows, avoid potential exception (could happen if MSVCRT isn't + being used) when closing a socket handle + + avoid nonportable example code + + Windows9x doesn't support link(), despite what Config.pm + might think + + pod nit + + Change #7160 had a nasty typo. + + Warn about unknown scripts. + Subject: Re: ideas? patches? [PATCH bleadperl] + + on Windows, clean targets might not work under some flavors of the shell + + tweak for change#7173 + + Make eq work again with utf8 (disabling the upgrading + should no more be necessary since the copies of the + scalars are upgraded, not the scalars themselves). + Takes care of ID 20001009.001. (The claimed length() + bug in 20001009.001 seems bogus to me.) + + Subject: [PATCH: perl@7159] various VMS cleanup issues + CXX configure + + Upgrade to CGI.pm 2.74, from Lincoln Stein. + + Upgrade to podlators 1.04, from Russ Allbery. + + Subject: [PATCH 5.6.0] Re: [ID 20001009.004] SEGV from sprintf in a thread + + Quote the temp file name, needed in Win32 because the + default name unfortunately contains spaces, shouldn't + hurt elsewhere. + Subject: FW: perldoc fails if $TEMP contains spaces + + Subject: RE: [ID 19990803.001] README.win32 suggestions + + Subject: [ID 20000720.004] ExtUtils::MakeMaker finds wrong version of perl + + Subject: Re: utf8 concat, mg_get + + Subject: [PATCH: perl@7181] perlebcdic.pod updates and corrections + + Subject: [PATCH: perl@7181] op/tr tests on OS/390 + + Subject: [PATCH: perl@7181] ver.t v string tests for os/390 + + Use the versiononly instead of the installscripts, + retract the changes 7146 and 7147. + + Reapply Andy's patch and regen Configure. + + Add the test case for #7190, from the original bug report + by Andreas König. + + Remove duplicated code. + + SvPV() (via mg_get() of sv_2pv()) can update the UTF8ness of the SVs. + + restore change#7202 + Branch: maint-5.6/perl + !> (integrate 121 files) + ____________________________________________________________________________ + [ 8153] By: gsar on 2000/12/17 21:23:05 + Log: integrate changes#7017..7019,7021..7025,7027..7036,7038,7039, + 7041..7044,7046..7048,7050..7061,7063,7066..7067,7069..7074 + from mainline + + Document the SvIOK_.*UV(). + + Update Unicode todo list. + + Guard against bad string->int conversion for quads. + + Subject: small apidoc fix + + Subject: [PATCH] Tie::StdHandle did not know about 3-arg open + + Subject: [PATCH] Tied filehandle documentation + + Subject: [PATCH] Modernize Opcode.pm documentation + + Make Data::Dumper (non-XS) to work with changed semantics of ref(). + Subject: Re: Undocumented(?) change to "ref" semantics in 5.7.0 + [applied even though said semantics didn't change in 5.6.x] + + Subject: [PATCH@7014] \G in non-/g is well-defined now ... right? + + Subject: Re: [ID 20000905.001] Assertion failed: file "toke.c", line 202 + + Fix the URL, but the server is still missing in action. + Subject: [ID 20000905.002] perlfaq1.pod URL error + + Subject: [ID 20000903.001] \w in utf8-strings + + Fix the ccversion detection for 5.1 and beyond. + Subject: [ID 20000907.007] Not OK: perl v5.7.0 +devel-7030 on alpha-dec_osf 4.0f + + Subject: [PATCH 5.7.0] perl5db.pl [Was: Re: Debugger question] + + Subject: [ID 20000904.008] Tiny fix for perldiag + + Subject: Re: [ID 20000906.004] segfault with bad perl statement + + Subject: Re: [ID 20000907.007] Not OK: perl v5.7.0 +devel-7030 on alpha-dec_osf 4.0f + + Subject: [ID 20000908.002] perlipc documentation bug. + + Subject: [PATCH lib/Benchmark.pm] + + Re-allow vec() for characters > 255. + Subject: [PATCH] Re: [ID 20000907.005] Not OK: perl v5.7.0 +devel-7030 on alpha-dec_osf-perlio 4.0f (UNINSTALLED) + + Do away with memory models cruft. Sorry, PDP users. + + Continue #7041. + + Subject: [PATCH (or RFC): 5.7.0] make the ran_tests intermediate file 8.3 friendly + + Subject: [PATCH: 5.7.0] proper setting for isnan for DECC 5.3 + + Upgrade to CPAN 1.57_65, from Andreas König. + + Upgrade to podlators-1.03 (Pod::Man 1.07 and Pod::Text 2.05), + by Russ Allbery. + + Silence t/pod/*.t about alternate quote-mappings now implemented + by Pod::Text, from Brad Appleton. + + Modern Borland C now seems to have anon unions for info.wProcessorArchitecture + Subject: borland C++ win32.c tweak + + C<@a = @b = split(...)> optimization coredumps under ithreads + (missed a spot when fixing up op_pmreplroot hack for ithreads) + + Document the SvUTF8*(). + + Subject: [PATCH] Perl 5.6.0, 5.7.0 ... vms/test.com to eliminate spurious NL's in test output + + Subject: RE: [Patch 5.7.0] Removing -ldb from the core build + + Do in VMS as the #7054 does. + + Subject: [patch] perlfunc.pod -- POSIX::sigpause should be POSIX::pause + + Subject: [ID 20000911.008] Not OK: perl v5.7.0 +DEVEL7048 on os2-64int-ld 2.30 (UNINSTALLED) + + Subject: [patch: perl@7045] vms updates + + Test for the #7049. + Subject: Re: [PATCH] Re: [ID 20000910.001] Not OK: perl v5.7.0 +DEVEL7044 on i686-linux 2.2.16-raid (UNINSTALLED) + + Break up the myconfig lines a bit. + Subject: perlbug/perl -V output format + + Subject: [ID 20000911.011] misplaced typemap in perlxs.pod + + The #7054 truncated Configure badly. + + change#6327 didn't quite go all the way to enable USE_SOCKETS_AS_HANDLES + initialization in all the threads on Windows + + Allow for whitespace between "#" and "line" in cpp output. + Subject: [PATCH] Re: Problems compiling bleadperl on Unicos 9 + + Remove vestiges of tr//CU. + Subject: [ID 20000912.009] perlunicode.pod still mentions tr///CU + + The return value of setlocale must be copied away. + Subject: [ID 20000913.001] Heap corruption in Perl_init_i18nl10n + + Allow chop() and chomp() to be overridden. + Subject: [PATCH] Re: [ID 20000911.006] I can override glob but not chop? + + Hints optimization. + Subject: Minor nit + + Subject: [PATCH] de-wall t/README + + Subject: Re: Two advertising clauses need to be removed + Branch: maint-5.6/perl + !> (integrate 75 files) + ____________________________________________________________________________ + [ 8152] By: gsar on 2000/12/17 20:30:11 + Log: integrate changes#6945,6947,6949..6954,6956,6958,6959,6961, + 6964..6972,6977..6981..6984,6987,6988,6991,6994,6997, + 6999..7001,7003..7005,7007,7009,7011,7012 from mainline + + Don't attach -ld to the archname if pointless. + + Document UNTIE in a very minimalistic way. + + POSIX doesn't report long double values under -Duselongdouble + when the long doubles are "real" (bigger than doubles). + + More author updates. + + Try to deduce NV_MAX. Really should be Configure fodder. + + :: not allowed in pathnames, change to . + Subject: [PATCH perl@6938] cygwin port + + Forget about NV_MAX (#6951). Various floating point tweaks, + ideas from Eric Fifer, Yitzchak, Alan, and Spider. + + Move the Solaris 7 scan to use64bitall, make the + failure to find 64-bot sparc libc to mention the + possibility of being in an intel, from Lupe and Alan. + + Regen perltoc. + + AUTHORS tweaks, from Peter Prymmer. + + More address tweaking. + + Small tweaks all over. + + File::Temp patches from Andreas König, + + Subject: [PATCH perl@6962] 2 more vms.c fix-ups and status + + Subject: CPAN.pm beta 1.57_57 for the core + + Part of the solution. + Subject: Re: [ID 20000807.004] [PATCH] conditional breakpoints leak memory + + Subject: [PATCH@6961] Fix misleading example in perlretut.pod + + Subject: [PATCH lib/overload.pm] Sanaty checking of arguments to overload::constant + + Add the overload warnings to perldiag. + + Drop unused argument. + Subject: Re: [ID 20000831.034] overload::constant and number of arguments. + + Subject: Nit in Configure (bleadperl@6961) + + Update to PodParser 1.18, from Brad Appleton. + + Subject: [ID 20000901.017] [PATCH] Basic test failure in an untidy world + + Subject: [PATCH: 6948] add SCNfldbl to configure.com + + Document UNTIE. Also tweak implementation to suppress the 'inner references' + warning when UNTIE exists and instead pass the cound of extra references to + the UNTIE method. + + Rename the PRIElfbl, PRIX64, etc, to be PRIEUfldbl, PRIXU64, + so that case-ignoring systems like DCL can tell them from + PRIefldbl and PRIx64. Apply Merijn's ccversion patches. + + Subject: Re: [PATCH lib/overload.pm] Sanaty checking of arguments to overload::constant + + Feature ordering tweak. + + Regen perltoc. + + Subject: [PATCH] Fix vec() / utf8 (was Re: bitvec ops still broken with utf8 -- or not?) + + Subject: Re: [PATCH perl@6962] 2 more vms.c fix-ups and status + + Subject: http:// in L<> + + Detypo. + + change#6791 accidentally clobbered change#6710, put it back + + Only the first line, thank you very much. + + Subject: [PATCH: 6996] minimal removal of 8 bit chrs from perlebcdic.pod + plus rework the http: spots as suggested by Tom Christiansen, + plus regen perltoc. + + Undo part of change 6489 which looks like a bulk edit which + changed _all_ gv_efullname3() calls to gv_efullname4() calls. + The supressing of main:: on return from select() is undesirable. + + Apparently avoiding the swapping is too costly. + + Various Configure nits by Philip Newton, + plus the ebcdic one by me. + + Make certain cc is set before trying to run it. + + If overloaded %{} etc. return the object do not loop. + Thus sub deref { $_[0] } functions if object is wanted type. + + Update perlhist. + + More %{} and other deref special casing - do not pass to 'nomethod'. + Branch: maint-5.6/perl + !> (integrate 59 files) + ____________________________________________________________________________ + [ 8151] By: gsar on 2000/12/17 19:14:38 + Log: integrate changes#6903,6905..6907,6909,6911..6913,6915,6917,6918, + 6920..6926,6928..6930,6934..6937,6939,6940,6942..6944 from mainline + + Subject: [PATCH perl@6889] Chuck Lane's OpenVMS piping improvements + + Make the epsilon to be relative, not absolute. + + Put back the flags dump as reasoned in + Subject: Re: [PATCH] Glob dumping + + Introduce ccname to keep track of what compiler kind of we have. + + Subject: Re: [ID 20000829.020] perl -e 'package; print __PACKAGE__' core dumps + + Put back the slice accidentally removed by #6907. + + Reset archname and archname64 always, forcing them be + recomputed at each Configure run, make Configure and + the hints files agree on the naming of largefiles variables. + + Don't say "Perl 5.0 source kit". + + Subject: [PATCH] fix misc cast warnings + + Subject: typos in pods + + NVs not necessarily doubles, as pointed out by Yitzchak. + + Subject: [PATCH 6889] add a few ldbl formats to configure.com + + Subject: [ID 20000830.036] [DOC] chom?p %hash not documented + + Better options for rsync. + + Subject: [PATCH perl@6889] fix Storable on VMS by fixing my_fwrite() + + Subject: Re: not OK, 6919 on Alpha VMS V 7.1 w/ DECC 6.0-001 + + Subject: [PATCH] Re: UNTIE method + + A better fix for the Socket building problem from Craig Berry. + + Retract the dummy test, skip the security tests (instead of failing), + explain what the warnings mean. + + Heap decorruption. + Subject: [PATCH] Fix for miniperl coredump on Solaris with -Duselongdouble + + Update to Unicode 3.0.1. + + Missed one Unicode file. + + Subject: Re: typos in pods + + The #6929 was too skimpy. + + sscanf() may be the only way to read long doubles from strings. + + Reveal Borland's isnan. + Subject: build with BC++ tweak + + Issue useful diagnostic on unknown pod commands. + Subject: [PATCH lib/Pod/Man.pm] Re: [ID 20000830.048] + + Subject: [PATCH] Re: [ID 20000830.048] Not OK: perl v5.7.0 +DEVEL6938 on i686-linux 2.2.13 + + Clarify the third case of ftmp-security warnings. + + Make -Dusemorebits find long doubles in Solaris. + + Wrap the test in eval. + Branch: maint-5.6/perl + +> lib/unicode/BidiMirr.txt lib/unicode/CaseFold.txt + +> lib/unicode/PropList.txt lib/unicode/README.perl + +> lib/unicode/UCD301.html lib/unicode/UCDFF301.html + +> lib/unicode/Unicode.301 vms/vmspipe.com + - lib/unicode/Props.txt lib/unicode/UCD300.html + - lib/unicode/Unicode.300 lib/unicode/Unicode3.html + !> (integrate 305 files) + ____________________________________________________________________________ + [ 8146] By: gsar on 2000/12/17 18:09:08 + Log: update Changes + Branch: maint-5.6/perl + ! Changes + ____________________________________________________________________________ + [ 7899] By: gsar on 2000/11/28 06:32:55 + Log: reintegrate files missed by change#7895 + Branch: maint-5.6/perl + +> ext/ByteLoader/bytecode.h utils/Makefile + - utils/perlbc.PL + ____________________________________________________________________________ + [ 7897] By: gsar on 2000/11/27 18:22:47 + Log: can't integrate these two files, for some reason + Branch: maint-5.6/perl + - ext/ByteLoader/bytecode.h utils/Makefile + ____________________________________________________________________________ + [ 7895] By: gsar on 2000/11/27 18:11:21 + Log: integrate changes#6763..6766,6770,6773,6775..6776,6778,6780, + 6782..6791,6793..6814,6816,6818..6822,6824..6830,6838..6849, + 6757..6890,6892..6901 from mainline + + Bytecompiler patches from Benjamin Stuhl. + + More bytecompiler. + + Subject: [PATCH blead] B:: missing dependency + + Subject: [PATCH: 6757] configure.com updates and syslog build + + Long double Gconvert fixes from Yitzchak Scott-Thoennes + and Spider Boardman. + + Subject: [PATCH blead] nextchar() abuse misses an optimisation + + Long double fixes from Spider Boardman. + + Make the selection of NVff et al stricter. + + cSVOPo_*v things index into the current PL_curpad + under ithreads, which is different from the curpad + used by the XSUB. (In other words, the code as-is + before this patch wouldn't work under ithreads.) + + Be portable. + + VMS MMS (make) wants null action. + + Mac and other portability updates from Chris Nandor. + + Storable support, v-version fixes. + Subject: CPAN.pm beta for testing available + + Portability fix from Hugo van der Sanden. + + Bad makefile. + + Subject: [ID 20000823.004] [PATCH 5.6.0+] Pod::Html is too self-contained + + Subject: [PATCH] (Mac OS X): Don't #define environ unless PERL_CORE + + Subject: [PATCH] Re: [ID 20000821.008] Negitive numbers with vec dumps core + + Replace #6705 with a minimal doc patch. + Subject: [PATCH 5.6.0] replace change #6705 + + Drop the separate perlbc, perlcc -b should be enough. + + installperl couldn't tell whether it had run tests or not. + Subject: [PATCH] Re: installperl and t/TEST + + Add silencer flags to installperl. + Subject: [PATCH] Making installperl silent. + + Make "make install" by default silent. A new "install-verbose" + target is verbose. + + More liberal parsing of version numbers. + Subject: Re: CPAN.pm beta for testing available + + Create directories in silence. + Subject: [PATCH] Another silencer for MakeMaker + + DOS patches and portability/porting notes, from Tim Jenness. + + Make installman to recognize the silence flag -S. + + Actually do something with the silencer option. + + Continue silencing. + + Show the doc file, not the temp file. + + Regen perltoc. + + Subject: [PATCH] More silencing of installman. + + Better wording for the vec lvalue diagnostic. + Subject: Re: [PATCH] Re: [ID 20000821.008] Negitive numbers with vec dumps core + + Subject: [PATCH: 6805] several more tweaks to configure.com + + Subject: [PATCH perl@6805, 5.6.0, 5.005_03] prevent rare Perl hang on VMS + + Missing parts of + Subject: [PATCH: 6789] some endl fixes for VMS wackiness + + Subject: [ID 20000824.029] MakeMaker manifypods fails on DJGPP systems + (applied slightly modified) + + installperl --verbose and --silent. + Subject: Re: [PATCH] More silencing of installman. + + Add install-silent target. + + AIX 4.3.3 has SOCKS in libc with a differently named init routine, + the problem reported in + Subject: [ID 20000825.007] Building stable 5.6.0 on AIX 4.3.3 using SOCKS + + Tweak the sfio/useperlio logic, hopefully as wished in + Subject: [ID 20000825.004] Not OK: perl v5.7.0 +SUIDMAIL +DEVEL6804 on i586-linux 2.2.12 (UNINSTALLED) + + One forgotten file from #6816. + + Subject: [PATCH @6820] installman under -w and strict (was Re: [PATCH] More silencing of installman.) + + Remove duplicately applied patch shards. + Subject: [ID 20000825.012] [PATCH@6822] t/lib/cgi-html.t produces ugly cruft during 'make test' + + Support preserving extremely big/small angles. + + Subject: Re: [ID 20000825.019] Not OK: perl v5.7.0 +SUIDMAIL +DEVEL6820 on alpha-dec_osf 5.1 (UNINSTALLED) + + Subject: [PATCH] installation not quite silent yet. + + Update the test count. + + Use UVxf, PTR2UV, NVff. + + Document PTR2XX and INT2PTR. + + no-install target a la make -n. + Subject: [PATCH] make no-install (was Re: [PATCH] installation not quite silent yet.) + + grep -e isn't portable. + Subject: [ID 20000825.027] let me (perlbug@perl.com) know how I blew it + + Can't get the test to reliably work thanks to the + inaccurateness of floating point. "Resolves" bug ids + 20000826.003, 20000826.009, 20000826.010, + + Subject: installman buglet + + DJGPP update from Laszlo Molnar. + + Subject: MM_Unix.pm LD_RUN_PATH niggles on Solaris + + Passing -R in ldflags makes now it to appear in the default + for lddlflags, just like with -L. + Subject: Re: MM_Unix.pm LD_RUN_PATH niggles on Solaris + + Test nit. + + Use the actual thread type, not the pointer-to-struct. + + Provice virtual $Config{ccflags_nolargefiles} etc. + + display_format used as a class method without arguments was broken, + reported in + Subject: Math::Complex->display_format() sets style to 'Math::Complex' + + Subject: [ID 20000828.006] dir name "0" not safe with Cwd.pm + + Subject: [ID 20000828.009] Not OK: perl v5.7.0 +SUIDMAIL +DEVEL6855 on i586-linux 2.2.12 (UNINSTALLED) + + Subject: [PATCH@6855] _Minor_ change to overload.pm pod + + opmini.o may be left around if a build is interrupted. + + Typo in #6858. + + Fix for ID 20000828.001, long doubles were not formatted + correctly (showed up in $], which stopped installing perl). + + An attempt to fix the problem reported in + Subject: Building perl@6856 using gcc/AIX 4.3.3 + I can't test this properly since the gcc installation I have + access to seems to be botched (gcc is calling the AIX cpp, + a losing proposition...) + + Add -ld to archname on long tr...double platforms. + + Subject: hv.h Doc Patch + + Potential cruft. + + Subject: [PATCH bleedperl@6856] warnings fixes + + -S is the silent flag, -s is the strip flag. + Subject: [PATCH] Re: [PATCH] make no-install + + Take out the SUIDMAIL thing, that will not be + a problem in 5.7.*. + + Subject: [PATCH bleedperl@6866] spellings + + Subject: [PATCH] Re: files not cleaned even by veryclean + + Use minimal @INC in tests, most of the time just '../lib', + so that we simply can't pick up stuff from other Perls than + the one we are testing. Pointed out by + Subject: Re: [PATCH: 6757] make new Storable tests forgiving of places where not built + + Update to Getopt::Long 2.24, from Johan Vromans. + + Fix for thinko in #6848. + Subject: Compiler error in ext/Thread/Thread.c (bleadperl@6866) + + Patches all over for people and the files they (hopefully) care about. + + Subject: Net::protoent does not export 'getproto' + + Missed a change in #6869. + + Subject: [PATCH] Warnings in B::Deparse + + Subject: [PATCH] Glob dumping + + Disable one of the tests for now. + + Disabling the one test is a bit tricky. + + Don't forget to tidy up. + + The #6881 removed one dump line. + + Subject: Re: [ID 20000525.003] perldoc fails when Makefile.PL is in cwd + + Under usethreads the dumped variable is IN_PAD. + Subject: Re: [PATCH] Glob dumping + + Subject: [ID 20000829.026] [PATCH 6868] File::Temp + + Subject: [ID 20000829.022] [PATCH 6868] Minor nit in installhtml + + Subject: [ID 20000829.023] [PATCH 6868] perlbug@perl.com --> perlbug@perl.org + + Regen Configure for #6894. + + Subject: [PATCH: 6889] updates to perlebcdic.pod + + Undo namespace pollution of #6878. + Subject: Re: Net::protoent does not export 'getproto' + + Admit that we are leaking scalars. + + Subject: [PATCH 5.6.0] [ID 20000608.006] panic: magic_killbackrefs with blessed global weakrefs + Branch: maint-5.6/perl + !> (integrate 271 files) + ____________________________________________________________________________ + [ 7894] By: gsar on 2000/11/27 16:00:34 + Log: a couple of nits + Branch: maint-5.6/perl + ! MANIFEST pp_sys.c + ____________________________________________________________________________ + [ 7893] By: gsar on 2000/11/27 15:10:56 + Log: integrate changes#6666..6678,6680..6682,6684..6691,6699..6733, + 6740..6745,6747..6757,6760 + + Subject: Re: [ID 20000816.006] [PATCH @6655] Shell.pm, bug fix, strict and OO Interface + + Subject: [PATCH(2) @6655] Re: perldebut.pod - spelling + + Doc nits spotted by Richard Soderberg. + + move WNOHANG definition to where other such things are + + Make $Config{byteorder} more magical so that it is + dynamically computed: nice for 'fat binaries'. + Subject: [PATCH]: default byteorder + + Subject: [PATCH] Cwd.pm now uses strict + + Subject: Re: [PATCH]Re: Questions about Math::BigFloat + + Get -DLEAKTEST to compile (not necessarily to work, mind) + Subject: [ID 20000724.006] -DLEAKTEST problem + + perldebtut 1.10 from Richard Foley, plus Celsius and Fahrenheit. + + Add perlebcdic from Peter Prymmer, regen toc. + + Don't propose using modules built for 5.005 if no binary + compatibility with 5.005 is attempted. + + Do not use prototyping here. + Subject: [ID 20000817.016] [PATCH] Peek.xs + + Document what the backtick returns if the command fails. + + Add byteorder to the myconfig output. + + Introduce NVef, NVff, and NVgf, use the middle one. + (helps for lib/peek + Linux + long doubles) Reported in + Subject: [ID 20000814.005] Not OK: perl v5.6.0 on i686-linux-64int 2.2.13 + Use NVs in POSIX math, not doubles. + Subject: [ID 20000817.014] POSIX & modfl + + Subject: [PATCH 5.6.0+] newSVrv() memory leak + + The byteorder code in #6671 was wrong. + + Fix the lib/complex failure of + Subject: [ID 20000814.005] Not OK: perl v5.6.0 on i686-linux-64int 2.2.13 + Linux long double accuracy issue: something that + when printed with %g looks like "2" but int() of it is 1. + + Propagate new Configure vars. + + Unbuffer the output. + + Subject: [PATCH] perltrap.pod spring cleaning + + Subject: [PATCH] perlfunc.pod -- clarifying sprintf array argument issues + Subject: [ID 20000817.018] behaviour change 5.5.3 -> 5.6.0 re "Modification of a read-only value" + + Tiny Getopt::Long patch from Johan Vromans. + + Document code point which makes if (defined %stash::) to work + (noted by Spider Boardman). + + Subject: [PATCH perl@6698] cygwin port + + Document the NDBM_File and ODBM_File as SDBM_File + was documented in #6417. + + The new tests were missing from #6415. + + Add [[:blank:]] as suggested in + Subject: [ID 20000716.024] [=cc=] / [:blank:] + (the [=cc=] has already been taken care of by #6439 + so the whole bug report can be closed) + and make [[:space:]] to be equivalent to isspace(3) + (as opposed to \s, which is isSPACE()). The difference + is that now [[:space:]] matches the mythical vertical tab, + while \s doesn't. + + Don't eat leading os from index entries. + Subject: Re: [ID 20000810.006] Pod::Man Ate My 'O'! + + Subject: [PATCH 5.6.0+] fix for Win32::DomainName + + Typo in pp_complement(). + Subject: [PATCH perl-current] Deparse + + Add warnif(), check warnings further up the stack, + all the warnings functions now can take an optional object reference. + Subject: [PATCH bleedperl@6691] warnings pragma update + + Fix a core dump in lib/selfloader under -DDEBUGGING. + Subject: PATCH @6698 for [ID 20000817.007] Not OK: perl v5.7.0 +SUIDMAIL +DEVEL6676 on alpha-dec_osf 4.0f (UNINSTALLED) + + Subject: [PATCH 5.6.0+] fix for Win32::GetFullPathName and Win32::GetShortPathName + + Subject: [PATCH: 6698] tidy up the temp files left by peek tests on VMS + + Subject: [PATCH: 6698] was Re: [PATCH: 6640] VMS Makefile.SH update (fwd) + Put back the long double avoidance code to POSIX.xs + because VMS seems to need it still. + + Introduce a 'veryclean' target that is like 'distclean' + but also removes *~ and *.orig. + + Subject: [ID 20000817.023] endianness description in perlfunc.pod + + Subject: [PATCH perl@6698] File::Temp fix-ups for OpenVMS + + Let's try #6717 again. + + UTF8 concat fixes. + Subject: [PATCH @6713] Re: [ID 20000815.006] latest patched perl core dumps + + pp_open() could pass an uninitialized filename down to do_open9(). + + Subject: Re: [ID 20000819.002] Not OK: perl v5.7.0 +SUIDMAIL +DEVEL6707 on i686-linux 2.2.5-16 (UNINSTALLED) + + Update to CGI 2.72, from Lincoln Stein. + + Subject: [PATCH] Silence MakeMaker (Was: installman) + + Use temporary directory instead of current directory. + Subject: Re: [ID 20000816.011] Test failure in lib/ftmp-security.t + + Document odd vs even subreleases and -Dusedevel. + + The veryclean target needs to clobber. + + Use File::Spec->tmpdir(). + + Document the number of exponent digits. + + Mention perlebcdic and perlposix-bc. + + s/this one/the 5.6.0 release/ + + The #6724 is here. + + The correct cleaning order is an art. + + small tweaks for change#6705: avoid C++ style comments in C code; + use Perl's malloc API rather than the low level system one + + Array context keeps slithering in. + + Subject: Re: 5.7.0 getting really close, new snapshot: perldelta, Storable + + Subject: [PATCH] os2.c fix for use64bitint + + Update to Pod::LaTeX 0.53. + Subject: [PATCH] lib/Pod/LaTeX.pm updates + + Document the endianness of Alpha more precisely. + + Subject: RE: [PATCH perl@6736] t/pragma/warn/9enabled assumes stdout buffered + + Rename the macro argument because some preprocessors + can't tell the difference and expand arguments also inside + double quoted strings. + + free TLS slot properly on Windows + + use Cwd 'chdir' didn't set $ENV{PWD} correctly on Windows + + Unicos/mk requires elaborate paranoia. + + Tweak the floating point output routine preferences. + + Also under djgpp the timestamps are funky. + + Apply some PodParser 1.18 patches; the Pod/Find.pm + patches cannot be applied since #6712 conflicts. + + Use PodParser 1.18 new test. + + A pod nit. + Subject: [PATCH] pod/perlre.pod (was Re: [ID 20000821.007] $&, $1, etc. disappear when sub returns) + + Be verydeepclean. + Branch: maint-5.6/perl + +> pod/perlebcdic.pod + !> (integrate 106 files) + ____________________________________________________________________________ + [ 7887] By: gsar on 2000/11/27 14:13:05 + Log: integrate changes#6613..6616,6620..6665 from mainline + + VMS configure.com update continues. + + Subject: Test fails / warnings with perl-current #6612 + + Subject: [PATCH] @+, @- readonly (was Re: @ interpolating in "") + + Subject: Re: [ID 20000807.003] [PATCH] Debugger treatment of condition "0" + + For now remove the mail code. + + Subject: Re: [PATCH] @+, @- readonly + + Subject: warning: storage class after type is obsolescent + + Subject: sfio2000 + + Subject: Re: File::Temp problems on VMS in bleedperl + + README.os2 update. + Subject: Re: [PATCH perl-current] Make op/sprintf.t more comprehensive, + + Make the user to give up his firstborn, err, to knowingly + verify installing an unstable developer release. Also bump + the release to 5.7.0, but leave a patch tag in the local + patches saying that this is not yet the real thing. + + Update (kinda) to Test 1.14, from Joshua Pritikin. + + make ok etc also for win32. + + Subject: [ID 20000815.005] [PATCH] perldoc not looking in the right place for script pod + + Don't blow limited stacks, a lower number is enough to + tickle the lookbehind limit. + + Use -Dusedevel; regen Configure and the respective Porting stuff. + + Subject: [PATCH] debugger exit code should reflect user exit code + + Subject: [PATCH perl@6620] cygwin port + + Missed a file from #6638. + + Subject: [PATCH] for t/lib/peek.t (was Re: [ID 20000814.005] Not OK: perl v5.6.0 on i686-linux-64int 2.2.13) + + magic callbacks all need to have same type signature + + Subject: [ID 20000815.014] [PATCH] INSTALL doesn't mention 64 bit support. + + Fix a dependency problem. + Subject: [PATCH: 6640] VMS Makefile.SH update + + The numeric locale was reset to "C" by s?printf and never restored. + Subject: [ID 20000809.003] setlocale(LC_NUMERIC...) produces different results in 5.005 and 5.6 + No test since adding the failing example to locale.t + does not fail -- probably because the locale settings are so + thoroughly tweaked by that time. Running the example standalone + does fail, though. UPDATE: test case added at change #7540. + + Subject: [ID 20000324.040] minor fix to perlhpux.pod + + Update to CPAN 1.57. + + Subject: [PATCH] Cwd::_backtick_pwd does not check return value + + Change the perlbug address to perl.org since it's more forgiving. + + Change the regx compilation error markers to use = instead of < + since pod makes using the latter quite messy. Reported in + ID 20000814.006 by Abigail and in + Subject: Unknown escape E<> ? + + Update to perldebtut 1.9, from Richard Foley. + + check that the number pseudo children doesn't exceed + MAXIMUM_WAIT_OBJECTS, which is currently 64 (avoids overflowing + the WaitForMultipleObjects() limit that would cause wait() + to crash) + wait() and waitpid() could potentially be rewritten to use + more than one thread to do the waiting to eliminate this + limitation + + change#6328 could make close(SOCKET) return false on windows + when it shouldn't + + pod nit seen in passing + + on windows, the return values from wait() and waitpid() don't + match those of pseudo-pids + + waitpid() now handles externally spawned pids correctly; + fixes for backtick/wait/waitpid failures on Windows 9x + these changes make the pid returned by process functions on + Windows 9x always positive by clearing the high bit (which + is always set on Win9x); pseudo-process PIDs are likewise + always negative now on Win9x (just as on NT/2000) + + trailing new %ENV entries weren't being pushed into the real + environment of subprocesses on Windows + + Tweak the regex compilation errors once more. + + avoid warnings from dense compiler + + add "ok" targets from change#6632 in makefile.mk + Branch: maint-5.6/perl + - lib/Pod/PlainText.pm vms/configure.com + !> (integrate 66 files) + ____________________________________________________________________________ + [ 7885] By: gsar on 2000/11/27 13:53:18 + Log: integrate changes#6540..6541,6546..6549,6552..6554,6557..6606, + 6610..6611 from mainline + + Make regular expression parse error messages easier to understand. + Subject: Re: enhanced(?) regex error messages + + Tiny tidying on report_evil_fh(). + + Subject: Re: enhanced(?) regex error messages + plus Capitalize the error messages, plus perldiag them. + + Subject: Patch against 5.6.0 to allow "-d:Module=arg,arg,arg" + + Document here-doc better. + + Subject: [ID 20000807.003] [PATCH] Debugger treatment of condition "0" + + Subject: [PATCH] Re: [ID 20000807.008] Double reads considered evil? (deja vu) + Do away with array context, from Daniel Chetlin + (either perlbug or p5p ate the original), plus regen + perlapi and perltoc. + + Regen global.sym. + + Double check that we have a dirhandle. + + Subject: Re: enhanced(?) regex error messages + (plus two small patches sent privately) + (this still seems to leave few test failures) + + warn is a macro, avoid using at a variable to avoid warnings + in some configurations; readdir.t is too conservative in + estimating number of *.t's + + Get back into sync with Jeffrey on the enhanced regex warnings. + + Subject: [PATCH 5.6.0] cygwin port + + Zero entries were skipped, fix from Adrian Goalby + + + Subject: Remove dead entry in perldiag + + Amend the description of Perl6. + Subject: [PATCH Perl-5.6.0] perlfaq1.pod + + detypo + + It's the 2ndO'ROSSC. + + Revert the sv.c part of #6559, a better fix is needed. + + Iterating perl6 description. + + Update to Term::ANSIColor 1.03, from Russ Allbery. + + Update to Getopt::Long 2.23_05, from Johan Vromans. + + Small AUTHORS and MAINTAIN updates. Could do with big updates. + + Update to Pod::Parser 1.17, from Brad Appleton. + + Update to CPAN 1.56, from Andreas König. + + Update to CGI 2.70, from Lincoln Stein. + + Put back the std @INC thing. + + Fixes to looking-like-number to keep behaviour as it was in 5.005_03. + Subject: Re: [ID 20000810.002] $a["1foo"] same as $a[0] + + Document the IO::Select timeout. + + sleep(1) does not necessarily return 1. + Subject: [PATCH bleadperl] op/lex_assign.t + + Subject: debugger "d" command doesnt check line number + + B::Deparse didn't do sub attributes. + Subject: B::Deparse was Re: [ID 20000808.005] refs to returned lvalues are lvalues?? + + Preprocessing and postprocessing for File::Find. + Subject: Patch to Find::File.pm to allow alphabetical results + + Subject: Re: [ID 20000809.005] trouble with long string and /m modifier - uninitialized value + + Subject: Re: [ID 20000809.006] Debugger lost the ability to see $1 et al + + Subject: Re: [ID 20000730.003] utf8::length() bad + + Subject: Getting perlio and threads to compile + (the Solaris version changes in Configure skipped) + + Tests for #6589. + Subject: Re: B::Deparse was Re: [ID 20000808.005] refs to returned lvalues are lvalues?? + + Add Perl debugging tutorial, regen toc. + Subject: perldebtut.pod + + Add a few missing files, update MANIFEST. + + Rewrite of vms/subconfigure.com as configure.com, + from Peter Prymmer and the vmsperl crew. + + Should have deleted this in #6603. + + Fix the test for 5005threads. + + Fix-n-skip the tests under 5005threads. + + Subject: [PATCH] t/op/regmesg.t fails if REG_INFTY set + + Upgrade to CGI 2.71, from Lincoln Stein. + Branch: maint-5.6/perl + +> lib/CGI/eg/make_links.pl lib/CGI/eg/wilogo.gif + +> lib/Pod/PlainText.pm pod/perldebtut.pod t/lib/gol-oo.t + +> t/op/regmesg.t t/pod/find.t vms/configure.com + - vms/subconfigure.com + ! lib/lib.pm + !> (integrate 115 files) + ____________________________________________________________________________ + [ 7883] By: gsar on 2000/11/27 11:50:46 + Log: integrate changes#6469..6484,6486..6501,6504..6505,6507..6509, + 6511..6513,6515..6523,6525..6536 + + The swallow_bom() saga continues. The #23 of require.t + (UTF16-LE) still fails (silently, no output) but the #22 + (UTF16-BE) seems to be working now. The root of the + failure may be in sv_gets(): is it UTF-16LE-aware, + especially when it comes to line endings? + + Document the problem with -P in HP-UX and its workaround. + + Subject: [PATCH] allow non-variable as lhs of non-updating tr/// + (aka ID 20000730.002) + + Subject: fix and question re: waitpid() under win32 + + Make the safety catch for buggy gccs work with triple version + numbers like 2.95.2. Reported in + Subject: [ID 20000731.005] Perl 5.6.0 "Configure" fails to recognize gcc 2.95.2 + + In Digital UNIX warn if gcc explicitly chosen because even + 2.95.2 is known to cause problems. + + Make chr() for values >127 to create utf8 when under utf8. + + various syntax errors and such (not fixed: comp/require.t#22 coredump + on Windows) + + Stash away the largefiles flags and libswanted. + + BOM patching from Simon Cozens. + + If gccosandvers is equal to osname, clear gccosandvers. + + Make p4desc to skip non-mainperl branches by default. + + Subject: [Proposed PATCH] Let Perl define QUAD_MIN and _MAX itself + + The test from this + Subject: Re: [ID 20000411.002] qw() gives different results in 5.6 to previous versions + + In new BSDs changes to argv[] do not show up in ps(1) output, + instead one must use setproctitle(). This was already addressed + by change #6457, but the below has a new variant for FreeBSD 4.0 + or later, and the matter is also documented more. + + FreeBSD 3.* updates from + Subject: [ID 20000801.007] setting $0 on FreeBSD 4.x does not get reflected in /bin/ps + + regen_headers, regen perltoc. + + Document in one place the memory abstractions used in Perl core. + + memcpy has n o in it, as pinted ut by Sarathy. + + Remove the extraneous "main::" prefix from all the + "opened only for", "on closed", and "never opened" warnings. + + The name of a filehandle does not have . + + The tr utf8 patching continues. + + The new setproctitle() feature is available only in + bleeding edge FreeBSD. From Paul Saab. + + Subject: [PATCH bleadperl] [ID 20000731.010] regex error + + Dump UVs as UVs in Data::Dumper. + + detypo #6494 + + Document the IVdf UVuf UVof UVxf. + + require.t needs binmode() to work on windows + + Generate OP_IS_SOCKET() and OP_IS_FILETEST() macros + that are hopefully soon put into use. + + Allow "no Module;" even if there is no 'unimport'. + + Better skip message for the test; one of the two problems in + Subject: [ID 20000224.003] Not OK: perl v5.5.660 on i86pc-solaris 2.7 + + The subtest 4 may fail also on VOBS, as pointed out + by Nick Ing-Simmons in November 1999, bug id 19991124.003 + (but the failure in that bug report isn't the subtest 4). + + Be more informative on what is skipped and why, + also repeat the list at the end. + + Add a URL for FSF. + + Subject: [PATCH] sv.h documentation - SvLEN + + Subject: [PATCH bleadperl] [ID 20000803.001] further regexp counting problems + + Subject: [PATCH perl-current] Comings and goings in op/sprintf.t + + Subject: [PATCH] bad cppsymbols on os2 + Configure question + + Subject: [ID 20000802.002] [PATCH] memory pseudo-leak in sv_dump + + Subject: [ID 20000802.004] Tests op/grent.t and op/pwent.t fail unnecessarily + mention the idea of @( and @) + + This is 6512. Really. + + Subject: [ID 19990721.004] Documentation bug in perlfunc + + Subject: Minor tweak to perlvar.pod + + In the warnings call filehandles consistently so; + add "unopened" warning for stat(). + + After the #6519 a warning about stat() is just that, + not about a filetest, which now have their own warning. + + Subject: [ID 20000804.002] configure.gnu and arguments with whitespace characters + + Subject: Re: Array vs. List context + + Subject: New perlcc, take 2 + + Weed buglets pointed out by + Subject: Re: [ID 20000803.005] miniperl aborts during Perl make + + gcc versions might have (parentheses) in them. + + Subject: [ID 20000724.004] Perl interpreter segfault when using built-in flock + + Essential prototype changes were missing from #6527. + Also make report_evil_fh() more bomb-proof. + + Zap lib/Sys directory when cleaning up. + + Change the Policy policy: now -Dprefix= with an existing + Policy.sh and prefix == siteprefix == vendorprefix, then all + of them follow along the new prefix. + Subject: Re: [ID 20000508.002] -Dprefix completely broken [PATCH] + + Continue fixing the io warnings. This also + sort of fixes bug ID 20000802.003: the core dump + is no more. Whether the current behaviour is correct + (giving a warning: "Not a format reference"), is another matter. + + Have symbols for the IoTYPEs. + + Subject: [PATCH] perlfunc.pod use documentation (5.6.0) + + Document a bit that UDP is not what you might think. + Subject: Re: IO::Socket::INET bug sending large UDP packets/fragmentation + tr memory corruption fix from Simon Cozens. + + Plug the security hole described in the Aug 05 2000 bugtraq message + "sperl 5.00503 (and newer ;) exploit" by Michal Zalewski. + The security hole exists only in suidperls, which isn't + installed or even built by default. + Branch: maint-5.6/perl + !> (integrate 71 files) + ____________________________________________________________________________ + [ 7882] By: gsar on 2000/11/27 10:25:36 + Log: integrate changes#6439..6444,6446..6453,6455..6457,6460..6465,6467..6468 + from mainline + + Make the unimplemented POSIX regex features [[.cc.]] and [[=c=]] + to be fatal errors (instead of by default ignoring them, and + ignoring with a bug: even though -w gave an error, the opening [ + was left in) Reported in: + + Subject: [PATCH: perl@6409] bug fix for munchconfig (turned up by CXX) + + Subject: [PATCH] split /^/ + + MacOS nits from Matthias Neeracher. + + More split() doc and test patches from Mike Guy. + + Allow "sub AUTOLOAD;" to stop AUTOLOAD inheritance, + from Graham Barr in the module list. + + docfix from Peter Scott . + + File::Temp patches for VMS and OS/2 from Tim Jenness. + + open() wariness in perlbug. + + Subject: [PATCH] minor doc change - perlguts + + Subject: Minor doc patch: handy.h + + Be wary of close()s, too. + + Further File::Temp patches from Yitzchak Scott-Thoennes + and Craig A. Berry. + + Subject: [PATCH] fixes bug 20000508.004 + + Subject: [ID 19990709.002] [DOCUMENTATION PATCH] perldiag + + Allow "no AutoLoader;", based on change #6444, + suggested by Graham Barr. + + Use setproctitle() if available to modify $0. + + Warn if the version of the operating system used to compile gcc + differs from the current version of the operating system. + Also display the gcc compilation os and version in myconfig. + Inspiration from + + Tiny fixes for #6460. + + The problem described in this + Subject: [ID 20000322.018] named chars aren't magical enough + has been fixed in perl 5.6.0 but just in case added a test + to keep it away. (The report from Joseph Hall.) + + Tune the comments and hopefully stop a memory leak. + + Subject: UTF8 concat + (with a memory leak fixed, plus a few casts added) + This also seems to help for + Subject: [ID 20000716.015] join UTF8 weirdness + + Do not upgrade SVs into utf8 just because they participate + in eq or cmp. Reported and fix suggested in + Subject: [ID 20000720.009] sv_eq UTF8 bug + + Fix the HALF_UPGRADE() macro introduced in #6263. + + Find green threads before native threads. + Subject: Re: Patch to jpl/JNI/Makefile.PL + Branch: maint-5.6/perl + !> (integrate 30 files) + ____________________________________________________________________________ + [ 7846] By: gsar on 2000/11/24 00:55:57 + Log: integrate changes#6415..6418,6420..6438 from mainline + + Fix the bitvector ops for utf8 (tricky since past 7 bits + the utf8 'characters' can be more than one octet). + + MPE/ix updates for perl 5.6.0 from Mark Bixby. + + Subject: SDBM_File documentation + + Detypo. + + Decutandpasto. + + Send all installperl messages to STDERR and be -w clean. + + Out-of-date note removed. + + Protect against "wild next"s, that is, callbacks doing "next" + instead of "return". + + Use STDOUT consistently. + + The output might have been produced in the wrong order. + + A missing 'break' after the [[:space:]] switch case. + + Add tests for + [ID 19991110.003] another matching finding by pcre author + which has already been fixed by some patch, as verified in + + Documentation to explain the behaviour of map(). + + Add an optimization for map-maps-a-list-element-to-more-list-elements + case, but add also notes explaining the relationship of this + patch and the earlier notes by Sarathy. + + Subject: [ID 20000716.023] syslog test fails without sockets + + Subject: Re: [PATCH] [ID 20000716.011] strangeness with split($_ =~ m/.../) + Test cases for #6431. + + File::Spec::VMS fixup for tmpdir from Craig Berry. + + Make the "uninit variable" warning to say "concat or string" + or "join or string" when in concat or join . + + Get UTF16 BOMs working. Patch from + Subject: Re: [ID 20000719.001] Problem with bleadperl of 7/18/00 + + Subject: [PATCH] Make large file tests deal with SIGXFSZ + + Subject: [ID 20000724.003] Documentation changes for perllocale.pod + + Subject: [PATCH] av.c apidoc + Branch: maint-5.6/perl + !> (integrate 43 files) + ____________________________________________________________________________ + [ 7845] By: gsar on 2000/11/24 00:20:45 + Log: integrate changes#6406..6414 from mainline + + Merge perlhacktut into perlhack, update perlguts. + + Fix AutoSplit to use File::Spec the right way in VMS, + from Peter Prymmer. + + The bug report + [ID 19991110.002] minimal matching discrepancy found by pcre author + seems to have been fixed (though differently from what was suggested + in the report) in 5.6.0. Add tests to keep the bug from reappearing. + + thinko fix in vms/descrip_mms.template, the win32.pod in lib, + not in pod, from Peter Prymmer + + Subject: [docpatch] Re: [ID 19991002.011] perldoc -f shift + From: Hugo + Date: Fri, 14 Jul 2000 23:05:20 +0100 + Message-Id: <200007142205.XAA17882@crypt.compulink.co.uk> + + Didn't anymore apply, but that point still could use another fix. + + lib/b test fixes from Peter Prymmer. + + More docs for sv functions. + + perlvms.pod whitespace cleanup to keep pod utils happy. + + another VMS build tweak from Peter Prymmer + Branch: maint-5.6/perl + !> embed.pl lib/AutoSplit.pm pod/perlapi.pod pod/perlfunc.pod + !> pod/perlguts.pod pod/perlhack.pod sv.c t/lib/b.t t/op/re_tests + !> vms/descrip_mms.template vms/perlvms.pod + ____________________________________________________________________________ + [ 7799] By: gsar on 2000/11/22 01:02:56 + Log: some lib_pm.PL changes snuck in via change#7772 + Branch: maint-5.6/perl + ! Makefile.SH + ____________________________________________________________________________ + [ 7781] By: gsar on 2000/11/20 19:02:55 + Log: type mismatch due to faulty integration + Branch: maint-5.6/perl + ! toke.c win32/Makefile + ____________________________________________________________________________ + [ 7780] By: gsar on 2000/11/20 17:31:55 + Log: integrate changes#6392,6394..6399,6401..6404 + + The {multiplier} of a fixed substring was overlooked which + caused a wrong initial search offset for that substring. + + Subject: [PATCH 5.6.0] Re: [ID 20000613.001] Regex works in v5.005_03 but fails in v5.06 + From: Hugo + Message-Id: <200007131827.TAA14487@crypt.compulink.co.uk> + Date: Thu, 13 Jul 2000 19:27:13 +0100 + + Fix the BOM bug: not a byteorder bug, a signedness bug. + + Replace change #6337 with a better one. + + Subject: Re: [PATCH] [ID 20000701.002] Regular Expressions Not Unsetting $1 Vars When Backtracking + From: Hugo + Date: Fri, 14 Jul 2000 04:16:20 +0100 + Message-Id: <200007140316.EAA15857@crypt.compulink.co.uk> + + MakeMaker should not remove editor backups (*~) on `make clean` + by default (completes change#6383) + + move new variables to the end of the interpreter structure (for + bincompat in code that doesn't #include XSUB.h) + + rename totally bletcherous SvLOCK() thingy (doesn't do what the + name suggests anyway) + + various cleanups (typos, misformatted code, and small bugs) + + typecasts needed for change#6394 + + typos in change#6399, regen headers + + inconsistent types needs casts + + PERL_OBJECT build tweaks + Branch: maint-5.6/perl + !> MANIFEST doop.c embed.h embed.pl embedvar.h + !> ext/IPC/SysV/Makefile.PL global.sym intrpvar.h + !> lib/ExtUtils/MM_Unix.pm mg.c op.c perlapi.h pod/perlapi.pod + !> pp.c proto.h regcomp.c regexec.c sv.h t/op/re_tests thread.h + !> toke.c util.c + ____________________________________________________________________________ + [ 7779] By: gsar on 2000/11/20 17:06:29 + Log: integrate changes#6376..6378,6380,6383,6385..6388,6391 + + Cosmetics and perldelta. + + Fix nits noticed by Boston.pm. + + Do the cc sanity check both before the hints and + after the cc selction. + + get sprintf.t to adjust properly for 3-digit exponents + + don't clobber *.orig files on *clean targets + + fix bugs in processing %v-*d and similar format specs (from + Avi Finkel ) + + sprintf test tweaks (from Dominic Dunlop) + + new selfloader.t in change#6183 doesn't close DATA handles, + and thus fails to clean up tmp files on dosish platforms + + typos (spotted by Peter Prymmer) + + typo fix from Craig Berry + Branch: maint-5.6/perl + !> Configure Makefile.SH config_h.SH ext/IPC/SysV/Makefile.PL + !> pod/perldelta.pod pod/perlre.pod sv.c t/lib/english.t + !> t/lib/selfloader.t t/op/sprintf.t vms/subconfigure.com + !> x2p/Makefile.SH + ____________________________________________________________________________ + [ 7778] By: gsar on 2000/11/20 16:46:51 + Log: integrate changes#6340..6342,6348,6354,6356,6357,6371,6372,6375 + + Subject: Re: format bug report [Patch] + From: "H.Merijn Brand" + Date: Wed, 05 Jul 2000 13:12:52 +0200 + Message-Id: <20000705130745.67BF.H.M.BRAND@hccnet.nl> + + Subject: Re: format bug report [Patch] + From: "H.Merijn Brand" + Date: Wed, 05 Jul 2000 14:10:01 +0200 + Message-Id: <20000705140837.73C2.H.M.BRAND@hccnet.nl> + + Subject: Re: [ID 20000704.002] [PATCH] memory leak with debug / anon subs + From: "M.J.T. Guy" + Message-Id: + Date: Fri, 07 Jul 2000 17:57:16 +0100 + + Subject: [ID 20000710.002] fatal error or memory loss when deleting symbols in evaled code with syntax errors + To: perl5-porters@perl.org + From: Karsten Sperling + Date: Mon, 10 Jul 2000 15:12:52 +0200 + Message-Id: <200007101315.e6ADFrg21041@chthon.perl.com> + + README.posix-bc podified from Thomas Dorner. + + Subject: [PATCH perl-current] Make op/sprintf.t more comprehensive, take2 + From: Dominic Dunlop + Date: Tue, 11 Jul 2000 12:27:33 +0200 + Message-Id: + + Typo in #6341. + + Fix for + Subject: [ID 20000711.005] spurious uninit warning with msgrcv() + From: Roderick Schertler + Date: Tue, 11 Jul 2000 13:55:05 -0400 + Message-Id: <200007111755.NAA05077@jones.argon.org> + + Minor cleanups on the booklist. + + Reintroduce perlbook (updated for Mk III), introduce perlposix-bc, + regen perltoc. + + windows build tweaks (op/sprintf.t still fails tests 120-121, 149) + Branch: maint-5.6/perl + +> pod/perlbook.pod + !> MANIFEST README.posix-bc doio.c lib/Symbol.pm pod/Makefile.SH + !> pod/buildtoc.PL pod/perl.pod pod/perlfaq2.pod pod/perltoc.pod + !> pp_hot.c t/op/sprintf.t t/op/write.t toke.c win32/win32sck.c + ____________________________________________________________________________ + [ 7772] By: gsar on 2000/11/20 13:06:23 + Log: integrate changes#6315..6319,6321..6331,6333..6338 + + Integrate with Sarathy, preliminary fix for unicos + alignment problems in [ID 20000612.002] Perl problem on Cray system. + + some debugger output does not go to the socket when RemotePort is set + + winsock cleanup never done on Windows (leads to handle leaks) + + fix UNC path handling on Windows under ithreads, and chdir() + return value when given a non-existent directory + + Autogenerate pod/Makefile and pod/buildtoc. + buildtoc also checks whether the existin pods are + mentioned in MANIFEST and perl.pod, and vice versa. + (None of the thusly found discrepancies fixed yet.) + roffitall also needs to be autogenerated similarly but it + seems so badly out of date that I didn't touch it yet. + + Config is being used. + + Add =head1 NAMEs so that buildtoc is happy. + (The CGI::Util nit reported to Lincoln.) + + Fix complaints of buildtoc. + + Fix the alignment problem in Crays ([ID 20000612.002]). + + Remove perlbook, update perlfaq book listing, + rearrange perl.pod, regenerate perltoc. + + Fix a nit spotted by 64bit IRIX compilation: a (64-bit) pointer + was cast to an unsigned (32-bit) integer with wild abandon. + + winsock options weren't being set in all threads under ithreads + (caused send()s from second and subsequent threads to fail) + + accept() leaks memory on windows due to incorrect ordering of + closesocket() and fclose() calls + + Reorder perl.pod once more. + + More POSIX.pod tweaks. + + Sprinkle ldlibpath. + + Precedence goof, fix based on + Subject: [PATCH 5.6.0] op/taint.t continues on failed shmget() + From: Hugo + Date: Tue, 11 Jul 2000 12:52:38 +0100 + Message-Id: <200007111152.MAA05488@crypt.compulink.co.uk> + + Subject: PATCH perlguts.pod: Document D and d magic types + From: mjd@plover.com + Date: 5 Jul 2000 18:01:51 -0000 + Message-ID: <20000705180151.29413.qmail@plover.com> + + Subject: [ID 20000705.002] problem with perl 5.6.0 on NetBSD/sparc + From: Hubert Feyrer + Date: Wed, 5 Jul 2000 14:56:43 +0200 (MET DST) + Message-Id: + + Subject: [PATCH cfgperl] $& segfaults if you trick it + From: simon@brecon.co.uk (Simon Cozens) + Date: 7 Jul 2000 11:26:09 GMT + Message-ID: + + Subject: [PATCH] [ID 20000701.002] Regular Expressions Not Unsetting $1 Vars When Backtracking + From: Hugo + Date: Tue, 11 Jul 2000 12:44:50 +0100 + Message-Id: <200007111144.MAA04446@crypt.compulink.co.uk> + + Subject: [PATCH] Re: "%#p" format specifier: document and test or not? + From: "M.J.T. Guy" + Date: Tue, 11 Jul 2000 13:50:51 +0100 + Message-Id: + Branch: maint-5.6/perl + +> ext/DynaLoader/hints/netbsd.pl lib/Win32.pod pod/Makefile.SH + +> pod/buildtoc.PL + - pod/Makefile pod/Win32.pod pod/buildtoc pod/perlbook.pod + !> (integrate 26 files) + ____________________________________________________________________________ + [ 7771] By: gsar on 2000/11/20 12:31:42 + Log: integrate changes#6283..6285,6291,6294..6300,6302..6304,6306..6307, + 6310,6311,6314 + + Subject: [PATCH bleedperl] File::Spec 0.82 beta + From: Barrie Slaymaker + Date: Wed, 28 Jun 2000 11:35:29 -0400 + Message-Id: <200006281535.LAA21095@jester.slaysys.com> + + tweak perlembed for multiplicity/usethreads sanity; correct notes + about Windows + + localize %INC in a Safe compartment so that use/require work + (many other magic globals probably need similar treatment) + + dounwind() may cause POPSUB() to diddle the wrong PL_curpad + when @_ is modified, causing coredumps + + slurp mode fix in change#4736 still not quite right + + Point to perlipc for more SysV IPC examples. + + Elaborate POSIX.pod. Still needs work. + + fix ~320 byte memory leak (psig_{ptr,name} tables were never freed) + + fix large memory leak that has been around for ever, masked by + -DPURIFY (most of the arenas were never freed!) + + fix memory leak on Windows (PL_sys_intern contents were never + freed) + + PERL_OBJECT build tweak + + adjust change#6299 + + remove rel2abs prototypes (from Barrie Slaymaker) + + missing perldiag entry for unpack("w",...) diagnostic (from + Andreas Koenig) + + better diagnostic on Frob->stuff() when Frob:: doesn't exist + (from Richard Soderberg ) + + Win32 patches for cfgperl from Sarathy. + + b.t fails under OS/2 (from Yitzchak Scott-Thoennes) + + More POSIX.pod embellishment. + + tyop in change#6306 + Branch: maint-5.6/perl + !> (integrate 44 files) + ____________________________________________________________________________ + [ 7770] By: gsar on 2000/11/20 11:51:00 + Log: integrate changes#6268..6282 from cfgperl branch + + Subject: [PATCH perl-current] Make op/sprintf.t more comprehensive + From: Dominic Dunlop + Date: Thu, 29 Jun 2000 12:32:39 +0200 + Message-Id: + + Regen headers for #6261 (and update embed.pl for this) and #6267, + silence few compiler warnings. + + Subject: PATCH (Re: [ID 20000612.004] Should regression tests fail if user doesn't build XS extensions?) + From: Nicholas Clark + Date: Fri, 23 Jun 2000 16:21:15 +0100 + Message-ID: <20000623162115.A19894@Bagpuss.unfortu.net> + + Subject: PATCH pod/perltie.pod + From: Ian Phillipps + Date: Fri, 16 Jun 2000 00:17:19 +0100 + Message-ID: <20000616001719.A17108@homer.diplex.co.uk> + (only the first hunk, the second hunk had already been done + by some other patch) + + Subject: [ID 20000614.005] [patch] Tweak to Net::Ping docs + From: Tom Phoenix + Received: (qmail 6398 invoked by uid 508); 15 Jun 2000 00:30:54 -0000 + Date: Wed, 14 Jun 2000 17:30:37 -0700 (PDT) + + Subject: [PATCH] xsub attributes + From: Doug MacEachern + Date: Wed, 14 Jun 2000 15:09:22 -0700 (PDT) + Message-ID: + + Subject: [ID 20000614.003] 5.6.0 File/Glob.pm incompatibility + From: Andy Dougherty + Date: Wed, 14 Jun 2000 13:33:32 -0400 (EDT) + Message-Id: + + Subject: [PATCH] 5.6.0 lib/Pod/{Html,Man,Text}.pm + From: "Daniel S. Lewart" + Date: Tue, 13 Jun 2000 02:43:48 -0500 + Message-ID: <20000613024347.A28388@staff2.cso.uiuc.edu> + + Subject: [PATCH] Re: eval documentation: context + From: "M.J.T. Guy" + Date: Mon, 12 Jun 2000 15:07:29 +0100 + Message-Id: + + Subject: [PATCH] Re: [ID 20000612.001] map {chop; $_} (Literals problem) + From: "M.J.T. Guy" + Date: Mon, 12 Jun 2000 14:55:59 +0100 + Message-Id: + + Subject: [ID 20000609.002] Text::Wrap::wrap does not handle multiline strings properly + From: "Milton L. Hankins" + Date: Fri, 09 Jun 2000 12:39:27 -0400 + Message-Id: <39411DBF.A04BB1A@swl.msd.ray.com> + (plus update the version "number" of Text::Wrap) + + Subject: [ID 20000602.002] [PATCH] perlsub.pod: ambiguous usage of "closure" + From: Tim Ayers + Date: Thu, 08 Jun 2000 08:11:06 +0200 + Message-id: <393F38FA.9B5F4C7D@m.dasa.de> + [resent by Richard Foley, Message-Id probably wrong] + + Subject: Re: backwards compatibility in h2xs and makemaker [PATCH] + From: rspier@pobox.com (Robert Spier) + Date: Wed, 7 Jun 2000 12:47:37 -0400 (EDT) + Message-ID: <14654.31913.845602.610277@rls.cx> + + Subject: [PATCH 5.6.0] utils/h2xs.PL + From: "Daniel S. Lewart" + Date: Wed, 7 Jun 2000 04:02:04 -0500 + Message-ID: <20000607040201.A22568@staff1.cso.uiuc.edu> + + Subject: [PATCH 5.6.0]ITHREADs for VMS + From: Dan Sugalski + Date: Tue, 06 Jun 2000 11:59:50 -0400 + Message-Id: <4.3.2.7.0.20000606115752.01c82220@24.8.96.48> + Branch: maint-5.6/perl + !> (integrate 31 files) + ____________________________________________________________________________ + [ 7769] By: gsar on 2000/11/20 11:29:06 + Log: integrate changes#6261..6266 from cfgperl + + Subject: Re: [PATCH cfgperl] BOMs away! + From: simon@brecon.co.uk (Simon Cozens) + Date: 17 Jun 2000 11:49:57 GMT + Message-ID: + + Subject: 5.6.0 Patch for EPOC + From: Olaf Flebbe + Date: Tue, 13 Jun 2000 22:59:29 +0200 (MEST) + Message-ID: <23449.960929969@www11.gmx.net> + + tr fixes from Simon Cozens + + Subject: [ID 20000628.004] Re: Problem compiling perl? [BSDI-Support-Request #71232] + From: Marty Lucich + Date: Wed, 28 Jun 2000 14:16:05 -0700 (PDT) + Message-Id: <200006282116.OAA11148@netcom.com> + ccdlflags update (the BSD/OS 4.1 part had already been taken + care of by #6141). + + Subject: Re: [ID 20000628.006] POSIX::STRERR_FILENO typo + From: sthoenna@efn.org (Yitzchak Scott-Thoennes) + Date: Wed, 28 Jun 2000 17:50:12 -0700 + Message-ID: + + Subject: [PATCH 5.6.0] cygwin port + Message-ID: <779F20BCCE5AD31186A50008C75D997917173C@silldn_mail1.sanwaint.com> + From: "Fifer, Eric" + Date: Thu, 29 Jun 2000 12:58:29 +0100 + Branch: maint-5.6/perl + !> README.epoc cygwin/Makefile.SHs doop.c epoc/config.sh + !> epoc/createpkg.pl epoc/epocish.c epoc/epocish.h + !> ext/POSIX/POSIX.pm ext/POSIX/POSIX.pod ext/POSIX/POSIX.xs + !> hints/bsdos.sh pod/perldiag.pod t/comp/require.t toke.c + ____________________________________________________________________________ + [ 7768] By: gsar on 2000/11/20 11:13:44 + Log: integrate changes#6252..6256,6259..6260 + + Paranoia tweak on #6249. + Subject: Re: [PATCH 5.6.0 IPC/Open3.pm] Allow the use of numeric fd's + From: Ronald J Kimball + Date: Sun, 25 Jun 2000 23:43:12 -0400 + Message-ID: <20000625234312.B74147@linguist.dartmouth.edu> + + Subject: tr///, help wanted. + From: simon@brecon.co.uk (Simon Cozens) + Date: 28 Jun 2000 11:29:04 GMT + Message-ID: + + small thinko tweaks + + tweaks from Simon Conzes to further fix tr/// under utf8 + + perlnewmod was missing from MANIFEST. + + Subject: Re: [PATCH] pack('U',$foo) doesn't UTF8 + From: simon@brecon.co.uk (Simon Cozens) + Date: 17 Jun 2000 11:56:44 GMT + Message-ID: + pack U0, pack C0 + Branch: maint-5.6/perl + !> MANIFEST doop.c embed.h embed.pl embedvar.h global.sym + !> lib/Exporter.pm lib/IPC/Open3.pm objXSUB.h op.c + !> pod/perlfunc.pod pp.c pp_proto.h proto.h sv.c t/op/my_stash.t + !> t/op/pack.t t/op/tr.t t/pragma/constant.t t/pragma/warn/op + ____________________________________________________________________________ + [ 7767] By: gsar on 2000/11/20 10:51:38 + Log: integrate change#6250 from cfgperl + + Subject: Re: [PATCH] support 'my __PACKAGE__ $obj = ...' + From: Doug MacEachern + Date: Tue, 27 Jun 2000 14:17:28 -0700 (PDT) + Message-ID: + Branch: maint-5.6/perl + +> t/op/my_stash.t + !> MANIFEST embed.pl global.sym proto.h toke.c + ____________________________________________________________________________ + [ 7766] By: gsar on 2000/11/20 10:48:34 + Log: integrate changes#6240,6242..6246,6248,6249 from cfgperl + + Subject: [ID 20000626.007] h2xs man page contains trailing garbage + From: Nicholas Clark + Date: Mon, 26 Jun 2000 18:40:14 +0100 + Message-Id: <200006261740.SAA02740@Bagpuss.unfortu.net> + + Subject: [PATCH] bytes<->utf8 fixes + From: simon@brecon.co.uk (Simon Cozens) + Date: 26 Jun 2000 04:55:45 GMT + Message-ID: + + Subject: [PATCH] is_utf8_string + From: simon@brecon.co.uk (Simon Cozens) + Date: 26 Jun 2000 02:25:59 GMT + Message-ID: + + Subject: [PATCH] avoid mg_ptr in '*' magic + From: Doug MacEachern + Date: Sun, 25 Jun 2000 11:16:08 -0700 (PDT) + Message-ID: + + Subject: [ID 20000624.001] PERL_DL_DEBUG=1 DynaLoader message appears to be wrong + From: Nicholas Clark + Date: Sat, 24 Jun 2000 13:06:20 +0100 + Message-Id: <200006241206.NAA03771@Bagpuss.unfortu.net> + + Allow for standalone testing. + + Subject: DOC PATCH 5.6.0: perlfunc/sprintf does not contain an example + From: Mark-Jason Dominus + Date: Tue, 27 Jun 2000 22:36:42 -0400 + Message-ID: <20000628023642.12166.qmail@plover.com> + + Subject: Re: [PATCH 5.6.0 IPC/Open3.pm] Allow the use of numeric fd's + From: Frank Tobin + Date: Sun, 25 Jun 2000 19:00:58 -0500 (CDT) + Message-ID: + Branch: maint-5.6/perl + !> embed.h embed.pl embedvar.h ext/DynaLoader/DynaLoader_pm.PL + !> global.sym gv.c lib/IPC/Open3.pm objXSUB.h perlapi.c perlapi.h + !> pod/perlapi.pod pod/perlfunc.pod pod/perlintern.pod pp_proto.h + !> proto.h sv.c t/lib/filefunc.t t/lib/filespec.t t/lib/peek.t + !> utf8.c utils/h2xs.PL + ____________________________________________________________________________ + [ 7765] By: gsar on 2000/11/20 10:29:13 + Log: integrate change#6239 from cfgperl + + Configure maintenance. Sever some dependency cycles, + separate gccversion from the cc unit, + address [ID 20000623.006] Configure script patch for using gcc on AIX + (but solve it a little bit differently), + unduplex some accidentally duplicated units, + suggest using gcc if no cc available + (p5p thread: "Solaris configure: counterproposal", 1999-09) + Branch: maint-5.6/perl + !> Configure Todo-5.6 config_h.SH + ____________________________________________________________________________ + [ 7764] By: gsar on 2000/11/20 10:25:55 + Log: integrate changes#6233..6238 from cfgperl + + Subject: PATCH 5.6.0: Document OPf_SPECIAL flag in regcomp op nodes + From: Mark-Jason Dominus + Date: Fri, 16 Jun 2000 20:53:04 -0400 + Message-ID: <20000617005304.8008.qmail@plover.com> + + Prefer C:/temp in Win32 as File::Spec->tmpdir to /tmp + because when run as services (Win32ese for daemons) + no environment variables are set and tmpdir ends up as /tmp, + which is ambiguous. + Subject:[ID 20000616.002] File::Spec->tmpdir broken when running as service + From: matt@sergeant.org + Date: 16 Jun 2000 16:30:43 -0000 + Message-Id: <20000616163043.26398.qmail@mail.sergeant.org> + + The thread begun by + Subject: [ID 20000616.001] Typo on line 390 of .../hints/solaris_2.sh + From: Kevin.Ruscoe@ubsw.com + Date: Fri, 16 Jun 2000 16:38:51 +0100 + Message-Id: + + Tweak embed.pl, regen headers. + + Subject: [PATCH 5.6.0] XS module loading fixup for VMS + From: Dan Sugalski + Date: Fri, 23 Jun 2000 17:00:00 -0400 + Message-Id: <4.3.2.7.0.20000623165934.00c93d10@24.8.96.48> + Branch: maint-5.6/perl + !> (integrate 27 files) + ____________________________________________________________________________ + [ 7763] By: gsar on 2000/11/20 10:08:08 + Log: s/perl56delta/perldelta/g + Branch: maint-5.6/perl + ! pod/Makefile + ____________________________________________________________________________ + [ 7762] By: gsar on 2000/11/20 10:04:00 + Log: integrate changes#6225,6229,6231,6232 from cfgperl + + Add source code filenames to apidoc. + From: simon@brecon.co.uk (Simon Cozens) + Subject: [PATCH embed.pl] Source X-ref + Date: 22 Jun 2000 02:18:49 GMT + Message-ID: + + Subject: README.hpux version 0.6.1 + Date: Tue, 20 Jun 2000 15:25:51 -0700 (PDT) + From: Jeff Okamoto + Message-Id: <200006202225.PAA26205@xfiles.intercon.hp.com> + + Subject: [PATCH 5.6.0] cygwin port + From: "Fifer, Eric" + Date: Tue, 20 Jun 2000 14:30:58 +0100 + Message-ID: <779F20BCCE5AD31186A50008C75D9979171734@silldn_mail1.sanwaint.com> + + Subject: PATCH: pod/perlutil.pod - utilities packaged with the Perl distribution + From: simon@brecon.co.uk (Simon Cozens) + Date: 19 Jun 2000 15:18:27 GMT + Message-ID: + + plus update pod/Makefile and regenerate perltoc + Branch: maint-5.6/perl + +> pod/perlutil.pod + !> MANIFEST README.cygwin README.hpux Todo-5.6 embed.pl + !> lib/File/Find.pm pod/Makefile pod/perltoc.pod pod/roffitall + ____________________________________________________________________________ + [ 7344] By: gsar on 2000/10/16 09:30:21 + Log: integrate change#6220 from cfgperl + + Win32 patches from Benjamin Stuhl. + Branch: maint-5.6/perl + !> makedef.pl win32/win32.h + ____________________________________________________________________________ + [ 7343] By: gsar on 2000/10/16 08:32:19 + Log: integrate changes#6221,6222 from cfgperl + + Remove tr///CU (the feature is to be obsoleted by better interfaces). + From: simon@brecon.co.uk (Simon Cozens) + Subject: [PATCH] Eliminate tr///[CU][CU] + Date: 23 Jun 2000 11:05:40 GMT + Message-ID: + + doc typo fix + Subject: [PATCH] documentation typo in lib/Pod/Usage.pm + From: Ian Phillipps + Date: Fri, 23 Jun 2000 10:40:58 +0100 + Message-ID: <20000623104058.A22791@homer.diplex.co.uk> + Branch: maint-5.6/perl + !> doop.c embed.pl lib/Pod/Usage.pm pod/perlop.pod toke.c utf8.c + ____________________________________________________________________________ + [ 7342] By: gsar on 2000/10/16 08:28:08 + Log: integrate change#6217 from cfgperl (in part) + + Rename the fdpid locking and integrate with Sarathy. + Branch: maint-5.6/perl + !> Configure config_h.SH doio.c embed.h embed.pl embedvar.h + !> global.sym gv.c intrpvar.h objXSUB.h perl.c perlapi.h pp.c + !> pp_ctl.c proto.h sv.h util.c util.h vmesa/vmesa.c + !> win32/win32.c + ____________________________________________________________________________ + [ 7341] By: gsar on 2000/10/16 08:23:39 + Log: integrate changes#6214..6216 from mainline + + @_ can't have junk in it even in the non-USE_ITHREADS case because + caller() wants to populate @DB::args with it (causes a coredump + in Carp::confess()) + + tweak comment about @DB::args + + be more optimal about clearing @_ + Branch: maint-5.6/perl + !> av.h cop.h pp_ctl.c t/op/runlevel.t + ____________________________________________________________________________ + [ 7340] By: gsar on 2000/10/16 08:20:37 + Log: integrate changes#6207..6210 from cfgperl + + Subject: [PATCH 5.6.0] Threadsafe patches + From: Dan Sugalski + To: perl5-porters@perl.org + Date: Mon, 08 May 2000 18:08:13 -0400 + Message-Id: <4.3.1.0.20000508180729.02182de0@24.8.96.48> + + Regen headers for #6207. + + Lock PL_fdpid against race conditions, based on: + Subject: [PATCH 5.6.0]subprocess fixup for threads + From: Dan Sugalski + To: perl5-porters@perl.org + Date: Tue, 11 Apr 2000 17:02:32 -0400 + Message-Id: <4.3.0.20000411170218.01d2f580@24.8.96.48> + + Mopup for #6207 and #6209. + Branch: maint-5.6/perl + !> doio.c embed.h embed.pl global.sym gv.c intrpvar.h objXSUB.h + !> perl.c pp.c pp_ctl.c proto.h sv.h util.c vmesa/vmesa.c + !> win32/win32.c + ____________________________________________________________________________ + [ 7339] By: gsar on 2000/10/16 08:14:34 + Log: integrate change#6203 from cfgperl + + perldiag should refer to perlos2.pod not README.os2 + Branch: maint-5.6/perl + !> pod/perldiag.pod + ____________________________________________________________________________ + [ 7338] By: gsar on 2000/10/16 08:11:42 + Log: integrate change#6201 from mainline + + Perl_eval_pv() leaks 4 bytes every time it is called because it + does a PUSHMARK that's never ever POPMARKed; in general, only + Perl_call_[sp]v() need a PUSHMARK for incoming arguments; + Perl_eval_[sp]v() don't because they don't take any incoming + arguments (this leak has been around since the original version + of perl_eval_pv() in 5.003_97e) + Branch: maint-5.6/perl + !> perl.c + ____________________________________________________________________________ + [ 7337] By: gsar on 2000/10/16 08:08:47 + Log: integrate changes#6197..6200 from cfgperl + + Subject: [ID 20000602.005] [PATCH]5.6.0 (DOC) tiny change to perlsyn.pod + From: John Borwick + Date: Fri, 2 Jun 2000 14:35:03 -0400 (EDT) + Message-Id: + + Subject: [PATCH 5.6.0]VMS fixups so we can build with MULTIPLICITY + From: Dan Sugalski + To: vmsperl@perl.org, perl5-porters@perl.org + Date: Fri, 02 Jun 2000 16:00:41 -0400 + Message-Id: <4.3.2.7.0.20000602155951.01f02b20@24.8.96.48> + Message-Id: <4.3.2.7.0.20000602164011.01ec8c30@24.8.96.48> + + Subject: [PATCH 5.6.0]Make perl's malloc work on VMS + From: Dan Sugalski + To: perl5-porters@perl.org, vmsperl@perl.org + Date: Fri, 02 Jun 2000 17:30:51 -0400 + Message-Id: <4.3.2.7.0.20000602173021.01f03570@24.8.96.48> + + Update to cperl-mode.el 4.31 from + ftp://ftp.math.ohio-state.edu/pub/users/ilya/cperl-mode.el + Subject: A couple of notes + From: Ilya Zakharevich + To: Mailing list Perl5 + Date: Sat, 3 Jun 2000 23:33:32 -0400 + Message-ID: <20000603233332.A6790@monk.mps.ohio-state.edu> + Branch: maint-5.6/perl + !> emacs/cperl-mode.el embed.h embed.pl embedvar.h + !> ext/POSIX/POSIX.xs global.sym objXSUB.h perlapi.c perlapi.h + !> pod/perlapi.pod pod/perlintern.pod pod/perlsyn.pod proto.h + !> vms/descrip_mms.template vms/gen_shrfls.pl vms/vms.c + !> vms/vmsish.h + ____________________________________________________________________________ + [ 7336] By: gsar on 2000/10/16 08:03:46 + Log: integrate changes#6194,6195 from mainline + + fix small eval"" memory leaks under USE_ITHREADS + + fix yet another eval"" leak under USE_ITHREADS + Branch: maint-5.6/perl + !> cop.h embed.h embed.pl objXSUB.h op.c perl.c perlapi.c perly.c + !> perly_c.diff pp_ctl.c proto.h scope.c scope.h sv.c toke.c + !> vms/perly_c.vms + ____________________________________________________________________________ + [ 7335] By: gsar on 2000/10/16 08:02:15 + Log: integrate changes#6190,6191 from mainline + + submit missing embed.pl change + + vec() loses numericalness (modified version of patch suggested + by Robin Barker) + Branch: maint-5.6/perl + !> doop.c embed.pl t/op/vec.t + ____________________________________________________________________________ + [ 7334] By: gsar on 2000/10/16 08:01:03 + Log: integrate change#6189 from mainline + + counting tr/// corrupts later operation (from M.J.T Guy) + Branch: maint-5.6/perl + !> doop.c t/op/tr.t + ____________________________________________________________________________ + [ 7333] By: gsar on 2000/10/16 07:59:07 + Log: integrate changes#6183..6188 from mainline + + SelfLoader can lose $@ in AUTOLOAD() (from Nicholas Clark + ) + + tweak for change#6127 + + remove incorrect documentation about implicit split to @_ in + list context, which never really worked in perl 5 (from + M.J.T. Guy) + + further qualify references to "alphanumeric" (from Wolfgang Laun + ) + + replace pod2latex with the one in Pod-LaTeX v0.52 from CPAN + (from Tim Jenness ) + + h2xs tweaks + Branch: maint-5.6/perl + +> lib/Pod/LaTeX.pm t/lib/selfloader.t + !> AUTHORS MAINTAIN MANIFEST ext/Devel/Peek/Peek.pm handy.h + !> lib/SelfLoader.pm perl.c pod/perlapi.pod pod/perldata.pod + !> pod/perlfaq6.pod pod/perlfaq9.pod pod/perlfunc.pod + !> pod/perllocale.pod pod/perlre.pod pod/perltrap.pod + !> pod/pod2latex.PL utils/h2xs.PL + ____________________________________________________________________________ + [ 7332] By: gsar on 2000/10/16 07:53:52 + Log: integrate change#6179 from mainline + + buggy modulus on UVs introduced by change#3378 (resulted in + 4063328477 % 65535 amounting to 27406, instead of 27407) + Branch: maint-5.6/perl + !> pp.c t/op/arith.t + ____________________________________________________________________________ + [ 7331] By: gsar on 2000/10/16 07:52:49 + Log: integrate changes#6176,6177,6178,6182 from cfgperl + + Single-quoted utf8 patch from Simon Cozens. + + Substitution utf8 patch from Simon Cozens. + + Be cleaner. + + Be Cleaner Part Deux. + Branch: maint-5.6/perl + !> Makefile.SH pp_hot.c toke.c + ____________________________________________________________________________ + [ 7330] By: gsar on 2000/10/16 07:41:36 + Log: integrate change#6172 from mainline + + fix buggy multiline matching of C<"a\nxb\n" =~ /(?!\A)x/m> + (from Ilya Zakharevich) + Branch: maint-5.6/perl + !> regexec.c t/op/re_tests + ____________________________________________________________________________ + [ 7329] By: gsar on 2000/10/16 07:40:25 + Log: integrate change#6171 from mainline + + scalar() doesn't force scalar context when used in void context + (from Simon Cozens) + Branch: maint-5.6/perl + !> op.c t/op/wantarray.t + ____________________________________________________________________________ + [ 7328] By: gsar on 2000/10/16 07:39:33 + Log: integrate change#6170 from mainline + + change#6142 needs tweaks to tests to work where there's no + symlink() (from Helmut Jarausch ) + Branch: maint-5.6/perl + !> t/lib/filefind.t + ____________________________________________________________________________ + [ 7327] By: gsar on 2000/10/16 07:35:34 + Log: integrate changes#6166..6168 from cfgperl + + Introduce HAS_GETESPWNAM, HAS_GETPRPWNAM, and I_PROT + in case somebody wants to write an extension for more + shadow database interfaces. + + tweak todo + + Tweak NV_PRESERVES_UV*, vms/subconfigure.com left untouched. + Branch: maint-5.6/perl + !> Configure Porting/Glossary Porting/config.sh Porting/config_H + !> Todo-5.6 config_h.SH epoc/config.sh perl.h pp_sys.c toke.c + !> vms/subconfigure.com vos/config.def vos/config.h vos/config.pl + !> vos/config_h.SH_orig win32/config.bc win32/config.gc + !> win32/config.vc win32/config_H.bc win32/config_H.gc + !> win32/config_H.vc win32/config_h.PL win32/config_sh.PL + ____________________________________________________________________________ + [ 7326] By: gsar on 2000/10/16 07:29:05 + Log: integrate changes#6157,6159..6161,6164 from cfgperl + + Regen Configure to jive with #6149. + + Upgrade to File::Temp 0.08 from Tim Jenness via CPAN. + + Changes for the File::Temp 0.08 (change #6159) test suite + to fit better into the Perl distribution test framework. + + Add autogeneration of perlmodlib.pod and the new perlnewmod.pod, + both from Simon Cozens. + + detypo + Branch: maint-5.6/perl + +> pod/perlmodlib.PL pod/perlnewmod.pod + !> AUTHORS Configure MAINTAIN MANIFEST config_h.SH + !> lib/File/Temp.pm pod/Makefile pod/perl.pod pod/perlmodlib.pod + !> pod/perltoc.pod t/lib/ftmp-mktemp.t t/lib/ftmp-posix.t + !> t/lib/ftmp-security.t t/lib/ftmp-tempfile.t + ____________________________________________________________________________ + [ 7325] By: gsar on 2000/10/16 07:25:13 + Log: integrate change#6158 from vmsperl + + Add fallback to tmpfile for use in cases where user's relying on + ACLs on SYS$SCRATCH to permit file creation. (based on Charles + Lane's patch) + Branch: maint-5.6/perl + !> vms/vms.c vms/vmsish.h + ____________________________________________________________________________ + [ 7324] By: gsar on 2000/10/16 07:20:50 + Log: integrate changes#6153..6155 from mainline + + prettier Test::Harness output on failed tests (from Nicholas Clark + ) + + avoid type mismatch warning + + small bug in change#6144; remove random \xA0 character that snuck + in via change#6145 + Branch: maint-5.6/perl + !> lib/AutoSplit.pm lib/ExtUtils/xsubpp lib/Test/Harness.pm + !> perl.c + ____________________________________________________________________________ + [ 7323] By: gsar on 2000/10/16 07:18:47 + Log: integrate changes#6151,6152 from mainline + + fix accidental pessimization in RE optimizer (from Ilya Zakharevich) + + cosmetic fixups of RE debug output (from Ilya Zakharevich) + Branch: maint-5.6/perl + !> regexec.c + ____________________________________________________________________________ + [ 7322] By: gsar on 2000/10/16 07:17:25 + Log: integrate changes#6146..6150 from mainline + + doc typo + + add a make entry to Config.pm so "perl -V:make" works on VMS + (from Peter Prymmer) + + close open file before chmod() (from Rocco Caputo ) + + OS/2 tweaks for usethreads build (from Rocco Caputo + ) + + perlrequick.pod updates (from Mark Kvale ) + Branch: maint-5.6/perl + !> Configure hints/os2.sh lib/ExtUtils/MM_Unix.pm lib/warnings.pm + !> makedef.pl os2/Makefile.SHs os2/OS2/REXX/t/rx_dllld.t + !> os2/OS2/REXX/t/rx_objcall.t os2/OS2/REXX/t/rx_tievar.t + !> os2/OS2/REXX/t/rx_tieydb.t os2/os2.c os2/os2ish.h perl.c + !> pod/perlrequick.pod util.c vms/subconfigure.com warnings.h + !> warnings.pl x2p/a2p.h + ____________________________________________________________________________ + [ 7321] By: gsar on 2000/10/16 07:14:02 + Log: integrate changes#6143..6145 from mainline + + MacOS support, part 1 (from Matthias Neeracher + ) + + MacOS support, part 2: make AutoSplit use File::Spec instead + of assuming Unixisms; *UNTESTED on Unix* (from Matthias Neeracher + ) + + make xsubpp skip embedded pod (from Matthias Neeracher + ) + Branch: maint-5.6/perl + +> ext/DynaLoader/dl_mac.xs + !> MANIFEST ext/DB_File/Makefile.PL ext/NDBM_File/Makefile.PL + !> ext/POSIX/POSIX.xs lib/AutoSplit.pm lib/ExtUtils/MakeMaker.pm + !> lib/ExtUtils/xsubpp mg.c perl.c perlsfio.h pod/perlfaq4.pod + !> pp_ctl.c proto.h toke.c util.c util.h + ____________________________________________________________________________ + [ 7320] By: gsar on 2000/10/16 07:12:13 + Log: integrate changes#6141,6142 from mainline + + BSD/OS (bsdi) hints update by Timur I. Bakeyev and Todd C. Miller, + forwarded by Peter Seebach from the bsdi-users mailing list. + p5p Message-Id: <200005280543.AAA24519@guild.plethora.net> + + File::Find fails to chdir when chasing symlinks (from + Helmut Jarausch ) + Branch: maint-5.6/perl + !> hints/bsdos.sh lib/File/Find.pm t/lib/filefind.t + ____________________________________________________________________________ + [ 7319] By: gsar on 2000/10/16 07:04:30 + Log: integrate change#6139 from mainline + + revise mktables.PL for bugs and newness in Unicode 3.0 + (from James Bence ) + Branch: maint-5.6/perl + +> (branch 30 files) + !> (integrate 49 files) + ____________________________________________________________________________ + [ 7318] By: gsar on 2000/10/16 07:01:01 + Log: integrate changes#6137,6138 from mainline + + fix bogus redeclaration warning for "our" variables in different + scopes + + add note about the handling of negative indices to tied arrays + (from Michael G Schwern ) + Branch: maint-5.6/perl + !> op.c pod/perltie.pod t/pragma/strict-vars + ____________________________________________________________________________ + [ 7317] By: gsar on 2000/10/16 06:58:46 + Log: integrate changes#6127..6136 from mainline + + call_method(...,G_EVAL) can longjmp() out if the method probing + failed (from Gisle Aas) + + new perlxstut example for passing/returning refs to arrays + (from David Lowe ) + + VMS test harness tweak (from Jesper Naur ) + + fix places that mean C<"word" character> but say C + + avoid warnings in POSIX.pm (from Barrie Slaymaker) + + warnings::enabled() doesn't fall back to looking at $^W if + caller isn't using lexical warnings (from Paul Marquess) + + elide bogus test in change#6132 + + make Test::Harness use wait.h/WCOREDUMP if available + (from Ben Tilly ) + + enable Test::Harness to dynamically determine column width etc. + (from Rob Napier ) + + random pod typos (from Peter Scott ) + Branch: maint-5.6/perl + !> cop.h ext/Devel/Peek/Peek.pm ext/POSIX/POSIX.pm + !> lib/Test/Harness.pm perl.c pod/perldebguts.pod + !> pod/perlfunc.pod pod/perlre.pod pod/perlretut.pod + !> pod/perlxstut.pod pp_ctl.c t/pragma/warn/9enabled vms/test.com + ____________________________________________________________________________ + [ 7316] By: gsar on 2000/10/16 06:53:23 + Log: integrate change#6126 from mainline + + change#2879 broke rvalue autovivification of magicals such as + ${$num} (reworked variant of patch suggested by Simon Cozens) + Branch: maint-5.6/perl + !> embed.h embed.pl gv.c pod/perlapi.pod pod/perlintern.pod pp.c + !> pp_hot.c proto.h t/op/gv.t + ____________________________________________________________________________ + [ 7315] By: gsar on 2000/10/16 06:51:38 + Log: integrate changes#6123,6125 from mainline + + clarify gotcha with #line directives (from Rocco Caputo + ) + + enable propagating exception objects via Perl_croak() in XS code + (from Gisle Aas) + Branch: maint-5.6/perl + !> pod/perldebug.pod pod/perlsyn.pod util.c + ____________________________________________________________________________ + [ 7314] By: gsar on 2000/10/16 06:49:28 + Log: integrate change#6122 from mainline + + downgrade fatal error on C<"foo@nosucharray.com"> to optional + warning (from Mark-Jason Dominus) + Branch: maint-5.6/perl + !> lib/ExtUtils/typemap pod/perldelta.pod pod/perlsub.pod + !> pod/perltrap.pod t/base/lex.t t/pragma/strict-vars + !> t/pragma/strict.t t/pragma/warn/toke t/pragma/warnings.t + !> toke.c + ____________________________________________________________________________ + [ 7313] By: gsar on 2000/10/16 06:46:54 + Log: integrate changes#6112..6121 from vmsperl + + Check for existence of file before trying to delete + + Ugly workaround for version-specific RTL error + + Urk -- undo previous removal of vmsish 'exit' change + + Add bounds checking for several strings (Charles Lane) + + Miscellaneous cosmetic fixes (Charles Lane) + + Treat sockets as special in sys(read|write) (Charles Lane et al.) + + Regularize distinction between RMS$_DNF and RMS$_DIR (Craig Berry) + Flatten case labels in switch statements uniformly (Charles Bailey) + + Quiet error messages in vmsish.t (Charles Lane) + + Add missing escape (Charles Lane) + + Allow eliminate_macros() and fixpath() to handle space-delimited + lists (based on fixes by Craig Berry) + Branch: maint-5.6/perl + !> lib/ExtUtils/MM_VMS.pm lib/File/Spec/VMS.pm t/op/lex_assign.t + !> vms/ext/vmsish.pm vms/ext/vmsish.t vms/test.com vms/vms.c + !> vms/vmsish.h + ____________________________________________________________________________ + [ 7312] By: gsar on 2000/10/16 06:41:18 + Log: integrate changes#6107,6110 from cfgperl + + Tweak the todo list. + + todo tweak + Branch: maint-5.6/perl + !> Todo-5.6 + ____________________________________________________________________________ + [ 7311] By: gsar on 2000/10/16 06:38:38 + Log: integrate changes#6104,6108 from mainline + + PL_sys_intern was being initialized too late on windows + + reenable fake signal handling on Windows, bugs and all + Branch: maint-5.6/perl + !> embed.h embed.pl global.sym makedef.pl mg.c objXSUB.h perl.c + !> perl.h perlapi.c pod/perlapi.pod proto.h win32/perlhost.h + !> win32/win32.c + ____________________________________________________________________________ + [ 7310] By: gsar on 2000/10/16 06:36:03 + Log: integrate changes#6095,6097..6103 from cfgperl + + Introduce NV_PRESERVED_BITS. Not yet used anywhere but + might be useful in future. + + Add a note about possible compilation problems from Allen Smith. + + Add a note about other, yet unsupported, shadow password APIs. + + Tweaks for the cc bugs from Allen Smith. + + More compilation tweakery from Allen Smith. + + Hints and test tweaks for Unicos. + + The test suite tweak in #6101 wasn't quite right. + + Test tweaking for Unicos continues. + Branch: maint-5.6/perl + !> Configure Porting/Glossary Porting/config.sh Porting/config_H + !> config_h.SH hints/irix_6.sh hints/unicos.sh pp_sys.c t/lib/b.t + !> t/lib/complex.t t/op/64bitint.t + ____________________________________________________________________________ + [ 7309] By: gsar on 2000/10/16 06:29:41 + Log: integrate changes#6093,6094 from mainline + + fork() failure to create pseudo process sets errno=EAGAIN and returns + undef on windows (from Clinton Pierce ) + + cygwin update (from Eric Fifer ) + Branch: maint-5.6/perl + !> README.cygwin cygwin/Makefile.SHs cygwin/cygwin.c + !> hints/cygwin.sh pp_sys.c sv.c win32/perlhost.h + ____________________________________________________________________________ + [ 7308] By: gsar on 2000/10/16 06:27:29 + Log: integrate change#6092 from cfgperl + + Regen perltoc with the fixed buildtoc. + Branch: maint-5.6/perl + !> pod/perltoc.pod + ____________________________________________________________________________ + [ 7307] By: gsar on 2000/10/16 06:26:40 + Log: integrate changes#6089,6090 from mainline + + buildtoc tweak to fix newline lossage + + concat doesn't preserve utf8-ness, and doesn't invalidate + [NI]OK; added tests for both + Branch: maint-5.6/perl + !> perl.c pod/buildtoc pp_hot.c sv.c t/op/substr.t + ____________________________________________________________________________ + [ 7306] By: gsar on 2000/10/16 06:24:05 + Log: integrate change#6088 from cfgperl + + Remove HAS_SETSPENT, HAS_GETSPENT, HAS_ENDSPENT, + because we do not use those. The HAS_GETSPNAM remains, + though, because we still do use that. + Branch: maint-5.6/perl + !> Configure Porting/Glossary Porting/config.sh Porting/config_H + !> config_h.SH epoc/config.sh hints/machten.sh pod/perltoc.pod + !> pp_sys.c vms/subconfigure.com vos/config.def vos/config.h + !> vos/config_h.SH_orig win32/config.bc win32/config.gc + !> win32/config.vc win32/config_H.bc win32/config_H.gc + !> win32/config_H.vc win32/config_h.PL win32/config_sh.PL + ____________________________________________________________________________ + [ 7305] By: gsar on 2000/10/16 06:15:52 + Log: integrate changes#6084,6085,6087 from mainline + + substr() does not preserve utf8-ness (from Stefan Eissing + ); added tests + + repeat operator (x) doesn't preserve utf8-ness + + reverse() and quotemeta() weren't preserving utf8-ness; add tests + Branch: maint-5.6/perl + !> pp.c sv.c t/op/quotemeta.t t/op/substr.t toke.c + ____________________________________________________________________________ + [ 7304] By: gsar on 2000/10/16 06:13:10 + Log: integrate changes#6077..6083 from mainline + + avoid warnings in diagnostics.pm; pod tweaks (from Peter Prymmer + and Tom Phoenix) + + workaround for CRT bug in chdir() (from Charles Lane, via + Peter Prymmer) + + remove outdated kludge in Carp (NULLs are permitted in diagnostics + now) + + add File::Temp v0.08 from CPAN, with small tweaks to testsuite + (from Tim Jenness ) + + better default perlbug categories for ok reports (from Richard Foley) + + peek.t non-portable to ithreads + + note about undocumented caller() return value (from M.J.T. Guy); + yet another peek.t tweak + Branch: maint-5.6/perl + +> lib/File/Temp.pm t/lib/ftmp-mktemp.t t/lib/ftmp-posix.t + +> t/lib/ftmp-security.t t/lib/ftmp-tempfile.t + !> AUTHORS MAINTAIN MANIFEST iperlsys.h lib/Carp/Heavy.pm + !> lib/diagnostics.pm pod/perlfunc.pod pod/perlrun.pod + !> pod/perltie.pod t/lib/peek.t utils/perlbug.PL vms/vms.c + !> vms/vmsish.h + ____________________________________________________________________________ + [ 7303] By: gsar on 2000/10/16 06:03:18 + Log: integrate changes#6011,6016,6033,6035..6039,6047..6052,6054..6059, + 6073..6075 from cfgperl (pp_sys.c manually merged due to conflicts) + + &HUGE_VAL is not defined, it exists. + + Do not warn that an infinity does not look like a number. + + Rewrite the pwent/spent logic to be a little bit more clearer. + + Continue on the pwent/spent case. + + Correct Freudian slip. + + Use HUGE_VALL if applicable. + + pwent/spent #ifdef imbalance. + + Infinite problems. + + Call getspnam() only iff needd. + + Test both the scalar and list contexts. + + Use setxxent()/endxxent(). + + Complex tweakery. + + Unicos hint tweak. + + Be more forgiving in POSIX about HUGE_VALL. + + Detypo. + + The search of infinity continues, this time simplified. + + The logic of choosing strtol/strtoul/strtoll/strtoull was wrong + in natively 64-bit platforms where a long is a quad (no need + for long longs). Also added bias for IVs. + + Complex tweaks. + + Introduce t/lib/peek.t. + + Make the test more portable. + Branch: maint-5.6/perl + +> t/lib/peek.t + ! pp_sys.c + !> MANIFEST ext/POSIX/POSIX.xs hints/unicos.sh + !> lib/Math/Complex.pm sv.c t/lib/complex.t t/op/grent.t + !> t/op/pwent.t toke.c util.c + ____________________________________________________________________________ + [ 7302] By: gsar on 2000/10/16 05:03:37 + Log: integrate changes#6066..6071 from mainline + + s/END/CHECK/ + + replace direct call to sighandler() with (*PL_sighandlerp)() + + note about values() + + File::Spec compatibility update (from Barrie Slaymaker + ) + + remove misleading comment (from M.J.T. Guy) + + misformatted perllocal.pod (from Tim Jenness + ) + Branch: maint-5.6/perl + !> lib/ExtUtils/MM_Unix.pm lib/ExtUtils/MM_Win32.pm + !> lib/File/Spec.pm lib/File/Spec/Mac.pm lib/File/Spec/Unix.pm + !> lib/File/Spec/VMS.pm lib/File/Spec/Win32.pm perl.c + !> pod/perlfunc.pod t/lib/anydbm.t win32/win32.c + ____________________________________________________________________________ + [ 7301] By: gsar on 2000/10/16 05:00:08 + Log: integrate changes#6061..6063 from mainline + + change#5921 neglected to make eq honor "use bytes" + + additional tests for utf8.t + + tokeq() could read unallocated field in argument + Branch: maint-5.6/perl + !> sv.c t/pragma/utf8.t toke.c + ____________________________________________________________________________ + [ 7300] By: gsar on 2000/10/16 04:56:54 + Log: integrate changes#6046,6048,6057,6058 from mainline + + libscheck has insufficient checks for n32 libs (from + Albert Chin-A-Young ) + + add note about how $( doesn't interpolate in REs (from + Philip Newton ) + + fix broken parsing of /\x{ab}/ + + printf(...) should be PerlIO_printf(PerlIO_stdout(), ...) + (spotted by Donald Kinzer ) + Branch: maint-5.6/perl + !> hints/irix_6.sh perl.c pod/perlop.pod regcomp.c + !> t/pragma/utf8.t + ____________________________________________________________________________ + [ 7299] By: gsar on 2000/10/16 04:52:50 + Log: integrate change#6044 from mainline + + change#3798 broke the meaning of "\0_7_7", tr/\0_// etc.; fix it + such that underscores are only ignored in literal numbers, + "\x{...}", and hex/oct argument + Branch: maint-5.6/perl + !> perl.c pp.c regcomp.c t/op/oct.t toke.c util.c + ____________________________________________________________________________ + [ 7298] By: gsar on 2000/10/16 04:50:53 + Log: integrate changes#6027..6043 from mainline + + podlators-1.02 update (from Russ Allbery) + + Pod::Man generates groff-incompatible macro definition (from + Tom Christiansen) + + add CGI.pm v2.66 (from Lincoln Stein) + + introduce @LAST_MATCH_START and @LAST_MATCH_END, English aliases + for @- and @+ (from Johan Vromans) + + small nits in diagnostics.pm (from Robin Barker) + + whitespace adjustments + + missing files in MANIFEST + + cpio 2.4.2 on Linux creates directories in 0700 mode, adjust makerel + to compensate + + remove outdated perltrap entry (from Peter Scott ) + + perlretut revisions (from Mark Kvale ) + Branch: maint-5.6/perl + +> lib/CGI/Util.pm t/lib/cgi-pretty.t + !> MANIFEST Porting/makerel lib/CGI.pm lib/CGI/Carp.pm + !> lib/CGI/Cookie.pm lib/CGI/Pretty.pm lib/CGI/Push.pm + !> lib/English.pm lib/Pod/Man.pm lib/Pod/Text.pm + !> lib/diagnostics.pm pod/perldiag.pod pod/perlretut.pod + !> pod/perltrap.pod pod/perlvar.pod pp_sys.c t/lib/cgi-function.t + !> t/lib/cgi-html.t t/lib/cgi-request.t + ____________________________________________________________________________ + [ 7297] By: gsar on 2000/10/16 04:44:30 + Log: integrate change#6025 from mainline + + Is{Alnum,Alpha,Word} don't match titlecase + TODO: IsSpace is defined recursively! + (both spotted by Larry) + Branch: maint-5.6/perl + !> lib/unicode/Is/Alnum.pl lib/unicode/Is/Alpha.pl + !> lib/unicode/Is/Word.pl lib/unicode/mktables.PL + ____________________________________________________________________________ + [ 7296] By: gsar on 2000/10/16 04:39:30 + Log: integrate change#6023 from mainline + + debugger stomps on $. (from M.J.T. Guy) + Branch: maint-5.6/perl + !> lib/perl5db.pl + ____________________________________________________________________________ + [ 7295] By: gsar on 2000/10/16 04:38:02 + Log: integrate change#6022 from mainline + + unbalanced LEAVE after perl_clone(...,0) (from Doug MacEachern) + Branch: maint-5.6/perl + !> sv.c + ____________________________________________________________________________ + [ 7294] By: gsar on 2000/10/16 04:37:05 + Log: integrate changes#6018..6021 from mainline + + make lib/syslog.t portable to systems that don't have _PATH_LOG, + make _PATH_LOG() return "" if unavailable + + windows portability tweaks + + test tweak + + remove Win2K issue in pod (fixed by change#6020) + Branch: maint-5.6/perl + !> README.win32 ext/File/Glob/Glob.pm ext/Sys/Syslog/Syslog.pm + !> ext/Sys/Syslog/Syslog.xs pod/perldelta.pod t/lib/b.t + !> t/lib/open3.t t/lib/syslog.t win32/win32.h + ____________________________________________________________________________ + [ 7293] By: gsar on 2000/10/16 04:20:00 + Log: integrate changes#6013..6015 from mainline + + tweak change#5945 to display correct switch name in diagnostic + + glob() loading File::Glob behind the scenes may cause syntax errors + + tweak test for portability + Branch: maint-5.6/perl + !> op.c perl.c pod/perldiag.pod t/lib/b.t + ____________________________________________________________________________ + [ 7292] By: gsar on 2000/10/16 04:18:11 + Log: integrate changes#6005..6010 from mainline, cfgperl + + perldoc might fail via "use blib" (from Hugo van der Sanden) + + Regen Configure. + + note about compile failures and END blocks (from M.J.T. Guy) + + VMS config tweak (from Craig A. Berry ) + + (change#6009 integrated earlier in change#7255) + + clarify note about shadow password support (from + gellyfish@gellyfish.com) + Branch: maint-5.6/perl + !> Configure Porting/Glossary Porting/config.sh Porting/config_H + !> config_h.SH installperl pod/perldelta.pod pod/perlfunc.pod + !> pod/perlmod.pod utils/perldoc.PL vms/subconfigure.com + ____________________________________________________________________________ + [ 7291] By: gsar on 2000/10/16 04:12:03 + Log: integrate changes#6002,6003 from mainline + + destructive sv_setsv() can lose UV-ness from source, causing + numeric promotions/comparisons to fail to do the right thing + + allow REG_EXPAND_SZ keys in Windows registry (from + John Clayton ) + Branch: maint-5.6/perl + !> sv.c win32/win32.c + ____________________________________________________________________________ + [ 7290] By: gsar on 2000/10/16 04:10:19 + Log: integrate change#6001 from mainline + + support additional library locations via $Config{otherlibdirs} + (from Andy Dougherty) + Branch: maint-5.6/perl + !> Configure INSTALL Porting/Glossary Porting/config.sh + !> Porting/config_H config_h.SH epoc/config.sh perl.c + !> vms/subconfigure.com vos/config.def vos/config_h.SH_orig + !> win32/config.bc win32/config.gc win32/config.vc + ____________________________________________________________________________ + [ 7289] By: gsar on 2000/10/16 04:08:28 + Log: integrate change#5999 from mainline + + fix line renumbering bug in C + Branch: maint-5.6/perl + !> t/pragma/warn/toke toke.c + ____________________________________________________________________________ + [ 7288] By: gsar on 2000/10/16 04:07:01 + Log: integrate changes#5997,5998 from cfgperl + + Preserve $!. + + Try to get "Inf" by using &POSIX::HUGE_VAL in sprintf. + Branch: maint-5.6/perl + !> lib/Math/Complex.pm + ____________________________________________________________________________ + [ 7287] By: gsar on 2000/10/16 04:04:37 + Log: integrate change#5995 from mainline + + fixes for bugs in C (from Paul Marquess) + Branch: maint-5.6/perl + !> mg.c t/pragma/warn/7fatal warnings.h warnings.pl + ____________________________________________________________________________ + [ 7286] By: gsar on 2000/10/16 04:03:21 + Log: integrate change#5994 from mainline + + fix for missed accounting for null byte in pack("Z",...) (from + M.J.T. Guy) + Branch: maint-5.6/perl + !> pp.c t/op/pack.t + ____________________________________________________________________________ + [ 7285] By: gsar on 2000/10/16 04:02:11 + Log: integrate changes#5989..5993 from mainline + + qw(a\\b) must be parsed like 'a\\b', i.e., backslash escapes + itself and no other (from Tom Hughes) + + use $ENV{LIB} to search for libs under Visual C compiler + on Windows (from Jochen Wiedmann ) + + posix-bc patches (from Dorner Thomas ) + + pod nit (from Simon Cozens) + + various minor tweaks seen on p5p + Branch: maint-5.6/perl + !> README.posix-bc hints/posix-bc.sh lib/ExtUtils/Liblist.pm + !> lib/perl5db.pl pod/perlipc.pod pod/perlop.pod pod/perlvar.pod + !> t/op/array.t toke.c + ____________________________________________________________________________ + [ 7284] By: gsar on 2000/10/16 03:59:00 + Log: integrate changes#5978..5988 from mainline + + sync version numbers in File::Spec with the ones on CPAN + (from Barrie Slaymaker) + + under useithreads, constant pad entries could inadvertantly be + shared across threads (from Eric Blood ); + added Eric's test case to testsuite + + allow Configure -S to run non-interactively (spotted by Greg Hudson + ) + + rename File::Glob::glob() to File::Glob::bsd_glob() to avoid + prototype mismatch with CORE::glob(); update pod and tests to + suit (File::Glob::glob() is still available for backward + compatibility, but should be considered deprecated) + + avoid error in IO::Socket::INET when given an unknown service name + with a port number (from Brian Raven ) + + numeric conversion of non-number in change#3378 tramples on + OOK offset, causing segfaults + + attributes::reftype() doesn't work on tied argument + + forked child may not exit correctly if it failed to open + /dev/console (from Graham Barr) + + add regular expressions tutorial and quick-start guide (from + Mark Kvale ) + + B::Bytecode tweaks (from Simon Cozens ) + + s/HTMLSCRIPTPOD/HTMLSCRIPTPODS/ (from Paul Sharpe + ) + Branch: maint-5.6/perl + +> pod/perlrequick.pod pod/perlretut.pod + !> AUTHORS Configure MAINTAIN MANIFEST ext/B/B/Bytecode.pm + !> ext/B/B/Disassembler.pm ext/File/Glob/Glob.pm + !> ext/IO/lib/IO/Socket/INET.pm ext/Sys/Syslog/Syslog.pm + !> lib/ExtUtils/MakeMaker.pm lib/File/Spec/Functions.pm + !> lib/File/Spec/Mac.pm lib/File/Spec/OS2.pm + !> lib/File/Spec/Unix.pm lib/File/Spec/VMS.pm + !> lib/File/Spec/Win32.pm op.c sv.c t/lib/glob-basic.t + !> t/lib/glob-case.t t/lib/glob-taint.t t/op/misc.t xsutils.c + ____________________________________________________________________________ + [ 7283] By: gsar on 2000/10/16 03:52:14 + Log: integrate change#5977 from mainline + + autoquote barewords followed by newline and arrow properly + (variant of fix suggested by Rick Delaney and M.J.T. Guy) + Branch: maint-5.6/perl + !> t/pragma/warn/toke toke.c + ____________________________________________________________________________ + [ 7282] By: gsar on 2000/10/16 03:50:48 + Log: integrate change#5976 from mainline + + DB_File v1.73 update (from Paul Marquess) + Branch: maint-5.6/perl + !> ext/DB_File/Changes ext/DB_File/DB_File.pm + !> ext/DB_File/DB_File.xs ext/DB_File/version.c + ____________________________________________________________________________ + [ 7281] By: gsar on 2000/10/16 03:49:14 + Log: integrate change#5975 from mainline + + allow sort() reentrancy (variant of patch suggested by + Hugo van der Sanden) + Branch: maint-5.6/perl + !> pp_ctl.c t/op/sort.t + ____________________________________________________________________________ + [ 7280] By: gsar on 2000/10/16 03:48:22 + Log: integrate change#5974 from mainline + + change#4197 somehow missed initializing PL_errors, meaning + syntax error queueing wasn't working outside eval"" at all; + also fixed eval"" to localize PL_error_count, so that compile-time + eval's don't clobber the error state of the outer context + Branch: maint-5.6/perl + !> lib/Math/Complex.pm perl.c pp_ctl.c t/pragma/warn/op + !> t/pragma/warn/toke + ____________________________________________________________________________ + [ 7279] By: gsar on 2000/10/16 03:46:21 + Log: integrate change#5973 from mainline + + fix for failure to match $foo =~ /(?i)/ (from Ilya Zakharevich) + Branch: maint-5.6/perl + !> regcomp.c regexec.c t/op/re_tests + ____________________________________________________________________________ + [ 7278] By: gsar on 2000/10/16 03:44:54 + Log: integrate change#5971 from cfgperl + + Unicos tweaks from Mark P. Lutz. + Branch: maint-5.6/perl + !> hints/unicos.sh lib/Math/Complex.pm + ____________________________________________________________________________ + [ 7277] By: gsar on 2000/10/16 03:42:59 + Log: integrate changes#5966..5970 from mainline + + add testsuite for B backends, fix bug in B::Deparse (from + Simon Cozens ) + + improved docs on the warn_uninit diagnostic (from David Glasser + and Simon Cozens) + + tolerate spaces in group names in test on solaris (from David Boyce + ) + + fix Sys::Syslog breakage on domain sockets (from Tom Hughes) + + Data::Dumper fumbles negative numbers on 32-bit platforms where + IV is >32bits + Branch: maint-5.6/perl + +> t/lib/b.t t/lib/syslog.t + !> MANIFEST ext/B/B/Deparse.pm ext/B/B/Stash.pm + !> ext/Data/Dumper/Dumper.xs ext/Sys/Syslog/Syslog.pm + !> pod/perldiag.pod t/lib/dumper.t t/op/groups.t + ____________________________________________________________________________ + [ 7276] By: gsar on 2000/10/16 03:39:30 + Log: integrate change#5965 from mainline + + avoid "will not stay shared" warnings for our variables (from + Robin Barker) + Branch: maint-5.6/perl + !> op.c t/pragma/warn/op + ____________________________________________________________________________ + [ 7275] By: gsar on 2000/10/16 03:38:18 + Log: integrate change#5964 from mainline + + reformat to 72 columns (again) + Branch: maint-5.6/perl + !> pod/perldiag.pod + ____________________________________________________________________________ + [ 7274] By: gsar on 2000/10/16 03:36:58 + Log: integrate change#5963 from mainline + + patch from Larry to make (\&) prototype work; added tests for + the same + Branch: maint-5.6/perl + !> op.c t/comp/proto.t + ____________________________________________________________________________ + [ 7273] By: gsar on 2000/10/16 03:35:51 + Log: integrate changes#5956..5962 from mainline + + better diagnostics on failed tests (from Ilya Zakharevich) + + pod nits (from A. C. Yardley ) + + change#3569 deleted some essential code, revert; avoid use of + atexit() to make DynaLoader work properly on AIX under mod_perl + (from Jens-Uwe Mager ) + + doubled words in pods (from Simon Cozens + ) + + better INSTALL notes on Solaris issues (from Dominic Dunlop) + + recognize our, CHECK and INIT in cperl-mode (from Doug MacEachern) + + updated README.hpux (from Jeff Okamoto) + Branch: maint-5.6/perl + !> INSTALL README.hpux emacs/cperl-mode.el + !> ext/DynaLoader/dl_aix.xs pod/perldebguts.pod pod/perldelta.pod + !> pod/perlfaq5.pod pod/perlfork.pod pod/perlfunc.pod + !> pod/perlipc.pod pod/perllexwarn.pod pod/perllocale.pod + !> pod/perlmod.pod pod/perlmodlib.pod pod/perlnumber.pod + !> pod/perlopentut.pod pod/perltodo.pod pod/perltootc.pod + !> t/op/lex_assign.t + ____________________________________________________________________________ + [ 7272] By: gsar on 2000/10/16 03:31:22 + Log: integrate change#5955 from mainline + + longstanding bug exposed by change#3307: sort arguments weren't + compiled with the right wantarray context (ensuing runtime lookup + via block_gimme() was getting the incidental context of the + sort() itself) + Branch: maint-5.6/perl + !> op.c t/op/sort.t + ____________________________________________________________________________ + [ 7271] By: gsar on 2000/10/16 03:29:11 + Log: integrate changes#5933,5935,5940..5944,5946,5951,5952 from cfgperl + branch + + Flatten the cpp jungle doing the nosuid checking. + + Do not assume sign propagation. (from M.J.T. Guy) + + Various Unicos 10.0.0.6 fixes. (from Mark Lutz) + + Add HAS_FREXPL, HAS_ISNAN, HAS_ISNANL, and HAS_MODFL. + Now pp_ncmp() returns undef is either operand is a NaN. + + On second thoughts frexp() does have two arguments. + + Document that tr() is not tr(1). + + Be more robust on "extreme" (large absolute value) + arguments. Originally reported by Daniel Connelly + as a problem with asinh() on large negative arguments, + asinh() used to bail out because an argument to log() + ended up being zero. Ilya Zakharevich proposed using + Taylor's series in such cases, which for such large + arguments is a very good approximation. + + Undo "use integer" addition from 64bitint as it seems + to break most of the subtests in Digital UNIX; + Unicos needs to find another way. + Branch: maint-5.6/perl + !> (integrate 29 files) + ____________________________________________________________________________ + [ 7270] By: gsar on 2000/10/16 03:09:44 + Log: integrate changes#5948,5949,5950 from mainline + + typo in vars.pm that leads to cryptic message (from Piotr + Piatkowski ) + + make perldoc use the pod2man from the same version (from + M.J.T. Guy) + + reformat perldiag to avoid long lines + Branch: maint-5.6/perl + !> lib/vars.pm pod/perldiag.pod utils/perldoc.PL + ____________________________________________________________________________ + [ 7269] By: gsar on 2000/10/16 03:05:54 + Log: integrate change#5947 from mainline + + use &dl_error rather than &dl_load_file as the guard for calling + boot_DynaLoader() (meant to fix dl_error() redefined warnings in + statically built perl) + Branch: maint-5.6/perl + !> ext/DynaLoader/DynaLoader_pm.PL ext/DynaLoader/XSLoader_pm.PL + ____________________________________________________________________________ + [ 7268] By: gsar on 2000/10/16 03:04:48 + Log: integrate change#5945 from mainline + + make module name mandatory after -M switch; reorder perldiag + alphabetically (from Mark-Jason Dominus) + Branch: maint-5.6/perl + !> perl.c pod/perldiag.pod + ____________________________________________________________________________ + [ 7267] By: gsar on 2000/10/16 03:03:01 + Log: integrate change#5939 from mainline + + more pod nits (from Larry Virden) + Branch: maint-5.6/perl + !> README.win32 pod/perlsub.pod pod/perlsyn.pod + !> pod/perlthrtut.pod pod/perltoc.pod pod/perltodo.pod + !> pod/perlxs.pod pod/perlxstut.pod vms/perlvms.pod + ____________________________________________________________________________ + [ 7266] By: gsar on 2000/10/16 03:01:39 + Log: integrate change#5938 from mainline + + Consolidated B::Deparse fixes (from Stephen McCamant) + Branch: maint-5.6/perl + !> ext/B/B/Deparse.pm + ____________________________________________________________________________ + [ 7265] By: gsar on 2000/10/16 03:00:43 + Log: integrate change#5936 from mainline + + additional tests for change#7263 (from Paul Marquess) + Branch: maint-5.6/perl + !> t/pragma/warn/2use t/pragma/warn/3both t/pragma/warn/4lint + !> t/pragma/warn/5nolint t/pragma/warn/6default + ____________________________________________________________________________ + [ 7264] By: gsar on 2000/10/16 02:58:34 + Log: integrate change#5934 from mainline + + propagate lexical warnings from surrounding scope correctly + within string eval() (from Paul Marquess) + Branch: maint-5.6/perl + !> pp_ctl.c t/pragma/warn/pp_ctl + ____________________________________________________________________________ + [ 7263] By: gsar on 2000/10/16 02:56:53 + Log: integrate change#5932 from mainline + + add rsignal(), whichsig() and do_join() to public API list + (mod_perl uses them to good advantage) + Branch: maint-5.6/perl + !> embed.pl global.sym objXSUB.h perlapi.c proto.h + ____________________________________________________________________________ + [ 7262] By: gsar on 2000/10/16 02:55:53 + Log: integrate change#5931 from mainline + + fix RE brokenness on refs/overloaded things (from Ilya Zakharevich) + Branch: maint-5.6/perl + !> pp_hot.c regexec.c t/op/pat.t + ____________________________________________________________________________ + [ 7261] By: gsar on 2000/10/16 02:55:01 + Log: integrate change#5930 from mainline + + small os390 tweaks (from Peter Prymmer) + Branch: maint-5.6/perl + !> config_h.SH makedepend.SH + ____________________________________________________________________________ + [ 7260] By: gsar on 2000/10/16 02:54:10 + Log: integrate change#5929 from mainline + + pod nits + Branch: maint-5.6/perl + !> pod/perlguts.pod + ____________________________________________________________________________ + [ 7259] By: gsar on 2000/10/16 02:52:55 + Log: integrate change#5927 from mainline + + arrange for next() to resume at the unstack op rather than the + loop conditional, so that scope cleanup happens correctly + (from Stephen McCamant) + Branch: maint-5.6/perl + !> op.c pp_ctl.c t/op/misc.t + ____________________________________________________________________________ + [ 7258] By: gsar on 2000/10/16 02:51:38 + Log: integrate change#5926 from mainline + + on windows, reserve 16M of stack rather than 128M (allows more + threads to run concurrently) + Branch: maint-5.6/perl + !> win32/Makefile win32/makefile.mk + ____________________________________________________________________________ + [ 7257] By: gsar on 2000/10/16 02:50:37 + Log: integrate change#5925 from mainline + + POSIX-BC tweak (from Ignasi Roca ) + Branch: maint-5.6/perl + !> toke.c + ____________________________________________________________________________ + [ 7256] By: gsar on 2000/10/16 02:49:36 + Log: integrate change#5924 from mainline + + avoid using uninitialized memory in require version check + Branch: maint-5.6/perl + !> pp_ctl.c universal.c + ____________________________________________________________________________ + [ 7255] By: gsar on 2000/10/16 02:48:03 + Log: integrate changes#5923,5928,6009 from mainline + + IO::Poll bugs fixed (from Lincoln Stein ) + Branch: maint-5.6/perl + !> ext/IO/lib/IO/Poll.pm t/lib/io_poll.t + ____________________________________________________________________________ + [ 7254] By: gsar on 2000/10/16 02:44:46 + Log: integrate change#5922 from mainline + + commentary about IoTYPE() (from Nathan Torkington) + Branch: maint-5.6/perl + !> sv.h + ____________________________________________________________________________ + [ 7253] By: gsar on 2000/10/16 02:43:49 + Log: integrate change#5921 from mainline + + make eq unicode-aware (from Gisle Aas); fix bogus tests revealed + Branch: maint-5.6/perl + !> sv.c t/lib/charnames.t t/pragma/utf8.t + ____________________________________________________________________________ + [ 7252] By: gsar on 2000/10/16 02:42:31 + Log: integrate change#5920 from mainline + + Larry's fix for buggy propagation of utf8-ness in join(); add test + Branch: maint-5.6/perl + !> doop.c t/op/ver.t + ____________________________________________________________________________ + [ 7251] By: gsar on 2000/10/16 02:41:14 + Log: integrate changes#5915..5919 from mainline + + various (pod tweaks &c) + Branch: maint-5.6/perl + !> (integrate 33 files) + ____________________________________________________________________________ + [ 7250] By: gsar on 2000/10/16 02:38:16 + Log: integrate change#5914 from mainline + + caller() wasn't returning the right number of elements for + eval {...} + Branch: maint-5.6/perl + !> pp_ctl.c t/pragma/warn/9enabled + ____________________________________________________________________________ + [ 7249] By: gsar on 2000/10/16 02:37:02 + Log: integrate change#5913 from mainline + + pod nit: $yday range for localtime/gmtime is 0..364 not 1..365 + (from Mark-Jason Dominus) + Branch: maint-5.6/perl + !> pod/perlfunc.pod + ____________________________________________________________________________ + [ 7248] By: gsar on 2000/10/16 02:35:58 + Log: integrate change#5912 from mainline + + fix totally broken caching in UNIVERSAL::isa() (from + Nick Ing-Simmons) + Branch: maint-5.6/perl + !> t/op/universal.t universal.c + ____________________________________________________________________________ + [ 7247] By: gsar on 2000/10/16 02:34:27 + Log: integrate changes#5910,5911 from mainline + + typo in pod + + add linebreak properties from unicode/LineBrk.txt (from + Dave Hartnoll ) + Branch: maint-5.6/perl + +> (branch 29 files) + !> ext/Thread/Thread.pm lib/unicode/mktables.PL + ____________________________________________________________________________ + [ 7246] By: gsar on 2000/10/16 02:33:29 + Log: integrate change#5909 from mainline + + mode argument to do_binmode() should be file mode, not boolean + Branch: maint-5.6/perl + !> pp_sys.c + ____________________________________________________________________________ + [ 7245] By: gsar on 2000/10/16 02:31:04 + Log: integrate change#5908 from mainline + + introduce illegal symbols into null package so that + gv_fetchpv(...,TRUE) always returns a valid GV even when the + symbol is trapped by strictures (avoids coredumps) + Branch: maint-5.6/perl + !> embedvar.h gv.c intrpvar.h perl.c perlapi.h + !> t/pragma/strict-vars + ____________________________________________________________________________ + [ 7242] By: gsar on 2000/10/16 02:26:51 + Log: integrate changes#5905,5906,5907,6064 from mainline + + printf/sprintf didn't get quad types right under use64bitint + Branch: maint-5.6/perl + !> pp_sys.c sv.c t/op/64bitint.t + ____________________________________________________________________________ + [ 5902] By: gsar on 2000/03/28 01:59:14 + Log: create maint-5.6 branch + Branch: maint-5.6/perl + +> (branch 1611 files) + ____________________________________________________________________________ + [ 5900] By: gsar on 2000/03/23 05:42:43 + Log: three guesses on what this is :-) + Branch: perl + ! Changes -------------- Version v5.6.0 *************** *** 664,670 **** ____________________________________________________________________________ [ 5802] By: jhi on 2000/03/18 17:11:07 Log: Configure nits: rewording from Sarathy (aka #5796), ! and installation directories patch from Robin Parker. Branch: cfgperl ! Configure Porting/Glossary Porting/config.sh Porting/config_H ! config_h.SH vos/config.h vos/config_h.SH_orig --- 7913,7919 ---- ____________________________________________________________________________ [ 5802] By: jhi on 2000/03/18 17:11:07 Log: Configure nits: rewording from Sarathy (aka #5796), ! and installation directories patch from Robin Barker. Branch: cfgperl ! Configure Porting/Glossary Porting/config.sh Porting/config_H ! config_h.SH vos/config.h vos/config_h.SH_orig *************** *** 2841,2847 **** ____________________________________________________________________________ [ 5440] By: jhi on 2000/03/02 17:48:15 Log: Confusion over uselargefiles.cbu and uselfs.cbu (the first one ! is the correct one), spotted by Robin Parker. Branch: cfgperl ! Configure config_h.SH hints/aix.sh hints/hpux.sh Branch: metaconfig/U/perl --- 10090,10096 ---- ____________________________________________________________________________ [ 5440] By: jhi on 2000/03/02 17:48:15 Log: Confusion over uselargefiles.cbu and uselfs.cbu (the first one ! is the correct one), spotted by Robin Barker. Branch: cfgperl ! Configure config_h.SH hints/aix.sh hints/hpux.sh Branch: metaconfig/U/perl *************** *** 12365,12371 **** ____________________________________________________________________________ [ 4045] By: jhi on 1999/08/29 15:18:38 Log: Fix scalar gmtime (and localtime) in quad environments, ! bug reported by Robin Parker. From: Robin Barker To: jhi@iki.fi --- 19614,19620 ---- ____________________________________________________________________________ [ 4045] By: jhi on 1999/08/29 15:18:38 Log: Fix scalar gmtime (and localtime) in quad environments, ! bug reported by Robin Barker. From: Robin Barker To: jhi@iki.fi *************** *** 13319,13325 **** [ 3914] By: jhi on 1999/08/03 21:11:11 Log: The op/filetest.t failed subtest 7 if testing as root. ! From: =?iso-8859-1?Q?Fran=E7ois=20D=E9sarm=E9nien?= To: perl5-porters@perl.org Subject: [ID 19990727.039] Not OK: perl 5.00558 on i386-sco 3.2v5.0.4 Date: Tue, 27 Jul 1999 22:54:05 +0200 --- 20568,20574 ---- [ 3914] By: jhi on 1999/08/03 21:11:11 Log: The op/filetest.t failed subtest 7 if testing as root. ! From: François Désarménien To: perl5-porters@perl.org Subject: [ID 19990727.039] Not OK: perl 5.00558 on i386-sco 3.2v5.0.4 Date: Tue, 27 Jul 1999 22:54:05 +0200 Index: Changes5.004 ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/Changes5.004 Tue Jul 20 10:17:50 1999 --- perl-5.6.1/Changes5.004 Thu Feb 22 18:57:52 2001 *************** *** 8031,8037 **** From: Chip Salzenberg Files: pp_hot.c ! Title: "Fix grep() with refs in array context" From: Chip Salzenberg Files: pp.c --- 8031,8037 ---- From: Chip Salzenberg Files: pp_hot.c ! Title: "Fix grep() with refs in list context" From: Chip Salzenberg Files: pp.c Index: Configure Prereq: 3.0.1.9 ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/Configure Wed Mar 22 12:36:37 2000 --- perl-5.6.1/Configure Sun Mar 18 19:03:33 2001 *************** *** 20,29 **** # $Id: Head.U,v 3.0.1.9 1997/02/28 15:02:09 ram Exp $ # ! # Generated on Wed Mar 22 19:13:31 EET 2000 [metaconfig 3.0 PL70] ! # (with additional metaconfig patches by perlbug@perl.com) ! cat >/tmp/c1$$ <c1$$ </tmp/c2$$ <c2$$ <&4 --- 1618,1624 ---- You have the option of continuing the configuration process, despite the distinct possibility that your kit is damaged, by typing 'y'es. If you do, don't blame me if something goes wrong. I advise you to type 'n'o ! and contact the author (perlbug@perl.org). EOM echo $n "Continue? [n] $c" >&4 *************** *** 1737,1742 **** --- 1781,1823 ---- You may safely delete it if you wish. EOF + xversion=`awk '/define[ ]+PERL_VERSION/ {print $3}' $rsrc/patchlevel.h` + case "$usedevel" in + $define|true|[yY]*) ;; + *) case "$xversion" in + *[13579]) + cat >&4 <&4 "Okay, continuing." ;; + *) echo >&4 "Okay, bye." + exit 1 + ;; + esac + ;; + esac + ;; + esac + : general instructions needman=true firsttime=true *************** *** 1799,1805 **** Unix system. If despite that it blows up on yours, your best bet is to edit Configure and run it again. If you can't run Configure for some reason, you'll have to generate a config.sh file by hand. Whatever problems you ! have, let me (perlbug@perl.com) know how I blew it. This installation script affects things in two ways: --- 1880,1886 ---- Unix system. If despite that it blows up on yours, your best bet is to edit Configure and run it again. If you can't run Configure for some reason, you'll have to generate a config.sh file by hand. Whatever problems you ! have, let me (perlbug@perl.org) know how I blew it. This installation script affects things in two ways: *************** *** 1885,1890 **** --- 1966,1972 ---- trylist=" Mcc ar + bison byacc cpp csh *************** *** 1984,1989 **** --- 2066,2072 ---- *) if `sh -c "PATH= test true" >/dev/null 2>&1`; then echo "Using the test built into your sh." + echo "Using the test built into your sh." test=test _test=test fi *************** *** 2020,2025 **** --- 2103,2168 ---- ;; esac + cat <checkcc + $startsh + EOS + cat <<'EOSC' >>checkcc + case "$cc" in + '') ;; + *) $rm -f try try.* + $cat >try.c <&4 + despair=yes + trygcc=yes + case "$cc" in + *gcc*) trygcc=no ;; + esac + case "`$cc -v -c try.c 2>&1`" in + *gcc*) trygcc=no ;; + esac + if $test X"$trygcc" = Xyes; then + if gcc -o try -c try.c; then + echo " " + echo "You seem to have a working gcc, though." >&4 + rp="Would you like to use it?" + dflt=y + if $test -f myread; then + . ./myread + else + if $test -f UU/myread; then + . ./UU/myread + else + echo "Cannot find myread, sorry. Aborting." >&2 + exit 1 + fi + fi + case "$ans" in + [yY]*) cc=gcc; ccname=gcc; ccflags=''; despair=no ;; + esac + fi + fi + if $test X"$despair" = Xyes; then + $cat >&4 <&4 + $lns blurfl sym + if $test "X$issymlink" = X; then + sh -c "PATH= test -h sym" >/dev/null 2>&1 + if test $? = 0; then + issymlink="test -h" + fi + fi + if $test "X$issymlink" = X; then + if $test -h >/dev/null 2>&1; then + issymlink="$test -h" + echo "Your builtin 'test -h' may be broken, I'm using external '$test -h'." >&4 + fi + fi + if $test "X$issymlink" = X; then + if $test -L sym 2>/dev/null; then + issymlink="$test -L" + fi + fi + if $test "X$issymlink" != X; then + echo "You can test for symbolic links with '$issymlink'." >&4 + else + echo "I do not know how you can test for symbolic links." >&4 + fi + $rm -f blurfl sym + ;; + *) echo "No symbolic links, so not testing for their testing..." >&4 + ;; + esac + echo " " + + + case "$mksymlinks" in + $define|true|[yY]*) + case "$src" in + ''|'.') echo "Cannot create symlinks in the original directory." >&4 + exit 1 + ;; + *) case "$lns:$issymlink" in + *"ln -s:"*"test -"?) + echo "Creating the symbolic links..." >&4 + echo "(First creating the subdirectories...)" >&4 + cd .. + awk '{print $1}' $src/MANIFEST | grep / | sed 's:/[^/]*$::' | sort -u | while true; do + read directory + test -z "$directory" && break + mkdir -p $directory + done + # Sanity check 1. + if test ! -d t/base; then + echo "Failed to create the subdirectories. Aborting." >&4 + exit 1 + fi + echo "(Then creating the symlinks...)" >&4 + awk '{print $1}' $src/MANIFEST | while true; do + read filename + test -z "$filename" && break + if test -f $filename; then + if $issymlink $filename; then + rm -f $filename + fi + fi + if test -f $filename; then + echo "$filename already exists, not symlinking." + else + ln -s $src/$filename $filename + fi + done + # Sanity check 2. + if test ! -f t/base/cond.t; then + echo "Failed to create the symlinks. Aborting." >&4 + exit 1 + fi + cd UU + ;; + *) echo "(I cannot figure out how to do symbolic links, ignoring mksymlinks)." >&4 + ;; + esac + ;; + esac + ;; + esac + : see whether [:lower:] and [:upper:] are supported character classes echo " " case "`echo AbyZ | $tr '[:lower:]' '[:upper:]' 2>/dev/null`" in *************** *** 2134,2140 **** rp="I see a config.sh file. Shall I use it to set the defaults?" . UU/myread case "$ans" in ! n*|N*) echo "OK, I'll ignore it."; mv config.sh config.sh.old;; *) echo "Fetching default answers from your old config.sh file..." >&4 tmp_n="$n" tmp_c="$c" --- 2364,2373 ---- rp="I see a config.sh file. Shall I use it to set the defaults?" . UU/myread case "$ans" in ! n*|N*) echo "OK, I'll ignore it." ! mv config.sh config.sh.old ! myuname="$newmyuname" ! ;; *) echo "Fetching default answers from your old config.sh file..." >&4 tmp_n="$n" tmp_c="$c" *************** *** 2152,2157 **** --- 2385,2391 ---- ;; esac fi + . ./UU/checkcc if test ! -f config.sh; then $cat <&4 dflt='' : Half the following guesses are probably wrong... If you have better ! : tests or hints, please send them to perlbug@perl.com : The metaconfig authors would also appreciate a copy... $test -f /irix && osname=irix $test -f /xenix && osname=sco_xenix --- 2396,2402 ---- (cd $src/hints; ls -C *.sh) | $sed 's/\.sh/ /g' >&4 dflt='' : Half the following guesses are probably wrong... If you have better ! : tests or hints, please send them to perlbug@perl.org : The metaconfig authors would also appreciate a copy... $test -f /irix && osname=irix $test -f /xenix && osname=sco_xenix *************** *** 2298,2303 **** --- 2532,2538 ---- esac ;; next*) osname=next ;; + nonstop-ux) osname=nonstopux ;; POSIX-BC | posix-bc ) osname=posix-bc osvers="$3" ;; *************** *** 2539,2545 **** ;; esac test "$override" && . ./optdef.sh - myuname="$newmyuname" : Restore computed paths for file in $loclist $trylist; do --- 2774,2779 ---- *************** *** 2700,2705 **** --- 2934,2952 ---- ;; esac + case "$useithreads$use5005threads" in + "$define$define") + $cat >&4 <&4 - else - echo "Could not find manual pages in source form." >&4 - fi - - : see what memory models we can support - case "$models" in - '') - $cat >pdp11.c <<'EOP' - int main() { - #ifdef pdp11 - exit(0); - #else - exit(1); - #endif - } - EOP - ( cc -o pdp11 pdp11.c ) >/dev/null 2>&1 - if $test -f pdp11 && ./pdp11 2>/dev/null; then - dflt='unsplit split' - else - tans=`./loc . X /lib/small /lib/large /usr/lib/small /usr/lib/large /lib/medium /usr/lib/medium /lib/huge` - case "$tans" in - X) dflt='none';; - *) if $test -d /lib/small || $test -d /usr/lib/small; then - dflt='small' - else - dflt='' - fi - if $test -d /lib/medium || $test -d /usr/lib/medium; then - dflt="$dflt medium" - fi - if $test -d /lib/large || $test -d /usr/lib/large; then - dflt="$dflt large" - fi - if $test -d /lib/huge || $test -d /usr/lib/huge; then - dflt="$dflt huge" - fi - esac - fi;; - *) dflt="$models";; - esac - $cat </dev/null 2>&1 || \ - $contains '\-i' $sysman/cc.1 >/dev/null 2>&1; then - dflt='-i' - else - dflt='none' - fi;; - *) dflt="$split";; - esac - rp="What flag indicates separate I and D space?" - . ./myread - tans="$ans" - case "$tans" in - none) tans='';; - esac - split="$tans" - unsplit='';; - *large*|*small*|*medium*|*huge*) - case "$models" in - *large*) - case "$large" in - '') dflt='-Ml';; - *) dflt="$large";; - esac - rp="What flag indicates large model?" - . ./myread - tans="$ans" - case "$tans" in - none) tans=''; - esac - large="$tans";; - *) large='';; - esac - case "$models" in - *huge*) case "$huge" in - '') dflt='-Mh';; - *) dflt="$huge";; - esac - rp="What flag indicates huge model?" - . ./myread - tans="$ans" - case "$tans" in - none) tans=''; - esac - huge="$tans";; - *) huge="$large";; - esac - case "$models" in - *medium*) case "$medium" in - '') dflt='-Mm';; - *) dflt="$medium";; - esac - rp="What flag indicates medium model?" - . ./myread - tans="$ans" - case "$tans" in - none) tans=''; - esac - medium="$tans";; - *) medium="$large";; - esac - case "$models" in - *small*) case "$small" in - '') dflt='none';; - *) dflt="$small";; - esac - rp="What flag indicates small model?" - . ./myread - tans="$ans" - case "$tans" in - none) tans=''; - esac - small="$tans";; - *) small='';; - esac - ;; - *) - echo "Unrecognized memory models--you may have to edit Makefile.SH" >&4 - ;; - esac - $rm -f pdp11.* pdp11 - : make some quick guesses about what we are up against echo " " $echo $n "Hmm... $c" --- 3003,3008 ---- *************** *** 2937,2943 **** then echo "Looks kind of like an OSF/1 system, but we'll see..." echo exit 0 >osf1 ! elif test `echo abc | tr a-z A-Z` = Abc ; then xxx=`./loc addbib blurfl $pth` if $test -f $xxx; then echo "Looks kind of like a USG system with BSD features, but we'll see..." --- 3020,3026 ---- then echo "Looks kind of like an OSF/1 system, but we'll see..." echo exit 0 >osf1 ! elif test `echo abc | $tr a-z A-Z` = Abc ; then xxx=`./loc addbib blurfl $pth` if $test -f $xxx; then echo "Looks kind of like a USG system with BSD features, but we'll see..." *************** *** 2976,2987 **** --- 3059,3073 ---- ;; esac : Detect OS2. The p_ variable is set above in the Head.U unit. + : Note that this also -- wrongly -- detects e.g. dos-djgpp, which also uses + : semicolon as a patch separator case "$p_" in :) ;; *) $cat <<'EOI' I have the feeling something is not exactly right, however...don't tell me... lemme think...does HAL ring a bell?...no, of course, you're only running OS/2! + (Or you may be running DOS with DJGPP.) EOI echo exit 0 >os2 ;; *************** *** 3012,3068 **** $eunicefix bsd usg v7 osf1 eunice xenix venix os2 $rm -f foo ! : see if we need a special compiler ! echo " " ! if ./usg; then ! case "$cc" in ! '') case "$Mcc" in ! /*) dflt='Mcc';; ! *) case "$large" in ! -M*) dflt='cc';; ! *) if $contains '\-M' $sysman/cc.1 >/dev/null 2>&1 ; then ! if $contains '\-M' $sysman/cpp.1 >/dev/null 2>&1; then ! dflt='cc' ! else ! dflt='cc -M' ! fi ! else ! dflt='cc' ! fi;; ! esac;; ! esac;; ! *) dflt="$cc";; ! esac ! case "$dflt" in ! *M*) $cat <<'EOM' ! On some older systems the default C compiler will not resolve multiple global ! references that happen to have the same name. On some such systems the "Mcc" ! command may be used to force these to be resolved. On other systems a "cc -M" ! command is required. (Note that the -M flag on other systems indicates a ! memory model to use!) If you have the Gnu C compiler, you might wish to use ! that instead. ! ! EOM ! ;; ! esac ! rp="Use which C compiler?" ! . ./myread ! cc="$ans" ! else ! case "$cc" in ! '') dflt=cc;; ! *) dflt="$cc";; ! esac ! rp="Use which C compiler?" ! . ./myread ! cc="$ans" ! fi : Look for a hint-file generated 'call-back-unit'. Now that the : user has specified the compiler, we may need to set or change some : other defaults. if $test -f cc.cbu; then . ./cc.cbu fi echo " " echo "Checking for GNU cc in disguise and/or its version number..." >&4 $cat >gccvers.c <&4 $cat >gccvers.c <filexp <&2 ! exit 1 ! fi ! case "\$1" in ! */*) ! echo \$dir/\`$expr x\$1 : '..[^/]*/\(.*\)'\` ! ;; ! *) ! echo \$dir ! ;; ! esac fi ! ;; ! *) ! echo \$1 ! ;; ! esac ! EOSS ! chmod +x filexp ! $eunicefix filexp ! : now set up to get a file name ! cat <getfile ! $startsh ! EOS ! cat <<'EOSC' >>getfile ! tilde='' ! fullpath='' ! already='' ! skip='' ! none_ok='' ! exp_file='' ! nopath_ok='' ! orig_rp="$rp" ! orig_dflt="$dflt" case "$gfpth" in '') gfpth='.' ;; esac case "$fn" in *\(*) ! expr $fn : '.*(\(.*\)).*' | tr ',' $trnl >getfile.ok fn=`echo $fn | sed 's/(.*)//'` ;; esac --- 3151,3406 ---- case "$gccversion" in 1*) cpp=`./loc gcc-cpp $cpp $pth` ;; esac + case "$gccversion" in + '') gccosandvers='' ;; + *) gccshortvers=`echo "$gccversion"|sed 's/ .*//'` + gccosandvers=`$cc -v 2>&1|grep '/specs$'|sed "s!.*/[^-/]*-[^-/]*-\([^-/]*\)/$gccshortvers/specs!\1!"` + gccshortvers='' + case "$gccosandvers" in + $osname) gccosandvers='' ;; # linux gccs seem to have no linux osvers, grr + $osname$osvers) ;; # looking good + $osname*) cat <&4 + + *** WHOA THERE!!! *** + + Your gcc has not been compiled for the exact release of + your operating system ($gccosandvers versus $osname$osvers). + + In general it is a good idea to keep gcc synchronized with + the operating system because otherwise serious problems + may ensue when trying to compile software, like Perl. + + I'm trying to be optimistic here, though, and will continue. + If later during the configuration and build icky compilation + problems appear (headerfile conflicts being the most common + manifestation), I suggest reinstalling the gcc to match + your operating system release. ! EOM ! ;; ! *) gccosandvers='' ;; # failed to parse, better be silent ! esac ! ;; ! esac ! case "$ccname" in ! '') ccname="$cc" ;; esac ! : see how we invoke the C preprocessor ! echo " " ! echo "Now, how can we feed standard input to your C preprocessor..." >&4 ! cat <<'EOT' >testcpp.c ! #define ABC abc ! #define XYZ xyz ! ABC.XYZ ! EOT ! cd .. ! if test ! -f cppstdin; then ! if test "X$osname" = "Xaix" -a "X$gccversion" = X; then ! # AIX cc -E doesn't show the absolute headerfile ! # locations but we'll cheat by using the -M flag. ! echo 'cat >.$$.c; rm -f .$$.u; '"$cc"' ${1+"$@"} -M -c .$$.c 2>/dev/null; test -s .$$.u && awk '"'"'$2 ~ /\.h$/ { print "# 0 \""$2"\"" }'"'"' .$$.u; rm -f .$$.o .$$.u; '"$cc"' -E ${1+"$@"} .$$.c; rm .$$.c' > cppstdin else ! echo 'cat >.$$.c; '"$cc"' -E ${1+"$@"} .$$.c; rm .$$.c' >cppstdin fi ! else ! echo "Keeping your $hint cppstdin wrapper." ! fi ! chmod 755 cppstdin ! wrapper=`pwd`/cppstdin ! ok='false' ! cd UU ! if $test "X$cppstdin" != "X" && \ ! $cppstdin $cppminus testcpp.out 2>&1 && \ ! $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ! then ! echo "You used to use $cppstdin $cppminus so we'll use that again." ! case "$cpprun" in ! '') echo "But let's see if we can live without a wrapper..." ;; ! *) ! if $cpprun $cpplast testcpp.out 2>&1 && \ ! $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ! then ! echo "(And we'll use $cpprun $cpplast to preprocess directly.)" ! ok='true' ! else ! echo "(However, $cpprun $cpplast does not work, let's see...)" ! fi ! ;; ! esac ! else ! case "$cppstdin" in ! '') ;; ! *) ! echo "Good old $cppstdin $cppminus does not seem to be of any help..." ! ;; ! esac ! fi ! ! if $ok; then ! : nothing ! elif echo 'Maybe "'"$cc"' -E" will work...'; \ ! $cc -E testcpp.out 2>&1; \ ! $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then ! echo "Yup, it does." ! x_cpp="$cc -E" ! x_minus=''; ! elif echo 'Nope...maybe "'"$cc"' -E -" will work...'; \ ! $cc -E - testcpp.out 2>&1; \ ! $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then ! echo "Yup, it does." ! x_cpp="$cc -E" ! x_minus='-'; ! elif echo 'Nope...maybe "'"$cc"' -P" will work...'; \ ! $cc -P testcpp.out 2>&1; \ ! $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then ! echo "Yipee, that works!" ! x_cpp="$cc -P" ! x_minus=''; ! elif echo 'Nope...maybe "'"$cc"' -P -" will work...'; \ ! $cc -P - testcpp.out 2>&1; \ ! $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then ! echo "At long last!" ! x_cpp="$cc -P" ! x_minus='-'; ! elif echo 'No such luck, maybe "'$cpp'" will work...'; \ ! $cpp testcpp.out 2>&1; \ ! $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then ! echo "It works!" ! x_cpp="$cpp" ! x_minus=''; ! elif echo 'Nixed again...maybe "'$cpp' -" will work...'; \ ! $cpp - testcpp.out 2>&1; \ ! $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then ! echo "Hooray, it works! I was beginning to wonder." ! x_cpp="$cpp" ! x_minus='-'; ! elif echo 'Uh-uh. Time to get fancy. Trying a wrapper...'; \ ! $wrapper testcpp.out 2>&1; \ ! $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then ! x_cpp="$wrapper" ! x_minus='' ! echo "Eureka!" ! else ! dflt='' ! rp="No dice. I can't find a C preprocessor. Name one:" ! . ./myread ! x_cpp="$ans" ! x_minus='' ! $x_cpp testcpp.out 2>&1 ! if $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then ! echo "OK, that will do." >&4 ! else ! echo "Sorry, I can't get that to work. Go find one and rerun Configure." >&4 ! exit 1 ! fi ! fi ! ! case "$ok" in ! false) ! cppstdin="$x_cpp" ! cppminus="$x_minus" ! cpprun="$x_cpp" ! cpplast="$x_minus" ! set X $x_cpp ! shift ! case "$1" in ! "$cpp") ! echo "Perhaps can we force $cc -E using a wrapper..." ! if $wrapper testcpp.out 2>&1; \ ! $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ! then ! echo "Yup, we can." ! cppstdin="$wrapper" ! cppminus=''; ! else ! echo "Nope, we'll have to live without it..." ! fi ! ;; ! esac ! case "$cpprun" in ! "$wrapper") ! cpprun='' ! cpplast='' ! ;; ! esac ! ;; ! esac ! ! case "$cppstdin" in ! "$wrapper"|'cppstdin') ;; ! *) $rm -f $wrapper;; ! esac ! $rm -f testcpp.c testcpp.out ! ! : decide how portable to be. Allow command line overrides. ! case "$d_portable" in ! "$undef") ;; ! *) d_portable="$define" ;; ! esac ! ! : set up shell script to do ~ expansion ! cat >filexp <&2 ! exit 1 ! fi ! case "\$1" in ! */*) ! echo \$dir/\`$expr x\$1 : '..[^/]*/\(.*\)'\` ! ;; ! *) ! echo \$dir ! ;; ! esac ! fi ! ;; ! *) ! echo \$1 ! ;; ! esac ! EOSS ! chmod +x filexp ! $eunicefix filexp ! ! : now set up to get a file name ! cat <getfile ! $startsh ! EOS ! cat <<'EOSC' >>getfile ! tilde='' ! fullpath='' ! already='' ! skip='' ! none_ok='' ! exp_file='' ! nopath_ok='' ! orig_rp="$rp" ! orig_dflt="$dflt" case "$gfpth" in '') gfpth='.' ;; esac case "$fn" in *\(*) ! expr $fn : '.*(\(.*\)).*' | $tr ',' $trnl >getfile.ok fn=`echo $fn | sed 's/(.*)//'` ;; esac *************** *** 3266,3271 **** --- 3499,3505 ---- true) case "$ansexp" in /*) value="$ansexp" ;; + [a-zA-Z]:/*) value="$ansexp" ;; *) redo=true case "$already" in *************** *** 3393,3399 **** /bsd43 #endif EOCP ! if $cc -E usr.c > usr.out && $contains / usr.out >/dev/null 2>&1; then dflt='/bsd43/usr/include' incpath='/bsd43' mips_type='BSD 4.3' --- 3627,3633 ---- /bsd43 #endif EOCP ! if cc -E usr.c > usr.out && $contains / usr.out >/dev/null 2>&1; then dflt='/bsd43/usr/include' incpath='/bsd43' mips_type='BSD 4.3' *************** *** 3426,3603 **** ;; esac ! : see how we invoke the C preprocessor ! echo " " ! echo "Now, how can we feed standard input to your C preprocessor..." >&4 ! cat <<'EOT' >testcpp.c ! #define ABC abc ! #define XYZ xyz ! ABC.XYZ ! EOT ! cd .. ! if test ! -f cppstdin; then ! if test "X$osname" = "Xaix" -a "X$gccversion" = X; then ! # AIX cc -E doesn't show the absolute headerfile ! # locations but we'll cheat by using the -M flag. ! echo 'cat >.$$.c; rm -f .$$.u; '"$cc"' ${1+"$@"} -M -c .$$.c 2>/dev/null; test -s .$$.u && awk '"'"'$2 ~ /\.h$/ { print "# 0 \""$2"\"" }'"'"' .$$.u; rm -f .$$.o .$$.u; '"$cc"' -E ${1+"$@"} .$$.c; rm .$$.c' > cppstdin ! else ! echo 'cat >.$$.c; '"$cc"' -E ${1+"$@"} .$$.c; rm .$$.c' >cppstdin ! fi ! else ! echo "Keeping your $hint cppstdin wrapper." ! fi ! chmod 755 cppstdin ! wrapper=`pwd`/cppstdin ! ok='false' ! cd UU ! if $test "X$cppstdin" != "X" && \ ! $cppstdin $cppminus testcpp.out 2>&1 && \ ! $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ! then ! echo "You used to use $cppstdin $cppminus so we'll use that again." ! case "$cpprun" in ! '') echo "But let's see if we can live without a wrapper..." ;; ! *) ! if $cpprun $cpplast testcpp.out 2>&1 && \ ! $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ! then ! echo "(And we'll use $cpprun $cpplast to preprocess directly.)" ! ok='true' ! else ! echo "(However, $cpprun $cpplast does not work, let's see...)" ! fi ! ;; ! esac ! else ! case "$cppstdin" in ! '') ;; ! *) ! echo "Good old $cppstdin $cppminus does not seem to be of any help..." ! ;; ! esac ! fi ! ! if $ok; then ! : nothing ! elif echo 'Maybe "'"$cc"' -E" will work...'; \ ! $cc -E testcpp.out 2>&1; \ ! $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then ! echo "Yup, it does." ! x_cpp="$cc -E" ! x_minus=''; ! elif echo 'Nope...maybe "'"$cc"' -E -" will work...'; \ ! $cc -E - testcpp.out 2>&1; \ ! $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then ! echo "Yup, it does." ! x_cpp="$cc -E" ! x_minus='-'; ! elif echo 'Nope...maybe "'"$cc"' -P" will work...'; \ ! $cc -P testcpp.out 2>&1; \ ! $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then ! echo "Yipee, that works!" ! x_cpp="$cc -P" ! x_minus=''; ! elif echo 'Nope...maybe "'"$cc"' -P -" will work...'; \ ! $cc -P - testcpp.out 2>&1; \ ! $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then ! echo "At long last!" ! x_cpp="$cc -P" ! x_minus='-'; ! elif echo 'No such luck, maybe "'$cpp'" will work...'; \ ! $cpp testcpp.out 2>&1; \ ! $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then ! echo "It works!" ! x_cpp="$cpp" ! x_minus=''; ! elif echo 'Nixed again...maybe "'$cpp' -" will work...'; \ ! $cpp - testcpp.out 2>&1; \ ! $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then ! echo "Hooray, it works! I was beginning to wonder." ! x_cpp="$cpp" ! x_minus='-'; ! elif echo 'Uh-uh. Time to get fancy. Trying a wrapper...'; \ ! $wrapper testcpp.out 2>&1; \ ! $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then ! x_cpp="$wrapper" ! x_minus='' ! echo "Eureka!" ! else ! dflt='' ! rp="No dice. I can't find a C preprocessor. Name one:" ! . ./myread ! x_cpp="$ans" ! x_minus='' ! $x_cpp testcpp.out 2>&1 ! if $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then ! echo "OK, that will do." >&4 ! else ! echo "Sorry, I can't get that to work. Go find one and rerun Configure." >&4 ! exit 1 ! fi ! fi ! ! case "$ok" in ! false) ! cppstdin="$x_cpp" ! cppminus="$x_minus" ! cpprun="$x_cpp" ! cpplast="$x_minus" ! set X $x_cpp ! shift ! case "$1" in ! "$cpp") ! echo "Perhaps can we force $cc -E using a wrapper..." ! if $wrapper testcpp.out 2>&1; \ ! $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ! then ! echo "Yup, we can." ! cppstdin="$wrapper" ! cppminus=''; ! else ! echo "Nope, we'll have to live without it..." ! fi ! ;; ! esac ! case "$cpprun" in ! "$wrapper") ! cpprun='' ! cpplast='' ! ;; ! esac ! ;; ! esac ! ! case "$cppstdin" in ! "$wrapper"|'cppstdin') ;; ! *) $rm -f $wrapper;; ! esac ! $rm -f testcpp.c testcpp.out ! ! : Set private lib path ! case "$plibpth" in ! '') if ./mips; then ! plibpth="$incpath/usr/lib /usr/local/lib /usr/ccs/lib" ! fi;; ! esac ! case "$libpth" in ! ' ') dlist='';; ! '') dlist="$loclibpth $plibpth $glibpth";; ! *) dlist="$libpth";; ! esac ! ! : Now check and see which directories actually exist, avoiding duplicates ! libpth='' ! for xxx in $dlist ! do ! if $test -d $xxx; then ! case " $libpth " in ! *" $xxx "*) ;; ! *) libpth="$libpth $xxx";; ! esac ! fi ! done ! $cat <<'EOM' Some systems have incompatible or broken versions of libraries. Among the directories listed in the question below, please remove any you --- 3660,3689 ---- ;; esac ! : Set private lib path ! case "$plibpth" in ! '') if ./mips; then ! plibpth="$incpath/usr/lib /usr/local/lib /usr/ccs/lib" ! fi;; ! esac ! case "$libpth" in ! ' ') dlist='';; ! '') dlist="$loclibpth $plibpth $glibpth";; ! *) dlist="$libpth";; ! esac ! : Now check and see which directories actually exist, avoiding duplicates ! libpth='' ! for xxx in $dlist ! do ! if $test -d $xxx; then ! case " $libpth " in ! *" $xxx "*) ;; ! *) libpth="$libpth $xxx";; ! esac ! fi ! done ! $cat <<'EOM' Some systems have incompatible or broken versions of libraries. Among the directories listed in the question below, please remove any you *************** *** 3880,3887 **** if $test -d $thisincl; then if $test x$thisincl != x$usrinc; then case "$dflt" in ! *$thisincl*);; ! *) dflt="$dflt -I$thisincl";; esac fi fi --- 3966,3973 ---- if $test -d $thisincl; then if $test x$thisincl != x$usrinc; then case "$dflt" in ! *" -I$thisincl "*);; ! *) dflt="$dflt -I$thisincl ";; esac fi fi *************** *** 3917,3922 **** --- 4003,4009 ---- case "$dflt" in ''|' ') dflt=none;; esac + $cat < int main() { printf("Ok\n"); exit(0); } EOF ! set X $cc $optimize $ccflags -o try $ldflags try.c $libs shift $cat >try.msg <<'EOM' I've tried to compile and run the following simple program: --- 4136,4142 ---- #include int main() { printf("Ok\n"); exit(0); } EOF ! set X $cc -o try $optimize $ccflags $ldflags try.c $libs shift $cat >try.msg <<'EOM' I've tried to compile and run the following simple program: *************** *** 4068,4075 **** EOM dflt=y ! if sh -c "$cc $optimize $ccflags -o try $ldflags try.c $libs" >>try.msg 2>&1; then ! if sh -c './try' >>try.msg 2>&1; then xxx=`./try` case "$xxx" in "Ok") dflt=n ;; --- 4155,4162 ---- EOM dflt=y ! if $sh -c "$cc -o try $optimize $ccflags $ldflags try.c $libs" >>try.msg 2>&1; then ! if $sh -c './try' >>try.msg 2>&1; then xxx=`./try` case "$xxx" in "Ok") dflt=n ;; *************** *** 4180,4191 **** compile=' mc_file=$1; shift; ! $cc $optimize $ccflags $ldflags -o ${mc_file} $* ${mc_file}.c $libs > /dev/null 2>&1;' : define a shorthand compile call for compilations that should be ok. compile_ok=' mc_file=$1; shift; ! $cc $optimize $ccflags $ldflags -o ${mc_file} $* ${mc_file}.c $libs;' : check for lengths of integral types echo " " --- 4267,4278 ---- compile=' mc_file=$1; shift; ! $cc -o ${mc_file} $optimize $ccflags $ldflags $* ${mc_file}.c $libs > /dev/null 2>&1;' : define a shorthand compile call for compilations that should be ok. compile_ok=' mc_file=$1; shift; ! $cc -o ${mc_file} $optimize $ccflags $ldflags $* ${mc_file}.c $libs;' : check for lengths of integral types echo " " *************** *** 4590,6100 **** ;; esac - : determine the architecture name echo " " ! if xxx=`./loc arch blurfl $pth`; $test -f "$xxx"; then ! tarch=`arch`"-$osname" ! elif xxx=`./loc uname blurfl $pth`; $test -f "$xxx" ; then ! if uname -m > tmparch 2>&1 ; then ! tarch=`$sed -e 's/ *$//' -e 's/ /_/g' \ ! -e 's/$/'"-$osname/" tmparch` ! else ! tarch="$osname" ! fi ! $rm -f tmparch else ! tarch="$osname" fi ! case "$myarchname" in ! ''|"$tarch") ;; ! *) ! echo "(Your architecture name used to be $myarchname.)" ! archname='' ! ;; ! esac ! myarchname="$tarch" ! case "$archname" in ! '') dflt="$tarch";; ! *) dflt="$archname";; ! esac ! rp='What is your architecture name' ! . ./myread ! archname="$ans" ! case "$usethreads" in ! $define) ! echo "Threads selected." >&4 ! case "$archname" in ! *-thread*) echo "...and architecture name already has -thread." >&4 ! ;; ! *) archname="$archname-thread" ! echo "...setting architecture name to $archname." >&4 ! ;; ! esac ! ;; ! esac ! case "$usemultiplicity" in ! $define) ! echo "Multiplicity selected." >&4 ! case "$archname" in ! *-multi*) echo "...and architecture name already has -multi." >&4 ! ;; ! *) archname="$archname-multi" ! echo "...setting architecture name to $archname." >&4 ! ;; ! esac ! ;; ! esac ! case "$use64bitint" in ! $define) ! case "$archname64" in ! '') ;; ! *) ! case "$archname" in ! *-$archname64*) echo "...and architecture name already has $archname64." >&4 ! ;; ! *) archname="$archname-$archname64" ! echo "...setting architecture name to $archname." >&4 ! ;; ! esac ;; esac - esac - - : determine root of directory hierarchy where package will be installed. - case "$prefix" in - '') - dflt=`./loc . /usr/local /usr/local /local /opt /usr` ;; *) ! dflt="$prefix" ;; esac $cat <&4 else ! echo "AFS does not seem to be running..." >&4 fi ! : determine installation prefix for where package is to be installed. ! if $afs; then ! $cat <&4 ! if $test -r $rsrc/patchlevel.h;then ! revision=`awk '/define[ ]+PERL_REVISION/ {print $3}' $rsrc/patchlevel.h` ! patchlevel=`awk '/define[ ]+PERL_VERSION/ {print $3}' $rsrc/patchlevel.h` ! subversion=`awk '/define[ ]+PERL_SUBVERSION/ {print $3}' $rsrc/patchlevel.h` ! api_revision=`awk '/define[ ]+PERL_API_REVISION/ {print $3}' $rsrc/patchlevel.h` ! api_version=`awk '/define[ ]+PERL_API_VERSION/ {print $3}' $rsrc/patchlevel.h` ! api_subversion=`awk '/define[ ]+PERL_API_SUBVERSION/ {print $3}' $rsrc/patchlevel.h` else ! revision=0 ! patchlevel=0 ! subversion=0 ! api_revision=0 ! api_version=0 ! api_subversion=0 fi ! $echo $n "(You have $package revision $revision" $c ! $echo $n " patchlevel $patchlevel" $c ! test 0 -eq "$subversion" || $echo $n " subversion $subversion" $c ! echo ".)" ! case "$osname" in ! dos|vms) ! : XXX Should be a Configure test for double-dots in filenames. ! version=`echo $revision $patchlevel $subversion | \ ! $awk '{ printf "%d_%d_%d\n", $1, $2, $3 }'` ! api_versionstring=`echo $api_revision $api_version $api_subversion | \ ! $awk '{ printf "%d_%d_%d\n", $1, $2, $3 }'` ! ;; ! *) ! version=`echo $revision $patchlevel $subversion | \ ! $awk '{ printf "%d.%d.%d\n", $1, $2, $3 }'` ! api_versionstring=`echo $api_revision $api_version $api_subversion | \ ! $awk '{ printf "%d.%d.%d\n", $1, $2, $3 }'` ! ;; ! esac ! : Special case the 5.005_xx maintenance series, which used 5.005 ! : without any subversion label as a subdirectory in $sitelib ! if test "${api_revision}${api_version}${api_subversion}" = "550"; then ! api_versionstring='5.005' fi ! : determine installation style ! : For now, try to deduce it from prefix unless it is already set. ! : Reproduce behavior of 5.005 and earlier, maybe drop that in 5.7. ! case "$installstyle" in ! '') case "$prefix" in ! *perl*) dflt='lib';; ! *) dflt='lib/perl5' ;; ! esac ! ;; ! *) dflt="$installstyle" ;; esac - : Probably not worth prompting for this since we prompt for all - : the directories individually, and the prompt would be too long and - : confusing anyway. - installstyle=$dflt ! : determine where private library files go ! : Usual default is /usr/local/lib/perl5/$version. ! : Also allow things like /opt/perl/lib/$version, since ! : /opt/perl/lib/perl5... would be redundant. ! : The default "style" setting is made in installstyle.U ! case "$installstyle" in ! *lib/perl5*) set dflt privlib lib/$package/$version ;; ! *) set dflt privlib lib/$version ;; esac ! eval $prefixit ! $cat <reflect ! chmod +x,u+s reflect ! ./reflect >flect 2>&1 ! if $contains "/dev/fd" flect >/dev/null; then ! echo "Congratulations, your kernel has secure setuid scripts!" >&4 ! val="$define" else ! $cat <&4 ! dflt=n;; ! "$undef") ! echo "Well, the $hint value is *not* secure." >&4 ! dflt=n;; ! *) echo "Well, the $hint value *is* secure." >&4 ! dflt=y;; ! esac ! ;; ! *) ! $rm -f reflect flect ! echo "#!$ls" >reflect ! chmod +x,u+s reflect ! echo >flect ! chmod a+w flect ! echo '"su" will (probably) prompt you for '"$ans's password." ! su $ans -c './reflect >flect' ! if $contains "/dev/fd" flect >/dev/null; then ! echo "Okay, it looks like setuid scripts are secure." >&4 ! dflt=y ! else ! echo "I don't think setuid scripts are secure." >&4 ! dflt=n ! fi ! ;; ! esac ! rp='Does your kernel have *secure* setuid scripts?' . ./myread ! case "$ans" in ! [yY]*) val="$define";; ! *) val="$undef";; ! esac fi else - echo "I don't think setuid scripts are secure (no /dev/fd directory)." >&4 - echo "(That's for file descriptors, not floppy disks.)" val="$undef" fi ! set d_suidsafe eval $setvar ! $rm -f reflect flect ! : now see if they want to do setuid emulation echo " " ! val="$undef" ! case "$d_suidsafe" in ! "$define") ! val="$undef" ! echo "No need to emulate SUID scripts since they are secure here." >& 4 ! ;; *) ! $cat <&4 ! echo '#include ' > foo.c ! $cat >fieldn </dev/null | \ ! $grep '^[ ]*#.*stdio\.h' | \ ! while read cline; do ! pos=1 ! set \$cline ! while $test \$# -gt 0; do ! if $test -r \`echo \$1 | $tr -d '"'\`; then ! echo "\$pos" ! exit 0 ! fi ! shift ! pos=\`expr \$pos + 1\` ! done ! done ! EOF ! chmod +x fieldn ! fieldn=`./fieldn` ! $rm -f foo.c fieldn ! case $fieldn in ! '') pos='???';; ! 1) pos=first;; ! 2) pos=second;; ! 3) pos=third;; ! *) pos="${fieldn}th";; ! esac ! echo "Your cpp writes the filename in the $pos field of the line." ! ! : locate header file ! $cat >findhdr <" > foo\$\$.c ! $cppstdin $cppminus $cppflags < foo\$\$.c 2>/dev/null | \ ! $grep "^[ ]*#.*\$wanted" | \ ! while read cline; do ! name=\`echo \$cline | $awk "\$awkprg" | $tr -d '"'\` ! case "\$name" in ! *[/\\\\]\$wanted) echo "\$name"; exit 1;; ! *[\\\\/]\$wanted) echo "\$name"; exit 1;; ! *) exit 2;; ! esac; ! done; ! # ! # status = 0: grep returned 0 lines, case statement not executed ! # status = 1: headerfile found ! # status = 2: while loop executed, no headerfile found ! # ! status=\$? ! $rm -f foo\$\$.c; ! if test \$status -eq 1; then ! exit 0; fi - exit 1 - EOF - chmod +x findhdr ! : define an alternate in-header-list? function ! inhdr='echo " "; td=$define; tu=$undef; yyy=$@; ! cont=true; xxf="echo \"<\$1> found.\" >&4"; ! case $# in 2) xxnf="echo \"<\$1> NOT found.\" >&4";; ! *) xxnf="echo \"<\$1> NOT found, ...\" >&4";; ! esac; ! case $# in 4) instead=instead;; *) instead="at last";; esac; ! while $test "$cont"; do ! xxx=`./findhdr $1` ! var=$2; eval "was=\$$2"; ! if $test "$xxx" && $test -r "$xxx"; ! then eval $xxf; ! eval "case \"\$$var\" in $undef) . ./whoa; esac"; eval "$var=\$td"; ! cont=""; ! else eval $xxnf; ! eval "case \"\$$var\" in $define) . ./whoa; esac"; eval "$var=\$tu"; fi; ! set $yyy; shift; shift; yyy=$@; ! case $# in 0) cont="";; ! 2) xxf="echo \"but I found <\$1> $instead.\" >&4"; ! xxnf="echo \"and I did not find <\$1> either.\" >&4";; ! *) xxf="echo \"but I found <\$1\> instead.\" >&4"; ! xxnf="echo \"there is no <\$1>, ...\" >&4";; ! esac; ! done; ! while $test "$yyy"; ! do set $yyy; var=$2; eval "was=\$$2"; ! eval "case \"\$$var\" in $define) . ./whoa; esac"; eval "$var=\$tu"; ! set $yyy; shift; shift; yyy=$@; ! done' ! : see if this is a malloc.h system ! set malloc.h i_malloc ! eval $inhdr ! : see if stdlib is available ! set stdlib.h i_stdlib ! eval $inhdr ! : determine which malloc to compile in ! echo " " ! case "$usemymalloc" in ! ''|[yY]*|true|$define) dflt='y' ;; ! *) dflt='n' ;; ! esac ! rp="Do you wish to attempt to use the malloc that comes with $package?" ! . ./myread ! usemymalloc="$ans" ! case "$ans" in ! y*|true) ! usemymalloc='y' ! mallocsrc='malloc.c' ! mallocobj="malloc$_o" ! d_mymalloc="$define" ! case "$libs" in ! *-lmalloc*) ! : Remove malloc from list of libraries to use ! echo "Removing unneeded -lmalloc from library list" >&4 ! set `echo X $libs | $sed -e 's/-lmalloc / /' -e 's/-lmalloc$//'` ! shift ! libs="$*" ! echo "libs = $libs" >&4 ! ;; esac ;; *) ! usemymalloc='n' ! mallocsrc='' ! mallocobj='' ! d_mymalloc="$undef" ;; esac ! : compute the return types of malloc and free ! echo " " ! $cat >malloc.c < ! #include ! #ifdef I_MALLOC ! #include ! #endif ! #ifdef I_STDLIB ! #include ! #endif ! #ifdef TRY_MALLOC ! void *malloc(); ! #endif ! #ifdef TRY_FREE ! void free(); ! #endif ! END ! case "$malloctype" in ! '') ! if $cc $ccflags -c -DTRY_MALLOC malloc.c >/dev/null 2>&1; then ! malloctype='void *' ! else ! malloctype='char *' ! fi ;; esac ! echo "Your system wants malloc to return '$malloctype', it would seem." >&4 ! case "$freetype" in ! '') ! if $cc $ccflags -c -DTRY_FREE malloc.c >/dev/null 2>&1; then ! freetype='void' ! else ! freetype='int' ! fi ! ;; esac ! echo "Your system uses $freetype free(), it would seem." >&4 ! $rm -f malloc.[co] $cat <&4 ! $cat >prototype.c <<'EOCP' ! int main(int argc, char *argv[]) { ! exit(0);} ! EOCP ! if $cc $ccflags -c prototype.c >prototype.out 2>&1 ; then ! echo "Your C compiler appears to support function prototypes." ! val="$define" else ! echo "Your C compiler doesn't seem to understand function prototypes." ! val="$undef" fi - set prototype - eval $setvar - $rm -f prototype* - case "$prototype" in - "$define") ;; - *) ansi2knr='ansi2knr' - echo " " - cat <&4 - - $me: FATAL ERROR: - This version of $package can only be compiled by a compiler that - understands function prototypes. Unfortunately, your C compiler - $cc $ccflags - doesn't seem to understand them. Sorry about that. ! If GNU cc is available for your system, perhaps you could try that instead. ! Eventually, we hope to support building Perl with pre-ANSI compilers. ! If you would like to help in that effort, please contact . - Aborting Configure now. EOM ! exit 2 ;; esac - : determine where public executables go - echo " " - set dflt bin bin - eval $prefixit - fn=d~ - rp='Pathname where the public executables will reside?' - . ./getfile - if $test "X$ansexp" != "X$binexp"; then - installbin='' - fi - bin="$ans" - binexp="$ansexp" - : Change installation prefix, if necessary. - : XXX Bug? -- ignores Configure -Dinstallprefix setting. - if $test X"$prefix" != X"$installprefix"; then - installbin=`echo $binexp | sed "s#^$prefix#$installprefix#"` - else - installbin="$binexp" - fi - - : Find perl5.005 or later. - echo "Looking for a previously installed perl5.005 or later... " - case "$perl5" in - '') for tdir in `echo "$binexp:$PATH" | $sed "s/$path_sep/ /g"`; do - : Check if this perl is recent and can load a simple module - if $test -x $tdir/perl && $tdir/perl -Mless -e 'use 5.005;' >/dev/null 2>&1; then - perl5=$tdir/perl - break; - elif $test -x $tdir/perl5 && $tdir/perl5 -Mless -e 'use 5.005;' >/dev/null 2>&1; then - perl5=$tdir/perl - break; - fi - done - ;; - *) perl5="$perl5" - ;; - esac - case "$perl5" in - '') echo "None found. That's ok.";; - *) echo "Using $perl5." ;; - esac $cat < getverlist <> getverlist <<'EOPL' ! # Can't have leading @ because metaconfig interprets it as a command! ! ;@inc_version_list=(); ! $stem=dirname($sitelib); ! # XXX Redo to do opendir/readdir? ! if (-d $stem) { ! chdir($stem); ! ;@candidates = glob("5.*"); ! } ! else { ! ;@candidates = (); ! } ! ! # XXX ToDo: These comparisons must be reworked when two-digit ! # subversions come along, so that 5.7.10 compares as greater than ! # 5.7.3! By that time, hope that 5.6.x is sufficiently ! # widespread that we can use the built-in version vectors rather ! # than reinventing them here. For 5.6.0, however, we must ! # assume this script will likely be run by 5.005_0x. --AD 1/2000. ! foreach $d (@candidates) { ! if ($d lt $version) { ! if ($d ge $api_versionstring) { ! unshift(@inc_version_list, grep { -d } "$d/$archname", $d); ! } ! elsif ($d ge "5.005") { ! unshift(@inc_version_list, grep { -d } $d); ! } ! } ! else { ! # Skip newer version. I.e. don't look in ! # 5.7.0 if we're installing 5.6.1. ! } ! } ! ! if (@inc_version_list) { ! print join(' ', @inc_version_list); ! } ! else { ! # Blank space to preserve value for next Configure run. ! print " "; ! } ! EOPL ! chmod +x getverlist ! case "$inc_version_list" in ! '') if test -x "$perl5"; then ! dflt=`$perl5 getverlist` ! else dflt='none' fi ! ;; ! $undef) dflt='none' ;; ! *) dflt="$inc_version_list" ;; ! esac ! case "$dflt" in ! ''|' ') dflt=none ;; ! esac ! $cat <<'EOM' ! ! In order to ease the process of upgrading, this version of perl ! can be configured to use modules built and installed with earlier ! versions of perl that were installed under $prefix. Specify here ! the list of earlier versions that this version of perl should check. ! If Configure detected no earlier versions of perl installed under ! $prefix, then the list will be empty. Answer 'none' to tell perl ! to not search earlier versions. ! ! The default should almost always be sensible, so if you're not sure, ! just accept the default. ! EOM ! ! rp='List of earlier versions to include in @INC?' ! . ./myread ! case "$ans" in ! [Nn]one|''|' ') inc_version_list=' ' ;; ! *) inc_version_list="$ans" ;; ! esac ! case "$inc_version_list" in ! ''|' ') ! inc_version_list_init='0';; ! *) inc_version_list_init=`echo $inc_version_list | ! $sed -e 's/^/"/' -e 's/ /","/g' -e 's/$/",0/'` ! ;; ! esac ! $rm -f getverlist ! : determine whether to install perl also as /usr/bin/perl echo " " ! if $test -d /usr/bin -a "X$installbin" != X/usr/bin; then $cat <&4 ! cat >gnulibc.c < ! int main() ! { ! #ifdef __GLIBC__ ! exit(0); ! #else ! exit(1); ! #endif ! } ! EOM ! set gnulibc ! if eval $compile_ok && ./gnulibc; then ! val="$define" ! echo "You are using the GNU C Library" ! else ! val="$undef" ! echo "You are not using the GNU C Library" ! fi ! $rm -f gnulibc* ! set d_gnulibc ! eval $setvar ! ! : see if nm is to be used to determine whether a symbol is defined or not ! case "$usenm" in ! '') ! dflt='' ! case "$d_gnulibc" in ! "$define") ! echo " " ! echo "nm probably won't work on the GNU C Library." >&4 ! dflt=n ! ;; ! esac ! case "$dflt" in ! '') ! if $test "$osname" = aix -a ! -f /lib/syscalls.exp; then ! echo " " ! echo "Whoops! This is an AIX system without /lib/syscalls.exp!" >&4 ! echo "'nm' won't be sufficient on this sytem." >&4 ! dflt=n ! fi ! ;; ! esac ! case "$dflt" in ! '') dflt=`$egrep 'inlibc|csym' $rsrc/Configure | wc -l 2>/dev/null` ! if $test $dflt -gt 20; then ! dflt=y ! else ! dflt=n fi ! ;; ! esac ! ;; ! *) ! case "$usenm" in ! true|$define) dflt=y;; ! *) dflt=n;; ! esac ! ;; ! esac ! $cat < /dev/null 2>&1; then ! nm_so_opt='--dynamic' ! fi ! ;; esac ;; esac ! case "$runnm" in ! true) ! : get list of predefined functions in a handy place ! echo " " ! case "$libc" in ! '') libc=unknown ! case "$libs" in ! *-lc_s*) libc=`./loc libc_s$_a $libc $libpth` esac ;; esac ! libnames=''; ! case "$libs" in ! '') ;; ! *) for thislib in $libs; do ! case "$thislib" in ! -lc|-lc_s) ! : Handle C library specially below. ! ;; ! -l*) ! thislib=`echo $thislib | $sed -e 's/^-l//'` ! if try=`./loc lib$thislib.$so.'*' X $libpth`; $test -f "$try"; then ! : ! elif try=`./loc lib$thislib.$so X $libpth`; $test -f "$try"; then ! : ! elif try=`./loc lib$thislib$_a X $libpth`; $test -f "$try"; then ! : ! elif try=`./loc $thislib$_a X $libpth`; $test -f "$try"; then ! : ! elif try=`./loc lib$thislib X $libpth`; $test -f "$try"; then ! : ! elif try=`./loc $thislib X $libpth`; $test -f "$try"; then ! : ! elif try=`./loc Slib$thislib$_a X $xlibpth`; $test -f "$try"; then ! : ! else ! try='' ! fi ! libnames="$libnames $try" ;; - *) libnames="$libnames $thislib" ;; esac ! done ;; esac ! xxx=normal ! case "$libc" in ! unknown) ! set /lib/libc.$so ! for xxx in $libpth; do ! $test -r $1 || set $xxx/libc.$so ! : The messy sed command sorts on library version numbers. ! $test -r $1 || \ ! set `echo blurfl; echo $xxx/libc.$so.[0-9]* | \ ! tr ' ' $trnl | egrep -v '\.[A-Za-z]*$' | $sed -e ' ! h ! s/[0-9][0-9]*/0000&/g ! s/0*\([0-9][0-9][0-9][0-9][0-9]\)/\1/g ! G ! s/\n/ /' | \ ! sort | $sed -e 's/^.* //'` ! eval set \$$# ! done ! $test -r $1 || set /usr/ccs/lib/libc.$so ! $test -r $1 || set /lib/libsys_s$_a ;; ! *) ! set blurfl ;; esac ! if $test -r "$1"; then ! echo "Your (shared) C library seems to be in $1." ! libc="$1" ! elif $test -r /lib/libc && $test -r /lib/clib; then ! echo "Your C library seems to be in both /lib/clib and /lib/libc." ! xxx=apollo ! libc='/lib/clib /lib/libc' ! if $test -r /lib/syslib; then ! echo "(Your math library is in /lib/syslib.)" ! libc="$libc /lib/syslib" ! fi ! elif $test -r "$libc" || (test -h "$libc") >/dev/null 2>&1; then ! echo "Your C library seems to be in $libc, as you said before." ! elif $test -r $incpath/usr/lib/libc$_a; then ! libc=$incpath/usr/lib/libc$_a; ! echo "Your C library seems to be in $libc. That's fine." ! elif $test -r /lib/libc$_a; then ! libc=/lib/libc$_a; ! echo "Your C library seems to be in $libc. You're normal." else ! if tans=`./loc libc$_a blurfl/dyick $libpth`; $test -r "$tans"; then ! : ! elif tans=`./loc libc blurfl/dyick $libpth`; $test -r "$tans"; then ! libnames="$libnames "`./loc clib blurfl/dyick $libpth` ! elif tans=`./loc clib blurfl/dyick $libpth`; $test -r "$tans"; then ! : ! elif tans=`./loc Slibc$_a blurfl/dyick $xlibpth`; $test -r "$tans"; then ! : ! elif tans=`./loc Mlibc$_a blurfl/dyick $xlibpth`; $test -r "$tans"; then ! : ! else ! tans=`./loc Llibc$_a blurfl/dyick $xlibpth` ! fi ! if $test -r "$tans"; then ! echo "Your C library seems to be in $tans, of all places." ! libc=$tans ! else ! libc='blurfl' ! fi fi - if $test $xxx = apollo -o -r "$libc" || (test -h "$libc") >/dev/null 2>&1; then - dflt="$libc" - cat < libpath ! cat >&4 < libnames ! set X `cat libnames` ! shift ! xxx=files ! case $# in 1) xxx=file; esac ! echo "Extracting names from the following $xxx for later perusal:" >&4 ! echo " " ! $sed 's/^/ /' libnames >&4 ! echo " " ! $echo $n "This may take a while...$c" >&4 ! for file in $*; do ! case $file in ! *$so*) $nm $nm_so_opt $nm_opt $file 2>/dev/null;; ! *) $nm $nm_opt $file 2>/dev/null;; ! esac ! done >libc.tmp ! $echo $n ".$c" ! $grep fprintf libc.tmp > libc.ptf ! xscan='eval "libc.list"; $echo $n ".$c" >&4' ! xrun='eval "libc.list"; echo "done" >&4' ! xxx='[ADTSIW]' ! if com="$sed -n -e 's/__IO//' -e 's/^.* $xxx *_[_.]*//p' -e 's/^.* $xxx *//p'";\ ! eval $xscan;\ ! $contains '^fprintf$' libc.list >/dev/null 2>&1; then ! eval $xrun ! elif com="$sed -n -e 's/^__*//' -e 's/^\([a-zA-Z_0-9$]*\).*xtern.*/\1/p'";\ ! eval $xscan;\ ! $contains '^fprintf$' libc.list >/dev/null 2>&1; then ! eval $xrun ! elif com="$sed -n -e '/|UNDEF/d' -e '/FUNC..GL/s/^.*|__*//p'";\ ! eval $xscan;\ ! $contains '^fprintf$' libc.list >/dev/null 2>&1; then ! eval $xrun ! elif com="$sed -n -e 's/^.* D __*//p' -e 's/^.* D //p'";\ ! eval $xscan;\ ! $contains '^fprintf$' libc.list >/dev/null 2>&1; then ! eval $xrun ! elif com="$sed -n -e 's/^_//' -e 's/^\([a-zA-Z_0-9]*\).*xtern.*text.*/\1/p'";\ ! eval $xscan;\ ! $contains '^fprintf$' libc.list >/dev/null 2>&1; then ! eval $xrun ! elif com="$sed -n -e 's/^.*|FUNC |GLOB .*|//p'";\ ! eval $xscan;\ ! $contains '^fprintf$' libc.list >/dev/null 2>&1; then ! eval $xrun ! elif com="$grep '|' | $sed -n -e '/|COMMON/d' -e '/|DATA/d' \ ! -e '/ file/d' -e 's/^\([^ ]*\).*/\1/p'";\ ! eval $xscan;\ ! $contains '^fprintf$' libc.list >/dev/null 2>&1; then ! eval $xrun ! elif com="$sed -n -e 's/^.*|FUNC |GLOB .*|//p' -e 's/^.*|FUNC |WEAK .*|//p'";\ ! eval $xscan;\ ! $contains '^fprintf$' libc.list >/dev/null 2>&1; then ! eval $xrun ! elif com="$sed -n -e 's/^__//' -e '/|Undef/d' -e '/|Proc/s/ .*//p'";\ ! eval $xscan;\ ! $contains '^fprintf$' libc.list >/dev/null 2>&1; then ! eval $xrun ! elif com="$sed -n -e 's/^.*|Proc .*|Text *| *//p'";\ ! eval $xscan;\ ! $contains '^fprintf$' libc.list >/dev/null 2>&1; then ! eval $xrun ! elif com="$sed -n -e '/Def. Text/s/.* \([^ ]*\)\$/\1/p'";\ ! eval $xscan;\ ! $contains '^fprintf$' libc.list >/dev/null 2>&1; then ! eval $xrun ! elif com="$sed -n -e 's/^[-0-9a-f ]*_\(.*\)=.*/\1/p'";\ ! eval $xscan;\ ! $contains '^fprintf$' libc.list >/dev/null 2>&1; then ! eval $xrun ! elif com="$sed -n -e 's/.*\.text n\ \ \ \.//p'";\ ! eval $xscan;\ ! $contains '^fprintf$' libc.list >/dev/null 2>&1; then ! eval $xrun ! elif com="sed -n -e 's/^__.*//' -e 's/[ ]*D[ ]*[0-9]*.*//p'";\ ! eval $xscan;\ ! $contains '^fprintf$' libc.list >/dev/null 2>&1; then ! eval $xrun else ! $nm -p $* 2>/dev/null >libc.tmp ! $grep fprintf libc.tmp > libc.ptf ! if com="$sed -n -e 's/^.* [ADTSIW] *_[_.]*//p' -e 's/^.* [ADTSIW] //p'";\ ! eval $xscan; $contains '^fprintf$' libc.list >/dev/null 2>&1 ! then ! nm_opt='-p' ! eval $xrun ! else ! echo " " ! echo "$nm didn't seem to work right. Trying $ar instead..." >&4 ! com='' ! if $ar t $libc > libc.tmp && $contains '^fprintf$' libc.tmp >/dev/null 2>&1; then ! for thisname in $libnames $libc; do ! $ar t $thisname >>libc.tmp ! done ! $sed -e "s/\\$_o\$//" < libc.tmp > libc.list ! echo "Ok." >&4 ! elif test "X$osname" = "Xos2" && $ar tv $libc > libc.tmp; then ! # Repeat libc to extract forwarders to DLL entries too ! for thisname in $libnames $libc; do ! $ar tv $thisname >>libc.tmp ! # Revision 50 of EMX has bug in $ar. ! # it will not extract forwarders to DLL entries ! # Use emximp which will extract exactly them. ! emximp -o tmp.imp $thisname \ ! 2>/dev/null && \ ! $sed -e 's/^\([_a-zA-Z0-9]*\) .*$/\1/p' \ ! < tmp.imp >>libc.tmp ! $rm tmp.imp ! done ! $sed -e "s/\\$_o\$//" -e 's/^ \+//' < libc.tmp > libc.list ! echo "Ok." >&4 ! else ! echo "$ar didn't seem to work right." >&4 ! echo "Maybe this is a Cray...trying bld instead..." >&4 ! if bld t $libc | $sed -e 's/.*\///' -e "s/\\$_o:.*\$//" > libc.list ! then ! for thisname in $libnames; do ! bld t $libnames | \ ! $sed -e 's/.*\///' -e "s/\\$_o:.*\$//" >>libc.list ! $ar t $thisname >>libc.tmp ! done ! echo "Ok." >&4 ! else ! echo "That didn't work either. Giving up." >&4 ! exit 1 ! fi fi fi ! fi ! nm_extract="$com" ! if $test -f /lib/syscalls.exp; then ! echo " " ! echo "Also extracting names from /lib/syscalls.exp for good ole AIX..." >&4 ! $sed -n 's/^\([^ ]*\)[ ]*syscall[0-9]*$/\1/p' /lib/syscalls.exp >>libc.list ! fi ! ;; esac ! $rm -f libnames libpath ! : see if dld is available ! set dld.h i_dld ! eval $inhdr ! : is a C symbol defined? ! csym='tlook=$1; ! case "$3" in ! -v) tf=libc.tmp; tc=""; tdc="";; ! -a) tf=libc.tmp; tc="[0]"; tdc="[]";; ! *) tlook="^$1\$"; tf=libc.list; tc="()"; tdc="()";; ! esac; ! tx=yes; ! case "$reuseval-$4" in ! true-) ;; ! true-*) tx=no; eval "tval=\$$4"; case "$tval" in "") tx=yes;; esac;; ! esac; ! case "$tx" in ! yes) ! case "$runnm" in ! true) ! if $contains $tlook $tf >/dev/null 2>&1; ! then tval=true; ! else tval=false; ! fi;; ! *) ! echo "int main() { extern short $1$tdc; printf(\"%hd\", $1$tc); }" > t.c; ! if $cc $optimize $ccflags $ldflags -o t t.c $libs >/dev/null 2>&1; ! then tval=true; ! else tval=false; ! fi; ! $rm -f t t.c;; ! esac;; ! *) ! case "$tval" in ! $define) tval=true;; ! *) tval=false;; ! esac;; ! esac; ! eval "$2=$tval"' ! : define an is-in-libc? function ! inlibc='echo " "; td=$define; tu=$undef; ! sym=$1; var=$2; eval "was=\$$2"; ! tx=yes; ! case "$reuseval$was" in ! true) ;; ! true*) tx=no;; ! esac; ! case "$tx" in ! yes) ! set $sym tres -f; ! eval $csym; ! case "$tres" in ! true) ! echo "$sym() found." >&4; ! case "$was" in $undef) . ./whoa; esac; eval "$var=\$td";; ! *) ! echo "$sym() NOT found." >&4; ! case "$was" in $define) . ./whoa; esac; eval "$var=\$tu";; ! esac;; ! *) ! case "$was" in ! $define) echo "$sym() found." >&4;; ! *) echo "$sym() NOT found." >&4;; ! esac;; ! esac' : see if dlopen exists xxx_runnm="$runnm" --- 4677,6431 ---- ;; esac echo " " ! echo "Checking for GNU C Library..." >&4 ! cat >gnulibc.c < ! int main() ! { ! #ifdef __GLIBC__ ! exit(0); ! #else ! exit(1); ! #endif ! } ! EOM ! set gnulibc ! if eval $compile_ok && ./gnulibc; then ! val="$define" ! echo "You are using the GNU C Library" else ! val="$undef" ! echo "You are not using the GNU C Library" fi ! $rm -f gnulibc* ! set d_gnulibc ! eval $setvar ! ! : see if nm is to be used to determine whether a symbol is defined or not ! case "$usenm" in ! '') ! dflt='' ! case "$d_gnulibc" in ! "$define") ! echo " " ! echo "nm probably won't work on the GNU C Library." >&4 ! dflt=n ;; ! esac ! case "$dflt" in ! '') ! if $test "$osname" = aix -a ! -f /lib/syscalls.exp; then ! echo " " ! echo "Whoops! This is an AIX system without /lib/syscalls.exp!" >&4 ! echo "'nm' won't be sufficient on this sytem." >&4 ! dflt=n ! fi ! ;; ! esac ! case "$dflt" in ! '') dflt=`$egrep 'inlibc|csym' $rsrc/Configure | wc -l 2>/dev/null` ! if $test $dflt -gt 20; then ! dflt=y ! else ! dflt=n ! fi ;; esac ;; *) ! case "$usenm" in ! true|$define) dflt=y;; ! *) dflt=n;; ! esac ;; esac $cat < /dev/null 2>&1; then ! nm_so_opt='--dynamic' ! fi ! ;; esac ;; esac ! case "$runnm" in ! true) ! : get list of predefined functions in a handy place echo " " ! case "$libc" in ! '') libc=unknown ! case "$libs" in ! *-lc_s*) libc=`./loc libc_s$_a $libc $libpth` ! esac ;; esac ! libnames=''; ! case "$libs" in ! '') ;; ! *) for thislib in $libs; do ! case "$thislib" in ! -lc|-lc_s) ! : Handle C library specially below. ! ;; ! -l*) ! thislib=`echo $thislib | $sed -e 's/^-l//'` ! if try=`./loc lib$thislib.$so.'*' X $libpth`; $test -f "$try"; then ! : ! elif try=`./loc lib$thislib.$so X $libpth`; $test -f "$try"; then ! : ! elif try=`./loc lib$thislib$_a X $libpth`; $test -f "$try"; then ! : ! elif try=`./loc $thislib$_a X $libpth`; $test -f "$try"; then ! : ! elif try=`./loc lib$thislib X $libpth`; $test -f "$try"; then ! : ! elif try=`./loc $thislib X $libpth`; $test -f "$try"; then ! : ! elif try=`./loc Slib$thislib$_a X $xlibpth`; $test -f "$try"; then ! : ! else ! try='' ! fi ! libnames="$libnames $try" ! ;; ! *) libnames="$libnames $thislib" ;; ! esac ! done ! ;; ! esac ! xxx=normal ! case "$libc" in ! unknown) ! set /lib/libc.$so ! for xxx in $libpth; do ! $test -r $1 || set $xxx/libc.$so ! : The messy sed command sorts on library version numbers. ! $test -r $1 || \ ! set `echo blurfl; echo $xxx/libc.$so.[0-9]* | \ ! tr ' ' $trnl | egrep -v '\.[A-Za-z]*$' | $sed -e ' ! h ! s/[0-9][0-9]*/0000&/g ! s/0*\([0-9][0-9][0-9][0-9][0-9]\)/\1/g ! G ! s/\n/ /' | \ ! $sort | $sed -e 's/^.* //'` ! eval set \$$# ! done ! $test -r $1 || set /usr/ccs/lib/libc.$so ! $test -r $1 || set /lib/libsys_s$_a ! ;; ! *) ! set blurfl ! ;; ! esac ! if $test -r "$1"; then ! echo "Your (shared) C library seems to be in $1." ! libc="$1" ! elif $test -r /lib/libc && $test -r /lib/clib; then ! echo "Your C library seems to be in both /lib/clib and /lib/libc." ! xxx=apollo ! libc='/lib/clib /lib/libc' ! if $test -r /lib/syslib; then ! echo "(Your math library is in /lib/syslib.)" ! libc="$libc /lib/syslib" ! fi ! elif $test -r "$libc" || (test -h "$libc") >/dev/null 2>&1; then ! echo "Your C library seems to be in $libc, as you said before." ! elif $test -r $incpath/usr/lib/libc$_a; then ! libc=$incpath/usr/lib/libc$_a; ! echo "Your C library seems to be in $libc. That's fine." ! elif $test -r /lib/libc$_a; then ! libc=/lib/libc$_a; ! echo "Your C library seems to be in $libc. You're normal." else ! if tans=`./loc libc$_a blurfl/dyick $libpth`; $test -r "$tans"; then ! : ! elif tans=`./loc libc blurfl/dyick $libpth`; $test -r "$tans"; then ! libnames="$libnames "`./loc clib blurfl/dyick $libpth` ! elif tans=`./loc clib blurfl/dyick $libpth`; $test -r "$tans"; then ! : ! elif tans=`./loc Slibc$_a blurfl/dyick $xlibpth`; $test -r "$tans"; then ! : ! elif tans=`./loc Mlibc$_a blurfl/dyick $xlibpth`; $test -r "$tans"; then ! : ! else ! tans=`./loc Llibc$_a blurfl/dyick $xlibpth` ! fi ! if $test -r "$tans"; then ! echo "Your C library seems to be in $tans, of all places." ! libc=$tans ! else ! libc='blurfl' ! fi fi + if $test $xxx = apollo -o -r "$libc" || (test -h "$libc") >/dev/null 2>&1; then + dflt="$libc" + cat < libpath ! cat >&4 < libnames ! set X `cat libnames` ! shift ! xxx=files ! case $# in 1) xxx=file; esac ! echo "Extracting names from the following $xxx for later perusal:" >&4 ! echo " " ! $sed 's/^/ /' libnames >&4 ! echo " " ! $echo $n "This may take a while...$c" >&4 + for file in $*; do + case $file in + *$so*) $nm $nm_so_opt $nm_opt $file 2>/dev/null;; + *) $nm $nm_opt $file 2>/dev/null;; + esac + done >libc.tmp ! $echo $n ".$c" ! $grep fprintf libc.tmp > libc.ptf ! xscan='eval "libc.list"; $echo $n ".$c" >&4' ! xrun='eval "libc.list"; echo "done" >&4' ! xxx='[ADTSIW]' ! if com="$sed -n -e 's/__IO//' -e 's/^.* $xxx *_[_.]*//p' -e 's/^.* $xxx *//p'";\ ! eval $xscan;\ ! $contains '^fprintf$' libc.list >/dev/null 2>&1; then ! eval $xrun ! elif com="$sed -n -e 's/^__*//' -e 's/^\([a-zA-Z_0-9$]*\).*xtern.*/\1/p'";\ ! eval $xscan;\ ! $contains '^fprintf$' libc.list >/dev/null 2>&1; then ! eval $xrun ! elif com="$sed -n -e '/|UNDEF/d' -e '/FUNC..GL/s/^.*|__*//p'";\ ! eval $xscan;\ ! $contains '^fprintf$' libc.list >/dev/null 2>&1; then ! eval $xrun ! elif com="$sed -n -e 's/^.* D __*//p' -e 's/^.* D //p'";\ ! eval $xscan;\ ! $contains '^fprintf$' libc.list >/dev/null 2>&1; then ! eval $xrun ! elif com="$sed -n -e 's/^_//' -e 's/^\([a-zA-Z_0-9]*\).*xtern.*text.*/\1/p'";\ ! eval $xscan;\ ! $contains '^fprintf$' libc.list >/dev/null 2>&1; then ! eval $xrun ! elif com="$sed -n -e 's/^.*|FUNC |GLOB .*|//p'";\ ! eval $xscan;\ ! $contains '^fprintf$' libc.list >/dev/null 2>&1; then ! eval $xrun ! elif com="$grep '|' | $sed -n -e '/|COMMON/d' -e '/|DATA/d' \ ! -e '/ file/d' -e 's/^\([^ ]*\).*/\1/p'";\ ! eval $xscan;\ ! $contains '^fprintf$' libc.list >/dev/null 2>&1; then ! eval $xrun ! elif com="$sed -n -e 's/^.*|FUNC |GLOB .*|//p' -e 's/^.*|FUNC |WEAK .*|//p'";\ ! eval $xscan;\ ! $contains '^fprintf$' libc.list >/dev/null 2>&1; then ! eval $xrun ! elif com="$sed -n -e 's/^__//' -e '/|Undef/d' -e '/|Proc/s/ .*//p'";\ ! eval $xscan;\ ! $contains '^fprintf$' libc.list >/dev/null 2>&1; then ! eval $xrun ! elif com="$sed -n -e 's/^.*|Proc .*|Text *| *//p'";\ ! eval $xscan;\ ! $contains '^fprintf$' libc.list >/dev/null 2>&1; then ! eval $xrun ! elif com="$sed -n -e '/Def. Text/s/.* \([^ ]*\)\$/\1/p'";\ ! eval $xscan;\ ! $contains '^fprintf$' libc.list >/dev/null 2>&1; then ! eval $xrun ! elif com="$sed -n -e 's/^[-0-9a-f ]*_\(.*\)=.*/\1/p'";\ ! eval $xscan;\ ! $contains '^fprintf$' libc.list >/dev/null 2>&1; then ! eval $xrun ! elif com="$sed -n -e 's/.*\.text n\ \ \ \.//p'";\ ! eval $xscan;\ ! $contains '^fprintf$' libc.list >/dev/null 2>&1; then ! eval $xrun ! elif com="sed -n -e 's/^__.*//' -e 's/[ ]*D[ ]*[0-9]*.*//p'";\ ! eval $xscan;\ ! $contains '^fprintf$' libc.list >/dev/null 2>&1; then ! eval $xrun else ! $nm -p $* 2>/dev/null >libc.tmp ! $grep fprintf libc.tmp > libc.ptf ! if com="$sed -n -e 's/^.* [ADTSIW] *_[_.]*//p' -e 's/^.* [ADTSIW] //p'";\ ! eval $xscan; $contains '^fprintf$' libc.list >/dev/null 2>&1 ! then ! nm_opt='-p' ! eval $xrun ! else ! echo " " ! echo "$nm didn't seem to work right. Trying $ar instead..." >&4 ! com='' ! if $ar t $libc > libc.tmp && $contains '^fprintf$' libc.tmp >/dev/null 2>&1; then ! for thisname in $libnames $libc; do ! $ar t $thisname >>libc.tmp ! done ! $sed -e "s/\\$_o\$//" < libc.tmp > libc.list ! echo "Ok." >&4 ! elif test "X$osname" = "Xos2" && $ar tv $libc > libc.tmp; then ! # Repeat libc to extract forwarders to DLL entries too ! for thisname in $libnames $libc; do ! $ar tv $thisname >>libc.tmp ! # Revision 50 of EMX has bug in $ar. ! # it will not extract forwarders to DLL entries ! # Use emximp which will extract exactly them. ! emximp -o tmp.imp $thisname \ ! 2>/dev/null && \ ! $sed -e 's/^\([_a-zA-Z0-9]*\) .*$/\1/p' \ ! < tmp.imp >>libc.tmp ! $rm tmp.imp ! done ! $sed -e "s/\\$_o\$//" -e 's/^ \+//' < libc.tmp > libc.list ! echo "Ok." >&4 ! else ! echo "$ar didn't seem to work right." >&4 ! echo "Maybe this is a Cray...trying bld instead..." >&4 ! if bld t $libc | $sed -e 's/.*\///' -e "s/\\$_o:.*\$//" > libc.list ! then ! for thisname in $libnames; do ! bld t $libnames | \ ! $sed -e 's/.*\///' -e "s/\\$_o:.*\$//" >>libc.list ! $ar t $thisname >>libc.tmp ! done ! echo "Ok." >&4 ! else ! echo "That didn't work either. Giving up." >&4 ! exit 1 ! fi ! fi ! fi fi ! nm_extract="$com" ! if $test -f /lib/syscalls.exp; then ! echo " " ! echo "Also extracting names from /lib/syscalls.exp for good ole AIX..." >&4 ! $sed -n 's/^\([^ ]*\)[ ]*syscall[0-9]*$/\1/p' /lib/syscalls.exp >>libc.list fi + ;; + esac + $rm -f libnames libpath ! : is a C symbol defined? ! csym='tlook=$1; ! case "$3" in ! -v) tf=libc.tmp; tc=""; tdc="";; ! -a) tf=libc.tmp; tc="[0]"; tdc="[]";; ! *) tlook="^$1\$"; tf=libc.list; tc="()"; tdc="()";; ! esac; ! tx=yes; ! case "$reuseval-$4" in ! true-) ;; ! true-*) tx=no; eval "tval=\$$4"; case "$tval" in "") tx=yes;; esac;; ! esac; ! case "$tx" in ! yes) ! case "$runnm" in ! true) ! if $contains $tlook $tf >/dev/null 2>&1; ! then tval=true; ! else tval=false; ! fi;; ! *) ! echo "int main() { extern short $1$tdc; printf(\"%hd\", $1$tc); }" > t.c; ! if $cc -o t $optimize $ccflags $ldflags t.c $libs >/dev/null 2>&1; ! then tval=true; ! else tval=false; ! fi; ! $rm -f t t.c;; ! esac;; ! *) ! case "$tval" in ! $define) tval=true;; ! *) tval=false;; ! esac;; ! esac; ! eval "$2=$tval"' ! ! : define an is-in-libc? function ! inlibc='echo " "; td=$define; tu=$undef; ! sym=$1; var=$2; eval "was=\$$2"; ! tx=yes; ! case "$reuseval$was" in ! true) ;; ! true*) tx=no;; ! esac; ! case "$tx" in ! yes) ! set $sym tres -f; ! eval $csym; ! case "$tres" in ! true) ! echo "$sym() found." >&4; ! case "$was" in $undef) . ./whoa; esac; eval "$var=\$td";; ! *) ! echo "$sym() NOT found." >&4; ! case "$was" in $define) . ./whoa; esac; eval "$var=\$tu";; ! esac;; ! *) ! case "$was" in ! $define) echo "$sym() found." >&4;; ! *) echo "$sym() NOT found." >&4;; ! esac;; ! esac' ! ! : see if sqrtl exists ! set sqrtl d_sqrtl ! eval $inlibc ! ! case "$ccflags" in ! *-DUSE_LONG_DOUBLE*|*-DUSE_MORE_BITS*) uselongdouble="$define" ;; esac ! case "$uselongdouble" in ! $define|true|[yY]*) dflt='y';; ! *) dflt='n';; esac ! cat <&4 ! *** You requested the use of long doubles but you do not seem to have ! *** the mathematic functions for long doubles. I'm disabling the use ! *** of long doubles. EOM + uselongdouble=$undef + ;; + esac ! : check for length of double ! echo " " ! case "$doublesize" in ! '') ! echo "Checking to see how big your double precision numbers are..." >&4 ! $cat >try.c <<'EOCP' ! #include ! int main() ! { ! printf("%d\n", (int)sizeof(double)); ! exit(0); ! } ! EOCP ! set try ! if eval $compile_ok; then ! doublesize=`./try` ! echo "Your double is $doublesize bytes long." else ! dflt='8' ! echo "(I can't seem to compile the test program. Guessing...)" ! rp="What is the size of a double precision number (in bytes)?" . ./myread ! doublesize="$ans" fi + ;; + esac + $rm -f try.c try + + : check for long doubles + echo " " + echo "Checking to see if you have long double..." >&4 + echo 'int main() { long double x = 7.0; }' > try.c + set try + if eval $compile; then + val="$define" + echo "You have long double." else val="$undef" + echo "You do not have long double." fi ! $rm try.* ! set d_longdbl eval $setvar ! : check for length of long double ! case "${d_longdbl}${longdblsize}" in ! $define) ! echo " " ! echo "Checking to see how big your long doubles are..." >&4 ! $cat >try.c <<'EOCP' ! #include ! int main() ! { ! printf("%d\n", sizeof(long double)); ! } ! EOCP ! set try ! set try ! if eval $compile; then ! longdblsize=`./try$exe_ext` ! echo "Your long doubles are $longdblsize bytes long." ! else ! dflt='8' ! echo " " ! echo "(I can't seem to compile the test program. Guessing...)" >&4 ! rp="What is the size of a long double (in bytes)?" ! . ./myread ! longdblsize="$ans" ! fi ! if $test "X$doublesize" = "X$longdblsize"; then ! echo "(That isn't any different from an ordinary double.)" ! fi ! ;; ! esac ! $rm -f try.* try ! : determine the architecture name echo " " ! if xxx=`./loc arch blurfl $pth`; $test -f "$xxx"; then ! tarch=`arch`"-$osname" ! elif xxx=`./loc uname blurfl $pth`; $test -f "$xxx" ; then ! if uname -m > tmparch 2>&1 ; then ! tarch=`$sed -e 's/ *$//' -e 's/ /_/g' \ ! -e 's/$/'"-$osname/" tmparch` ! else ! tarch="$osname" ! fi ! $rm -f tmparch ! else ! tarch="$osname" ! fi ! case "$myarchname" in ! ''|"$tarch") ;; *) ! echo "(Your architecture name used to be $myarchname.)" ! archname='' ! ;; ! esac ! myarchname="$tarch" ! case "$archname" in ! '') dflt="$tarch";; ! *) dflt="$archname";; ! esac ! rp='What is your architecture name' ! . ./myread ! archname="$ans" ! case "$usethreads" in ! $define) ! echo "Threads selected." >&4 ! case "$archname" in ! *-thread*) echo "...and architecture name already has -thread." >&4 ! ;; ! *) archname="$archname-thread" ! echo "...setting architecture name to $archname." >&4 ! ;; ! esac ! ;; ! esac ! case "$usemultiplicity" in ! $define) ! echo "Multiplicity selected." >&4 ! case "$archname" in ! *-multi*) echo "...and architecture name already has -multi." >&4 ! ;; ! *) archname="$archname-multi" ! echo "...setting architecture name to $archname." >&4 ! ;; ! esac ! ;; ! esac ! case "$use64bitint$use64bitall" in ! *"$define"*) ! case "$archname64" in ! '') ! echo "This architecture is naturally 64-bit, not changing architecture name." >&4 ! ;; ! *) ! case "$use64bitint" in ! "$define") echo "64 bit integers selected." >&4 ;; ! esac ! case "$use64bitall" in ! "$define") echo "Maximal 64 bitness selected." >&4 ;; ! esac ! case "$archname" in ! *-$archname64*) echo "...and architecture name already has $archname64." >&4 ! ;; ! *) archname="$archname-$archname64" ! echo "...setting architecture name to $archname." >&4 ! ;; ! esac ! ;; ! esac ! esac ! case "$uselongdouble" in ! $define) ! echo "Long doubles selected." >&4 ! case "$longdblsize" in ! $doublesize) ! "...but long doubles are equal to doubles, not changing architecture name." >&4 ! ;; ! *) ! case "$archname" in ! *-ld*) echo "...and architecture name already has -ld." >&4 ! ;; ! *) archname="$archname-ld" ! echo "...setting architecture name to $archname." >&4 ! ;; ! esac ! ;; ! esac ! ;; ! esac ! case "$useperlio" in ! $define) ! echo "Perlio selected." >&4 ! case "$archname" in ! *-perlio*) echo "...and architecture name already has -perlio." >&4 ! ;; ! *) archname="$archname-perlio" ! echo "...setting architecture name to $archname." >&4 ! ;; ! esac ! ;; ! esac ! ! : determine root of directory hierarchy where package will be installed. ! case "$prefix" in ! '') ! dflt=`./loc . /usr/local /usr/local /local /opt /usr` ! ;; ! *) ! dflt="$prefix" ! ;; ! esac ! $cat <&4 ! else ! echo "AFS does not seem to be running..." >&4 fi ! : determine installation prefix for where package is to be installed. ! if $afs; then ! $cat <&4 + if $test -r $rsrc/patchlevel.h;then + revision=`awk '/define[ ]+PERL_REVISION/ {print $3}' $rsrc/patchlevel.h` + patchlevel=`awk '/define[ ]+PERL_VERSION/ {print $3}' $rsrc/patchlevel.h` + subversion=`awk '/define[ ]+PERL_SUBVERSION/ {print $3}' $rsrc/patchlevel.h` + api_revision=`awk '/define[ ]+PERL_API_REVISION/ {print $3}' $rsrc/patchlevel.h` + api_version=`awk '/define[ ]+PERL_API_VERSION/ {print $3}' $rsrc/patchlevel.h` + api_subversion=`awk '/define[ ]+PERL_API_SUBVERSION/ {print $3}' $rsrc/patchlevel.h` + else + revision=0 + patchlevel=0 + subversion=0 + api_revision=0 + api_version=0 + api_subversion=0 + fi + $echo "(You have $package version $patchlevel subversion $subversion.)" + case "$osname" in + dos|vms) + : XXX Should be a Configure test for double-dots in filenames. + version=`echo $revision $patchlevel $subversion | \ + $awk '{ printf "%d_%d_%d\n", $1, $2, $3 }'` + api_versionstring=`echo $api_revision $api_version $api_subversion | \ + $awk '{ printf "%d_%d_%d\n", $1, $2, $3 }'` ;; *) ! version=`echo $revision $patchlevel $subversion | \ ! $awk '{ printf "%d.%d.%d\n", $1, $2, $3 }'` ! api_versionstring=`echo $api_revision $api_version $api_subversion | \ ! $awk '{ printf "%d.%d.%d\n", $1, $2, $3 }'` ;; esac + : Special case the 5.005_xx maintenance series, which used 5.005 + : without any subversion label as a subdirectory in $sitelib + if test "${api_revision}${api_version}${api_subversion}" = "550"; then + api_versionstring='5.005' + fi ! : determine installation style ! : For now, try to deduce it from prefix unless it is already set. ! : Reproduce behavior of 5.005 and earlier, maybe drop that in 5.7. ! case "$installstyle" in ! '') case "$prefix" in ! *perl*) dflt='lib';; ! *) dflt='lib/perl5' ;; ! esac ;; + *) dflt="$installstyle" ;; esac ! : Probably not worth prompting for this since we prompt for all ! : the directories individually, and the prompt would be too long and ! : confusing anyway. ! installstyle=$dflt ! : determine where private library files go ! : Usual default is /usr/local/lib/perl5/$version. ! : Also allow things like /opt/perl/lib/$version, since ! : /opt/perl/lib/perl5... would be redundant. ! : The default "style" setting is made in installstyle.U ! case "$installstyle" in ! *lib/perl5*) set dflt privlib lib/$package/$version ;; ! *) set dflt privlib lib/$version ;; esac ! eval $prefixit $cat <reflect ! chmod +x,u+s reflect ! ./reflect >flect 2>&1 ! if $contains "/dev/fd" flect >/dev/null; then ! echo "Congratulations, your kernel has secure setuid scripts!" >&4 ! val="$define" ! else ! $cat <&4 + dflt=n;; + "$undef") + echo "Well, the $hint value is *not* secure." >&4 + dflt=n;; + *) echo "Well, the $hint value *is* secure." >&4 + dflt=y;; + esac + ;; + *) + $rm -f reflect flect + echo "#!$ls" >reflect + chmod +x,u+s reflect + echo >flect + chmod a+w flect + echo '"su" will (probably) prompt you for '"$ans's password." + su $ans -c './reflect >flect' + if $contains "/dev/fd" flect >/dev/null; then + echo "Okay, it looks like setuid scripts are secure." >&4 + dflt=y + else + echo "I don't think setuid scripts are secure." >&4 + dflt=n + fi + ;; + esac + rp='Does your kernel have *secure* setuid scripts?' + . ./myread + case "$ans" in + [yY]*) val="$define";; + *) val="$undef";; + esac fi ! else ! echo "I don't think setuid scripts are secure (no /dev/fd directory)." >&4 ! echo "(That's for file descriptors, not floppy disks.)" ! val="$undef" ! fi ! set d_suidsafe ! eval $setvar ! $rm -f reflect flect + : now see if they want to do setuid emulation echo " " ! val="$undef" ! case "$d_suidsafe" in ! "$define") ! val="$undef" ! echo "No need to emulate SUID scripts since they are secure here." >& 4 ! ;; ! *) $cat <&4 ! echo '#include ' > foo.c ! $cat >fieldn </dev/null | \ ! $grep '^[ ]*#.*stdio\.h' | \ ! while read cline; do ! pos=1 ! set \$cline ! while $test \$# -gt 0; do ! if $test -r \`echo \$1 | $tr -d '"'\`; then ! echo "\$pos" ! exit 0 fi ! shift ! pos=\`expr \$pos + 1\` ! done ! done ! EOF ! chmod +x fieldn ! fieldn=`./fieldn` ! $rm -f foo.c fieldn ! case $fieldn in ! '') pos='???';; ! 1) pos=first;; ! 2) pos=second;; ! 3) pos=third;; ! *) pos="${fieldn}th";; ! esac ! echo "Your cpp writes the filename in the $pos field of the line." ! : locate header file ! $cat >findhdr <" > foo\$\$.c ! $cppstdin $cppminus $cppflags < foo\$\$.c 2>/dev/null | \ ! $grep "^[ ]*#.*\$wanted" | \ ! while read cline; do ! name=\`echo \$cline | $awk "\$awkprg" | $tr -d '"'\` ! case "\$name" in ! *[/\\\\]\$wanted) echo "\$name"; exit 1;; ! *[\\\\/]\$wanted) echo "\$name"; exit 1;; ! *) exit 2;; ! esac; ! done; ! # ! # status = 0: grep returned 0 lines, case statement not executed ! # status = 1: headerfile found ! # status = 2: while loop executed, no headerfile found ! # ! status=\$? ! $rm -f foo\$\$.c; ! if test \$status -eq 1; then ! exit 0; ! fi ! exit 1 ! EOF ! chmod +x findhdr ! : define an alternate in-header-list? function ! inhdr='echo " "; td=$define; tu=$undef; yyy=$@; ! cont=true; xxf="echo \"<\$1> found.\" >&4"; ! case $# in 2) xxnf="echo \"<\$1> NOT found.\" >&4";; ! *) xxnf="echo \"<\$1> NOT found, ...\" >&4";; ! esac; ! case $# in 4) instead=instead;; *) instead="at last";; esac; ! while $test "$cont"; do ! xxx=`./findhdr $1` ! var=$2; eval "was=\$$2"; ! if $test "$xxx" && $test -r "$xxx"; ! then eval $xxf; ! eval "case \"\$$var\" in $undef) . ./whoa; esac"; eval "$var=\$td"; ! cont=""; ! else eval $xxnf; ! eval "case \"\$$var\" in $define) . ./whoa; esac"; eval "$var=\$tu"; fi; ! set $yyy; shift; shift; yyy=$@; ! case $# in 0) cont="";; ! 2) xxf="echo \"but I found <\$1> $instead.\" >&4"; ! xxnf="echo \"and I did not find <\$1> either.\" >&4";; ! *) xxf="echo \"but I found <\$1\> instead.\" >&4"; ! xxnf="echo \"there is no <\$1>, ...\" >&4";; ! esac; ! done; ! while $test "$yyy"; ! do set $yyy; var=$2; eval "was=\$$2"; ! eval "case \"\$$var\" in $define) . ./whoa; esac"; eval "$var=\$tu"; ! set $yyy; shift; shift; yyy=$@; ! done' ! ! : see if this is a malloc.h system ! set malloc.h i_malloc ! eval $inhdr ! ! : see if stdlib is available ! set stdlib.h i_stdlib ! eval $inhdr ! ! : determine which malloc to compile in ! echo " " ! case "$usemymalloc" in ! ''|[yY]*|true|$define) dflt='y' ;; ! *) dflt='n' ;; ! esac ! rp="Do you wish to attempt to use the malloc that comes with $package?" . ./myread + usemymalloc="$ans" case "$ans" in ! y*|true) ! usemymalloc='y' ! mallocsrc='malloc.c' ! mallocobj="malloc$_o" ! d_mymalloc="$define" ! case "$libs" in ! *-lmalloc*) ! : Remove malloc from list of libraries to use ! echo "Removing unneeded -lmalloc from library list" >&4 ! set `echo X $libs | $sed -e 's/-lmalloc / /' -e 's/-lmalloc$//'` ! shift ! libs="$*" ! echo "libs = $libs" >&4 ! ;; ! esac ! ;; ! *) ! usemymalloc='n' ! mallocsrc='' ! mallocobj='' ! d_mymalloc="$undef" ! ;; esac ! : compute the return types of malloc and free ! echo " " ! $cat >malloc.c < ! #include ! #ifdef I_MALLOC ! #include ! #endif ! #ifdef I_STDLIB ! #include ! #endif ! #ifdef TRY_MALLOC ! void *malloc(); ! #endif ! #ifdef TRY_FREE ! void free(); ! #endif ! END ! case "$malloctype" in ! '') ! if $cc $ccflags -c -DTRY_MALLOC malloc.c >/dev/null 2>&1; then ! malloctype='void *' ! else ! malloctype='char *' ! fi ! ;; esac + echo "Your system wants malloc to return '$malloctype', it would seem." >&4 ! case "$freetype" in ! '') ! if $cc $ccflags -c -DTRY_FREE malloc.c >/dev/null 2>&1; then ! freetype='void' else ! freetype='int' ! fi ! ;; esac + echo "Your system uses $freetype free(), it would seem." >&4 + $rm -f malloc.[co] + $cat <&4 ! $cat >prototype.c <<'EOCP' ! int main(int argc, char *argv[]) { ! exit(0);} ! EOCP ! if $cc $ccflags -c prototype.c >prototype.out 2>&1 ; then ! echo "Your C compiler appears to support function prototypes." ! val="$define" ! else ! echo "Your C compiler doesn't seem to understand function prototypes." ! val="$undef" ! fi ! set prototype ! eval $setvar ! $rm -f prototype* ! case "$prototype" in ! "$define") ;; ! *) ansi2knr='ansi2knr' ! echo " " ! cat <&4 ! $me: FATAL ERROR: ! This version of $package can only be compiled by a compiler that ! understands function prototypes. Unfortunately, your C compiler ! $cc $ccflags ! doesn't seem to understand them. Sorry about that. ! ! If GNU cc is available for your system, perhaps you could try that instead. ! ! Eventually, we hope to support building Perl with pre-ANSI compilers. ! If you would like to help in that effort, please contact . ! ! Aborting Configure now. ! EOM ! exit 2 ! ;; ! esac ! ! : determine where public executables go ! echo " " ! set dflt bin bin ! eval $prefixit ! fn=d~ ! rp='Pathname where the public executables will reside?' ! . ./getfile ! if $test "X$ansexp" != "X$binexp"; then ! installbin='' ! fi ! bin="$ans" ! binexp="$ansexp" ! : Change installation prefix, if necessary. ! : XXX Bug? -- ignores Configure -Dinstallprefix setting. ! if $test X"$prefix" != X"$installprefix"; then ! installbin=`echo $binexp | sed "s#^$prefix#$installprefix#"` else ! installbin="$binexp" ! fi ! ! : Find perl5.005 or later. ! echo "Looking for a previously installed perl5.005 or later... " ! case "$perl5" in ! '') for tdir in `echo "$binexp:$PATH" | $sed "s/$path_sep/ /g"`; do ! : Check if this perl is recent and can load a simple module ! if $test -x $tdir/perl && $tdir/perl -Mless -e 'use 5.005;' >/dev/null 2>&1; then ! perl5=$tdir/perl ! break; ! elif $test -x $tdir/perl5 && $tdir/perl5 -Mless -e 'use 5.005;' >/dev/null 2>&1; then ! perl5=$tdir/perl ! break; fi + done + ;; + *) perl5="$perl5" + ;; + esac + case "$perl5" in + '') echo "None found. That's ok.";; + *) echo "Using $perl5." ;; + esac + + : Determine list of previous versions to include in @INC + $cat > getverlist <> getverlist <<'EOPL' + # Can't have leading @ because metaconfig interprets it as a command! + ;@inc_version_list=(); + # XXX Redo to do opendir/readdir? + if (-d $stem) { + chdir($stem); + ;@candidates = glob("5.*"); + } + else { + ;@candidates = (); + } + + # XXX ToDo: These comparisons must be reworked when two-digit + # subversions come along, so that 5.7.10 compares as greater than + # 5.7.3! By that time, hope that 5.6.x is sufficiently + # widespread that we can use the built-in version vectors rather + # than reinventing them here. For 5.6.0, however, we must + # assume this script will likely be run by 5.005_0x. --AD 1/2000. + foreach $d (@candidates) { + if ($d lt $version) { + if ($d ge $api_versionstring) { + unshift(@inc_version_list, grep { -d } "$d/$archname", $d); + } + elsif ($d ge "5.005") { + unshift(@inc_version_list, grep { -d } $d); + } + } + else { + # Skip newer version. I.e. don't look in + # 5.7.0 if we're installing 5.6.1. + } + } + + if (@inc_version_list) { + print join(' ', @inc_version_list); + } + else { + # Blank space to preserve value for next Configure run. + print " "; + } + EOPL + chmod +x getverlist + case "$inc_version_list" in + '') if test -x "$perl5"; then + dflt=`$perl5 getverlist` + else + dflt='none' fi ! ;; ! $undef) dflt='none' ;; ! *) dflt="$inc_version_list" ;; esac ! case "$dflt" in ! ''|' ') dflt=none ;; ! esac ! case "$dflt" in ! 5.005) case "$bincompat5005" in ! $define|true|[yY]*) ;; ! *) dflt=none ;; ! esac ! ;; ! esac ! $cat <<'EOM' ! In order to ease the process of upgrading, this version of perl ! can be configured to use modules built and installed with earlier ! versions of perl that were installed under $prefix. Specify here ! the list of earlier versions that this version of perl should check. ! If Configure detected no earlier versions of perl installed under ! $prefix, then the list will be empty. Answer 'none' to tell perl ! to not search earlier versions. ! The default should almost always be sensible, so if you're not sure, ! just accept the default. ! EOM ! rp='List of earlier versions to include in @INC?' ! . ./myread ! case "$ans" in ! [Nn]one|''|' ') inc_version_list=' ' ;; ! *) inc_version_list="$ans" ;; ! esac ! case "$inc_version_list" in ! ''|' ') ! inc_version_list_init='0';; ! *) inc_version_list_init=`echo $inc_version_list | ! $sed -e 's/^/"/' -e 's/ /","/g' -e 's/$/",0/'` ! ;; ! esac ! $rm -f getverlist ! ! : determine whether to install perl also as /usr/bin/perl ! ! echo " " ! if $test -d /usr/bin -a "X$installbin" != X/usr/bin; then ! $cat <&4 <&4 <&4 + else + echo "Could not find manual pages in source form." >&4 + fi + : determine where manual pages go set man1dir man1dir none eval $prefixit *************** *** 6899,6916 **** /[ ]$myhostname[ . ]/p" > hosts } tmp_re="[ . ]" ! $test x`$awk "/[0-9].*[ ]$myhostname$tmp_re/ { sum++ } END { print sum }" hosts` = x1 || tmp_re="[ ]" ! dflt=.`$awk "/[0-9].*[ ]$myhostname$tmp_re/ {for(i=2; i<=NF;i++) print \\\$i}" \ ! hosts | $sort | $uniq | \ ! $sed -n -e "s/$myhostname\.\([-a-zA-Z0-9_.]\)/\1/p"` ! case `$echo X$dflt` in ! X*\ *) echo "(Several hosts in /etc/hosts matched hostname)" dflt=. ! ;; ! X.) echo "(You do not have fully-qualified names in /etc/hosts)" ! ;; ! esac case "$dflt" in .) tans=`./loc resolv.conf X /etc /usr/etc` --- 7248,7270 ---- /[ ]$myhostname[ . ]/p" > hosts } tmp_re="[ . ]" ! if $test -f hosts; then ! $test x`$awk "/[0-9].*[ ]$myhostname$tmp_re/ { sum++ } END { print sum }" hosts` = x1 || tmp_re="[ ]" ! dflt=.`$awk "/[0-9].*[ ]$myhostname$tmp_re/ {for(i=2; i<=NF;i++) print \\\$i}" \ ! hosts | $sort | $uniq | \ ! $sed -n -e "s/$myhostname\.\([-a-zA-Z0-9_.]\)/\1/p"` ! case `$echo X$dflt` in ! X*\ *) echo "(Several hosts in the database matched hostname)" ! dflt=. ! ;; ! X.) echo "(You do not have fully-qualified names in the hosts database)" ! ;; ! esac ! else ! echo "(I cannot locate a hosts database anywhere)" dflt=. ! fi case "$dflt" in .) tans=`./loc resolv.conf X /etc /usr/etc` *************** *** 6937,6942 **** --- 7291,7301 ---- esac ;; esac + case "$dflt$osname" in + .os390) echo "(Attempting domain name extraction from //'SYS1.TCPPARMS(TCPDATA)')" + dflt=.`awk '/^DOMAINORIGIN/ {print $2}' "//'SYS1.TCPPARMS(TCPDATA)'" 2>/dev/null` + ;; + esac case "$dflt" in .) echo "(Lost all hope -- silly guess then)" dflt='.uucp' *************** *** 7026,7032 **** If you or somebody else will be maintaining perl at your site, please fill in the correct e-mail address here so that they may be contacted if necessary. Currently, the "perlbug" program included with perl ! will send mail to this address in addition to perlbug@perl.com. You may enter "none" for no administrator. EOM --- 7385,7391 ---- If you or somebody else will be maintaining perl at your site, please fill in the correct e-mail address here so that they may be contacted if necessary. Currently, the "perlbug" program included with perl ! will send mail to this address in addition to perlbug@perl.org. You may enter "none" for no administrator. EOM *************** *** 7038,7043 **** --- 7397,7421 ---- . ./myread perladmin="$ans" + : determine whether to only install version-specific parts. + echo " " + $cat <&4 - - *** You requested the use of long doubles but you do not seem to have - *** the mathematic functions for long doubles. I'm disabling the use - *** of long doubles. - - EOM - uselongdouble=$undef - ;; - esac - case "$useperlio" in $define|true|[yY]*) dflt='y';; *) dflt='n';; --- 7543,7548 ---- *************** *** 7313,7394 **** set qgcvt d_qgcvt eval $inlibc - : check for length of double - echo " " - case "$doublesize" in - '') - echo "Checking to see how big your double precision numbers are..." >&4 - $cat >try.c <<'EOCP' - #include - int main() - { - printf("%d\n", (int)sizeof(double)); - exit(0); - } - EOCP - set try - if eval $compile_ok; then - doublesize=`./try` - echo "Your double is $doublesize bytes long." - else - dflt='8' - echo "(I can't seem to compile the test program. Guessing...)" - rp="What is the size of a double precision number (in bytes)?" - . ./myread - doublesize="$ans" - fi - ;; - esac - $rm -f try.c try - - : check for long doubles - echo " " - echo "Checking to see if you have long double..." >&4 - echo 'int main() { long double x = 7.0; }' > try.c - set try - if eval $compile; then - val="$define" - echo "You have long double." - else - val="$undef" - echo "You do not have long double." - fi - $rm try.* - set d_longdbl - eval $setvar - - : check for length of long double - case "${d_longdbl}${longdblsize}" in - $define) - echo " " - echo "Checking to see how big your long doubles are..." >&4 - $cat >try.c <<'EOCP' - #include - int main() - { - printf("%d\n", sizeof(long double)); - } - EOCP - set try - set try - if eval $compile; then - longdblsize=`./try$exe_ext` - echo "Your long doubles are $longdblsize bytes long." - else - dflt='8' - echo " " - echo "(I can't seem to compile the test program. Guessing...)" >&4 - rp="What is the size of a long double (in bytes)?" - . ./myread - longdblsize="$ans" - fi - if $test "X$doublesize" = "X$longdblsize"; then - echo "(That isn't any different from an ordinary double.)" - fi - ;; - esac - $rm -f try.* try - echo " " if $test X"$d_longdbl" = X"$define"; then --- 7602,7607 ---- *************** *** 7410,7416 **** case "$yyy" in 123.456) sPRIfldbl='"f"'; sPRIgldbl='"g"'; sPRIeldbl='"e"'; ! sPRIFldbl='"F"'; sPRIGldbl='"G"'; sPRIEldbl='"E"'; echo "We will use %f." ;; esac --- 7623,7629 ---- case "$yyy" in 123.456) sPRIfldbl='"f"'; sPRIgldbl='"g"'; sPRIeldbl='"e"'; ! sPRIFUldbl='"F"'; sPRIGUldbl='"G"'; sPRIEUldbl='"E"'; echo "We will use %f." ;; esac *************** *** 7432,7438 **** case "$yyy" in 123.456) sPRIfldbl='"llf"'; sPRIgldbl='"llg"'; sPRIeldbl='"lle"'; ! sPRIFldbl='"llF"'; sPRIGldbl='"llG"'; sPRIEldbl='"llE"'; echo "We will use %llf." ;; esac --- 7645,7651 ---- case "$yyy" in 123.456) sPRIfldbl='"llf"'; sPRIgldbl='"llg"'; sPRIeldbl='"lle"'; ! sPRIFUldbl='"llF"'; sPRIGUldbl='"llG"'; sPRIEUldbl='"llE"'; echo "We will use %llf." ;; esac *************** *** 7454,7460 **** case "$yyy" in 123.456) sPRIfldbl='"Lf"'; sPRIgldbl='"Lg"'; sPRIeldbl='"Le"'; ! sPRIFldbl='"LF"'; sPRIGldbl='"LG"'; sPRIEldbl='"LE"'; echo "We will use %Lf." ;; esac --- 7667,7673 ---- case "$yyy" in 123.456) sPRIfldbl='"Lf"'; sPRIgldbl='"Lg"'; sPRIeldbl='"Le"'; ! sPRIFUldbl='"LF"'; sPRIGUldbl='"LG"'; sPRIEUldbl='"LE"'; echo "We will use %Lf." ;; esac *************** *** 7476,7482 **** case "$yyy" in 123.456) sPRIfldbl='"lf"'; sPRIgldbl='"lg"'; sPRIeldbl='"le"'; ! sPRIFldbl='"lF"'; sPRIGldbl='"lG"'; sPRIEldbl='"lE"'; echo "We will use %lf." ;; esac --- 7689,7695 ---- case "$yyy" in 123.456) sPRIfldbl='"lf"'; sPRIgldbl='"lg"'; sPRIeldbl='"le"'; ! sPRIFUldbl='"lF"'; sPRIGUldbl='"lG"'; sPRIEUldbl='"lE"'; echo "We will use %lf." ;; esac *************** *** 7485,7490 **** --- 7698,7705 ---- if $test X"$sPRIfldbl" = X; then echo "Cannot figure out how to print long doubles." >&4 + else + sSCNfldbl=$sPRIfldbl # expect consistency fi $rm -f try try.* *************** *** 7493,7520 **** case "$sPRIfldbl" in '') d_PRIfldbl="$undef"; d_PRIgldbl="$undef"; d_PRIeldbl="$undef"; ! d_PRIFldbl="$undef"; d_PRIGldbl="$undef"; d_PRIEldbl="$undef"; ;; *) d_PRIfldbl="$define"; d_PRIgldbl="$define"; d_PRIeldbl="$define"; ! d_PRIFldbl="$define"; d_PRIGldbl="$define"; d_PRIEldbl="$define"; ;; esac : Check how to convert floats to strings. ! if test "X$d_Gconvert" = X; then ! echo " " ! echo "Checking for an efficient way to convert floats to strings." ! echo " " > try.c ! case "$uselongdouble" in ! "$define") echo "#define USE_LONG_DOUBLE" >>try.c ;; ! esac ! case "$d_longdbl" in ! "$define") echo "#define HAS_LONG_DOUBLE" >>try.c ;; ! esac ! case "$d_PRIgldbl" in ! "$define") echo "#define HAS_PRIgldbl" >>try.c ;; ! esac ! $cat >>try.c < try.c ! case "$uselongdouble" in ! "$define") echo "#define USE_LONG_DOUBLE" >>try.c ;; ! esac ! case "$d_longdbl" in ! "$define") echo "#define HAS_LONG_DOUBLE" >>try.c ;; ! esac ! case "$d_PRIgldbl" in ! "$define") echo "#define HAS_PRIgldbl" >>try.c ;; ! esac ! $cat >>try.c <&4 ! if ./try; then ! echo "I'll use $xxx_convert to convert floats into a string." >&4 ! break; ! else ! echo "...But $xxx_convert didn't work as I expected." ! fi else ! echo "$xxx_convert NOT found." >&4 fi ! done ! ! case "$xxx_convert" in ! gconvert) d_Gconvert='gconvert((x),(n),(t),(b))' ;; ! gcvt) d_Gconvert='gcvt((x),(n),(b))' ;; ! qgcvt) d_Gconvert='qgcvt((x),(n),(b))' ;; ! *) case "$uselongdouble$d_longdbl$d_PRIgldbl" in ! "$define$define$define") ! d_Gconvert="sprintf((b),\"%.*$sPRIgldbl\",(n),(x))" ;; ! *) d_Gconvert='sprintf((b),"%.*g",(n),(x))' ;; ! esac ! ;; ! esac ! fi : Initialize h_fcntl h_fcntl=false --- 7825,7886 ---- Gconvert((DOUBLETYPE)-100000.0, 8, 0, buf); checkit("-100000", buf); + Gconvert((DOUBLETYPE)123.456, 8, 0, buf); + checkit("123.456", buf); + exit(0); } EOP ! case "$d_Gconvert" in ! gconvert*) xxx_list='gconvert gcvt sprintf' ;; ! gcvt*) xxx_list='gcvt gconvert sprintf' ;; ! sprintf*) xxx_list='sprintf gconvert gcvt' ;; ! *) xxx_list='gconvert gcvt sprintf' ;; ! esac ! case "$d_longdbl$uselongdouble$d_PRIgldbl" in ! "$define$define$define") ! # for long doubles prefer first qgcvt, then sprintf ! xxx_list="`echo $xxx_list|sed s/sprintf//`" ! xxx_list="sprintf $xxx_list" ! case "$d_qgcvt" in ! "$define") xxx_list="qgcvt $xxx_list" ;; ! esac ! ;; ! esac ! for xxx_convert in $xxx_list; do ! echo "Trying $xxx_convert..." ! $rm -f try try$_o ! set try -DTRY_$xxx_convert ! if eval $compile; then ! echo "$xxx_convert() found." >&4 ! if ./try; then ! echo "I'll use $xxx_convert to convert floats into a string." >&4 ! break; else ! echo "...But $xxx_convert didn't work as I expected." fi ! else ! echo "$xxx_convert NOT found." >&4 ! fi ! done ! ! case "$xxx_convert" in ! gconvert) d_Gconvert='gconvert((x),(n),(t),(b))' ;; ! gcvt) d_Gconvert='gcvt((x),(n),(b))' ;; ! qgcvt) d_Gconvert='qgcvt((x),(n),(b))' ;; ! *) case "$uselongdouble$d_longdbl$d_PRIgldbl" in ! "$define$define$define") ! d_Gconvert="sprintf((b),\"%.*\"$sPRIgldbl,(n),(x))" ;; ! *) d_Gconvert='sprintf((b),"%.*g",(n),(x))' ;; ! esac ! ;; ! esac ! ! : see if _fwalk exists ! set fwalk d__fwalk ! eval $inlibc : Initialize h_fcntl h_fcntl=false *************** *** 7684,7698 **** EOCP : check sys/file.h first, no particular reason here if $test `./findhdr sys/file.h` && \ ! $cc $cppflags -DI_SYS_FILE -o access access.c >/dev/null 2>&1 ; then h_sysfile=true; echo " defines the *_OK access constants." >&4 elif $test `./findhdr fcntl.h` && \ ! $cc $cppflags -DI_FCNTL -o access access.c >/dev/null 2>&1 ; then h_fcntl=true; echo " defines the *_OK access constants." >&4 elif $test `./findhdr unistd.h` && \ ! $cc $cppflags -DI_UNISTD -o access access.c >/dev/null 2>&1 ; then echo " defines the *_OK access constants." >&4 else echo "I can't find the four *_OK access constants--I'll use mine." >&4 --- 7913,7927 ---- EOCP : check sys/file.h first, no particular reason here if $test `./findhdr sys/file.h` && \ ! $cc -o access $cppflags -DI_SYS_FILE access.c >/dev/null 2>&1 ; then h_sysfile=true; echo " defines the *_OK access constants." >&4 elif $test `./findhdr fcntl.h` && \ ! $cc -o access $cppflags -DI_FCNTL access.c >/dev/null 2>&1 ; then h_fcntl=true; echo " defines the *_OK access constants." >&4 elif $test `./findhdr unistd.h` && \ ! $cc -o access $cppflags -DI_UNISTD access.c >/dev/null 2>&1 ; then echo " defines the *_OK access constants." >&4 else echo "I can't find the four *_OK access constants--I'll use mine." >&4 *************** *** 7782,7791 **** exit(1); } EOP ! if $cc -DTRY_BSD_PGRP $ccflags $ldflags -o set set.c $libs >/dev/null 2>&1 && ./set; then echo "You have to use getpgrp(pid) instead of getpgrp()." >&4 val="$define" ! elif $cc $ccflags $ldflags -o set set.c $libs >/dev/null 2>&1 && ./set; then echo "You have to use getpgrp() instead of getpgrp(pid)." >&4 val="$undef" else --- 8011,8020 ---- exit(1); } EOP ! if $cc -o set -DTRY_BSD_PGRP $ccflags $ldflags set.c $libs >/dev/null 2>&1 && ./set; then echo "You have to use getpgrp(pid) instead of getpgrp()." >&4 val="$define" ! elif $cc -o set $ccflags $ldflags set.c $libs >/dev/null 2>&1 && ./set; then echo "You have to use getpgrp() instead of getpgrp(pid)." >&4 val="$undef" else *************** *** 7844,7853 **** exit(1); } EOP ! if $cc -DTRY_BSD_PGRP $ccflags $ldflags -o set set.c $libs >/dev/null 2>&1 && ./set; then echo 'You have to use setpgrp(pid,pgrp) instead of setpgrp().' >&4 val="$define" ! elif $cc $ccflags $ldflags -o set set.c $libs >/dev/null 2>&1 && ./set; then echo 'You have to use setpgrp() instead of setpgrp(pid,pgrp).' >&4 val="$undef" else --- 8073,8082 ---- exit(1); } EOP ! if $cc -o set -DTRY_BSD_PGRP $ccflags $ldflags set.c $libs >/dev/null 2>&1 && ./set; then echo 'You have to use setpgrp(pid,pgrp) instead of setpgrp().' >&4 val="$define" ! elif $cc -o set $ccflags $ldflags set.c $libs >/dev/null 2>&1 && ./set; then echo 'You have to use setpgrp() instead of setpgrp(pid,pgrp).' >&4 val="$undef" else *************** *** 8399,8406 **** : Call the object file tmp-dyna.o in case dlext=o. if $cc $ccflags $cccdlflags -c dyna.c > /dev/null 2>&1 && mv dyna${_o} tmp-dyna${_o} > /dev/null 2>&1 && ! $ld $lddlflags -o dyna.$dlext tmp-dyna${_o} > /dev/null 2>&1 && ! $cc $ccflags -o fred $ldflags $cccdlflags $ccdlflags fred.c $libs > /dev/null 2>&1; then xxx=`./fred` case $xxx in 1) echo "Test program failed using dlopen." >&4 --- 8628,8635 ---- : Call the object file tmp-dyna.o in case dlext=o. if $cc $ccflags $cccdlflags -c dyna.c > /dev/null 2>&1 && mv dyna${_o} tmp-dyna${_o} > /dev/null 2>&1 && ! $ld -o dyna.$dlext $lddlflags tmp-dyna${_o} > /dev/null 2>&1 && ! $cc -o fred $ccflags $ldflags $cccdlflags $ccdlflags fred.c $libs > /dev/null 2>&1; then xxx=`./fred` case $xxx in 1) echo "Test program failed using dlopen." >&4 *************** *** 8479,8488 **** set endservent d_endsent eval $inlibc - : see if endspent exists - set endspent d_endspent - eval $inlibc - : Locate the flags for 'open()' echo " " $cat >open3.c <<'EOCP' --- 8708,8713 ---- *************** *** 8643,8650 **** --- 8868,8879 ---- int ret; close(pd[1]); /* Parent reads from pd[0] */ close(pu[0]); /* Parent writes (blocking) to pu[1] */ + #ifdef F_SETFL if (-1 == fcntl(pd[0], F_SETFL, MY_O_NONBLOCK)) exit(1); + #else + exit(4); + #endif signal(SIGALRM, blech); alarm(5); if ((ret = read(pd[0], buf, 1)) > 0) /* Nothing to read! */ *************** *** 8691,8696 **** --- 8920,8926 ---- 1) echo "Could not perform non-blocking setting!";; 2) echo "I did a successful read() for something that was not there!";; 3) echo "Hmm... non-blocking I/O does not seem to be working!";; + 4) echo "Could not find F_SETFL!";; *) echo "Something terribly wrong happened during testing.";; esac rd_nodata=`$cat try.ret` *************** *** 8756,8761 **** --- 8986,9039 ---- set fcntl d_fcntl eval $inlibc + echo " " + : See if fcntl-based locking works. + $cat >try.c <<'EOCP' + #include + #include + #include + int main() { + #if defined(F_SETLK) && defined(F_SETLKW) + struct flock flock; + int retval, fd; + fd = open("try.c", O_RDONLY); + flock.l_type = F_RDLCK; + flock.l_whence = SEEK_SET; + flock.l_start = flock.l_len = 0; + retval = fcntl(fd, F_SETLK, &flock); + close(fd); + (retval < 0 ? exit(2) : exit(0)); + #else + exit(2); + #endif + } + EOCP + echo "Checking if fcntl-based file locking works... " + case "$d_fcntl" in + "$define") + set try + if eval $compile_ok; then + if ./try; then + echo "Yes, it seems to work." + val="$define" + else + echo "Nope, it didn't work." + val="$undef" + fi + else + echo "I'm unable to compile the test program, so I'll assume not." + val="$undef" + fi + ;; + *) val="$undef"; + echo "Nope, since you don't even have fcntl()." + ;; + esac + set d_fcntl_can_lock + eval $setvar + $rm -f try* + + hasfield='varname=$1; struct=$2; field=$3; shift; shift; shift; while $test $# -ge 2; do case "$1" in *************** *** 9062,9067 **** --- 9340,9349 ---- set d_fpos64_t eval $setvar + : see if frexpl exists + set frexpl d_frexpl + eval $inlibc + hasstruct='varname=$1; struct=$2; shift; shift; while $test $# -ge 2; do case "$1" in *************** *** 9128,9133 **** --- 9410,9419 ---- eval $inlibc + : see if fsync exists + set fsync d_fsync + eval $inlibc + : see if ftello exists set ftello d_ftello eval $inlibc *************** *** 9139,9144 **** --- 9425,9434 ---- set getcwd d_getcwd eval $inlibc + : see if getespwnam exists + set getespwnam d_getespwnam + eval $inlibc + : see if getfsstat exists set getfsstat d_getfsstat *************** *** 9283,9288 **** --- 9573,9582 ---- set d_getnetprotos getnetent $i_netdb netdb.h eval $hasproto + : see if getpagesize exists + set getpagesize d_getpagsz + eval $inlibc + : see if getprotobyname exists set getprotobyname d_getpbyname *************** *** 9317,9322 **** --- 9611,9620 ---- set d_getprotoprotos getprotoent $i_netdb netdb.h eval $hasproto + : see if getprpwnam exists + set getprpwnam d_getprpwnam + eval $inlibc + : see if getpwent exists set getpwent d_getpwent eval $inlibc *************** *** 9339,9348 **** set d_getservprotos getservent $i_netdb netdb.h eval $hasproto - : see if getspent exists - set getspent d_getspent - eval $inlibc - : see if getspnam exists set getspnam d_getspnam eval $inlibc --- 9637,9642 ---- *************** *** 9552,9557 **** --- 9846,9859 ---- eval $setvar $rm -f isascii* + : see if isnan exists + set isnan d_isnan + eval $inlibc + + : see if isnanl exists + set isnanl d_isnanl + eval $inlibc + : see if killpg exists set killpg d_killpg eval $inlibc *************** *** 9634,9640 **** set try if eval $compile; then val="$define" ! echo "You have have long long." else val="$undef" echo "You do not have long long." --- 9936,9942 ---- set try if eval $compile; then val="$define" ! echo "You have long long." else val="$undef" echo "You do not have long long." *************** *** 9771,9776 **** --- 10073,10082 ---- + : see if modfl exists + set modfl d_modfl + eval $inlibc + : see if mprotect exists set mprotect d_mprotect eval $inlibc *************** *** 9933,9938 **** --- 10239,10275 ---- charsize="$ans" $rm -f try.c try + : check for volatile keyword + echo " " + echo 'Checking to see if your C compiler knows about "volatile"...' >&4 + $cat >try.c <<'EOCP' + int main() + { + typedef struct _goo_struct goo_struct; + goo_struct * volatile goo = ((goo_struct *)0); + struct _goo_struct { + long long_int; + int reg_int; + char char_var; + }; + typedef unsigned short foo_t; + char *volatile foo; + volatile int bar; + volatile foo_t blech; + foo = foo; + } + EOCP + if $cc -c $ccflags try.c >/dev/null 2>&1 ; then + val="$define" + echo "Yup, it does." + else + val="$undef" + echo "Nope, it doesn't." + fi + set d_volatile + eval $setvar + $rm -f try.* + echo " " $echo "Choosing the C types to be used for Perl's internal types..." >&4 *************** *** 10111,10141 **** ;; esac ! $echo "Checking whether your NVs can preserve your UVs..." >&4 $cat <try.c #include int main() { ! $uvtype k = ($uvtype)~0, l; $nvtype d; ! l = k; ! d = ($nvtype)l; ! l = ($uvtype)d; ! if (l == k) ! printf("preserve\n"); exit(0); } EOP set try if eval $compile; then ! case "`./try$exe_ext`" in ! preserve) d_nv_preserves_uv="$define" ;; ! esac ! fi ! case "$d_nv_preserves_uv" in ! $define) $echo "Yes, they can." 2>&1 ;; ! *) $echo "No, they can't." 2>&1 ! d_nv_preserves_uv="$undef" ! ;; esac $rm -f try.* try --- 10448,10511 ---- ;; esac ! $echo "Checking how many bits of your UVs your NVs can preserve..." >&4 ! : volatile so that the compiler has to store it out to memory. ! if test X"$d_volatile" = X"$define"; then ! volatile=volatile ! fi $cat <try.c #include + #include + #include + #ifdef SIGFPE + $volatile int bletched = 0; + $signal_t blech(s) int s; { bletched = 1; } + #endif int main() { ! $uvtype u = 0; $nvtype d; ! int n = 8 * $uvsize; ! int i; ! #ifdef SIGFPE ! signal(SIGFPE, blech); ! #endif ! ! for (i = 0; i < n; i++) { ! u = u << 1 | ($uvtype)1; ! d = ($nvtype)u; ! if (($uvtype)d != u) ! break; ! if (d <= 0) ! break; ! d = ($nvtype)(u - 1); ! if (($uvtype)d != (u - 1)) ! break; ! #ifdef SIGFPE ! if (bletched) { ! break; ! #endif ! } ! } ! printf("%d\n", ((i == n) ? -n : i)); exit(0); } EOP set try + + d_nv_preserves_uv="$undef" if eval $compile; then ! d_nv_preserves_uv_bits="`./try$exe_ext`" ! fi ! case "$d_nv_preserves_uv_bits" in ! \-[1-9]*) ! d_nv_preserves_uv_bits=`expr 0 - $d_nv_preserves_uv_bits` ! $echo "Your NVs can preserve all $d_nv_preserves_uv_bits bits of your UVs." 2>&1 ! d_nv_preserves_uv="$define" ! ;; ! [1-9]*) $echo "Your NVs can preserve only $d_nv_preserves_uv_bits bits of your UVs." 2>&1 ! d_nv_preserves_uv="$undef" ;; ! *) $echo "Can't figure out how many bits your NVs preserve." 2>&1 ! d_nv_preserves_uv_bits="$undef" ;; esac $rm -f try.* try *************** *** 10653,10658 **** --- 11023,11033 ---- set d_sanemcmp eval $setvar + : see if prototype for sbrk is available + echo " " + set d_sbrkproto sbrk $i_unistd unistd.h + eval $hasproto + : see if select exists set select d_select eval $inlibc *************** *** 10934,10939 **** --- 11309,11318 ---- set setpriority d_setprior eval $inlibc + : see if setproctitle exists + set setproctitle d_setproctitle + eval $inlibc + : see if setpwent exists set setpwent d_setpwent eval $inlibc *************** *** 10966,10975 **** set setsid d_setsid eval $inlibc - : see if setspent exists - set setspent d_setspent - eval $inlibc - : see if setvbuf exists set setvbuf d_setvbuf eval $inlibc --- 11345,11350 ---- *************** *** 10998,11021 **** *) dflt='n';; esac echo "$package can use the sfio library, but it is experimental." rp="You seem to have sfio available, do you want to try using it?" . ./myread case "$ans" in ! y|Y) ;; *) echo "Ok, avoiding sfio this time. I'll use stdio instead." val="$undef" - : Remove sfio from list of libraries to use - set `echo X $libs | $sed -e 's/-lsfio / /' -e 's/-lsfio$//'` - shift - libs="$*" - echo "libs = $libs" >&4 ;; esac ;; *) case "$usesfio" in true|$define|[yY]*) ! echo "Sorry, cannot find sfio on this machine" >&4 ! echo "Ignoring your setting of usesfio=$usesfio" >&4 ;; esac ;; --- 11373,11401 ---- *) dflt='n';; esac echo "$package can use the sfio library, but it is experimental." + case "$useperlio" in + "$undef") + echo "For sfio also the PerlIO abstraction layer is needed." + echo "Earlier you said you wouldn't want that." + ;; + esac rp="You seem to have sfio available, do you want to try using it?" . ./myread case "$ans" in ! y|Y) echo "Ok, turning on both sfio and PerlIO, then." ! useperlio="$define" ! val="$define" ! ;; *) echo "Ok, avoiding sfio this time. I'll use stdio instead." val="$undef" ;; esac ;; *) case "$usesfio" in true|$define|[yY]*) ! echo "Sorry, cannot find sfio on this machine." >&4 ! echo "Ignoring your setting of usesfio=$usesfio." >&4 ! val="$undef" ;; esac ;; *************** *** 11026,11031 **** --- 11406,11421 ---- $define) usesfio='true';; *) usesfio='false';; esac + case "$d_sfio" in + $define) ;; + *) : Remove sfio from list of libraries to use + set `echo X $libs | $sed -e 's/-lsfio / /' -e 's/-lsfio$//'` + shift + libs="$*" + echo "libs = $libs" >&4 + ;; + esac + : see if shmctl exists set shmctl d_shmctl *************** *** 11184,11189 **** --- 11574,11583 ---- eval $setvar $rm -f try.c try + : see if socks5_init exists + set socks5_init d_socks5_init + eval $inlibc + : see if sys/stat.h is available set sys/stat.h i_sysstat eval $inhdr *************** *** 11237,11243 **** : see if _ptr and _cnt from stdio act std echo " " ! if $contains '_IO_fpos_t' `./findhdr stdio.h` `./findhdr libio.h` >/dev/null 2>&1 ; then echo "(Looks like you have stdio.h from Linux.)" case "$stdio_ptr" in '') stdio_ptr='((fp)->_IO_read_ptr)' --- 11631,11658 ---- : see if _ptr and _cnt from stdio act std echo " " ! ! if $contains '_lbfsize' `./findhdr stdio.h` >/dev/null 2>&1 ; then ! echo "(Looks like you have stdio.h from BSD.)" ! case "$stdio_ptr" in ! '') stdio_ptr='((fp)->_p)' ! ptr_lval=$define ! ;; ! *) ptr_lval=$d_stdio_ptr_lval;; ! esac ! case "$stdio_cnt" in ! '') stdio_cnt='((fp)->_r)' ! cnt_lval=$define ! ;; ! *) cnt_lval=$d_stdio_cnt_lval;; ! esac ! case "$stdio_base" in ! '') stdio_base='((fp)->_ub._base ? (fp)->_ub._base : (fp)->_bf._base)';; ! esac ! case "$stdio_bufsiz" in ! '') stdio_bufsiz='((fp)->_ub._base ? (fp)->_ub._size : (fp)->_bf._size)';; ! esac ! elif $contains '_IO_fpos_t' `./findhdr stdio.h` `./findhdr libio.h` >/dev/null 2>&1 ; then echo "(Looks like you have stdio.h from Linux.)" case "$stdio_ptr" in '') stdio_ptr='((fp)->_IO_read_ptr)' *************** *** 11277,11282 **** --- 11692,11698 ---- '') stdio_bufsiz='((fp)->_cnt + (fp)->_ptr - (fp)->_base)';; esac fi + : test whether _ptr and _cnt really work echo "Checking how std your stdio is..." >&4 $cat >try.c <&4 + $cat >try.c < + /* Can we scream? */ + /* Eat dust sed :-) */ + /* In the buffer space, no one can hear you scream. */ + #define FILE_ptr(fp) $stdio_ptr + #define FILE_cnt(fp) $stdio_cnt + #include + int main() { + FILE *fp = fopen("try.c", "r"); + int c; + char *ptr; + size_t cnt; + if (!fp) { + puts("Fail even to read"); + exit(1); + } + c = getc(fp); /* Read away the first # */ + if (c == EOF) { + puts("Fail even to read"); + exit(1); + } + if (!( + 18 <= FILE_cnt(fp) && + strncmp(FILE_ptr(fp), "include \n", 18) == 0 + )) { + puts("Fail even to read"); + exit (1); + } + ptr = (char*) FILE_ptr(fp); + cnt = (size_t)FILE_cnt(fp); + + FILE_ptr(fp) += 42; + + if ((char*)FILE_ptr(fp) != (ptr + 42)) { + printf("Fail ptr check %p != %p", FILE_ptr(fp), (ptr + 42)); + exit (1); + } + if (FILE_cnt(fp) <= 20) { + printf ("Fail (<20 chars to test)"); + exit (1); + } + if (strncmp(FILE_ptr(fp), "Eat dust sed :-) */\n", 20) != 0) { + puts("Fail compare"); + exit (1); + } + if (cnt == FILE_cnt(fp)) { + puts("Pass_unchanged"); + exit (0); + } + if (FILE_cnt(fp) == (cnt - 42)) { + puts("Pass_changed"); + exit (0); + } + printf("Fail count was %d now %d\n", cnt, FILE_cnt(fp)); + return 1; + + } + EOP + set try + if eval $compile; then + case `./try$exe_ext` in + Pass_changed) + echo "Increasing ptr in your stdio decreases cnt by the same amount. Good." >&4 + d_stdio_ptr_lval_sets_cnt="$define" ;; + Pass_unchanged) + echo "Increasing ptr in your stdio leaves cnt unchanged. Good." >&4 + d_stdio_ptr_lval_nochange_cnt="$define" ;; + Fail*) + echo "Increasing ptr in your stdio didn't do exactly what I expected. We'll not be doing that then." >&4 ;; + *) + echo "It appears attempting to set ptr in your stdio is a bad plan." >&4 ;; + esac + else + echo "It seems we can't set ptr in your stdio. Nevermind." >&4 + fi + $rm -f try.c try + ;; + esac + : see if _base is also standard val="$undef" case "$d_stdstdio" in *************** *** 11490,11495 **** --- 11993,12001 ---- #ifdef __hpux #define strtoll __strtoll #endif + #ifdef __EMX__ + #define strtoll _strtoll + #endif #include extern long long int strtoll(char *s, char **, int); static int bad = 0; *************** *** 11516,11522 **** EOCP set try if eval $compile; then ! case "`./try`" in ok) echo "Your strtoll() seems to be working okay." ;; *) cat <&4 Your strtoll() doesn't seem to be working okay. --- 12022,12029 ---- EOCP set try if eval $compile; then ! yyy=`./try` ! case "$yyy" in ok) echo "Your strtoll() seems to be working okay." ;; *) cat <&4 Your strtoll() doesn't seem to be working okay. *************** *** 11524,11529 **** --- 12031,12039 ---- d_strtoll="$undef" ;; esac + else + echo "(I can't seem to compile the test program--assuming it doesn't)" + d_strtoll="$undef" fi ;; esac *************** *** 11774,11810 **** set d_void_closedir eval $setvar $rm -f closedir* - : check for volatile keyword - echo " " - echo 'Checking to see if your C compiler knows about "volatile"...' >&4 - $cat >try.c <<'EOCP' - int main() - { - typedef struct _goo_struct goo_struct; - goo_struct * volatile goo = ((goo_struct *)0); - struct _goo_struct { - long long_int; - int reg_int; - char char_var; - }; - typedef unsigned short foo_t; - char *volatile foo; - volatile int bar; - volatile foo_t blech; - foo = foo; - } - EOCP - if $cc -c $ccflags try.c >/dev/null 2>&1 ; then - val="$define" - echo "Yup, it does." - else - val="$undef" - echo "Nope, it doesn't." - fi - set d_volatile - eval $setvar - $rm -f try.* - : see if there is a wait4 set wait4 d_wait4 eval $inlibc --- 12284,12289 ---- *************** *** 12412,12425 **** set tebcdic if eval $compile_ok; then if ./tebcdic; then ! echo "You have EBCDIC." >&4 val="$define" else ! echo "Nope, no EBCDIC, probably ASCII or some ISO Latin." >&4 fi else echo "I'm unable to compile the test program." >&4 ! echo "I'll assume ASCII or some ISO Latin." >&4 fi $rm -f tebcdic.c tebcdic set ebcdic --- 12891,12904 ---- set tebcdic if eval $compile_ok; then if ./tebcdic; then ! echo "You seem to speak EBCDIC." >&4 val="$define" else ! echo "Nope, no EBCDIC, probably ASCII or some ISO Latin. Or UTF8." >&4 fi else echo "I'm unable to compile the test program." >&4 ! echo "I'll assume ASCII or some ISO Latin. Or UTF8." >&4 fi $rm -f tebcdic.c tebcdic set ebcdic *************** *** 12827,12833 **** case "$yyy" in 12345678901) sPRId64='"d"'; sPRIi64='"i"'; sPRIu64='"u"'; ! sPRIo64='"o"'; sPRIx64='"x"'; sPRIX64='"X"'; echo "We will use %d." ;; esac --- 13306,13312 ---- case "$yyy" in 12345678901) sPRId64='"d"'; sPRIi64='"i"'; sPRIu64='"u"'; ! sPRIo64='"o"'; sPRIx64='"x"'; sPRIXU64='"X"'; echo "We will use %d." ;; esac *************** *** 12849,12855 **** case "$yyy" in 12345678901) sPRId64='"ld"'; sPRIi64='"li"'; sPRIu64='"lu"'; ! sPRIo64='"lo"'; sPRIx64='"lx"'; sPRIX64='"lX"'; echo "We will use %ld." ;; esac --- 13328,13334 ---- case "$yyy" in 12345678901) sPRId64='"ld"'; sPRIi64='"li"'; sPRIu64='"lu"'; ! sPRIo64='"lo"'; sPRIx64='"lx"'; sPRIXU64='"lX"'; echo "We will use %ld." ;; esac *************** *** 12872,12878 **** case "$yyy" in 12345678901) sPRId64=PRId64; sPRIi64=PRIi64; sPRIu64=PRIu64; ! sPRIo64=PRIo64; sPRIx64=PRIx64; sPRIX64=PRIX64; echo "We will use the C9X style." ;; esac --- 13351,13357 ---- case "$yyy" in 12345678901) sPRId64=PRId64; sPRIi64=PRIi64; sPRIu64=PRIu64; ! sPRIo64=PRIo64; sPRIx64=PRIx64; sPRIXU64=PRIXU64; echo "We will use the C9X style." ;; esac *************** *** 12884,12890 **** #include #include int main() { ! long long q = 12345678901LL; /* AIX cc requires the LL prefix. */ printf("%lld\n", q); } EOCP --- 13363,13369 ---- #include #include int main() { ! long long q = 12345678901LL; /* AIX cc requires the LL suffix. */ printf("%lld\n", q); } EOCP *************** *** 12894,12900 **** case "$yyy" in 12345678901) sPRId64='"lld"'; sPRIi64='"lli"'; sPRIu64='"llu"'; ! sPRIo64='"llo"'; sPRIx64='"llx"'; sPRIX64='"llX"'; echo "We will use the %lld style." ;; esac --- 13373,13379 ---- case "$yyy" in 12345678901) sPRId64='"lld"'; sPRIi64='"lli"'; sPRIu64='"llu"'; ! sPRIo64='"llo"'; sPRIx64='"llx"'; sPRIXU64='"llX"'; echo "We will use the %lld style." ;; esac *************** *** 12916,12922 **** case "$yyy" in 12345678901) sPRId64='"Ld"'; sPRIi64='"Li"'; sPRIu64='"Lu"'; ! sPRIo64='"Lo"'; sPRIx64='"Lx"'; sPRIX64='"LX"'; echo "We will use %Ld." ;; esac --- 13395,13401 ---- case "$yyy" in 12345678901) sPRId64='"Ld"'; sPRIi64='"Li"'; sPRIu64='"Lu"'; ! sPRIo64='"Lo"'; sPRIx64='"Lx"'; sPRIXU64='"LX"'; echo "We will use %Ld." ;; esac *************** *** 12938,12944 **** case "$yyy" in 12345678901) sPRId64='"qd"'; sPRIi64='"qi"'; sPRIu64='"qu"'; ! sPRIo64='"qo"'; sPRIx64='"qx"'; sPRIX64='"qX"'; echo "We will use %qd." ;; esac --- 13417,13423 ---- case "$yyy" in 12345678901) sPRId64='"qd"'; sPRIi64='"qi"'; sPRIu64='"qu"'; ! sPRIo64='"qo"'; sPRIx64='"qx"'; sPRIXU64='"qX"'; echo "We will use %qd." ;; esac *************** *** 12955,12964 **** case "$sPRId64" in '') d_PRId64="$undef"; d_PRIi64="$undef"; d_PRIu64="$undef"; ! d_PRIo64="$undef"; d_PRIx64="$undef"; d_PRIX64="$undef"; ;; *) d_PRId64="$define"; d_PRIi64="$define"; d_PRIu64="$define"; ! d_PRIo64="$define"; d_PRIx64="$define"; d_PRIX64="$define"; ;; esac --- 13434,13443 ---- case "$sPRId64" in '') d_PRId64="$undef"; d_PRIi64="$undef"; d_PRIu64="$undef"; ! d_PRIo64="$undef"; d_PRIx64="$undef"; d_PRIXU64="$undef"; ;; *) d_PRId64="$define"; d_PRIi64="$define"; d_PRIu64="$define"; ! d_PRIo64="$define"; d_PRIx64="$define"; d_PRIXU64="$define"; ;; esac *************** *** 12971,12988 **** --- 13450,13470 ---- uvuformat="$sPRIu64" uvoformat="$sPRIo64" uvxformat="$sPRIx64" + uvXUformat="$sPRIXU64" else if $test X"$ivsize" = X"$longsize"; then ivdformat='"ld"' uvuformat='"lu"' uvoformat='"lo"' uvxformat='"lx"' + uvXUformat='"lX"' else if $test X"$ivsize" = X"$intsize"; then ivdformat='"d"' uvuformat='"u"' uvoformat='"o"' uvxformat='"x"' + uvXUformat='"X"' else : far out if $test X"$ivsize" = X"$shortsize"; then *************** *** 12990,13000 **** --- 13472,13499 ---- uvuformat='"hu"' uvoformat='"ho"' uvxformat='"hx"' + uvXUformat='"hX"' fi fi fi fi + if $test X"$uselongdouble" = X"$define" -a X"$d_longdbl" = X"$define" -a X"$d_PRIgldbl" = X"$define"; then + nveformat="$sPRIeldbl" + nvfformat="$sPRIfldbl" + nvgformat="$sPRIgldbl" + nvEUformat="$sPRIEUldbl" + nvFUformat="$sPRIFUldbl" + nvGUformat="$sPRIGUldbl" + else + nveformat='"e"' + nvfformat='"f"' + nvgformat='"g"' + nvEUformat='"E"' + nvFUformat='"F"' + nvGUformat='"G"' + fi + case "$ivdformat" in '') echo "$0: Fatal: failed to find format strings, cannot continue." >& 4 exit 1 *************** *** 13273,13284 **** --- 13772,13786 ---- dflt='' case "$pg" in /*) dflt=$pg;; + [a-zA-Z]:/*) dflt=$pg;; esac case "$more" in /*) dflt=$more;; + [a-zA-Z]:/*) dflt=$more;; esac case "$less" in /*) dflt=$less;; + [a-zA-Z]:/*) dflt=$less;; esac case "$dflt" in '') dflt=/usr/ucb/more;; *************** *** 13351,13363 **** $cc $ccflags -c bar2.c >/dev/null 2>&1 $cc $ccflags -c foo.c >/dev/null 2>&1 $ar rc bar$_a bar2$_o bar1$_o >/dev/null 2>&1 ! if $cc $ccflags $ldflags -o foobar foo$_o bar$_a $libs > /dev/null 2>&1 && ./foobar >/dev/null 2>&1; then echo "$ar appears to generate random libraries itself." orderlib=false ranlib=":" elif $ar ts bar$_a >/dev/null 2>&1 && ! $cc $ccflags $ldflags -o foobar foo$_o bar$_a $libs > /dev/null 2>&1 && ./foobar >/dev/null 2>&1; then echo "a table of contents needs to be added with '$ar ts'." orderlib=false --- 13853,13865 ---- $cc $ccflags -c bar2.c >/dev/null 2>&1 $cc $ccflags -c foo.c >/dev/null 2>&1 $ar rc bar$_a bar2$_o bar1$_o >/dev/null 2>&1 ! if $cc -o foobar $ccflags $ldflags foo$_o bar$_a $libs > /dev/null 2>&1 && ./foobar >/dev/null 2>&1; then echo "$ar appears to generate random libraries itself." orderlib=false ranlib=":" elif $ar ts bar$_a >/dev/null 2>&1 && ! $cc -o foobar $ccflags $ldflags foo$_o bar$_a $libs > /dev/null 2>&1 && ./foobar >/dev/null 2>&1; then echo "a table of contents needs to be added with '$ar ts'." orderlib=false *************** *** 13848,13853 **** --- 14350,14359 ---- set d_socklen_t eval $setvar + : see if this is a socks.h system + set socks.h i_socks + eval $inhdr + : check for type of the size argument to socket calls case "$d_socket" in "$define") *************** *** 13855,13861 **** Checking to see what type is the last argument of accept(). EOM - hdrs="$define sys/types.h $d_socket sys/socket.h" yyy='' case "$d_socklen_t" in "$define") yyy="$yyy socklen_t" --- 14361,14366 ---- *************** *** 13864,13873 **** for xxx in $yyy; do case "$socksizetype" in '') try="extern int accept(int, struct sockaddr *, $xxx *);" ! if ./protochk "$try" $hdrs; then ! echo "Your system accepts '$xxx *' for the last argument of accept()." ! socksizetype="$xxx" ! fi ;; esac done --- 14369,14387 ---- for xxx in $yyy; do case "$socksizetype" in '') try="extern int accept(int, struct sockaddr *, $xxx *);" ! case "$usesocks" in ! "$define") ! if ./protochk "$try" $i_systypes sys/types.h $d_socket sys/socket.h literal '#define INCLUDE_PROTOTYPES' $i_socks socks.h.; then ! echo "Your system accepts '$xxx *' for the last argument of accept()." ! socksizetype="$xxx" ! fi ! ;; ! *) if ./protochk "$try" $i_systypes sys/types.h $d_socket sys/socket.h; then ! echo "Your system accepts '$xxx *' for the last argument of accept()." ! socksizetype="$xxx" ! fi ! ;; ! esac ;; esac done *************** *** 13928,13940 **** : see what type of char stdio uses. echo " " ! if $contains 'unsigned.*char.*_ptr;' `./findhdr stdio.h` >/dev/null 2>&1 ; then echo "Your stdio uses unsigned chars." >&4 stdchar="unsigned char" ! else echo "Your stdio uses signed chars." >&4 stdchar="char" fi : see if time exists echo " " --- 14442,14456 ---- : see what type of char stdio uses. echo " " ! echo '#include ' | $cppstdin $cppminus > stdioh ! if $contains 'unsigned.*char.*_ptr;' stdioh >/dev/null 2>&1 ; then echo "Your stdio uses unsigned chars." >&4 stdchar="unsigned char" ! else echo "Your stdio uses signed chars." >&4 stdchar="char" fi + $rm -f stdioh : see if time exists echo " " *************** *** 14084,14089 **** --- 14600,14636 ---- ;; esac + : determine compiler compiler + case "$yacc" in + '') + dflt=yacc;; + *) + dflt="$yacc";; + esac + echo " " + comp='yacc' + if $test -f "$byacc"; then + dflt="$byacc" + comp="byacc or $comp" + fi + if $test -f "$bison"; then + comp="$comp or bison -y" + fi + rp="Which compiler compiler ($comp) shall I use?" + . ./myread + yacc="$ans" + case "$yacc" in + *bis*) + case "$yacc" in + *-y*) ;; + *) + yacc="$yacc -y" + echo "(Adding -y option to bison to get yacc-compatible behaviour.)" + ;; + esac + ;; + esac + : see if dbm.h is available : see if dbmclose exists set dbmclose d_dbmclose *************** *** 14175,14180 **** --- 14722,14731 ---- set ieeefp.h i_ieeefp eval $inhdr + : see if this is a libutil.h system + set libutil.h i_libutil + eval $inhdr + : see if locale.h is available set locale.h i_locale eval $inhdr *************** *** 14254,14267 **** set poll.h i_poll eval $inhdr echo " " $echo "Guessing which symbols your C compiler and preprocessor define..." >&4 $cat <<'EOSH' > Cppsym.know a29k ABI64 aegis AES_SOURCE AIX AIX32 AIX370 AIX41 AIX42 AIX43 AIX_SOURCE aixpc ALL_SOURCE ! alliant alpha am29000 AM29000 amiga AMIGAOS AMIX ! ansi ANSI_C_SOURCE apollo ardent atarist att386 att3b BeOS ! BIG_ENDIAN BIT_MSF bsd BSD bsd43 bsd4_2 bsd4_3 BSD4_3 bsd4_4 BSD_4_3 BSD_4_4 BSD_NET2 BSD_TIME BSD_TYPES BSDCOMPAT bsdi bull c cadmus clipper CMU COFF COMPILER_VERSION concurrent convex cpu cray CRAY CRAYMPP ctix CX_UX --- 14805,14822 ---- set poll.h i_poll eval $inhdr + : see if this is a prot.h system + set prot.h i_prot + eval $inhdr + echo " " $echo "Guessing which symbols your C compiler and preprocessor define..." >&4 $cat <<'EOSH' > Cppsym.know a29k ABI64 aegis AES_SOURCE AIX AIX32 AIX370 AIX41 AIX42 AIX43 AIX_SOURCE aixpc ALL_SOURCE ! alliant alpha am29000 AM29000 AMD64 amiga AMIGAOS AMIX ! ansi ANSI_C_SOURCE apollo ardent ARM32 atarist att386 att3b ! BeOS BIG_ENDIAN BIT_MSF bsd BSD bsd43 bsd4_2 bsd4_3 BSD4_3 bsd4_4 BSD_4_3 BSD_4_4 BSD_NET2 BSD_TIME BSD_TYPES BSDCOMPAT bsdi bull c cadmus clipper CMU COFF COMPILER_VERSION concurrent convex cpu cray CRAY CRAYMPP ctix CX_UX *************** *** 14274,14280 **** hp9000s200 hp9000s300 hp9000s400 hp9000s500 hp9000s700 hp9000s800 hp9k8 hp_osf hppa hpux HPUX_SOURCE i186 i286 i386 i486 i586 i686 i8086 i80960 i860 I960 ! iAPX286 ibm ibm032 ibmesa IBMR2 ibmrt ILP32 ILP64 INLINE_INTRINSICS INTRINSICS INT64 interdata is68k ksr1 LANGUAGE_C LARGE_FILE_API LARGEFILE64_SOURCE LARGEFILE_SOURCE LFS64_LARGEFILE LFS_LARGEFILE --- 14829,14835 ---- hp9000s200 hp9000s300 hp9000s400 hp9000s500 hp9000s700 hp9000s800 hp9k8 hp_osf hppa hpux HPUX_SOURCE i186 i286 i386 i486 i586 i686 i8086 i80960 i860 I960 ! IA64 iAPX286 ibm ibm032 ibmesa IBMR2 ibmrt ILP32 ILP64 INLINE_INTRINSICS INTRINSICS INT64 interdata is68k ksr1 LANGUAGE_C LARGE_FILE_API LARGEFILE64_SOURCE LARGEFILE_SOURCE LFS64_LARGEFILE LFS_LARGEFILE *************** *** 14290,14296 **** MIPS_SZLONG MIPS_SZPTR MIPSEB MIPSEL MODERN_C motorola mpeix MSDOS MTXINU MULTIMAX mvs MVS n16 ncl_el ncl_mr NetBSD news1500 news1700 news1800 news1900 news3700 ! news700 news800 news900 NeXT NLS ns16000 ns32000 ns32016 ns32332 ns32k nsc32000 OCS88 OEMVS OpenBSD os OS2 OS390 osf OSF1 OSF_SOURCE pa_risc PA_RISC1_1 PA_RISC2_0 PARAGON parisc --- 14845,14851 ---- MIPS_SZLONG MIPS_SZPTR MIPSEB MIPSEL MODERN_C motorola mpeix MSDOS MTXINU MULTIMAX mvs MVS n16 ncl_el ncl_mr NetBSD news1500 news1700 news1800 news1900 news3700 ! news700 news800 news900 NeXT NLS nonstopux ns16000 ns32000 ns32016 ns32332 ns32k nsc32000 OCS88 OEMVS OpenBSD os OS2 OS390 osf OSF1 OSF_SOURCE pa_risc PA_RISC1_1 PA_RISC2_0 PARAGON parisc *************** *** 14298,14304 **** POSIX1B_SOURCE POSIX2_SOURCE POSIX4_SOURCE POSIX_C_SOURCE POSIX_SOURCE POWER PROTOTYPES PWB pyr QNX R3000 REENTRANT RES Rhapsody RISC6000 ! riscix riscos RT scs SCO sequent sgi SGI_SOURCE sinix SIZE_INT SIZE_LONG SIZE_PTR SOCKET_SOURCE SOCKETS_SOURCE sony sony_news sonyrisc sparc sparclite spectrum stardent stdc STDC_EXT stratos sun sun3 sun386 --- 14853,14859 ---- POSIX1B_SOURCE POSIX2_SOURCE POSIX4_SOURCE POSIX_C_SOURCE POSIX_SOURCE POWER PROTOTYPES PWB pyr QNX R3000 REENTRANT RES Rhapsody RISC6000 ! riscix riscos RT S390 SA110 scs SCO sequent sgi SGI_SOURCE SH3 sinix SIZE_INT SIZE_LONG SIZE_PTR SOCKET_SOURCE SOCKETS_SOURCE sony sony_news sonyrisc sparc sparclite spectrum stardent stdc STDC_EXT stratos sun sun3 sun386 *************** *** 14306,14311 **** --- 14861,14867 ---- SX system SYSTYPE_BSD SYSTYPE_BSD43 SYSTYPE_BSD44 SYSTYPE_SVR4 SYSTYPE_SVR5 SYSTYPE_SYSV SYSV SYSV3 SYSV4 SYSV5 sysV68 sysV88 Tek4132 Tek4300 titan + TM3200 TM5400 TM5600 tower tower32 tower32_200 tower32_600 tower32_700 tower32_800 tower32_850 tss u370 u3b u3b2 u3b20 u3b200 u3b20d u3b5 *************** *** 14322,14329 **** EOSH ./tr '[a-z]' '[A-Z]' < Cppsym.know > Cppsym.a ./tr '[A-Z]' '[a-z]' < Cppsym.know > Cppsym.b ! $cat Cppsym.a Cppsym.b | $tr ' ' $trnl | sort | uniq > Cppsym.know ! $rm -f Cppsym.a Cppsym.b cat < Cppsym $startsh if $test \$# -gt 0; then --- 14878,14886 ---- EOSH ./tr '[a-z]' '[A-Z]' < Cppsym.know > Cppsym.a ./tr '[A-Z]' '[a-z]' < Cppsym.know > Cppsym.b ! $cat Cppsym.know > Cppsym.c ! $cat Cppsym.a Cppsym.b Cppsym.c | $tr ' ' $trnl | $sort | $uniq > Cppsym.know ! $rm -f Cppsym.a Cppsym.b Cppsym.c cat < Cppsym $startsh if $test \$# -gt 0; then *************** *** 14362,14369 **** ccflags="$ccflags" case "$osname-$gccversion" in irix-) ccflags="\$ccflags -woff 1178" ;; esac ! $cc $optimize \$ccflags $ldflags -o try try.c $libs && ./try$exe_ext EOSH chmod +x Cppsym.try $eunicefix Cppsym.try --- 14919,14927 ---- ccflags="$ccflags" case "$osname-$gccversion" in irix-) ccflags="\$ccflags -woff 1178" ;; + os2-*) ccflags="\$ccflags -Zlinker /PM:VIO" ;; esac ! $cc -o try $optimize \$ccflags $ldflags try.c $libs && ./try$exe_ext EOSH chmod +x Cppsym.try $eunicefix Cppsym.try *************** *** 14417,14423 **** else if $test -s ccsym.com; then echo "Your C compiler and pre-processor define these symbols:" ! $sed -e 's/\(.*\)=.*/\1/' ccsym.com also='also ' symbols='ones' cppccsymbols=`$cat ccsym.com` --- 14975,14981 ---- else if $test -s ccsym.com; then echo "Your C compiler and pre-processor define these symbols:" ! $sed -e 's/\(..*\)=.*/\1/' ccsym.com also='also ' symbols='ones' cppccsymbols=`$cat ccsym.com` *************** *** 14427,14433 **** if $test -s ccsym.cpp; then $test "$also" && echo " " echo "Your C pre-processor ${also}defines the following symbols:" ! $sed -e 's/\(.*\)=.*/\1/' ccsym.cpp also='further ' cppsymbols=`$cat ccsym.cpp` cppsymbols=`echo $cppsymbols` --- 14985,14991 ---- if $test -s ccsym.cpp; then $test "$also" && echo " " echo "Your C pre-processor ${also}defines the following symbols:" ! $sed -e 's/\(..*\)=.*/\1/' ccsym.cpp also='further ' cppsymbols=`$cat ccsym.cpp` cppsymbols=`echo $cppsymbols` *************** *** 14436,14449 **** if $test -s ccsym.own; then $test "$also" && echo " " echo "Your C compiler ${also}defines the following cpp symbols:" ! $sed -e 's/\(.*\)=1/\1/' ccsym.own ! $sed -e 's/\(.*\)=.*/\1/' ccsym.own | $uniq >>Cppsym.true ccsymbols=`$cat ccsym.own` ccsymbols=`echo $ccsymbols` $test "$silent" || sleep 1 fi fi ! $rm -f ccsym* : see if this is a termio system val="$undef" --- 14994,15007 ---- if $test -s ccsym.own; then $test "$also" && echo " " echo "Your C compiler ${also}defines the following cpp symbols:" ! $sed -e 's/\(..*\)=1/\1/' ccsym.own ! $sed -e 's/\(..*\)=.*/\1/' ccsym.own | $uniq >>Cppsym.true ccsymbols=`$cat ccsym.own` ccsymbols=`echo $ccsymbols` $test "$silent" || sleep 1 fi fi ! $rm -f ccsym* Cppsym.* : see if this is a termio system val="$undef" *************** *** 14504,14513 **** set shadow.h i_shadow eval $inhdr - : see if this is a socks.h system - set socks.h i_socks - eval $inhdr - : see if stdarg is available echo " " if $test `./findhdr stdarg.h`; then --- 15062,15067 ---- *************** *** 14825,14830 **** --- 15379,15390 ---- true|$define|y) avail_ext="$avail_ext $xxx" ;; esac ;; + Sys/Syslog|sys/syslog) + : XXX syslog requires socket + case "$d_socket" in + true|$define|y) avail_ext="$avail_ext $xxx" ;; + esac + ;; Thread|thread) case "$usethreads" in true|$define|y) avail_ext="$avail_ext $xxx" ;; *************** *** 14971,14976 **** --- 15531,15555 ---- shift extensions="$*" + : Remove libraries needed only for extensions + : The appropriate ext/Foo/Makefile.PL will add them back in, if necessary. + : The exception is SunOS 4.x, which needs them. + case "${osname}X${osvers}" in + sunos*X4*) + perllibs="$libs" + ;; + *) case "$usedl" in + $define|true|[yY]*) + set X `echo " $libs " | sed -e 's@ -lndbm @ @' -e 's@ -lgdbm @ @' -e 's@ -ldbm @ @' -e 's@ -ldb @ @'` + shift + perllibs="$*" + ;; + *) perllibs="$libs" + ;; + esac + ;; + esac + : Remove build directory name from cppstdin so it can be used from : either the present location or the final installed location. echo " " *************** *** 15082,15088 **** --- 15661,15670 ---- cccdlflags='$cccdlflags' ccdlflags='$ccdlflags' ccflags='$ccflags' + ccflags_uselargefiles='$ccflags_uselargefiles' + ccname='$ccname' ccsymbols='$ccsymbols' + ccversion='$ccversion' cf_by='$cf_by' cf_email='$cf_email' cf_time='$cf_time' *************** *** 15109,15118 **** cryptlib='$cryptlib' csh='$csh' d_Gconvert='$d_Gconvert' ! d_PRIEldbl='$d_PRIEldbl' ! d_PRIFldbl='$d_PRIFldbl' ! d_PRIGldbl='$d_PRIGldbl' ! d_PRIX64='$d_PRIX64' d_PRId64='$d_PRId64' d_PRIeldbl='$d_PRIeldbl' d_PRIfldbl='$d_PRIfldbl' --- 15691,15700 ---- cryptlib='$cryptlib' csh='$csh' d_Gconvert='$d_Gconvert' ! d_PRIEUldbl='$d_PRIEUldbl' ! d_PRIFUldbl='$d_PRIFUldbl' ! d_PRIGUldbl='$d_PRIGUldbl' ! d_PRIXU64='$d_PRIXU64' d_PRId64='$d_PRId64' d_PRIeldbl='$d_PRIeldbl' d_PRIfldbl='$d_PRIfldbl' *************** *** 15121,15126 **** --- 15703,15710 ---- d_PRIo64='$d_PRIo64' d_PRIu64='$d_PRIu64' d_PRIx64='$d_PRIx64' + d_SCNfldbl='$d_SCNfldbl' + d__fwalk='$d__fwalk' d_access='$d_access' d_accessx='$d_accessx' d_alarm='$d_alarm' *************** *** 15162,15173 **** d_endpent='$d_endpent' d_endpwent='$d_endpwent' d_endsent='$d_endsent' - d_endspent='$d_endspent' d_eofnblk='$d_eofnblk' d_eunice='$d_eunice' d_fchmod='$d_fchmod' d_fchown='$d_fchown' d_fcntl='$d_fcntl' d_fd_macros='$d_fd_macros' d_fd_set='$d_fd_set' d_fds_bits='$d_fds_bits' --- 15746,15757 ---- d_endpent='$d_endpent' d_endpwent='$d_endpwent' d_endsent='$d_endsent' d_eofnblk='$d_eofnblk' d_eunice='$d_eunice' d_fchmod='$d_fchmod' d_fchown='$d_fchown' d_fcntl='$d_fcntl' + d_fcntl_can_lock='$d_fcntl_can_lock' d_fd_macros='$d_fd_macros' d_fd_set='$d_fd_set' d_fds_bits='$d_fds_bits' *************** *** 15177,15190 **** --- 15761,15777 ---- d_fork='$d_fork' d_fpathconf='$d_fpathconf' d_fpos64_t='$d_fpos64_t' + d_frexpl='$d_frexpl' d_fs_data_s='$d_fs_data_s' d_fseeko='$d_fseeko' d_fsetpos='$d_fsetpos' d_fstatfs='$d_fstatfs' d_fstatvfs='$d_fstatvfs' + d_fsync='$d_fsync' d_ftello='$d_ftello' d_ftime='$d_ftime' d_getcwd='$d_getcwd' + d_getespwnam='$d_getespwnam' d_getfsstat='$d_getfsstat' d_getgrent='$d_getgrent' d_getgrps='$d_getgrps' *************** *** 15200,15205 **** --- 15787,15793 ---- d_getnbyname='$d_getnbyname' d_getnent='$d_getnent' d_getnetprotos='$d_getnetprotos' + d_getpagsz='$d_getpagsz' d_getpbyname='$d_getpbyname' d_getpbynumber='$d_getpbynumber' d_getpent='$d_getpent' *************** *** 15209,15220 **** d_getppid='$d_getppid' d_getprior='$d_getprior' d_getprotoprotos='$d_getprotoprotos' d_getpwent='$d_getpwent' d_getsbyname='$d_getsbyname' d_getsbyport='$d_getsbyport' d_getsent='$d_getsent' d_getservprotos='$d_getservprotos' - d_getspent='$d_getspent' d_getspnam='$d_getspnam' d_gettimeod='$d_gettimeod' d_gnulibc='$d_gnulibc' --- 15797,15808 ---- d_getppid='$d_getppid' d_getprior='$d_getprior' d_getprotoprotos='$d_getprotoprotos' + d_getprpwnam='$d_getprpwnam' d_getpwent='$d_getpwent' d_getsbyname='$d_getsbyname' d_getsbyport='$d_getsbyport' d_getsent='$d_getsent' d_getservprotos='$d_getservprotos' d_getspnam='$d_getspnam' d_gettimeod='$d_gettimeod' d_gnulibc='$d_gnulibc' *************** *** 15226,15231 **** --- 15814,15821 ---- d_inetaton='$d_inetaton' d_int64_t='$d_int64_t' d_isascii='$d_isascii' + d_isnan='$d_isnan' + d_isnanl='$d_isnanl' d_killpg='$d_killpg' d_lchown='$d_lchown' d_ldbl_dig='$d_ldbl_dig' *************** *** 15252,15257 **** --- 15842,15848 ---- d_mkstemps='$d_mkstemps' d_mktime='$d_mktime' d_mmap='$d_mmap' + d_modfl='$d_modfl' d_mprotect='$d_mprotect' d_msg='$d_msg' d_msg_ctrunc='$d_msg_ctrunc' *************** *** 15268,15273 **** --- 15859,15865 ---- d_mymalloc='$d_mymalloc' d_nice='$d_nice' d_nv_preserves_uv='$d_nv_preserves_uv' + d_nv_preserves_uv_bits='$d_nv_preserves_uv_bits' d_off64_t='$d_off64_t' d_old_pthread_create_joinable='$d_old_pthread_create_joinable' d_oldpthreads='$d_oldpthreads' *************** *** 15275,15280 **** --- 15867,15873 ---- d_open3='$d_open3' d_pathconf='$d_pathconf' d_pause='$d_pause' + d_perl_otherlibdirs='$d_perl_otherlibdirs' d_phostname='$d_phostname' d_pipe='$d_pipe' d_poll='$d_poll' *************** *** 15298,15303 **** --- 15891,15897 ---- d_safebcpy='$d_safebcpy' d_safemcpy='$d_safemcpy' d_sanemcmp='$d_sanemcmp' + d_sbrkproto='$d_sbrkproto' d_sched_yield='$d_sched_yield' d_scm_rights='$d_scm_rights' d_seekdir='$d_seekdir' *************** *** 15321,15326 **** --- 15915,15921 ---- d_setpgrp2='$d_setpgrp2' d_setpgrp='$d_setpgrp' d_setprior='$d_setprior' + d_setproctitle='$d_setproctitle' d_setpwent='$d_setpwent' d_setregid='$d_setregid' d_setresgid='$d_setresgid' *************** *** 15330,15336 **** d_setruid='$d_setruid' d_setsent='$d_setsent' d_setsid='$d_setsid' - d_setspent='$d_setspent' d_setvbuf='$d_setvbuf' d_sfio='$d_sfio' d_shm='$d_shm' --- 15925,15930 ---- *************** *** 15344,15349 **** --- 15938,15944 ---- d_socket='$d_socket' d_socklen_t='$d_socklen_t' d_sockpair='$d_sockpair' + d_socks5_init='$d_socks5_init' d_sqrtl='$d_sqrtl' d_statblks='$d_statblks' d_statfs_f_flags='$d_statfs_f_flags' *************** *** 15351,15356 **** --- 15946,15953 ---- d_statvfs='$d_statvfs' d_stdio_cnt_lval='$d_stdio_cnt_lval' d_stdio_ptr_lval='$d_stdio_ptr_lval' + d_stdio_ptr_lval_nochange_cnt='$d_stdio_ptr_lval_nochange_cnt' + d_stdio_ptr_lval_sets_cnt='$d_stdio_ptr_lval_sets_cnt' d_stdio_stream_array='$d_stdio_stream_array' d_stdiobase='$d_stdiobase' d_stdstdio='$d_stdstdio' *************** *** 15430,15435 **** --- 16027,16033 ---- full_ar='$full_ar' full_csh='$full_csh' full_sed='$full_sed' + gccosandvers='$gccosandvers' gccversion='$gccversion' gidformat='$gidformat' gidsign='$gidsign' *************** *** 15444,15450 **** h_sysfile='$h_sysfile' hint='$hint' hostcat='$hostcat' - huge='$huge' i16size='$i16size' i16type='$i16type' i32size='$i32size' --- 16042,16047 ---- *************** *** 15467,15472 **** --- 16064,16070 ---- i_iconv='$i_iconv' i_ieeefp='$i_ieeefp' i_inttypes='$i_inttypes' + i_libutil='$i_libutil' i_limits='$i_limits' i_locale='$i_locale' i_machcthr='$i_machcthr' *************** *** 15480,15485 **** --- 16078,16084 ---- i_netinettcp='$i_netinettcp' i_niin='$i_niin' i_poll='$i_poll' + i_prot='$i_prot' i_pthread='$i_pthread' i_pwd='$i_pwd' i_rpcsvcdbm='$i_rpcsvcdbm' *************** *** 15552,15566 **** installvendorbin='$installvendorbin' installvendorlib='$installvendorlib' intsize='$intsize' ivdformat='$ivdformat' ivsize='$ivsize' ivtype='$ivtype' known_extensions='$known_extensions' ksh='$ksh' - large='$large' ld='$ld' lddlflags='$lddlflags' ldflags='$ldflags' ldlibpthname='$ldlibpthname' less='$less' lib_ext='$lib_ext' --- 16151,16166 ---- installvendorbin='$installvendorbin' installvendorlib='$installvendorlib' intsize='$intsize' + issymlink='$issymlink' ivdformat='$ivdformat' ivsize='$ivsize' ivtype='$ivtype' known_extensions='$known_extensions' ksh='$ksh' ld='$ld' lddlflags='$lddlflags' ldflags='$ldflags' + ldflags_uselargefiles='$ldflags_uselargefiles' ldlibpthname='$ldlibpthname' less='$less' lib_ext='$lib_ext' *************** *** 15573,15578 **** --- 16173,16179 ---- libsfound='$libsfound' libspath='$libspath' libswanted='$libswanted' + libswanted_uselargefiles='$libswanted_uselargefiles' line='$line' lint='$lint' lkflags='$lkflags' *************** *** 15601,15611 **** man3dir='$man3dir' man3direxp='$man3direxp' man3ext='$man3ext' - medium='$medium' mips_type='$mips_type' mkdir='$mkdir' mmaptype='$mmaptype' - models='$models' modetype='$modetype' more='$more' multiarch='$multiarch' --- 16202,16210 ---- *************** *** 15624,15629 **** --- 16223,16234 ---- nm_so_opt='$nm_so_opt' nonxs_ext='$nonxs_ext' nroff='$nroff' + nvEUformat='$nvEUformat' + nvFUformat='$nvFUformat' + nvGUformat='$nvGUformat' + nveformat='$nveformat' + nvfformat='$nvfformat' + nvgformat='$nvgformat' nvsize='$nvsize' nvtype='$nvtype' o_nonblock='$o_nonblock' *************** *** 15633,15638 **** --- 16238,16244 ---- orderlib='$orderlib' osname='$osname' osvers='$osvers' + otherlibdirs='$otherlibdirs' package='$package' pager='$pager' passcat='$passcat' *************** *** 15641,15646 **** --- 16247,16253 ---- perl5='$perl5' perl='$perl' perladmin='$perladmin' + perllibs='$perllibs' perlpath='$perlpath' pg='$pg' phostname='$phostname' *************** *** 15666,15675 **** rm='$rm' rmail='$rmail' runnm='$runnm' ! sPRIEldbl='$sPRIEldbl' ! sPRIFldbl='$sPRIFldbl' ! sPRIGldbl='$sPRIGldbl' ! sPRIX64='$sPRIX64' sPRId64='$sPRId64' sPRIeldbl='$sPRIeldbl' sPRIfldbl='$sPRIfldbl' --- 16273,16282 ---- rm='$rm' rmail='$rmail' runnm='$runnm' ! sPRIEUldbl='$sPRIEUldbl' ! sPRIFUldbl='$sPRIFUldbl' ! sPRIGUldbl='$sPRIGUldbl' ! sPRIXU64='$sPRIXU64' sPRId64='$sPRId64' sPRIeldbl='$sPRIeldbl' sPRIfldbl='$sPRIfldbl' *************** *** 15678,15683 **** --- 16285,16291 ---- sPRIo64='$sPRIo64' sPRIu64='$sPRIu64' sPRIx64='$sPRIx64' + sSCNfldbl='$sSCNfldbl' sched_yield='$sched_yield' scriptdir='$scriptdir' scriptdirexp='$scriptdirexp' *************** *** 15712,15718 **** sizetype='$sizetype' sleep='$sleep' smail='$smail' - small='$small' so='$so' sockethdr='$sockethdr' socketlib='$socketlib' --- 16320,16325 ---- *************** *** 15720,15726 **** sort='$sort' spackage='$spackage' spitshell='$spitshell' - split='$split' src='$src' ssizetype='$ssizetype' startperl='$startperl' --- 16327,16332 ---- *************** *** 15785,15790 **** --- 16391,16397 ---- usevfork='$usevfork' usrinc='$usrinc' uuname='$uuname' + uvXUformat='$uvXUformat' uvoformat='$uvoformat' uvsize='$uvsize' uvtype='$uvtype' *************** *** 15800,15809 **** --- 16407,16419 ---- vendorprefix='$vendorprefix' vendorprefixexp='$vendorprefixexp' version='$version' + versiononly='$versiononly' vi='$vi' voidflags='$voidflags' xlibpth='$xlibpth' xs_apiversion='$xs_apiversion' + yacc='$yacc' + yaccflags='$yaccflags' zcat='$zcat' zip='$zip' EOT *************** *** 15818,15826 **** : propagate old symbols if $test -f UU/config.sh; then ! UU/oldconfig.sh sed -n 's/^\([a-zA-Z_0-9]*\)=.*/\1/p' config.sh config.sh UU/oldconfig.sh |\ ! sort | uniq -u >UU/oldsyms set X `cat UU/oldsyms` shift case $# in --- 16428,16436 ---- : propagate old symbols if $test -f UU/config.sh; then ! UU/oldconfig.sh sed -n 's/^\([a-zA-Z_0-9]*\)=.*/\1/p' config.sh config.sh UU/oldconfig.sh |\ ! $sort | $uniq -u >UU/oldsyms set X `cat UU/oldsyms` shift case $# in *************** *** 15894,15900 **** . UU/myread case "$ans" in y*) ! $make depend && echo "Now you must run a $make." ;; *) echo "You must run '$make depend' then '$make'." --- 16504,16510 ---- . UU/myread case "$ans" in y*) ! $make depend && echo "Now you must run '$make'." ;; *) echo "You must run '$make depend' then '$make'." Index: EXTERN.h ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/EXTERN.h Sun Feb 6 11:32:59 2000 --- perl-5.6.1/EXTERN.h Wed Mar 21 21:05:02 2001 *************** *** 1,6 **** /* EXTERN.h * ! * Copyright (c) 1991-2000, Larry Wall * * You may distribute under the terms of either the GNU General Public * License or the Artistic License, as specified in the README file. --- 1,6 ---- /* EXTERN.h * ! * Copyright (c) 1991-2001, Larry Wall * * You may distribute under the terms of either the GNU General Public * License or the Artistic License, as specified in the README file. Index: INSTALL Prereq: 1.58 ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/INSTALL Tue Mar 7 14:40:27 2000 --- perl-5.6.1/INSTALL Sun Mar 18 19:03:33 2001 *************** *** 6,12 **** First, make sure you are installing an up-to-date version of Perl. If you didn't get your Perl source from CPAN, check the latest version at ! . The basic steps to build and install perl5 on a Unix system with all the defaults are: --- 6,12 ---- First, make sure you are installing an up-to-date version of Perl. If you didn't get your Perl source from CPAN, check the latest version at ! . The basic steps to build and install perl5 on a Unix system with all the defaults are: *************** *** 24,29 **** --- 24,38 ---- Each of these is explained in further detail below. + B: starting from the release 5.6.0 Perl will use a version + scheme where even-numbered subreleases (like 5.6) are stable + maintenance releases and odd-numbered subreleases (like 5.7) are + unstable development releases. Development releases should not be + used in production environments. Fixes and new features are first + carefully tested in development releases and only if they prove + themselves to be worthy will they be migrated to the maintenance + releases. + The above commands will install Perl to /usr/local or /opt, depending on the platform. If that's not okay with you, use *************** *** 76,82 **** with: perl Makefile.PL POLLUTE=1 ! Alternatively, you can enable CPP symbol pollution wholesale by building perl itself with: --- 85,91 ---- with: perl Makefile.PL POLLUTE=1 ! Alternatively, you can enable CPP symbol pollution wholesale by building perl itself with: *************** *** 113,120 **** =head1 WARNING: This version requires a compiler that supports ANSI C. ! If you find that your C compiler is not ANSI-capable, try obtaining ! GCC, available from GNU mirrors worldwide (e.g. ftp://ftp.gnu.org/pub/gnu). Another alternative may be to use a tool like ansi2knr to convert the sources back to K&R style, but there is no guarantee this route will get you anywhere, since the prototypes are not the only ANSI features used --- 122,163 ---- =head1 WARNING: This version requires a compiler that supports ANSI C. ! Most C compilers are now ANSI-compliant. However, a few current ! computers are delivered with an older C compiler expressly for ! rebuilding the system kernel, or for some other historical reason. ! Alternatively, you may have an old machine which was shipped before ! ANSI compliance became widespread. Such compilers are not suitable ! for building Perl. ! ! If you find that your default C compiler is not ANSI-capable, but you ! know that an ANSI-capable compiler is installed on your system, you ! can tell F to use the correct compiler by means of the ! C<-Dcc=> command-line option -- see L<"gcc">. ! ! If do not have an ANSI-capable compiler there are several avenues open ! to you: ! ! =over 4 ! ! =item * ! ! You may try obtaining GCC, available from GNU mirrors worldwide, ! listed at . If, rather than ! building gcc from source code, you locate a binary version configured ! for your platform, be sure that it is compiled for the version of the ! operating system that you are using. ! ! =item * ! ! You may purchase a commercial ANSI C compiler from your system ! supplier or elsewhere. (Or your organization may already have ! licensed such software -- ask your colleagues to find out how to ! access it.) If there is a README file for your system in the Perl ! distribution (for example, F), it may contain advice on ! suitable compilers. ! ! =item * ! Another alternative may be to use a tool like ansi2knr to convert the sources back to K&R style, but there is no guarantee this route will get you anywhere, since the prototypes are not the only ANSI features used *************** *** 125,133 **** the sources back to the platform without GCC. If you succeed in automatically converting the sources to a K&R compatible ! form, be sure to email perlbug@perl.com to let us know the steps you followed. This will enable us to officially support this option. Although Perl can be compiled using a C++ compiler, the Configure script does not work with some C++ compilers. --- 168,178 ---- the sources back to the platform without GCC. If you succeed in automatically converting the sources to a K&R compatible ! form, be sure to email perlbug@perl.org to let us know the steps you followed. This will enable us to officially support this option. + =back + Although Perl can be compiled using a C++ compiler, the Configure script does not work with some C++ compilers. *************** *** 219,224 **** --- 264,291 ---- sh Configure -h + =head2 Building Perl outside of the source directory + + Sometimes it is desirable to build Perl in a directory different from + where the sources are, for example if you want to keep your sources + read-only, or if you want to share the sources between different binary + architectures. + + Starting from Perl 5.6.1 you can do this (if your file system supports + symbolic links) by + + mkdir /tmp/perl/build/directory + cd /tmp/perl/build/directory + sh /path/to/perl/source/Configure -Dmksymlinks ... + + This will create in /tmp/perl/build/directory a tree of symbolic links + pointing to files in /path/to/perl/source. The original files are left + unaffected. After Configure has finished you can just say + + make all test + + and Perl will be built and tested, all in /tmp/perl/build/directory. + =head2 Common Configure options Configure supports a number of useful options. Run B to *************** *** 291,297 **** sh Configure -des ! For my Solaris system, I usually use sh Configure -Dprefix=/opt/perl -Doptimize='-xpentium -xO4' -des --- 358,371 ---- sh Configure -des ! Note: for development releases (odd subreleases, like 5.7, as opposed ! to maintenance releases which have even subreleases, like 5.6) ! if you want to use Configure -d, you will also need to supply -Dusedevel ! to Configure, because the default answer to the question "do you really ! want to Configure a development version?" is "no". The -Dusedevel ! skips that sanity check. ! ! For example for my Solaris system, I usually use sh Configure -Dprefix=/opt/perl -Doptimize='-xpentium -xO4' -des *************** *** 461,469 **** As a final catch-all, Configure also offers an $otherlibdirs variable. This variable contains a colon-separated list of additional ! directories to add to @INC. By default, it will be set to ! $prefix/site_perl if Configure detects that you have 5.004-era modules ! installed there. However, you can set it to anything you like. =item Man Pages --- 535,560 ---- As a final catch-all, Configure also offers an $otherlibdirs variable. This variable contains a colon-separated list of additional ! directories to add to @INC. By default, it will be empty. ! Perl will search these directories (including architecture and ! version-specific subdirectories) for add-on modules and extensions. ! ! =item APPLLIB_EXP ! ! There is one other way of adding paths to @INC at perl build time, and ! that is by setting the APPLLIB_EXP C pre-processor token to a colon- ! separated list of directories, like this ! ! sh Configure -Accflags='-DAPPLLIB_EXP=\"/usr/libperl\"' ! ! The directories defined by APPLLIB_EXP get added to @INC I, ! ahead of any others, and so provide a way to override the standard perl ! modules should you, for example, want to distribute fixes without ! touching the perl distribution proper. And, like otherlib dirs, ! version and architecture specific subdirectories are also searched, if ! present, at run time. Of course, you can still search other @INC ! directories ahead of those in APPLLIB_EXP by using any of the standard ! run-time methods: $PERLLIB, $PERL5LIB, -I, use lib, etc. =item Man Pages *************** *** 634,639 **** --- 725,776 ---- Eventually (by perl v5.6.0) this internal confusion ought to disappear, and these options may disappear as well. + =head2 64 bit support. + + If your platform does not have 64 bits natively, but can simulate them with + compiler flags and/or C or C, you can build a perl that + uses 64 bits. + + There are actually two modes of 64-bitness: the first one is achieved + using Configure -Duse64bitint and the second one using Configure + -Duse64bitall. The difference is that the first one is minimal and + the second one maximal. The first works in more places than the second. + + The C does only as much as is required to get 64-bit + integers into Perl (this may mean, for example, using "long longs") + while your memory may still be limited to 2 gigabytes (because your + pointers could still be 32-bit). Note that the name C<64bitint> does + not imply that your C compiler will be using 64-bit Cs (it might, + but it doesn't have to): the C means that you will be + able to have 64 bits wide scalar values. + + The C goes all the way by attempting to switch also + integers (if it can), longs (and pointers) to being 64-bit. This may + create an even more binary incompatible Perl than -Duse64bitint: the + resulting executable may not run at all in a 32-bit box, or you may + have to reboot/reconfigure/rebuild your operating system to be 64-bit + aware. + + Natively 64-bit systems like Alpha and Cray need neither -Duse64bitint + nor -Duse64bitall. + + NOTE: 64-bit support is still experimental on most platforms. + Existing support only covers the LP64 data model. In particular, the + LLP64 data model is not yet supported. 64-bit libraries and system + APIs on many platforms have not stabilized--your mileage may vary. + + =head2 Long doubles + + In some systems you may be able to use long doubles to enhance the + range and precision of your double precision floating point numbers + (that is, Perl's numbers). Use Configure -Duselongdouble to enable + this support (if it is available). + + =head2 "more bits" + + You can "Configure -Dusemorebits" to turn on both the 64-bit support + and the long double support. + =head2 Selecting File IO mechanisms Previous versions of perl used the standard IO mechanisms as defined in *************** *** 665,671 **** configuration exists to allow these issues to be worked on. This option requires the 'sfio' package to have been built and installed. ! A (fairly old) version of sfio is in CPAN. You select this option by --- 802,808 ---- configuration exists to allow these issues to be worked on. This option requires the 'sfio' package to have been built and installed. ! The latest sfio is available from http://www.research.att.com/sw/tools/sfio/ You select this option by *************** *** 682,690 **** _exit vs. exit. If you have this problem, the fix is to go back to your sfio sources and correct iffe's guess about atexit. - There also might be a more recent release of Sfio that fixes your - problem. - =item 2. Normal stdio IO, but with all IO going through calls to the PerlIO --- 819,824 ---- *************** *** 703,708 **** --- 837,849 ---- =back + =head2 SOCKS + + Perl can be configured to be 'socksified', that is, to use the SOCKS + TCP/IP proxy protocol library. SOCKS is used to give applications + access to transport layer network proxies. Perl supports only SOCKS + Version 5. You can find more about SOCKS from http://www.socks.nec.com/ + =head2 Dynamic Loading By default, Configure will compile perl to use dynamic loading if *************** *** 1029,1034 **** --- 1170,1208 ---- =back + =head2 Building DB, NDBM, and ODBM interfaces with Berkeley DB 3 + + Perl interface for DB3 is part of Berkeley DB, but if you want to + compile standard Perl DB/ODBM/NDBM interfaces, you must follow + following instructions. + + Berkeley DB3 from Sleepycat Software is by default installed without + DB1 compatibility code (needed for DB_File interface) and without + links to compatibility files. So if you want to use packages written + for DB/ODBM/NDBM interfaces, you need to configure DB3 with + --enable-compat185 (and optionally with --enable-dump185) and create + additional references (suppose you are installing DB3 with + --prefix=/usr): + + ln -s libdb-3.so /usr/lib/libdbm.so + ln -s libdb-3.so /usr/lib/libndbm.so + echo '#define DB_DBM_HSEARCH 1' >dbm.h + echo '#include ' >>dbm.h + install -m 0644 dbm.h /usr/include/dbm.h + install -m 0644 dbm.h /usr/include/ndbm.h + + Optionally, if you have compiled with --enable-compat185 (not needed + for ODBM/NDBM): + + ln -s libdb-3.so /usr/lib/libdb1.so + ln -s libdb-3.so /usr/lib/libdb.so + + ODBM emulation seems not to be perfect, but is quite usable, + using DB 3.1.17: + + lib/odbm.............FAILED at test 9 + Failed 1/64 tests, 98.44% okay + =head2 What if it doesn't work? If you run into problems, try some of the following ideas. *************** *** 1295,1330 **** it might well be a symptom of the gcc "varargs problem". See the previous L<"varargs"> item. - =item Solaris and SunOS dynamic loading - - If you have problems with dynamic loading using gcc on SunOS or - Solaris, and you are using GNU as and GNU ld, you may need to add - -B/bin/ (for SunOS) or -B/usr/ccs/bin/ (for Solaris) to your - $ccflags, $ldflags, and $lddlflags so that the system's versions of as - and ld are used. Note that the trailing '/' is required. - Alternatively, you can use the GCC_EXEC_PREFIX - environment variable to ensure that Sun's as and ld are used. Consult - your gcc documentation for further information on the -B option and - the GCC_EXEC_PREFIX variable. - - One convenient way to ensure you are not using GNU as and ld is to - invoke Configure with - - sh Configure -Dcc='gcc -B/usr/ccs/bin/' - - for Solaris systems. For a SunOS system, you must use -B/bin/ - instead. - - Alternatively, recent versions of GNU ld reportedly work if you - include C<-Wl,-export-dynamic> in the ccdlflags variable in - config.sh. - - =item ld.so.1: ./perl: fatal: relocation error: - - If you get this message on SunOS or Solaris, and you're using gcc, - it's probably the GNU as or GNU ld problem in the previous item - L<"Solaris and SunOS dynamic loading">. - =item LD_LIBRARY_PATH If you run into dynamic loading problems, check your setting of --- 1469,1474 ---- *************** *** 1333,1350 **** fine with LD_LIBRARY_PATH unset, though that may depend on details of your local set-up. - =item dlopen: stub interception failed - - The primary cause of the 'dlopen: stub interception failed' message is - that the LD_LIBRARY_PATH environment variable includes a directory - which is a symlink to /usr/lib (such as /lib). - - The reason this causes a problem is quite subtle. The file libdl.so.1.0 - actually *only* contains functions which generate 'stub interception - failed' errors! The runtime linker intercepts links to - "/usr/lib/libdl.so.1.0" and links in internal implementation of those - functions instead. [Thanks to Tim Bunce for this explanation.] - =item nm extraction If Configure seems to be having trouble finding library functions, --- 1477,1482 ---- *************** *** 1518,1523 **** --- 1650,1672 ---- vendor-supplied utilities explicitly to Configure, for example by Configure -Dar=/bin/ar. + =item THIS PACKAGE SEEMS TO BE INCOMPLETE + + The F program has not been able to find all the files which + make up the complete Perl distribution. You may have a damaged source + archive file (in which case you may also have seen messages such as + C and C), or you may have obtained a structurally-sound but + incomplete archive. In either case, try downloading again from the + official site named at the start of this document. If you do find + that any site is carrying a corrupted or incomplete source code + archive, please report it to the site's maintainer. + + =item invalid token: ## + + You are using a non-ANSI-compliant C compiler. See L. + =item Miscellaneous Some additional things that have been reported for either perl4 or perl5: *************** *** 1616,1621 **** --- 1765,1815 ---- tries to exercise the regular expression subsystem quite thoroughly, and may well be far more demanding than your normal usage. + =item Test failures from lib/ftmp-security saying "system possibly insecure" + + Firstly, test failures from the ftmp-security are not necessarily + serious or indicative of a real security threat. That being said, + they bear investigating. + + The tests may fail for the following reasons. Note that each of the + tests is run both in the building directory and the temporary + directory, as returned by File::Spec->tmpdir(). + + (1) If the directory the tests are being run is owned by somebody else + than the user running the tests, or root (uid 0). This failure can + happen if the Perl source code distribution is unpacked in a way that + the user ids in the distribution package are used as-is. Some tar + programs do this. + + (2) If the directory the test are being run in is writable by group + or by other (remember: with UNIX/POSIX semantics, write access to + a directory means the right to add/remove files in that directory), + and there is no sticky bit set in the directory. 'Sticky bit' is + a feature used in some UNIXes to give extra protection to files: if + the bit is on a directory, no one but the owner (or the root) can remove + that file even if the permissions of the directory would allow file + removal by others. This failure can happen if the permissions in the + directory simply are a bit too liberal for the tests' liking. This + may or may not be a real problem: it depends on the permissions policy + used on this particular directory/project/system/site. This failure + can also happen if the system either doesn't support the sticky bit + (this is the case with many non-UNIX platforms: in principle the + File::Temp should know about these platforms and skip the tests), or + if the system supports the sticky bit but for some reason or reasons + it is not being used. This is for example the case with HP-UX: as of + HP-UX release 11.00, the sticky bit is very much supported, but HP-UX + doesn't use it on its /tmp directory as shipped. Also as with the + permissions, some local policy might dictate that the stickiness is + not used. + + (3) If the system supports the POSIX 'chown giveaway' feature and if + any of the parent directories of the temporary file back to the root + directory are 'unsafe', using the definitions given above in (1) and + (2). + + See the documentation for the File::Temp module for more information + about the various security aspects. + =back =head1 make install *************** *** 1654,1665 **** --- 1848,1864 ---- make install will install the following: + binaries + perl, perl5.nnn where nnn is the current release number. This will be a link to perl. suidperl, sperl5.nnn If you requested setuid emulation. a2p awk-to-perl translator + + scripts + cppstdin This is used by perl -P, if your cc -E can't read from stdin. c2ph, pstruct Scripts for handling C structures in header files. *************** *** 1672,1684 **** pl2pm Convert Perl 4 .pl files to Perl 5 .pm modules pod2html, Converters from perl's pod documentation format pod2latex, to other useful formats. ! pod2man, and ! pod2text splain Describe Perl warnings and errors dprofpp Perl code profile post-processor ! library files in $privlib and $archlib specified to Configure, usually under /usr/local/lib/perl5/. man pages in $man1dir, usually /usr/local/man/man1. module man pages in $man3dir, usually /usr/local/man/man3. --- 1871,1891 ---- pl2pm Convert Perl 4 .pl files to Perl 5 .pm modules pod2html, Converters from perl's pod documentation format pod2latex, to other useful formats. ! pod2man, ! pod2text, ! pod2checker, ! pod2select, ! pod2usage splain Describe Perl warnings and errors dprofpp Perl code profile post-processor ! library files ! ! in $privlib and $archlib specified to Configure, usually under /usr/local/lib/perl5/. + + documentation + man pages in $man1dir, usually /usr/local/man/man1. module man pages in $man3dir, usually /usr/local/man/man3. *************** *** 1687,1697 **** Installperl will also create the directories listed above in L<"Installation Directories">. ! Perl's *.h header files and the libperl.a library are also installed under $archlib so that any user may later build new modules, run the optional Perl compiler, or embed the perl interpreter into another program even if the Perl source is no longer available. =head1 Coexistence with earlier versions of perl5 In general, you can usually safely upgrade from one version of Perl (e.g. --- 1894,1921 ---- Installperl will also create the directories listed above in L<"Installation Directories">. ! Perl's *.h header files and the libperl library are also installed under $archlib so that any user may later build new modules, run the optional Perl compiler, or embed the perl interpreter into another program even if the Perl source is no longer available. + Sometimes you only want to install the version-specific parts of the perl + installation. For example, you may wish to install a newer version of + perl alongside an already installed production version of perl without + disabling installation of new modules for the production version. + To only install the version-specific parts of the perl installation, run + + Configure -Dversiononly + + or answer 'y' to the appropriate Configure prompt. Alternatively, + you can just manually run + + ./perl installperl -v + + and skip installman altogether. + See also L<"Maintaining completely separate versions"> for another + approach. + =head1 Coexistence with earlier versions of perl5 In general, you can usually safely upgrade from one version of Perl (e.g. *************** *** 1878,1884 **** If you have difficulty building perl, and none of the advice in this file helps, and careful reading of the error message and the relevant manual pages on your system doesn't help either, then you should send a message ! to either the comp.lang.perl.misc newsgroup or to perlbug@perl.com with an accurate description of your problem. Please include the output of the ./myconfig shell script that comes with --- 2102,2108 ---- If you have difficulty building perl, and none of the advice in this file helps, and careful reading of the error message and the relevant manual pages on your system doesn't help either, then you should send a message ! to either the comp.lang.perl.misc newsgroup or to perlbug@perl.org with an accurate description of your problem. Please include the output of the ./myconfig shell script that comes with Index: INTERN.h ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/INTERN.h Sun Feb 6 11:32:59 2000 --- perl-5.6.1/INTERN.h Wed Mar 21 21:05:02 2001 *************** *** 1,6 **** /* INTERN.h * ! * Copyright (c) 1991-2000, Larry Wall * * You may distribute under the terms of either the GNU General Public * License or the Artistic License, as specified in the README file. --- 1,6 ---- /* INTERN.h * ! * Copyright (c) 1991-2001, Larry Wall * * You may distribute under the terms of either the GNU General Public * License or the Artistic License, as specified in the README file. Index: MANIFEST ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/MANIFEST Wed Mar 22 11:33:23 2000 --- perl-5.6.1/MANIFEST Sun Apr 8 11:38:40 2001 *************** *** 12,18 **** EXTERN.h Included before foreign .h files INSTALL Detailed installation instructions INTERN.h Included before domestic .h files - MAINTAIN Who maintains which files MANIFEST This list of files Makefile.SH A script that generates Makefile Policy_sh.SH Hold site-wide preferences between Configure runs. --- 12,17 ---- *************** *** 30,53 **** Porting/patching.pod How to report changes made to Perl Porting/patchls Flexible patch file listing utility Porting/pumpkin.pod Guidelines and hints for Perl maintainers README The Instructions README.Y2K Notes about Year 2000 concerns README.amiga Notes about AmigaOS port README.apollo Notes about Apollo DomainOS port README.beos Notes about BeOS port README.cygwin Notes about Cygwin port README.dos Notes about dos/djgpp port README.epoc Notes about EPOC port README.hpux Notes about HP-UX port README.hurd Notes about GNU/Hurd port README.machten Notes about Power MachTen port README.mint Notes about Atari MiNT port README.mpeix Notes about MPE/iX port README.os2 Notes about OS/2 port README.os390 Notes about OS/390 (nee MVS) port README.plan9 Notes about Plan9 port - README.posix-bc Notes about BS2000 POSIX port README.qnx Notes about QNX port README.threads Notes about multithreading README.vmesa Notes about VM/ESA port README.vms Notes about installing the VMS port --- 29,56 ---- Porting/patching.pod How to report changes made to Perl Porting/patchls Flexible patch file listing utility Porting/pumpkin.pod Guidelines and hints for Perl maintainers + Porting/repository.pod How to use the Perl repository README The Instructions README.Y2K Notes about Year 2000 concerns + README.aix Notes about AIX port README.amiga Notes about AmigaOS port README.apollo Notes about Apollo DomainOS port README.beos Notes about BeOS port + README.bs2000 Notes about BS2000 POSIX port README.cygwin Notes about Cygwin port README.dos Notes about dos/djgpp port README.epoc Notes about EPOC port README.hpux Notes about HP-UX port README.hurd Notes about GNU/Hurd port README.machten Notes about Power MachTen port + README.macos Notes about Mac OS (Classic) README.mint Notes about Atari MiNT port README.mpeix Notes about MPE/iX port README.os2 Notes about OS/2 port README.os390 Notes about OS/390 (nee MVS) port README.plan9 Notes about Plan9 port README.qnx Notes about QNX port + README.solaris Notes about Solaris port README.threads Notes about multithreading README.vmesa Notes about VM/ESA port README.vms Notes about installing the VMS port *************** *** 69,76 **** configure.gnu Crude emulation of GNU configure cop.h Control operator header cv.h Code value header - cygwin/cygwin.c Additional code for Cygwin port cygwin/Makefile.SHs Shared library generation for Cygwin port cygwin/ld2.in ld wrapper template for Cygwin port cygwin/perlld.in dll generator template for Cygwin port deb.c Debugging routines --- 72,79 ---- configure.gnu Crude emulation of GNU configure cop.h Control operator header cv.h Code value header cygwin/Makefile.SHs Shared library generation for Cygwin port + cygwin/cygwin.c Additional code for Cygwin port cygwin/ld2.in ld wrapper template for Cygwin port cygwin/perlld.in dll generator template for Cygwin port deb.c Debugging routines *************** *** 83,89 **** doop.c Support code for various operations dosish.h Some defines for MS/DOSish machines dump.c Debugging output - ebcdic.c EBCDIC support routines eg/ADB An adb wrapper to put in your crash dir eg/README Intro to example perl scripts eg/cgi/RunMeFirst Setup script for CGI examples --- 86,91 ---- *************** *** 170,175 **** --- 172,178 ---- ext/B/B/Bytecode.pm Compiler Bytecode backend ext/B/B/C.pm Compiler C backend ext/B/B/CC.pm Compiler CC backend + ext/B/B/Concise.pm Compiler Concise backend ext/B/B/Debug.pm Compiler Debug backend ext/B/B/Deparse.pm Compiler Deparse backend ext/B/B/Disassembler.pm Compiler Disassembler backend *************** *** 235,243 **** --- 238,248 ---- ext/DynaLoader/dl_aix.xs AIX implementation ext/DynaLoader/dl_beos.xs BeOS implementation ext/DynaLoader/dl_dld.xs GNU dld style implementation + ext/DynaLoader/dl_dllload.xs S/390 dllload() style implementation ext/DynaLoader/dl_dlopen.xs BSD/SunOS4&5 dlopen() style implementation ext/DynaLoader/dl_dyld.xs NeXT/Apple dyld implementation ext/DynaLoader/dl_hpux.xs HP-UX implementation + ext/DynaLoader/dl_mac.xs MacOS implementation ext/DynaLoader/dl_mpeix.xs MPE/iX implementation ext/DynaLoader/dl_next.xs NeXT implementation ext/DynaLoader/dl_none.xs Stub implementation *************** *** 246,251 **** --- 251,257 ---- ext/DynaLoader/dlutils.c Dynamic loader utilities for dl_*.xs files ext/DynaLoader/hints/aix.pl Hint for DynaLoader for named architecture ext/DynaLoader/hints/linux.pl Hint for DynaLoader for named architecture + ext/DynaLoader/hints/netbsd.pl Hint for DynaLoader for named architecture ext/DynaLoader/hints/openbsd.pl Hint for DynaLoader for named architecture ext/Errno/ChangeLog Errno perl module change log ext/Errno/Errno_pm.PL Errno perl module create script *************** *** 300,307 **** ext/NDBM_File/hints/cygwin.pl Hint for NDBM_File for named architecture ext/NDBM_File/hints/dec_osf.pl Hint for NDBM_File for named architecture ext/NDBM_File/hints/dynixptx.pl Hint for NDBM_File for named architecture - ext/NDBM_File/hints/solaris.pl Hint for NDBM_File for named architecture ext/NDBM_File/hints/sco.pl Hint for NDBM_File for named architecture ext/NDBM_File/hints/svr4.pl Hint for NDBM_File for named architecture ext/NDBM_File/typemap NDBM extension interface types ext/ODBM_File/Makefile.PL ODBM extension makefile writer --- 306,313 ---- ext/NDBM_File/hints/cygwin.pl Hint for NDBM_File for named architecture ext/NDBM_File/hints/dec_osf.pl Hint for NDBM_File for named architecture ext/NDBM_File/hints/dynixptx.pl Hint for NDBM_File for named architecture ext/NDBM_File/hints/sco.pl Hint for NDBM_File for named architecture + ext/NDBM_File/hints/solaris.pl Hint for NDBM_File for named architecture ext/NDBM_File/hints/svr4.pl Hint for NDBM_File for named architecture ext/NDBM_File/typemap NDBM extension interface types ext/ODBM_File/Makefile.PL ODBM extension makefile writer *************** *** 333,338 **** --- 339,345 ---- ext/POSIX/hints/next_3.pl Hint for POSIX for named architecture ext/POSIX/hints/openbsd.pl Hint for POSIX for named architecture ext/POSIX/hints/sunos_4.pl Hint for POSIX for named architecture + ext/POSIX/hints/svr4.pl Hint for POSIX for named architecture ext/POSIX/typemap POSIX extension interface types ext/SDBM_File/Makefile.PL SDBM extension makefile writer ext/SDBM_File/SDBM_File.pm SDBM extension Perl module *************** *** 366,374 **** ext/Socket/Makefile.PL Socket extension makefile writer ext/Socket/Socket.pm Socket extension Perl module ext/Socket/Socket.xs Socket extension external subroutines - ext/Sys/Hostname/Makefile.PL Sys::Hostname extension makefile writer ext/Sys/Hostname/Hostname.pm Sys::Hostname extension Perl module ext/Sys/Hostname/Hostname.xs Sys::Hostname extension external subroutines ext/Sys/Syslog/Makefile.PL Sys::Syslog extension makefile writer ext/Sys/Syslog/Syslog.pm Sys::Syslog extension Perl module ext/Sys/Syslog/Syslog.xs Sys::Syslog extension external subroutines --- 373,381 ---- ext/Socket/Makefile.PL Socket extension makefile writer ext/Socket/Socket.pm Socket extension Perl module ext/Socket/Socket.xs Socket extension external subroutines ext/Sys/Hostname/Hostname.pm Sys::Hostname extension Perl module ext/Sys/Hostname/Hostname.xs Sys::Hostname extension external subroutines + ext/Sys/Hostname/Makefile.PL Sys::Hostname extension makefile writer ext/Sys/Syslog/Makefile.PL Sys::Syslog extension makefile writer ext/Sys/Syslog/Syslog.pm Sys::Syslog extension Perl module ext/Sys/Syslog/Syslog.xs Sys::Syslog extension external subroutines *************** *** 402,407 **** --- 409,415 ---- ext/attrs/attrs.pm attrs extension Perl module ext/attrs/attrs.xs attrs extension external subroutines ext/re/Makefile.PL re extension makefile writer + ext/re/hints/aix.pl Hints for re for named architecture ext/re/hints/mpeix.pl Hints for re for named architecture ext/re/re.pm re extension Perl module ext/re/re.xs re extension external subroutines *************** *** 478,483 **** --- 486,492 ---- hints/next_3.sh Hints for named architecture hints/next_3_0.sh Hints for named architecture hints/next_4.sh Hints for named architecture + hints/nonstopux.sh Hints for named architecture hints/openbsd.sh Hints for named architecture hints/opus.sh Hints for named architecture hints/os2.sh Hints for named architecture *************** *** 516,521 **** --- 525,531 ---- installperl Perl script to do "make install" dirty work intrpvar.h Variables held in each interpreter instance iperlsys.h Perl's interface to the system + jpl/ChangeLog Java/Perl Lingo change log jpl/JNI/Changes Java Native Interface changes jpl/JNI/Closer.java Java Native Interface example jpl/JNI/JNI.pm Java Native Interface module *************** *** 543,554 **** --- 553,566 ---- jpl/PerlInterpreter/PerlInterpreter.h Perl interpreter abstraction jpl/PerlInterpreter/PerlInterpreter.java Perl interpreter abstraction jpl/README JPL instructions + jpl/README.JUST-JNI JPL instructions jpl/SETVARS.PL JPL setup jpl/Sample/Makefile.PL JPL sample makefile generator jpl/Sample/Sample.jpl JPL sample jpl/Test/Makefile.PL JPL tests makefile generator jpl/Test/Test.jpl JPL tests jpl/bin/jpl JPL compiler + jpl/docs/Tutorial.pod Perl and Java Tutorial jpl/get_jdk/README Instructions for using get_jdk.pl jpl/get_jdk/get_jdk.pl JDK download tool jpl/get_jdk/jdk_hosts JDK availability list *************** *** 567,572 **** --- 579,585 ---- lib/CGI/Pretty.pm Output nicely formatted HTML lib/CGI/Push.pm Support for server push lib/CGI/Switch.pm Simple interface for multiple server types + lib/CGI/Util.pm Utility functions lib/CPAN.pm Interface to Comprehensive Perl Archive Network lib/CPAN/FirstTime.pm Utility for creating CPAN config files lib/CPAN/Nox.pm Runs CPAN while avoiding compiled extensions *************** *** 610,621 **** --- 623,636 ---- lib/File/Find.pm Routines to do a find lib/File/Path.pm Do things like `mkdir -p' and `rm -r' lib/File/Spec.pm portable operations on file names + lib/File/Spec/Epoc.pm portable operations on EPOC file names lib/File/Spec/Functions.pm Function interface to File::Spec object methods lib/File/Spec/Mac.pm portable operations on Mac file names lib/File/Spec/OS2.pm portable operations on OS2 file names lib/File/Spec/Unix.pm portable operations on Unix file names lib/File/Spec/VMS.pm portable operations on VMS file names lib/File/Spec/Win32.pm portable operations on Win32 file names + lib/File/Temp.pm create safe temporary files and file handles lib/File/stat.pm By-name interface to Perl's builtin stat lib/FileCache.pm Keep more files open than the system permits lib/FileHandle.pm Backward-compatible front end to IO extension *************** *** 639,644 **** --- 654,660 ---- lib/Pod/Functions.pm used by pod/splitpod lib/Pod/Html.pm Convert POD data to HTML lib/Pod/InputObjects.pm Pod-Parser - define objects for input streams + lib/Pod/LaTeX.pm Convert POD data to LaTeX lib/Pod/Man.pm Convert POD data to *roff lib/Pod/ParseUtils.pm Pod-Parser - pod utility functions lib/Pod/Parser.pm Pod-Parser - define base class for parsing POD *************** *** 646,651 **** --- 662,668 ---- lib/Pod/Select.pm Pod-Parser - select portions of POD docs lib/Pod/Text.pm Pod-Parser - convert POD data to formatted ASCII text lib/Pod/Text/Color.pm Convert POD data to color ASCII text + lib/Pod/Text/Overstrike.pm Convert POD data to formatted overstrike text lib/Pod/Text/Termcap.pm Convert POD data to ASCII text with format escapes lib/Pod/Usage.pm Pod-Parser - print usage messages lib/Search/Dict.pm Perform binary search on dictionaries *************** *** 677,682 **** --- 694,700 ---- lib/UNIVERSAL.pm Base class for ALL classes lib/User/grent.pm By-name interface to Perl's builtin getgr* lib/User/pwent.pm By-name interface to Perl's builtin getpw* + lib/Win32.pod Documentation for Win32 extras lib/abbrev.pl An abbreviation table builder lib/assert.pl assertion and panic with stack trace lib/attributes.pm For "sub foo : attrlist" *************** *** 734,742 **** --- 752,762 ---- lib/unicode/ArabLink.pl Unicode character database lib/unicode/ArabLnkGrp.pl Unicode character database lib/unicode/ArabShap.txt Unicode character database + lib/unicode/BidiMirr.txt Unicode character database lib/unicode/Bidirectional.pl Unicode character database lib/unicode/Block.pl Unicode character database lib/unicode/Blocks.txt Unicode character database + lib/unicode/CaseFold.txt Unicode character database lib/unicode/Category.pl Unicode character database lib/unicode/CombiningClass.pl Unicode character database lib/unicode/CompExcl.txt Unicode character database *************** *** 833,861 **** lib/unicode/Is/ASCII.pl Unicode character database lib/unicode/Is/Alnum.pl Unicode character database lib/unicode/Is/Alpha.pl Unicode character database lib/unicode/Is/BidiAN.pl Unicode character database lib/unicode/Is/BidiB.pl Unicode character database lib/unicode/Is/BidiCS.pl Unicode character database lib/unicode/Is/BidiEN.pl Unicode character database lib/unicode/Is/BidiES.pl Unicode character database lib/unicode/Is/BidiET.pl Unicode character database lib/unicode/Is/BidiL.pl Unicode character database lib/unicode/Is/BidiON.pl Unicode character database lib/unicode/Is/BidiR.pl Unicode character database lib/unicode/Is/BidiS.pl Unicode character database lib/unicode/Is/BidiWS.pl Unicode character database lib/unicode/Is/C.pl Unicode character database lib/unicode/Is/Cc.pl Unicode character database lib/unicode/Is/Cn.pl Unicode character database lib/unicode/Is/Cntrl.pl Unicode character database lib/unicode/Is/Co.pl Unicode character database lib/unicode/Is/DCcircle.pl Unicode character database lib/unicode/Is/DCcompat.pl Unicode character database lib/unicode/Is/DCfinal.pl Unicode character database lib/unicode/Is/DCfont.pl Unicode character database ! lib/unicode/Is/DCinital.pl Unicode character database lib/unicode/Is/DCinitial.pl Unicode character database lib/unicode/Is/DCisolated.pl Unicode character database lib/unicode/Is/DCnarrow.pl Unicode character database lib/unicode/Is/DCnoBreak.pl Unicode character database lib/unicode/Is/DCsmall.pl Unicode character database --- 853,893 ---- lib/unicode/Is/ASCII.pl Unicode character database lib/unicode/Is/Alnum.pl Unicode character database lib/unicode/Is/Alpha.pl Unicode character database + lib/unicode/Is/BidiAL.pl Unicode character database lib/unicode/Is/BidiAN.pl Unicode character database lib/unicode/Is/BidiB.pl Unicode character database + lib/unicode/Is/BidiBN.pl Unicode character database lib/unicode/Is/BidiCS.pl Unicode character database lib/unicode/Is/BidiEN.pl Unicode character database lib/unicode/Is/BidiES.pl Unicode character database lib/unicode/Is/BidiET.pl Unicode character database lib/unicode/Is/BidiL.pl Unicode character database + lib/unicode/Is/BidiLRE.pl Unicode character database + lib/unicode/Is/BidiLRO.pl Unicode character database + lib/unicode/Is/BidiNSM.pl Unicode character database lib/unicode/Is/BidiON.pl Unicode character database + lib/unicode/Is/BidiPDF.pl Unicode character database lib/unicode/Is/BidiR.pl Unicode character database + lib/unicode/Is/BidiRLE.pl Unicode character database + lib/unicode/Is/BidiRLO.pl Unicode character database lib/unicode/Is/BidiS.pl Unicode character database lib/unicode/Is/BidiWS.pl Unicode character database + lib/unicode/Is/Blank.pl Unicode character database lib/unicode/Is/C.pl Unicode character database lib/unicode/Is/Cc.pl Unicode character database + lib/unicode/Is/Cf.pl Unicode character database lib/unicode/Is/Cn.pl Unicode character database lib/unicode/Is/Cntrl.pl Unicode character database lib/unicode/Is/Co.pl Unicode character database + lib/unicode/Is/Cs.pl Unicode character database lib/unicode/Is/DCcircle.pl Unicode character database lib/unicode/Is/DCcompat.pl Unicode character database lib/unicode/Is/DCfinal.pl Unicode character database lib/unicode/Is/DCfont.pl Unicode character database ! lib/unicode/Is/DCfraction.pl Unicode character database lib/unicode/Is/DCinitial.pl Unicode character database lib/unicode/Is/DCisolated.pl Unicode character database + lib/unicode/Is/DCmedial.pl Unicode character database lib/unicode/Is/DCnarrow.pl Unicode character database lib/unicode/Is/DCnoBreak.pl Unicode character database lib/unicode/Is/DCsmall.pl Unicode character database *************** *** 869,874 **** --- 901,935 ---- lib/unicode/Is/Digit.pl Unicode character database lib/unicode/Is/Graph.pl Unicode character database lib/unicode/Is/L.pl Unicode character database + lib/unicode/Is/LbrkAI.pl Unicode character database + lib/unicode/Is/LbrkAL.pl Unicode character database + lib/unicode/Is/LbrkB2.pl Unicode character database + lib/unicode/Is/LbrkBA.pl Unicode character database + lib/unicode/Is/LbrkBB.pl Unicode character database + lib/unicode/Is/LbrkBK.pl Unicode character database + lib/unicode/Is/LbrkCB.pl Unicode character database + lib/unicode/Is/LbrkCL.pl Unicode character database + lib/unicode/Is/LbrkCM.pl Unicode character database + lib/unicode/Is/LbrkCR.pl Unicode character database + lib/unicode/Is/LbrkEX.pl Unicode character database + lib/unicode/Is/LbrkGL.pl Unicode character database + lib/unicode/Is/LbrkHY.pl Unicode character database + lib/unicode/Is/LbrkID.pl Unicode character database + lib/unicode/Is/LbrkIN.pl Unicode character database + lib/unicode/Is/LbrkIS.pl Unicode character database + lib/unicode/Is/LbrkLF.pl Unicode character database + lib/unicode/Is/LbrkNS.pl Unicode character database + lib/unicode/Is/LbrkNU.pl Unicode character database + lib/unicode/Is/LbrkOP.pl Unicode character database + lib/unicode/Is/LbrkPO.pl Unicode character database + lib/unicode/Is/LbrkPR.pl Unicode character database + lib/unicode/Is/LbrkQU.pl Unicode character database + lib/unicode/Is/LbrkSA.pl Unicode character database + lib/unicode/Is/LbrkSG.pl Unicode character database + lib/unicode/Is/LbrkSP.pl Unicode character database + lib/unicode/Is/LbrkSY.pl Unicode character database + lib/unicode/Is/LbrkXX.pl Unicode character database + lib/unicode/Is/LbrkZW.pl Unicode character database lib/unicode/Is/Ll.pl Unicode character database lib/unicode/Is/Lm.pl Unicode character database lib/unicode/Is/Lo.pl Unicode character database *************** *** 877,910 **** --- 938,991 ---- lib/unicode/Is/Lu.pl Unicode character database lib/unicode/Is/M.pl Unicode character database lib/unicode/Is/Mc.pl Unicode character database + lib/unicode/Is/Me.pl Unicode character database lib/unicode/Is/Mirrored.pl Unicode character database lib/unicode/Is/Mn.pl Unicode character database lib/unicode/Is/N.pl Unicode character database lib/unicode/Is/Nd.pl Unicode character database + lib/unicode/Is/Nl.pl Unicode character database lib/unicode/Is/No.pl Unicode character database lib/unicode/Is/P.pl Unicode character database + lib/unicode/Is/Pc.pl Unicode character database lib/unicode/Is/Pd.pl Unicode character database lib/unicode/Is/Pe.pl Unicode character database + lib/unicode/Is/Pf.pl Unicode character database + lib/unicode/Is/Pi.pl Unicode character database lib/unicode/Is/Po.pl Unicode character database lib/unicode/Is/Print.pl Unicode character database lib/unicode/Is/Ps.pl Unicode character database lib/unicode/Is/Punct.pl Unicode character database lib/unicode/Is/S.pl Unicode character database lib/unicode/Is/Sc.pl Unicode character database + lib/unicode/Is/Sk.pl Unicode character database lib/unicode/Is/Sm.pl Unicode character database lib/unicode/Is/So.pl Unicode character database lib/unicode/Is/Space.pl Unicode character database + lib/unicode/Is/SpacePerl.pl Unicode character database lib/unicode/Is/SylA.pl Unicode character database + lib/unicode/Is/SylAA.pl Unicode character database + lib/unicode/Is/SylAAI.pl Unicode character database + lib/unicode/Is/SylAI.pl Unicode character database lib/unicode/Is/SylC.pl Unicode character database lib/unicode/Is/SylE.pl Unicode character database + lib/unicode/Is/SylEE.pl Unicode character database lib/unicode/Is/SylI.pl Unicode character database + lib/unicode/Is/SylII.pl Unicode character database + lib/unicode/Is/SylN.pl Unicode character database lib/unicode/Is/SylO.pl Unicode character database + lib/unicode/Is/SylOO.pl Unicode character database lib/unicode/Is/SylU.pl Unicode character database lib/unicode/Is/SylV.pl Unicode character database lib/unicode/Is/SylWA.pl Unicode character database + lib/unicode/Is/SylWAA.pl Unicode character database lib/unicode/Is/SylWC.pl Unicode character database lib/unicode/Is/SylWE.pl Unicode character database + lib/unicode/Is/SylWEE.pl Unicode character database lib/unicode/Is/SylWI.pl Unicode character database + lib/unicode/Is/SylWII.pl Unicode character database + lib/unicode/Is/SylWO.pl Unicode character database + lib/unicode/Is/SylWOO.pl Unicode character database + lib/unicode/Is/SylWU.pl Unicode character database lib/unicode/Is/SylWV.pl Unicode character database lib/unicode/Is/Syllable.pl Unicode character database lib/unicode/Is/Upper.pl Unicode character database *************** *** 922,938 **** lib/unicode/Names.txt Unicode character database lib/unicode/NamesList.html Unicode character database lib/unicode/Number.pl Unicode character database ! lib/unicode/Props.txt Unicode character database lib/unicode/README.Ethiopic Unicode character database lib/unicode/ReadMe.txt Unicode character database info lib/unicode/SpecCase.txt Unicode character database lib/unicode/To/Digit.pl Unicode character database lib/unicode/To/Lower.pl Unicode character database lib/unicode/To/Title.pl Unicode character database lib/unicode/To/Upper.pl Unicode character database ! lib/unicode/UCD300.html Unicode character database ! lib/unicode/Unicode.300 Unicode character database ! lib/unicode/Unicode3.html Unicode character database lib/unicode/mktables.PL Unicode character database generator lib/unicode/syllables.txt Unicode character database lib/utf8.pm Pragma to control Unicode support --- 1003,1020 ---- lib/unicode/Names.txt Unicode character database lib/unicode/NamesList.html Unicode character database lib/unicode/Number.pl Unicode character database ! lib/unicode/PropList.txt Unicode character database lib/unicode/README.Ethiopic Unicode character database + lib/unicode/README.perl Unicode character database lib/unicode/ReadMe.txt Unicode character database info lib/unicode/SpecCase.txt Unicode character database lib/unicode/To/Digit.pl Unicode character database lib/unicode/To/Lower.pl Unicode character database lib/unicode/To/Title.pl Unicode character database lib/unicode/To/Upper.pl Unicode character database ! lib/unicode/UCD301.html Unicode character database ! lib/unicode/UCDFF301.html Unicode character database ! lib/unicode/Unicode.301 Unicode character database lib/unicode/mktables.PL Unicode character database generator lib/unicode/syllables.txt Unicode character database lib/utf8.pm Pragma to control Unicode support *************** *** 991,1002 **** os2/OS2/Process/Process.pm system() constants in a module os2/OS2/Process/Process.xs system() constants in a module os2/OS2/REXX/Changes DLL access module - os2/OS2/REXX/MANIFEST DLL access module os2/OS2/REXX/DLL/Changes DLL access module os2/OS2/REXX/DLL/DLL.pm DLL access module os2/OS2/REXX/DLL/DLL.xs DLL access module os2/OS2/REXX/DLL/MANIFEST DLL access module os2/OS2/REXX/DLL/Makefile.PL DLL access module os2/OS2/REXX/Makefile.PL DLL access module os2/OS2/REXX/REXX.pm DLL access module os2/OS2/REXX/REXX.xs DLL access module --- 1073,1084 ---- os2/OS2/Process/Process.pm system() constants in a module os2/OS2/Process/Process.xs system() constants in a module os2/OS2/REXX/Changes DLL access module os2/OS2/REXX/DLL/Changes DLL access module os2/OS2/REXX/DLL/DLL.pm DLL access module os2/OS2/REXX/DLL/DLL.xs DLL access module os2/OS2/REXX/DLL/MANIFEST DLL access module os2/OS2/REXX/DLL/Makefile.PL DLL access module + os2/OS2/REXX/MANIFEST DLL access module os2/OS2/REXX/Makefile.PL DLL access module os2/OS2/REXX/REXX.pm DLL access module os2/OS2/REXX/REXX.xs DLL access module *************** *** 1015,1020 **** --- 1097,1103 ---- os2/dlfcn.h Addon for dl_open os2/os2.c Additional code for OS/2 os2/os2.sym Additional symbols to export + os2/os2add.sym Overriding symbols to export os2/os2ish.h Header for OS/2 os2/os2thread.h pthread-like typedefs os2/perl2cmd.pl Corrects installed binaries under OS/2 *************** *** 1050,1076 **** plan9/plan9ish.h Plan9 port: Plan9-specific C header file plan9/setup.rc Plan9 port: script for easy build+install plan9/versnum Plan9 port: script to print version number ! pod/Makefile Make pods into something else ! pod/Win32.pod Documentation for Win32 extras ! pod/buildtoc generate perltoc.pod pod/checkpods.PL Tool to check for common errors in pods ! pod/perl.pod Top level perl man page pod/perl5004delta.pod Changes from 5.003 to 5.004 pod/perl5005delta.pod Changes from 5.004 to 5.005 pod/perlapi.pod Perl API documentation (autogenerated) pod/perlapio.pod IO API info ! pod/perlbook.pod Book info pod/perlboot.pod Beginner's Object-oriented Tutorial pod/perlbot.pod Object-oriented Bag o' Tricks pod/perlcall.pod Callback info pod/perlcompile.pod Info on using the Compiler suite pod/perldata.pod Data structure info pod/perldbmfilter.pod Info about DBM Filters pod/perldebguts.pod Debugger guts info pod/perldebug.pod Debugger info pod/perldelta.pod Changes since last version pod/perldiag.pod Diagnostic info pod/perldsc.pod Data Structures Cookbook pod/perlembed.pod Embedding info pod/perlfaq.pod Frequently Asked Questions, Top Level pod/perlfaq1.pod Frequently Asked Questions, Part 1 --- 1133,1161 ---- plan9/plan9ish.h Plan9 port: Plan9-specific C header file plan9/setup.rc Plan9 port: script for easy build+install plan9/versnum Plan9 port: script to print version number ! pod/Makefile.SH generate Makefile whichs makes pods into something else ! pod/buildtoc.PL generate buildtoc which generates perltoc.pod pod/checkpods.PL Tool to check for common errors in pods ! pod/perl.pod Top level perl documentation pod/perl5004delta.pod Changes from 5.003 to 5.004 pod/perl5005delta.pod Changes from 5.004 to 5.005 pod/perlapi.pod Perl API documentation (autogenerated) pod/perlapio.pod IO API info ! pod/perlbook.pod Perl book information pod/perlboot.pod Beginner's Object-oriented Tutorial pod/perlbot.pod Object-oriented Bag o' Tricks pod/perlcall.pod Callback info + pod/perlclib.pod Internal replacements for standard C library functions pod/perlcompile.pod Info on using the Compiler suite pod/perldata.pod Data structure info pod/perldbmfilter.pod Info about DBM Filters pod/perldebguts.pod Debugger guts info + pod/perldebtut.pod Perl debugging tutorial pod/perldebug.pod Debugger info pod/perldelta.pod Changes since last version pod/perldiag.pod Diagnostic info pod/perldsc.pod Data Structures Cookbook + pod/perlebcdic.pod Considerations for running Perl on EBCDIC platforms pod/perlembed.pod Embedding info pod/perlfaq.pod Frequently Asked Questions, Top Level pod/perlfaq1.pod Frequently Asked Questions, Part 1 *************** *** 1096,1102 **** --- 1181,1189 ---- pod/perllol.pod How to use lists of lists pod/perlmod.pod Module mechanism info pod/perlmodinstall.pod Installing CPAN Modules + pod/perlmodlib.PL Generate pod/perlmodlib.pod pod/perlmodlib.pod Module policy info + pod/perlnewmod.pod Preparing a new module for distribution pod/perlnumber.pod Semantics of numbers and numeric operations pod/perlobj.pod Object info pod/perlop.pod Operator info *************** *** 1106,1111 **** --- 1193,1200 ---- pod/perlre.pod Regular expression info pod/perlref.pod References info pod/perlreftut.pod Mark's references tutorial + pod/perlrequick.pod Quick start guide for Perl regular expressions + pod/perlretut.pod Tutorial for Perl regular expressions pod/perlrun.pod Execution info pod/perlsec.pod Security info pod/perlstyle.pod Style info *************** *** 1119,1124 **** --- 1208,1214 ---- pod/perltootc.pod Tom's object-oriented tutorial (more on class data) pod/perltrap.pod Trap info pod/perlunicode.pod Unicode support info + pod/perlutil.pod Accompanying utilities explained pod/perlvar.pod Variable info pod/perlxs.pod XS api info pod/perlxstut.pod XS tutorial *************** *** 1202,1218 **** --- 1292,1312 ---- t/lib/anydbm.t See if AnyDBM_File works t/lib/attrs.t See if attrs works with C t/lib/autoloader.t See if AutoLoader works + t/lib/b.t See if B backends work t/lib/basename.t See if File::Basename works t/lib/bigfloat.t See if bigfloat.pl works t/lib/bigfltpm.t See if BigFloat.pm works t/lib/bigint.t See if bigint.pl works t/lib/bigintpm.t See if BigInt.pm works + t/lib/cgi-esc.t See if CGI.pm works t/lib/cgi-form.t See if CGI.pm works t/lib/cgi-function.t See if CGI.pm works t/lib/cgi-html.t See if CGI.pm works + t/lib/cgi-pretty.t See if CGI.pm works t/lib/cgi-request.t See if CGI.pm works t/lib/charnames.t See if character names work t/lib/checktree.t See if File::CheckTree works + t/lib/class-struct.t See if Class::Struct works t/lib/complex.t See if Math::Complex works t/lib/db-btree.t See if DB_File works t/lib/db-hash.t See if DB_File works *************** *** 1236,1243 **** t/lib/dumper-ovl.t See if Data::Dumper works for overloaded data t/lib/dumper.t See if Data::Dumper works t/lib/english.t See if English works - t/lib/env.t See if Env works t/lib/env-array.t See if Env works for arrays t/lib/errno.t See if Errno works t/lib/fatal.t See if Fatal works t/lib/fields.t See if base/fields works --- 1330,1337 ---- t/lib/dumper-ovl.t See if Data::Dumper works for overloaded data t/lib/dumper.t See if Data::Dumper works t/lib/english.t See if English works t/lib/env-array.t See if Env works for arrays + t/lib/env.t See if Env works t/lib/errno.t See if Errno works t/lib/fatal.t See if Fatal works t/lib/fields.t See if base/fields works *************** *** 1249,1254 **** --- 1343,1352 ---- t/lib/filepath.t See if File::Path works t/lib/filespec.t See if File::Spec works t/lib/findbin.t See if FindBin works + t/lib/ftmp-mktemp.t See if File::Temp works + t/lib/ftmp-posix.t See if File::Temp works + t/lib/ftmp-security.t See if File::Temp works + t/lib/ftmp-tempfile.t See if File::Temp works t/lib/gdbm.t See if GDBM_File works t/lib/getopt.t See if Getopt::Std and Getopt::Long work t/lib/glob-basic.t See if File::Glob works *************** *** 1258,1263 **** --- 1356,1362 ---- t/lib/gol-basic.t See if Getopt::Long works t/lib/gol-compat.t See if Getopt::Long works t/lib/gol-linkage.t See if Getopt::Long works + t/lib/gol-oo.t See if Getopt::Long works t/lib/h2ph.h Test header file for h2ph t/lib/h2ph.pht Generated output from h2ph.h by h2ph, for comparison t/lib/h2ph.t See if h2ph works like it should *************** *** 1284,1289 **** --- 1383,1389 ---- t/lib/open3.t See if IPC::Open3 works t/lib/ops.t See if Opcode works t/lib/parsewords.t See if Text::ParseWords works + t/lib/peek.t See if Devel::Peek works t/lib/ph.t See if h2ph works t/lib/posix.t See if POSIX works t/lib/safe1.t See if Safe works *************** *** 1291,1311 **** --- 1391,1417 ---- t/lib/sdbm.t See if SDBM_File works t/lib/searchdict.t See if Search::Dict works t/lib/selectsaver.t See if SelectSaver works + t/lib/selfloader.t See if SelfLoader works t/lib/socket.t See if Socket works t/lib/soundex.t See if Soundex works t/lib/symbol.t See if Symbol works t/lib/syslfs.t See if large files work for sysio + t/lib/syslog.t See if Sys::Syslog works t/lib/textfill.t See if Text::Wrap::fill works t/lib/texttabs.t See if Text::Tabs works t/lib/textwrap.t See if Text::Wrap::wrap works t/lib/thr5005.t Test 5.005-style threading (skipped if no use5005threads) t/lib/tie-push.t Test for Tie::Array + t/lib/tie-refhash.t Test for Tie::RefHash and Tie::RefHash::Nestable + t/lib/tie-splice.t Test for Tie::Array::SPLICE t/lib/tie-stdarray.t Test for Tie::StdArray t/lib/tie-stdhandle.t Test for Tie::StdHandle t/lib/tie-stdpush.t Test for Tie::StdArray + t/lib/tie-substrhash.t Test for Tie::SubstrHash t/lib/timelocal.t See if Time::Local works t/lib/trig.t See if Math::Trig works t/op/64bitint.t See if 64 bit integers work + t/op/anonsub.t See if anonymous subroutines work t/op/append.t See if . works t/op/args.t See if operations on @_ work t/op/arith.t See if arithmetic works *************** *** 1319,1324 **** --- 1425,1431 ---- t/op/chop.t See if chop works t/op/closure.t See if closures work t/op/cmp.t See if the various string and numeric compare work + t/op/concat.t See if string concatenation works t/op/cond.t See if conditional expressions work t/op/context.t See if context propagation works t/op/defins.t See if auto-insert of defined() works *************** *** 1347,1352 **** --- 1454,1460 ---- t/op/index.t See if index works t/op/int.t See if int works t/op/join.t See if join works + t/op/length.t See if length works t/op/lex_assign.t See if ops involving lexicals or pad temps work t/op/lfs.t See if large files work for perlio t/op/list.t See if array lists work *************** *** 1357,1362 **** --- 1465,1471 ---- t/op/misc.t See if miscellaneous bugs have been fixed t/op/mkdir.t See if mkdir works t/op/my.t See if lexical scoping works + t/op/my_stash.t See if my Package works t/op/nothr5005.t local @_ test which does not work under use5005threads t/op/numconvert.t See if accessing fields does not change numeric values t/op/oct.t See if oct and hex work *************** *** 1376,1382 **** --- 1485,1493 ---- t/op/ref.t See if refs and objects work t/op/regexp.t See if regular expressions work t/op/regexp_noamp.t See if regular expressions work with optimizations + t/op/regmesg.t See if one can get regular expression errors t/op/repeat.t See if x operator works + t/op/reverse.t See if reverse operator works t/op/runlevel.t See if die() works from perl_call_*() t/op/sleep.t See if sleep works t/op/sort.t See if sort works *************** *** 1399,1410 **** --- 1510,1523 ---- t/op/undef.t See if undef works t/op/universal.t See if UNIVERSAL class works t/op/unshift.t See if unshift works + t/op/utf8decode.t See if UTF-8 decoding works t/op/vec.t See if vectors work t/op/ver.t See if v-strings and the %v format flag work t/op/wantarray.t See if wantarray works t/op/write.t See if write works t/pod/emptycmd.t Test empty pod directives t/pod/emptycmd.xr Expected results for emptycmd.t + t/pod/find.t See if Pod::Find works t/pod/for.t Test =for directive t/pod/for.xr Expected results for for.t t/pod/headings.t Test =head directives *************** *** 1432,1438 **** t/pod/special_seqs.t Test "special" interior sequences t/pod/special_seqs.xr Expected results for emptycmd.t t/pod/testcmp.pl Module to compare output against expected results ! t/pod/testp2pt.pl Module to test Pod::PlainText for a given file t/pod/testpchk.pl Module to test Pod::Checker for a given file t/pragma/constant.t See if compile-time constants work t/pragma/diagnostics.t See if diagnostics.pm works --- 1545,1551 ---- t/pod/special_seqs.t Test "special" interior sequences t/pod/special_seqs.xr Expected results for emptycmd.t t/pod/testcmp.pl Module to compare output against expected results ! t/pod/testp2pt.pl Module to test Pod::Text for a given file t/pod/testpchk.pl Module to test Pod::Checker for a given file t/pragma/constant.t See if compile-time constants work t/pragma/diagnostics.t See if diagnostics.pm works *************** *** 1444,1451 **** t/pragma/strict-subs Tests of "use strict 'subs'" for strict.t t/pragma/strict-vars Tests of "use strict 'vars'" for strict.t t/pragma/strict.t See if strictures work - t/pragma/subs.t See if subroutine pseudo-importation works t/pragma/sub_lval.t See if lvalue subroutines work t/pragma/utf8.t See if utf8 operations work t/pragma/warn/1global Tests of global warnings for warnings.t t/pragma/warn/2use Tests for "use warnings" for warnings.t --- 1557,1564 ---- t/pragma/strict-subs Tests of "use strict 'subs'" for strict.t t/pragma/strict-vars Tests of "use strict 'vars'" for strict.t t/pragma/strict.t See if strictures work t/pragma/sub_lval.t See if lvalue subroutines work + t/pragma/subs.t See if subroutine pseudo-importation works t/pragma/utf8.t See if utf8 operations work t/pragma/warn/1global Tests of global warnings for warnings.t t/pragma/warn/2use Tests for "use warnings" for warnings.t *************** *** 1481,1486 **** --- 1594,1600 ---- t/pragma/warn/utf8 Tests for utf8.c for warnings.t t/pragma/warn/util Tests for util.c for warnings.t t/pragma/warnings.t See if warning controls work + t/run/runenv.t Test if perl honors its environment variables. taint.c Tainting code thrdvar.h Per-thread variables thread.h Threading header *************** *** 1496,1502 **** utils/dprofpp.PL Perl code profile post-processor utils/h2ph.PL A thing to turn C .h files into perl .ph files utils/h2xs.PL Program to make .xs files from C header files - utils/perlbc.PL Front-end for byte compiler utils/perlbug.PL A simple tool to submit a bug report utils/perlcc.PL Front-end for compiler utils/perldoc.PL A simple tool to find & display perl's documentation --- 1610,1615 ---- *************** *** 1533,1551 **** vms/perly_h.vms perly.h with fixed declarations for global syms vms/sockadapt.c glue for SockshShr socket support vms/sockadapt.h glue for SockshShr socket support - vms/subconfigure.com performs compiler checks and writes config.sh, config.h, and descrip.mms vms/test.com DCL driver for regression tests vms/vms.c VMS-specific C code for Perl core vms/vms_yfix.pl convert Unix perly.[ch] to VMS perly_[ch].vms vms/vmsish.h VMS-specific C header for Perl core vms/writemain.pl Generate perlmain.c from miniperlmain.c+extensions vos/Changes Changes made to port Perl to the VOS operating system vos/build.cm VOS command macro to build Perl vos/compile_perl.cm VOS command macro to build multiple version of Perl ! vos/config.def input for config.pl ! vos/config.h config.h for VOS vos/config.pl script to convert a config_h.SH to a config.h ! vos/config_h.SH_orig config_h.SH at the time config.h was created vos/perl.bind VOS bind control file vos/test_vos_dummies.c Test program for "vos_dummies.c" vos/vos_dummies.c Wrappers to soak up undefined functions --- 1646,1667 ---- vms/perly_h.vms perly.h with fixed declarations for global syms vms/sockadapt.c glue for SockshShr socket support vms/sockadapt.h glue for SockshShr socket support vms/test.com DCL driver for regression tests vms/vms.c VMS-specific C code for Perl core vms/vms_yfix.pl convert Unix perly.[ch] to VMS perly_[ch].vms vms/vmsish.h VMS-specific C header for Perl core + vms/vmspipe.com VMS-specific piped command helper script vms/writemain.pl Generate perlmain.c from miniperlmain.c+extensions vos/Changes Changes made to port Perl to the VOS operating system vos/build.cm VOS command macro to build Perl vos/compile_perl.cm VOS command macro to build multiple version of Perl ! vos/config.alpha.def definitions used by config.pl ! vos/config.alpha.h config.h for use with alpha VOS POSIX.1 support ! vos/config.ga.def definitions used by config.pl ! vos/config.ga.h config.h for use with generally-available VOS POSIX.1 support vos/config.pl script to convert a config_h.SH to a config.h ! vos/configure_perl.cm VOS command macro to configure perl before building ! vos/install_perl.cm VOS command macro to install perl after building vos/perl.bind VOS bind control file vos/test_vos_dummies.c Test program for "vos_dummies.c" vos/vos_dummies.c Wrappers to soak up undefined functions *************** *** 1579,1584 **** --- 1695,1701 ---- win32/perllib.c Win32 port win32/pod.mak Win32 port win32/runperl.c Win32 port + win32/sncfnmcs.pl Win32 port win32/splittree.pl Win32 port win32/vdir.h Perl "host" virtual directory manager win32/vmem.h Perl "host" memory manager Index: Makefile.SH ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/Makefile.SH Sat Mar 11 08:05:24 2000 --- perl-5.6.1/Makefile.SH Thu Apr 5 21:38:46 2001 *************** *** 26,31 **** --- 26,32 ---- linklibperl='$(LIBPERL)' shrpldflags='$(LDDLFLAGS)' ldlibpth='' + DPERL_EXTERNAL_GLOB='-DPERL_EXTERNAL_GLOB' case "$useshrplib" in true) # Prefix all runs of 'miniperl' and 'perl' with *************** *** 70,81 **** *) shrpldflags="$shrpldflags -b noentry" ;; esac ! shrpldflags="$shrpldflags $ldflags $libs $cryptlib" linklibperl="-L $archlibexp/CORE -L `pwd | sed 's/\/UU$//'` -lperl" ;; hpux*) linklibperl="-L `pwd | sed 's/\/UU$//'` -Wl,+s -Wl,+b$archlibexp/CORE -lperl" ;; esac case "$ldlibpthname" in '') ;; --- 71,87 ---- *) shrpldflags="$shrpldflags -b noentry" ;; esac ! shrpldflags="$shrpldflags $ldflags $perllibs $cryptlib" linklibperl="-L $archlibexp/CORE -L `pwd | sed 's/\/UU$//'` -lperl" ;; hpux*) linklibperl="-L `pwd | sed 's/\/UU$//'` -Wl,+s -Wl,+b$archlibexp/CORE -lperl" ;; + os390*) + shrpldflags='-W l,dll' + linklibperl='libperl.x' + DPERL_EXTERNAL_GLOB='' + ;; esac case "$ldlibpthname" in '') ;; *************** *** 117,122 **** --- 123,146 ---- nonxs_list="$nonxs_list ext/$f/pm_to_blib" done + # Handle the usage of different yaccs in posix-bc (During Configure we + # us yacc for perly.y and byacc for a2p.y. The makefiles must use the + # same configuration for run_byacc!): + case "$osname" in + posix-bc) + byacc=$yacc + ;; + esac + + # Handle the usage of different yaccs in posix-bc (During Configure we + # us yacc for perly.y and byacc for a2p.y. The makefiles must use the + # same configuration for run_byacc!): + case "$osname" in + posix-bc) + byacc=$yacc + ;; + esac + echo "Extracting Makefile (with variable substitutions)" $spitshell >Makefile <>Makefile <<'!NO!SUBS!' --- 230,241 ---- # how to tr(anslate) newlines TRNL = '$trnl' + !GROK!THIS! # not used by Makefile but by installperl; ! # mentioned here so that metaconfig picks these up ! # $installusrbinperl ! # $versiononly ## In the following dollars and backticks do not need the extra backslash. $spitshell >>Makefile <<'!NO!SUBS!' *************** *** 222,240 **** # Files to be built with variable substitution before miniperl # is available. sh = Makefile.SH cflags.SH config_h.SH makeaperl.SH makedepend.SH \ ! makedir.SH myconfig.SH writemain.SH shextract = Makefile cflags config.h makeaperl makedepend \ ! makedir myconfig writemain # Files to be built with variable substitution after miniperl is # available. Dependencies handled manually below (for now). pl = pod/pod2html.PL pod/pod2latex.PL pod/pod2man.PL pod/pod2text.PL \ ! pod/pod2usage.PL pod/podchecker.PL pod/podselect.PL plextract = pod/pod2html pod/pod2latex pod/pod2man pod/pod2text \ ! pod/pod2usage pod/podchecker pod/podselect addedbyconf = UU $(shextract) $(plextract) pstruct --- 247,267 ---- # Files to be built with variable substitution before miniperl # is available. sh = Makefile.SH cflags.SH config_h.SH makeaperl.SH makedepend.SH \ ! makedir.SH myconfig.SH writemain.SH pod/Makefile.SH shextract = Makefile cflags config.h makeaperl makedepend \ ! makedir myconfig writemain pod/Makefile # Files to be built with variable substitution after miniperl is # available. Dependencies handled manually below (for now). pl = pod/pod2html.PL pod/pod2latex.PL pod/pod2man.PL pod/pod2text.PL \ ! pod/pod2usage.PL pod/podchecker.PL pod/podselect.PL \ ! pod/buildtoc.PL plextract = pod/pod2html pod/pod2latex pod/pod2man pod/pod2text \ ! pod/pod2usage pod/podchecker pod/podselect \ ! pod/buildtoc addedbyconf = UU $(shextract) $(plextract) pstruct *************** *** 297,310 **** # Apparently some makes require an action for the FORCE target. FORCE: @sh -c true ! opmini$(OBJ_EXT): op.c ! $(RMS) opmini.c ! $(LNS) op.c opmini.c ! $(CCCMD) $(PLDLFLAGS) -DPERL_EXTERNAL_GLOB opmini.c ! $(RMS) opmini.c ! miniperlmain$(OBJ_EXT): miniperlmain.c $(CCCMD) $(PLDLFLAGS) $*.c perlmain.c: miniperlmain.c config.sh $(FIRSTMAKEFILE) --- 324,341 ---- # Apparently some makes require an action for the FORCE target. FORCE: @sh -c true + !NO!SUBS! ! $spitshell >>Makefile <>Makefile <<'!NO!SUBS!' ! miniperlmain$(OBJ_EXT): miniperlmain.c patchlevel.h $(CCCMD) $(PLDLFLAGS) $*.c perlmain.c: miniperlmain.c config.sh $(FIRSTMAKEFILE) *************** *** 333,339 **** case "$osname" in aix) $spitshell >>Makefile <>Makefile <>Makefile <<'!NO!SUBS!' ! $(LD) $(SHRPLDFLAGS) -o $@ perl$(OBJ_EXT) $(obj) !NO!SUBS! case "$osname" in aix) --- 434,440 ---- case "$useshrplib" in true) $spitshell >>Makefile <<'!NO!SUBS!' ! $(LD) -o $@ $(SHRPLDFLAGS) perl$(OBJ_EXT) $(obj) !NO!SUBS! case "$osname" in aix) *************** *** 458,464 **** *) $spitshell >>Makefile <<'!NO!SUBS!' miniperl: $& miniperlmain$(OBJ_EXT) $(LIBPERL) opmini$(OBJ_EXT) ! $(LDLIBPTH) $(CC) $(LARGE) $(CLDFLAGS) -o miniperl \ miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) $(LLIBPERL) $(libs) $(LDLIBPTH) ./miniperl -w -Ilib -MExporter -e '' || $(MAKE) minitest !NO!SUBS! --- 489,495 ---- *) $spitshell >>Makefile <<'!NO!SUBS!' miniperl: $& miniperlmain$(OBJ_EXT) $(LIBPERL) opmini$(OBJ_EXT) ! $(LDLIBPTH) $(CC) $(CLDFLAGS) -o miniperl \ miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) $(LLIBPERL) $(libs) $(LDLIBPTH) ./miniperl -w -Ilib -MExporter -e '' || $(MAKE) minitest !NO!SUBS! *************** *** 468,483 **** $spitshell >>Makefile <<'!NO!SUBS!' perl: $& perlmain$(OBJ_EXT) $(LIBPERL) $(DYNALOADER) $(static_ext) ext.libs $(PERLEXPORT) ! $(SHRPENV) $(LDLIBPTH) $(CC) $(LARGE) $(CLDFLAGS) $(CCDLFLAGS) -o perl perlmain$(OBJ_EXT) $(DYNALOADER) $(static_ext) $(LLIBPERL) `cat ext.libs` $(libs) pureperl: $& perlmain$(OBJ_EXT) $(LIBPERL) $(DYNALOADER) $(static_ext) ext.libs $(PERLEXPORT) ! $(SHRPENV) $(LDLIBPTH) purify $(CC) $(LARGE) $(CLDFLAGS) $(CCDLFLAGS) -o pureperl perlmain$(OBJ_EXT) $(DYNALOADER) $(static_ext) $(LLIBPERL) `cat ext.libs` $(libs) purecovperl: $& perlmain$(OBJ_EXT) $(LIBPERL) $(DYNALOADER) $(static_ext) ext.libs $(PERLEXPORT) ! $(SHRPENV) $(LDLIBPTH) purecov $(CC) $(LARGE) $(CLDFLAGS) $(CCDLFLAGS) -o purecovperl perlmain$(OBJ_EXT) $(DYNALOADER) $(static_ext) $(LLIBPERL) `cat ext.libs` $(libs) quantperl: $& perlmain$(OBJ_EXT) $(LIBPERL) $(DYNALOADER) $(static_ext) ext.libs $(PERLEXPORT) ! $(SHRPENV) $(LDLIBPTH) quantify $(CC) $(LARGE) $(CLDFLAGS) $(CCDLFLAGS) -o quantperl perlmain$(OBJ_EXT) $(DYNALOADER) $(static_ext) $(LLIBPERL) `cat ext.libs` $(libs) # This version, if specified in Configure, does ONLY those scripts which need # set-id emulation. Suidperl must be setuid root. It contains the "taint" --- 499,514 ---- $spitshell >>Makefile <<'!NO!SUBS!' perl: $& perlmain$(OBJ_EXT) $(LIBPERL) $(DYNALOADER) $(static_ext) ext.libs $(PERLEXPORT) ! $(SHRPENV) $(LDLIBPTH) $(CC) -o perl $(CLDFLAGS) $(CCDLFLAGS) perlmain$(OBJ_EXT) $(DYNALOADER) $(static_ext) $(LLIBPERL) `cat ext.libs` $(libs) pureperl: $& perlmain$(OBJ_EXT) $(LIBPERL) $(DYNALOADER) $(static_ext) ext.libs $(PERLEXPORT) ! $(SHRPENV) $(LDLIBPTH) purify $(CC) -o pureperl $(CLDFLAGS) $(CCDLFLAGS) perlmain$(OBJ_EXT) $(DYNALOADER) $(static_ext) $(LLIBPERL) `cat ext.libs` $(libs) purecovperl: $& perlmain$(OBJ_EXT) $(LIBPERL) $(DYNALOADER) $(static_ext) ext.libs $(PERLEXPORT) ! $(SHRPENV) $(LDLIBPTH) purecov $(CC) -o purecovperl $(CLDFLAGS) $(CCDLFLAGS) perlmain$(OBJ_EXT) $(DYNALOADER) $(static_ext) $(LLIBPERL) `cat ext.libs` $(libs) quantperl: $& perlmain$(OBJ_EXT) $(LIBPERL) $(DYNALOADER) $(static_ext) ext.libs $(PERLEXPORT) ! $(SHRPENV) $(LDLIBPTH) quantify $(CC) -o quantperl $(CLDFLAGS) $(CCDLFLAGS) perlmain$(OBJ_EXT) $(DYNALOADER) $(static_ext) $(LLIBPERL) `cat ext.libs` $(libs) # This version, if specified in Configure, does ONLY those scripts which need # set-id emulation. Suidperl must be setuid root. It contains the "taint" *************** *** 485,491 **** # has been invoked correctly. suidperl: $& sperl$(OBJ_EXT) perlmain$(OBJ_EXT) $(LIBPERL) $(DYNALOADER) $(static_ext) ext.libs $(PERLEXPORT) ! $(SHRPENV) $(LDLIBPTH) $(CC) $(LARGE) $(CLDFLAGS) $(CCDLFLAGS) -o suidperl perlmain$(OBJ_EXT) sperl$(OBJ_EXT) $(DYNALOADER) $(static_ext) $(LLIBPERL) `cat ext.libs` $(libs) !NO!SUBS! --- 516,522 ---- # has been invoked correctly. suidperl: $& sperl$(OBJ_EXT) perlmain$(OBJ_EXT) $(LIBPERL) $(DYNALOADER) $(static_ext) ext.libs $(PERLEXPORT) ! $(SHRPENV) $(LDLIBPTH) $(CC) -o suidperl $(CLDFLAGS) $(CCDLFLAGS) perlmain$(OBJ_EXT) sperl$(OBJ_EXT) $(DYNALOADER) $(static_ext) $(LLIBPERL) `cat ext.libs` $(libs) !NO!SUBS! *************** *** 493,499 **** $spitshell >>Makefile <<'!NO!SUBS!' ! sperl$(OBJ_EXT): perl.c perly.h patchlevel.h $(h) $(RMS) sperl.c $(LNS) perl.c sperl.c $(CCCMD) -DIAMSUID sperl.c --- 524,530 ---- $spitshell >>Makefile <<'!NO!SUBS!' ! sperl$(OBJ_EXT): perl.c $(h) $(RMS) sperl.c $(LNS) perl.c sperl.c $(CCCMD) -DIAMSUID sperl.c *************** *** 531,545 **** -@rm -f extra.pods -@for x in `grep -l '^=[a-z]' README.* | grep -v README.vms` ; do \ nx=`echo $$x | sed -e "s/README\.//"`; \ ! $(LNS) ../$$x "pod/perl"$$nx".pod" ; \ echo "pod/perl"$$nx".pod" >> extra.pods ; \ done ! -@test -f vms/perlvms.pod && $(LNS) ../vms/perlvms.pod pod/perlvms.pod && echo "pod/perlvms.pod" >> extra.pods install-strip: $(MAKE) STRIPFLAGS=-s install ! install: all install.perl install.man install.perl: all installperl if [ -n "$(COMPILE)" ]; \ --- 562,586 ---- -@rm -f extra.pods -@for x in `grep -l '^=[a-z]' README.* | grep -v README.vms` ; do \ nx=`echo $$x | sed -e "s/README\.//"`; \ ! cd pod ; $(LNS) ../$$x "perl"$$nx".pod" ; cd .. ; \ echo "pod/perl"$$nx".pod" >> extra.pods ; \ done ! -@test -f vms/perlvms.pod && cd pod && $(LNS) ../vms/perlvms.pod perlvms.pod && cd .. && echo "pod/perlvms.pod" >> extra.pods install-strip: $(MAKE) STRIPFLAGS=-s install ! install: ! $(MAKE) install.perl install.man STRIPFLAGS=$(STRIPFLAGS) ! ! install-verbose: ! $(MAKE) install.perl install.man STRIPFLAGS=$(STRIPFLAGS) INSTALLFLAGS=-V ! ! install-silent: ! $(MAKE) install.perl install.man STRIPFLAGS=$(STRIPFLAGS) INSTALLFLAGS=-S ! ! no-install: ! $(MAKE) install.perl install.man STRIPFLAGS=$(STRIPFLAGS) INSTALLFLAGS=-n install.perl: all installperl if [ -n "$(COMPILE)" ]; \ *************** *** 549,563 **** cd ../pod; $(MAKE) compile; \ else :; \ fi ! $(LDLIBPTH) ./perl installperl $(STRIPFLAGS) install.man: all installman ! $(LDLIBPTH) ./perl installman # XXX Experimental. Hardwired values, but useful for testing. # Eventually Configure could ask for some of these values. install.html: all installhtml ! -@test -f README.vms && $(LNS) ../README.vms vms/README_vms.pod $(LDLIBPTH) ./perl installhtml \ --podroot=. --podpath=. --recurse \ --htmldir=$(privlib)/html \ --- 590,604 ---- cd ../pod; $(MAKE) compile; \ else :; \ fi ! $(LDLIBPTH) ./perl installperl $(INSTALLFLAGS) $(STRIPFLAGS) install.man: all installman ! $(LDLIBPTH) ./perl installman $(INSTALLFLAGS) # XXX Experimental. Hardwired values, but useful for testing. # Eventually Configure could ask for some of these values. install.html: all installhtml ! -@test -f README.vms && cd vms && $(LNS) ../README.vms README_vms.pod && cd .. $(LDLIBPTH) ./perl installhtml \ --podroot=. --podpath=. --recurse \ --htmldir=$(privlib)/html \ *************** *** 577,583 **** run_byacc: FORCE $(BYACC) -d perly.y ! -chmod 664 perly.c sh $(shellflags) ./perly.fixer y.tab.c perly.c sed -e 's/fprintf *( *stderr *,/PerlIO_printf(Perl_debug_log,/g' \ -e 's/y\.tab/perly/g' perly.c >perly.tmp && mv perly.tmp perly.c --- 618,624 ---- run_byacc: FORCE $(BYACC) -d perly.y ! -chmod 664 perly.c perly.h sh $(shellflags) ./perly.fixer y.tab.c perly.c sed -e 's/fprintf *( *stderr *,/PerlIO_printf(Perl_debug_log,/g' \ -e 's/y\.tab/perly/g' perly.c >perly.tmp && mv perly.tmp perly.c *************** *** 624,630 **** pod/perlintern.pod pod/perlapi.pod \ objXSUB.h perlapi.h perlapi.c ext/ByteLoader/byterun.h \ ext/ByteLoader/byterun.c ext/B/B/Asmdata.pm regnodes.h \ ! warnings.h lib/warnings.pm regen_headers: FORCE -$(CHMOD_W) $(AUTOGEN_FILES) --- 665,672 ---- pod/perlintern.pod pod/perlapi.pod \ objXSUB.h perlapi.h perlapi.c ext/ByteLoader/byterun.h \ ext/ByteLoader/byterun.c ext/B/B/Asmdata.pm regnodes.h \ ! warnings.h lib/warnings.pm \ ! vms/perly_c.vms vms/perly_h.vms regen_headers: FORCE -$(CHMOD_W) $(AUTOGEN_FILES) *************** *** 635,640 **** --- 677,690 ---- -perl regcomp.pl -perl warnings.pl + regen_pods: FORCE + -cd pod; $(LDLIBPTH) make regen_pods + + regen_vms: FORCE + -perl vms/vms_yfix.pl perly.c perly.h vms/perly_c.vms vms/perly_h.vms + + regen_all: regen_headers regen_pods regen_vms + # Extensions: # Names added to $(dynamic_ext) or $(static_ext) or $(nonxs_ext) will # automatically get built. There should ordinarily be no need to change *************** *** 659,681 **** clean: _tidy _mopup ! realclean: _cleaner _mopup @echo "Note that make realclean does not delete config.sh or Policy.sh" ! clobber: _cleaner _mopup rm -f config.sh cppstdin Policy.sh distclean: clobber # Do not 'make _mopup' directly. _mopup: rm -f *$(OBJ_EXT) *$(LIB_EXT) all perlmain.c -@test -f extra.pods && rm -f `cat extra.pods` -@test -f vms/README_vms.pod && rm -f vms/README_vms.pod ! -rm -f perl.exp ext.libs extra.pods -rm -f perl.export perl.dll perl.libexp perl.map perl.def -rm -f perl.loadmap miniperl.loadmap perl.prelmap miniperl.prelmap ! rm -f perl suidperl miniperl $(LIBPERL) # Do not 'make _tidy' directly. _tidy: --- 709,737 ---- clean: _tidy _mopup ! realclean: _realcleaner _mopup @echo "Note that make realclean does not delete config.sh or Policy.sh" ! _clobber: rm -f config.sh cppstdin Policy.sh + clobber: _realcleaner _mopup _clobber + distclean: clobber + # Like distclean but also removes emacs backups and *.orig. + veryclean: _verycleaner _mopup _clobber + -@rm -f Obsolete Wanted + # Do not 'make _mopup' directly. _mopup: rm -f *$(OBJ_EXT) *$(LIB_EXT) all perlmain.c -@test -f extra.pods && rm -f `cat extra.pods` -@test -f vms/README_vms.pod && rm -f vms/README_vms.pod ! -rm -f perl.exp ext.libs extra.pods opmini.o -rm -f perl.export perl.dll perl.libexp perl.map perl.def -rm -f perl.loadmap miniperl.loadmap perl.prelmap miniperl.prelmap ! rm -f perl suidperl miniperl $(LIBPERL) libperl.* microperl # Do not 'make _tidy' directly. _tidy: *************** *** 687,702 **** done rm -f testcompile compilelog ! # Do not 'make _cleaner' directly. ! _cleaner: -cd os2; rm -f Makefile ! -cd pod; $(LDLIBPTH) $(MAKE) realclean ! -cd utils; $(LDLIBPTH) $(MAKE) realclean ! -cd x2p; $(LDLIBPTH) $(MAKE) realclean -@for x in $(DYNALOADER) $(dynamic_ext) $(static_ext) $(nonxs_ext) ; do \ ! $(LDLIBPTH) sh ext/util/make_ext realclean $$x MAKE=$(MAKE) ; \ done ! rm -f *.orig */*.orig *~ */*~ core core.*perl.*.? *perl.core t/core t/core.perl.*.? t/*perl.core t/misctmp* t/tmp* t/c t/perl .?*.c so_locations $(LIBPERL_NONSHR) $(MINIPERL_NONSHR) rm -rf $(addedbyconf) rm -f $(FIRSTMAKEFILE) $(FIRSTMAKEFILE).old rm -f $(private) --- 743,759 ---- done rm -f testcompile compilelog ! _cleaner1: -cd os2; rm -f Makefile ! -cd pod; $(LDLIBPTH) $(MAKE) $(CLEAN) ! -cd utils; $(LDLIBPTH) $(MAKE) $(CLEAN) ! -cd x2p; $(LDLIBPTH) $(MAKE) $(CLEAN) -@for x in $(DYNALOADER) $(dynamic_ext) $(static_ext) $(nonxs_ext) ; do \ ! $(LDLIBPTH) sh ext/util/make_ext $(CLEAN) $$x MAKE=$(MAKE) ; \ done ! ! _cleaner2: ! rm -f core core.*perl.*.? *perl.core t/core t/core.perl.*.? t/*perl.core t/misctmp* t/forktmp* t/tmp* t/c t/perl t/rantests .?*.c so_locations $(LIBPERL_NONSHR) $(MINIPERL_NONSHR) rm -rf $(addedbyconf) rm -f $(FIRSTMAKEFILE) $(FIRSTMAKEFILE).old rm -f $(private) *************** *** 705,718 **** rm -f h2ph.man pstruct rm -rf .config rm -f testcompile compilelog ! -rmdir lib/B lib/Data lib/IO/Socket lib/IO # The following lint has practically everything turned on. Unfortunately, # you have to wade through a lot of mumbo jumbo that can't be suppressed. # If the source file has a /*NOSTRICT*/ somewhere, ignore the lint message # for that spot. ! lint: perly.c $(c) lint $(lintflags) $(defs) perly.c $(c) > perl.fuzz # Need to unset during recursion to go out of loop. --- 762,784 ---- rm -f h2ph.man pstruct rm -rf .config rm -f testcompile compilelog ! -rmdir lib/B lib/Data lib/IO/Socket lib/IO lib/Sys lib/Thread ! ! _realcleaner: ! @$(LDLIBPTH) $(MAKE) _cleaner1 CLEAN=realclean ! @$(LDLIBPTH) $(MAKE) _cleaner2 ! ! _verycleaner: ! @$(LDLIBPTH) $(MAKE) _cleaner1 CLEAN=veryclean ! @$(LDLIBPTH) $(MAKE) _cleaner2 ! -rm -f *~ *.orig */*~ */*.orig */*/*~ */*/*.orig # The following lint has practically everything turned on. Unfortunately, # you have to wade through a lot of mumbo jumbo that can't be suppressed. # If the source file has a /*NOSTRICT*/ somewhere, ignore the lint message # for that spot. ! lint: $(c) lint $(lintflags) $(defs) perly.c $(c) > perl.fuzz # Need to unset during recursion to go out of loop. *************** *** 750,755 **** --- 816,822 ---- else \ cd t && PERL_SKIP_TTY_TEST=1 $(LDLIBPTH) ./perl TEST; \ fi + @echo "Ran tests" > t/rantests utest ucheck: test-prep if (true /dev/null 2>&1; then \ *************** *** 768,774 **** @echo "You may see some irrelevant test failures if you have been unable" @echo "to build lib/Config.pm." - cd t && (rm -f perl$(EXE_EXT); $(LNS) ../miniperl$(EXE_EXT) perl$(EXE_EXT)) \ ! && $(LDLIBPTH) ./perl TEST base/*.t comp/*.t cmd/*.t io/*.t op/*.t pragma/*.t .clist *************** *** 896,901 **** --- 975,981 ---- mv -f y.tab.c a2p.c chmod u+w a2p.c sed -e 's/fprintf *( *stderr *,/PerlIO_printf(Perl_debug_log,/g' \ + -e 's|^static void __YY_YACC_MAIN.*BS2000.*|/*static main deleted*/|' \ -e 's/y\.tab/a2p/g' a2p.c >a2p.tmp && mv a2p.tmp a2p.c xxx="$xxx a2p.c" fi Index: Policy_sh.SH ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/Policy_sh.SH Fri Feb 25 22:34:45 2000 --- perl-5.6.1/Policy_sh.SH Thu Feb 22 18:57:52 2001 *************** *** 7,24 **** # # This file was produced by running the Policy_sh.SH script, which # gets its values from config.sh, which is generally produced by ! # running Configure. The Policy.sh file gets overwritten each time ! # Configure is run. Any variables you add to Policy.sh will be lost ! # unless you copy Policy.sh somewhere else before running Configure. # # The idea here is to distill in one place the common site-wide # "policy" answers (such as installation directories) that are # to be "sticky". If you keep the file Policy.sh around in # the same directory as you are building Perl, then Configure will # (by default) load up the Policy.sh file just before the ! # platform-specific hints file. # - # Allow Configure command-line overrides; usually these won't be # needed, but something like -Dprefix=/test/location can be quite # useful for testing out new versions. --- 7,39 ---- # # This file was produced by running the Policy_sh.SH script, which # gets its values from config.sh, which is generally produced by ! # running Configure. # # The idea here is to distill in one place the common site-wide # "policy" answers (such as installation directories) that are # to be "sticky". If you keep the file Policy.sh around in # the same directory as you are building Perl, then Configure will # (by default) load up the Policy.sh file just before the ! # platform-specific hints file and rewrite it at the end. ! # ! # The sequence of events is as follows: ! # A: If you are NOT re-using an old config.sh: ! # 1. At start-up, Configure loads up the defaults from the ! # os-specific hints/osname_osvers.sh file and any previous ! # Policy.sh file. ! # 2. At the end, Configure runs Policy_sh.SH, which creates ! # Policy.sh, overwriting a previous Policy.sh if necessary. ! # ! # B: If you are re-using an old config.sh: ! # 1. At start-up, Configure loads up the defaults from config.sh, ! # ignoring any previous Policy.sh file. ! # 2. At the end, Configure runs Policy_sh.SH, which creates ! # Policy.sh, overwriting a previous Policy.sh if necessary. ! # ! # Thus the Policy.sh file gets overwritten each time ! # Configure is run. Any variables you add to Policy.sh will be lost ! # unless you copy Policy.sh somewhere else before running Configure. # # Allow Configure command-line overrides; usually these won't be # needed, but something like -Dprefix=/test/location can be quite # useful for testing out new versions. *************** *** 37,52 **** case "\$prefix" in '') prefix='$prefix' ;; esac case "\$siteprefix" in ! '') siteprefix='$siteprefix' ;; esac case "\$vendorprefix" in ! '') vendorprefix='$vendorprefix' ;; esac # Where installperl puts things. case "\$installprefix" in ! '') installprefix='$installprefix' ;; esac # Installation directives. Note that each one comes in three flavors. --- 52,88 ---- case "\$prefix" in '') prefix='$prefix' ;; esac + + # By default, the next three are the same as \$prefix. + # If the user changes \$prefix, and previously \$siteprefix was the + # same as \$prefix, then change \$siteprefix as well. + # Use similar logic for \$vendorprefix and \$installprefix. + case "\$siteprefix" in ! '') if test "$siteprefix" = "$prefix"; then ! siteprefix="\$prefix" ! else ! siteprefix='$siteprefix' ! fi ! ;; esac case "\$vendorprefix" in ! '') if test "$vendorprefix" = "$prefix"; then ! vendorprefix="\$prefix" ! else ! vendorprefix='$vendorprefix' ! fi ! ;; esac # Where installperl puts things. case "\$installprefix" in ! '') if test "$installprefix" = "$prefix"; then ! installprefix="\$prefix" ! else ! installprefix='$installprefix' ! fi ! ;; esac # Installation directives. Note that each one comes in three flavors. Index: Porting/Contract ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/Porting/Contract Tue Jul 20 10:17:51 1999 --- perl-5.6.1/Porting/Contract Thu Feb 22 18:57:52 2001 *************** *** 19,25 **** We recognize that the Perl core, defined as the software distributed with the heart of Perl itself, is a joint project on the part of all of us. ! >From time to time, a script, module, or set of modules (hereafter referred to simply as a "module") will prove so widely useful and/or so integral to the correct functioning of Perl itself that it should be distributed with Perl core. This should never be done without the author's explicit --- 19,25 ---- We recognize that the Perl core, defined as the software distributed with the heart of Perl itself, is a joint project on the part of all of us. ! From time to time, a script, module, or set of modules (hereafter referred to simply as a "module") will prove so widely useful and/or so integral to the correct functioning of Perl itself that it should be distributed with Perl core. This should never be done without the author's explicit Index: Porting/Glossary ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/Porting/Glossary Wed Mar 22 05:51:17 2000 --- perl-5.6.1/Porting/Glossary Sat Mar 3 11:53:20 2001 *************** *** 174,180 **** cc (cc.U): This variable holds the name of a command to execute a C compiler which can resolve multiple global references that happen to have the same ! name. Usual values are 'cc', 'Mcc', 'cc -M', and 'gcc'. cccdlflags (dlsrc.U): This variable contains any special flags that might need to be --- 174,181 ---- cc (cc.U): This variable holds the name of a command to execute a C compiler which can resolve multiple global references that happen to have the same ! name. Usual values are 'cc' and 'gcc'. ! Fervent ANSI compilers may be called 'c89'. AIX has xlc. cccdlflags (dlsrc.U): This variable contains any special flags that might need to be *************** *** 192,203 **** --- 193,220 ---- This variable contains any additional C compiler flags desired by the user. It is up to the Makefile to use this. + ccflags_uselargefiles (uselfs.U): + This variable contains the compiler flags needed by large file builds + and added to ccflags by hints files. + + ccname (Checkcc.U): + This can set either by hints files or by Configure. If using + gcc, this is gcc, and if not, usually equal to cc, unimpressive, no? + Some platforms, however, make good use of this by storing the + flavor of the C compiler being used here. For example if using + the Sun WorkShop suite, ccname will be 'workshop'. + ccsymbols (Cppsym.U): The variable contains the symbols defined by the C compiler alone. The symbols defined by cpp or by cc when it calls cpp are not in this list, see cppsymbols and cppccsymbols. The list is a space-separated list of symbol=value tokens. + ccversion (Checkcc.U): + This can set either by hints files or by Configure. If using + a (non-gcc) vendor cc, this variable may contain a version for + the compiler. + cf_by (cf_who.U): Login name of the person who ran the Configure script and answered the questions. This is used to tag both config.sh and config_h.SH. *************** *** 323,328 **** --- 340,349 ---- full pathname (if any) of the csh program. After Configure runs, the value is reset to a plain "csh" and is not useful. + d__fwalk (d__fwalk.U): + This variable conditionally defines HAS__FWALK if _fwalk() is + available to apply a function to all the file handles. + d_access (d_access.U): This variable conditionally defines HAS_ACCESS if the access() system call is available to check for access permissions using real IDs. *************** *** 506,515 **** This variable conditionally defines HAS_ENDSERVENT if endservent() is available to close whatever was being used for service queries. - d_endspent (d_endspent.U): - This variable conditionally defines HAS_ENDSPENT if endspent() is - available to finalize the scan of SysV shadow password entries. - d_eofnblk (nblock_io.U): This variable conditionally defines EOF_NONBLOCK if EOF can be seen when reading from a non-blocking I/O source. --- 527,532 ---- *************** *** 532,537 **** --- 549,558 ---- This variable conditionally defines the HAS_FCNTL symbol, and indicates whether the fcntl() function exists + d_fcntl_can_lock (d_fcntl_can_lock.U): + This variable conditionally defines the FCNTL_CAN_LOCK symbol + and indicates whether file locking with fcntl() works. + d_fd_macros (d_fd_set.U): This variable contains the eventual value of the HAS_FD_MACROS symbol, which indicates if your C compiler knows about the macros which *************** *** 573,578 **** --- 594,603 ---- d_fpos64_t (d_fpos64_t.U): This symbol will be defined if the C compiler supports fpos64_t. + d_frexpl (d_frexpl.U): + This variable conditionally defines the HAS_FREXPL symbol, which + indicates to the C program that the frexpl() routine is available. + d_fs_data_s (d_fs_data_s.U): This variable conditionally defines the HAS_STRUCT_FS_DATA symbol, which indicates that the struct fs_data is supported. *************** *** 593,598 **** --- 618,627 ---- This variable conditionally defines the HAS_FSTATVFS symbol, which indicates to the C program that the fstatvfs() routine is available. + d_fsync (d_fsync.U): + This variable conditionally defines the HAS_FSYNC symbol, which + indicates to the C program that the fsync() routine is available. + d_ftello (d_ftello.U): This variable conditionally defines the HAS_FTELLO symbol, which indicates to the C program that the ftello() routine is available. *************** *** 616,621 **** --- 645,654 ---- indicates to the C program that the getcwd() routine is available to get the current working directory. + d_getespwnam (d_getespwnam.U): + This variable conditionally defines HAS_GETESPWNAM if getespwnam() is + available to retrieve enchanced (shadow) password entries by name. + d_getfsstat (d_getfsstat.U): This variable conditionally defines the HAS_GETFSSTAT symbol, which indicates to the C program that the getfsstat() routine is available. *************** *** 690,695 **** --- 723,732 ---- prototypes for the various getnet*() functions. See also netdbtype.U for probing for various netdb types. + d_getpagsz (d_getpagsz.U): + This variable conditionally defines HAS_GETPAGESIZE if getpagesize() + is available to get the system page size. + d_getpbyname (d_getprotby.U): This variable conditionally defines the HAS_GETPROTOBYNAME symbol, which indicates to the C program that the *************** *** 735,740 **** --- 772,781 ---- prototypes for the various getproto*() functions. See also netdbtype.U for probing for various netdb types. + d_getprpwnam (d_getprpwnam.U): + This variable conditionally defines HAS_GETPRPWNAM if getprpwnam() is + available to retrieve protected (shadow) password entries by name. + d_getpwent (d_getpwent.U): This variable conditionally defines the HAS_GETPWENT symbol, which indicates to the C program that the getpwent() routine is available *************** *** 762,771 **** prototypes for the various getserv*() functions. See also netdbtype.U for probing for various netdb types. - d_getspent (d_getspent.U): - This variable conditionally defines HAS_GETSPENT if getspent() is - available to retrieve SysV shadow password entries sequentially. - d_getspnam (d_getspnam.U): This variable conditionally defines HAS_GETSPNAM if getspnam() is available to retrieve SysV shadow password entries by name. --- 803,808 ---- *************** *** 811,816 **** --- 848,861 ---- This variable conditionally defines the HAS_ISASCII constant, which indicates to the C program that isascii() is available. + d_isnan (d_isnan.U): + This variable conditionally defines the HAS_ISNAN symbol, which + indicates to the C program that the isnan() routine is available. + + d_isnanl (d_isnanl.U): + This variable conditionally defines the HAS_ISNANL symbol, which + indicates to the C program that the isnanl() routine is available. + d_killpg (d_killpg.U): This variable conditionally defines the HAS_KILLPG symbol, which indicates to the C program that the killpg() routine is available *************** *** 933,938 **** --- 978,987 ---- This variable conditionally defines HAS_MMAP if mmap() is available to map a file into memory. + d_modfl (d_modfl.U): + This variable conditionally defines the HAS_MODFL symbol, which + indicates to the C program that the modfl() routine is available. + d_mprotect (d_mprotect.U): This variable conditionally defines HAS_MPROTECT if mprotect() is available to modify the access protection of a memory mapped file. *************** *** 1003,1008 **** --- 1052,1061 ---- This variable indicates whether a variable of type nvtype can preserve all the bits a variable of type uvtype. + d_nv_preserves_uv_bits (perlxv.U): + This variable indicates how many of bits type uvtype + a variable nvtype can preserve. + d_off64_t (d_off64_t.U): This symbol will be defined if the C compiler supports off64_t. *************** *** 1036,1041 **** --- 1089,1099 ---- indicates to the C program that the pause() routine is available to suspend a process until a signal is received. + d_perl_otherlibdirs (otherlibdirs.U): + This variable conditionally defines PERL_OTHERLIBDIRS, which + contains a colon-separated set of paths for the perl binary to + include in @INC. See also otherlibdirs. + d_phostname (d_gethname.U): This variable conditionally defines the HAS_PHOSTNAME symbol, which contains the shell command which, when fed to popen(), may be *************** *** 1061,1088 **** indiciates that stdio has a symbol to print 64-bit decimal numbers. d_PRIeldbl (longdblfio.U): ! This variable conditionally defines the PERL_PRIfldlbl symbol, which indiciates that stdio has a symbol to print long doubles. ! d_PRIEldbl (longdblfio.U): ! This variable conditionally defines the PERL_PRIfldlbl symbol, which indiciates that stdio has a symbol to print long doubles. d_PRIfldbl (longdblfio.U): ! This variable conditionally defines the PERL_PRIfldlbl symbol, which indiciates that stdio has a symbol to print long doubles. ! d_PRIFldbl (longdblfio.U): ! This variable conditionally defines the PERL_PRIfldlbl symbol, which indiciates that stdio has a symbol to print long doubles. d_PRIgldbl (longdblfio.U): ! This variable conditionally defines the PERL_PRIfldlbl symbol, which indiciates that stdio has a symbol to print long doubles. ! d_PRIGldbl (longdblfio.U): ! This variable conditionally defines the PERL_PRIfldlbl symbol, which indiciates that stdio has a symbol to print long doubles. d_PRIi64 (quadfio.U): This variable conditionally defines the PERL_PRIi64 symbol, which --- 1119,1152 ---- indiciates that stdio has a symbol to print 64-bit decimal numbers. d_PRIeldbl (longdblfio.U): ! This variable conditionally defines the PERL_PRIfldbl symbol, which indiciates that stdio has a symbol to print long doubles. ! d_PRIEUldbl (longdblfio.U): ! This variable conditionally defines the PERL_PRIfldbl symbol, which indiciates that stdio has a symbol to print long doubles. + The 'U' in the name is to separate this from d_PRIeldbl so that even + case-blind systems can see the difference. d_PRIfldbl (longdblfio.U): ! This variable conditionally defines the PERL_PRIfldbl symbol, which indiciates that stdio has a symbol to print long doubles. ! d_PRIFUldbl (longdblfio.U): ! This variable conditionally defines the PERL_PRIfldbl symbol, which indiciates that stdio has a symbol to print long doubles. + The 'U' in the name is to separate this from d_PRIfldbl so that even + case-blind systems can see the difference. d_PRIgldbl (longdblfio.U): ! This variable conditionally defines the PERL_PRIfldbl symbol, which indiciates that stdio has a symbol to print long doubles. ! d_PRIGUldbl (longdblfio.U): ! This variable conditionally defines the PERL_PRIfldbl symbol, which indiciates that stdio has a symbol to print long doubles. + The 'U' in the name is to separate this from d_PRIgldbl so that even + case-blind systems can see the difference. d_PRIi64 (quadfio.U): This variable conditionally defines the PERL_PRIi64 symbol, which *************** *** 1101,1109 **** This variable conditionally defines the PERL_PRIx64 symbol, which indiciates that stdio has a symbol to print 64-bit hexadecimal numbers. ! d_PRIX64 (quadfio.U): ! This variable conditionally defines the PERL_PRIX64 symbol, which indiciates that stdio has a symbol to print 64-bit hExADECimAl numbers. d_pthread_yield (d_pthread_y.U): This variable conditionally defines the HAS_PTHREAD_YIELD --- 1165,1175 ---- This variable conditionally defines the PERL_PRIx64 symbol, which indiciates that stdio has a symbol to print 64-bit hexadecimal numbers. ! d_PRIXU64 (quadfio.U): ! This variable conditionally defines the PERL_PRIXU64 symbol, which indiciates that stdio has a symbol to print 64-bit hExADECimAl numbers. + The 'U' in the name is to separate this from d_PRIx64 so that even + case-blind systems can see the difference. d_pthread_yield (d_pthread_y.U): This variable conditionally defines the HAS_PTHREAD_YIELD *************** *** 1185,1190 **** --- 1251,1262 ---- the memcpy() routine is available and can be used to compare relative magnitudes of chars with their high bits set. + d_sbrkproto (d_sbrkproto.U): + This variable conditionally defines the HAS_SBRK_PROTO symbol, + which indicates to the C program that the system provides + a prototype for the sbrk() function. Otherwise, it is + up to the program to supply one. + d_sched_yield (d_pthread_y.U): This variable conditionally defines the HAS_SCHED_YIELD symbol if the sched_yield routine is available to yield *************** *** 1195,1200 **** --- 1267,1276 ---- which indicates that the SCM_RIGHTS is available. #ifdef is not enough because it may be an enum, glibc has been known to do this. + d_SCNfldbl (longdblfio.U): + This variable conditionally defines the PERL_PRIfldbl symbol, which + indiciates that stdio has a symbol to scan long doubles. + d_seekdir (d_readdir.U): This variable conditionally defines HAS_SEEKDIR if seekdir() is available. *************** *** 1287,1292 **** --- 1363,1373 ---- This variable conditionally defines HAS_SETPRIORITY if setpriority() is available to set a process's priority. + d_setproctitle (d_setproctitle.U): + This variable conditionally defines the HAS_SETPROCTITLE symbol, + which indicates to the C program that the setproctitle() routine + is available. + d_setpwent (d_setpwent.U): This variable conditionally defines the HAS_SETPWENT symbol, which indicates to the C program that the setpwent() routine is available *************** *** 1330,1339 **** This variable conditionally defines HAS_SETSID if setsid() is available to set the process group ID. - d_setspent (d_setspent.U): - This variable conditionally defines HAS_SETSPENT if setspent() is - available to initialize the scan of SysV shadow password entries. - d_setvbuf (d_setvbuf.U): This variable conditionally defines the HAS_SETVBUF symbol, which indicates to the C program that the setvbuf() routine is available --- 1411,1416 ---- *************** *** 1372,1377 **** --- 1449,1459 ---- This variable conditionally defines the HAS_SIGACTION symbol, which indicates that the Vr4 sigaction() routine is available. + d_sigprocmask (d_sigprocmask.U): + This variable conditionally defines HAS_SIGPROCMASK + if sigprocmask() is available to examine or change the signal mask + of the calling process. + d_sigsetjmp (d_sigsetjmp.U): This variable conditionally defines the HAS_SIGSETJMP symbol, which indicates that the sigsetjmp() routine is available to *************** *** 1388,1393 **** --- 1470,1479 ---- This variable conditionally defines the HAS_SOCKETPAIR symbol, which indicates that the BSD socketpair() is supported. + d_socks5_init (d_socks5_init.U): + This variable conditionally defines the HAS_SOCKS5_INIT symbol, which + indicates to the C program that the socks5_init() routine is available. + d_sqrtl (d_sqrtl.U): This variable conditionally defines the HAS_SQRTL symbol, which indicates to the C program that the sqrtl() routine is available. *************** *** 1419,1424 **** --- 1505,1519 ---- This variable conditionally defines STDIO_PTR_LVALUE if the FILE_ptr macro can be used as an lvalue. + d_stdio_ptr_lval_nochange_cnt (d_stdstdio.U): + This symbol is defined if using the FILE_ptr macro as an lvalue + to increase the pointer by n leaves File_cnt(fp) unchanged. + + d_stdio_ptr_lval_sets_cnt (d_stdstdio.U): + This symbol is defined if using the FILE_ptr macro as an lvalue + to increase the pointer by n has the side effect of decreasing the + value of File_cnt(fp) by n. + d_stdio_stream_array (stdio_streams.U): This variable tells whether there is an array holding the stdio streams. *************** *** 1474,1479 **** --- 1569,1578 ---- This variable conditionally defines the HAS_STRTOLL symbol, which indicates to the C program that the strtoll() routine is available. + d_strtoq (d_strtoq.U): + This variable conditionally defines the HAS_STRTOQ symbol, which + indicates to the C program that the strtoq() routine is available. + d_strtoul (d_strtoul.U): This variable conditionally defines the HAS_STRTOUL symbol, which indicates to the C program that the strtoul() routine is available *************** *** 1782,1788 **** can share this executable will have the same full pathname to 'sed.' ! gccversion (cc.U): If GNU cc (gcc) is used, this variable holds '1' or '2' to indicate whether the compiler is version 1 or 2. This is used in setting some of the default cflags. It is set to '' if not gcc. --- 1881,1892 ---- can share this executable will have the same full pathname to 'sed.' ! gccosandvers (gccvers.U): ! If GNU cc (gcc) is used, this variable the operating system and ! version used to compile the gcc. It is set to '' if not gcc, ! or if nothing useful can be parsed as the os version. ! ! gccversion (gccvers.U): If GNU cc (gcc) is used, this variable holds '1' or '2' to indicate whether the compiler is version 1 or 2. This is used in setting some of the default cflags. It is set to '' if not gcc. *************** *** 1849,1860 **** On some systems, such as os390, there may be no equivalent command, in which case this variable is unset. - huge (models.U): - This variable contains a flag which will tell the C compiler and loader - to produce a program running with a huge memory model. If the - huge model is not supported, contains the flag to produce large - model programs. It is up to the Makefile to use this. - i16size (perlxv.U): This variable is the size of an I16 in bytes. --- 1953,1958 ---- *************** *** 1941,1946 **** --- 2039,2048 ---- This variable conditionally defines the I_INTTYPES symbol, and indicates whether a C program should include . + i_libutil (i_libutil.U): + This variable conditionally defines the I_LIBUTIL symbol, and indicates + whether a C program should include . + i_limits (i_limits.U): This variable conditionally defines the I_LIMITS symbol, and indicates whether a C program may include to get symbols like WORD_BIT *************** *** 1997,2002 **** --- 2099,2108 ---- This variable conditionally defines the I_POLL symbol, and indicates whether a C program should include . + i_prot (i_prot.U): + This variable conditionally defines the I_PROT symbol, and indicates + whether a C program should include . + i_pthread (i_pthread.U): This variable conditionally defines the I_PTHREAD symbol, and indicates whether a C program should include . *************** *** 2342,2347 **** --- 2448,2458 ---- This variable contains the value of the INTSIZE symbol, which indicates to the C program how many bytes there are in an int. + issymlink (issymlink.U): + This variable holds the test command to test for a symbolic link + (if they are supported). Typical values include 'test -h' and + 'test -L'. + ivdformat (perlxvf.U): This variable contains the format string used for printing a Perl IV as a signed decimal integer. *************** *** 2360,2370 **** This variable is defined but not used by Configure. The value is a plain '' and is not useful. - large (models.U): - This variable contains a flag which will tell the C compiler and loader - to produce a program running with a large memory model. It is up to - the Makefile to use this. - ld (dlsrc.U): This variable indicates the program to be used to link libraries for dynamic loading. On some systems, it is 'ld'. --- 2471,2476 ---- *************** *** 2381,2386 **** --- 2487,2496 ---- This variable contains any additional C loader flags desired by the user. It is up to the Makefile to use this. + ldflags_uselargefiles (uselfs.U): + This variable contains the loader flags needed by large file builds + and added to ldflags by hints files. + ldlibpthname (libperl.U): This variable holds the name of the shared library search path, often LD_LIBRARY_PATH. To get an empty *************** *** 2433,2438 **** --- 2543,2554 ---- search. The order is chosen to pick up the c library ahead of ucb or bsd libraries for SVR4. + libswanted_uselargefiles (uselfs.U): + This variable contains the libraries needed by large file builds + and added to ldflags by hints files. It is a space separated list + of the library names without the "lib" prefix or any suffix, just + like libswanted.. + line (Loc.U): This variable is defined but not used by Configure. The value is a plain '' and is not useful. *************** *** 2578,2589 **** full pathname (if any) of the Mcc program. After Configure runs, the value is reset to a plain "Mcc" and is not useful. - medium (models.U): - This variable contains a flag which will tell the C compiler and loader - to produce a program running with a medium memory model. If the - medium model is not supported, contains the flag to produce large - model programs. It is up to the Makefile to use this. - mips_type (usrinc.U): This variable holds the environment type for the mips system. Possible values are "BSD 4.3" and "System V". --- 2694,2699 ---- *************** *** 2598,2608 **** (and simultaneously the type of the first argument). It can be 'void *' or 'caddr_t'. - models (models.U): - This variable contains the list of memory models supported by this - system. Possible component values are none, split, unsplit, small, - medium, large, and huge. The component values are space separated. - modetype (modetype.U): This variable defines modetype to be something like mode_t, int, unsigned short, or whatever type is used to declare file --- 2708,2713 ---- *************** *** 2649,2654 **** --- 2754,2768 ---- command to suppress newline. Otherwise it is null. Correct usage is $echo $n "prompt for a question: $c". + need_va_copy (need_va_copy.U): + This symbol, if defined, indicates that the system stores + the variable argument list datatype, va_list, in a format + that cannot be copied by simple assignment, so that some + other means must be used when copying is required. + As such systems vary in their provision (or non-provision) + of copying mechanisms, handy.h defines a platform- + independent macro, Perl_va_copy(src, dst), to do the job. + netdb_hlen_type (netdbtype.U): This variable holds the type used for the 2nd argument to gethostbyaddr(). Usually, this is int or size_t or unsigned. *************** *** 2695,2700 **** --- 2809,2838 ---- full pathname (if any) of the nroff program. After Configure runs, the value is reset to a plain "nroff" and is not useful. + nveformat (perlxvf.U): + This variable contains the format string used for printing + a Perl NV using %e-ish floating point format. + + nvEUformat (perlxvf.U): + This variable contains the format string used for printing + a Perl NV using %E-ish floating point format. + + nvfformat (perlxvf.U): + This variable confains the format string used for printing + a Perl NV using %f-ish floating point format. + + nvFUformat (perlxvf.U): + This variable confains the format string used for printing + a Perl NV using %F-ish floating point format. + + nvgformat (perlxvf.U): + This variable contains the format string used for printing + a Perl NV using %g-ish floating point format. + + nvGUformat (perlxvf.U): + This variable contains the format string used for printing + a Perl NV using %G-ish floating point format. + nvsize (perlxv.U): This variable is the size of an NV in bytes. *************** *** 2741,2746 **** --- 2879,2894 ---- same for this package, hints files might just be os_4.0 or os_4.1, etc., not keeping separate files for each little release. + otherlibdirs (otherlibdirs.U): + This variable contains a colon-separated set of paths for the perl + binary to search for additional library files or modules. + These directories will be tacked to the end of @INC. + Perl will automatically search below each path for version- + and architecture-specific directories. See inc_version_list + for more details. + A value of ' ' means 'none' and is used to preserve this value + for the next run through Configure. + package (package.U): This variable contains the name of the package being constructed. It is primarily intended for the use of later Configure units. *************** *** 2792,2797 **** --- 2940,2949 ---- perladmin (perladmin.U): Electronic mail address of the perl5 administrator. + perllibs (End.U): + The list of libraries needed by Perl only (any libraries needed + by extensions only will by dropped, if using dynamic loading). + perlpath (perlpath.U): This variable contains the eventual value of the PERLPATH symbol, which contains the name of the perl interpreter to be used in *************** *** 3036,3041 **** --- 3188,3197 ---- below. A "ZERO" is prepended to the list, and the list is terminated with a plain 0. + sig_size (sig_name.U): + This variable contains the number of elements of the sig_name + and sig_num arrays, excluding the final NULL entry. + signal_t (d_voidsig.U): This variable holds the type of the signal handler (void or int). *************** *** 3114,3124 **** This variable is defined but not used by Configure. The value is a plain '' and is not useful. - small (models.U): - This variable contains a flag which will tell the C compiler and loader - to produce a program running with a small memory model. It is up to - the Makefile to use this. - so (so.U): This variable holds the extension used to identify shared libraries (also known as shared objects) on the system. Usually set to 'so'. --- 3270,3275 ---- *************** *** 3148,3159 **** This variable contains the command necessary to spit out a runnable shell on this system. It is either cat or a grep '-v' for # comments. - split (models.U): - This variable contains a flag which will tell the C compiler and loader - to produce a program that will run in separate I and D space, for those - machines that support separation of instruction and data space. It is - up to the Makefile to use this. - sPRId64 (quadfio.U): This variable, if defined, contains the string used by stdio to format 64-bit decimal numbers (format 'd') for output. --- 3299,3304 ---- *************** *** 3162,3186 **** This variable, if defined, contains the string used by stdio to format long doubles (format 'e') for output. ! sPRIEldbl (longdblfio.U): This variable, if defined, contains the string used by stdio to format long doubles (format 'E') for output. sPRIfldbl (longdblfio.U): This variable, if defined, contains the string used by stdio to format long doubles (format 'f') for output. ! sPRIFldbl (longdblfio.U): This variable, if defined, contains the string used by stdio to format long doubles (format 'F') for output. sPRIgldbl (longdblfio.U): This variable, if defined, contains the string used by stdio to format long doubles (format 'g') for output. ! sPRIGldbl (longdblfio.U): This variable, if defined, contains the string used by stdio to format long doubles (format 'G') for output. sPRIi64 (quadfio.U): This variable, if defined, contains the string used by stdio to --- 3307,3337 ---- This variable, if defined, contains the string used by stdio to format long doubles (format 'e') for output. ! sPRIEUldbl (longdblfio.U): This variable, if defined, contains the string used by stdio to format long doubles (format 'E') for output. + The 'U' in the name is to separate this from sPRIeldbl so that even + case-blind systems can see the difference. sPRIfldbl (longdblfio.U): This variable, if defined, contains the string used by stdio to format long doubles (format 'f') for output. ! sPRIFUldbl (longdblfio.U): This variable, if defined, contains the string used by stdio to format long doubles (format 'F') for output. + The 'U' in the name is to separate this from sPRIfldbl so that even + case-blind systems can see the difference. sPRIgldbl (longdblfio.U): This variable, if defined, contains the string used by stdio to format long doubles (format 'g') for output. ! sPRIGUldbl (longdblfio.U): This variable, if defined, contains the string used by stdio to format long doubles (format 'G') for output. + The 'U' in the name is to separate this from sPRIgldbl so that even + case-blind systems can see the difference. sPRIi64 (quadfio.U): This variable, if defined, contains the string used by stdio to *************** *** 3198,3212 **** This variable, if defined, contains the string used by stdio to format 64-bit hexadecimal numbers (format 'x') for output. ! sPRIX64 (quadfio.U): This variable, if defined, contains the string used by stdio to format 64-bit hExADECimAl numbers (format 'X') for output. src (src.U): This variable holds the path to the package source. It is up to the Makefile to use this variable and set VPATH accordingly to find the sources remotely. ssizetype (ssizetype.U): This variable defines ssizetype to be something like ssize_t, long or int. It is used by functions that return a count --- 3349,3369 ---- This variable, if defined, contains the string used by stdio to format 64-bit hexadecimal numbers (format 'x') for output. ! sPRIXU64 (quadfio.U): This variable, if defined, contains the string used by stdio to format 64-bit hExADECimAl numbers (format 'X') for output. + The 'U' in the name is to separate this from sPRIx64 so that even + case-blind systems can see the difference. src (src.U): This variable holds the path to the package source. It is up to the Makefile to use this variable and set VPATH accordingly to find the sources remotely. + sSCNfldbl (longdblfio.U): + This variable, if defined, contains the string used by stdio to + format long doubles (format 'f') for input. + ssizetype (ssizetype.U): This variable defines ssizetype to be something like ssize_t, long or int. It is used by functions that return a count *************** *** 3521,3527 **** uvxformat (perlxvf.U): This variable contains the format string used for printing ! a Perl UV as an unsigned hexadecimal integer. vendorarch (vendorarch.U): This variable contains the value of the PERL_VENDORARCH symbol. --- 3678,3688 ---- uvxformat (perlxvf.U): This variable contains the format string used for printing ! a Perl UV as an unsigned hexadecimal integer in lowercase abcdef. ! ! uvXUformat (perlxvf.U): ! This variable contains the format string used for printing ! a Perl UV as an unsigned hexadecimal integer in uppercase ABCDEF. vendorarch (vendorarch.U): This variable contains the value of the PERL_VENDORARCH symbol. *************** *** 3582,3587 **** --- 3743,3760 ---- full version number, including any possible subversions. This is suitable for use as a directory name, and hence is filesystem dependent. + + versiononly (versiononly.U): + If set, this symbol indicates that only the version-specific + components of a perl installation should be installed. + This may be useful for making a test installation of a new + version without disturbing the existing installation. + Setting versiononly is equivalent to setting installperl's -v option. + In particular, the non-versioned scripts and programs such as + a2p, c2ph, h2xs, pod2*, and perldoc are not installed + (see INSTALL for a more complete list). Nor are the man + pages installed. + Usually, this is undef. vi (Loc.U): This variable is defined but not used by Configure. Index: Porting/config.sh ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/Porting/config.sh Wed Mar 22 05:51:17 2000 --- perl-5.6.1/Porting/config.sh Sat Mar 3 11:53:20 2001 *************** *** 8,14 **** # Package name : perl5 # Source directory : . ! # Configuration time: Tue Mar 21 23:22:20 EET 2000 # Configured by : jhi # Target system : osf1 alpha.hut.fi v4.0 878 alpha --- 8,14 ---- # Package name : perl5 # Source directory : . ! # Configuration time: Sat Mar 3 01:13:55 EET 2001 # Configured by : jhi # Target system : osf1 alpha.hut.fi v4.0 878 alpha *************** *** 35,44 **** api_version='5' api_versionstring='5.005' ar='ar' ! archlib='/opt/perl/lib/5.6.0/alpha-dec_osf-thread-multi' ! archlibexp='/opt/perl/lib/5.6.0/alpha-dec_osf-thread-multi' archname64='' ! archname='alpha-dec_osf-thread-multi' archobjs='' awk='awk' baserev='5.0' --- 35,44 ---- api_version='5' api_versionstring='5.005' ar='ar' ! archlib='/opt/perl/lib/5.6.1/alpha-dec_osf-thread' ! archlibexp='/opt/perl/lib/5.6.1/alpha-dec_osf-thread' archname64='' ! archname='alpha-dec_osf-thread' archobjs='' awk='awk' baserev='5.0' *************** *** 46,52 **** bin='/opt/perl/bin' bincompat5005='undef' binexp='/opt/perl/bin' ! bison='' byacc='byacc' byteorder='12345678' c='\c' --- 46,52 ---- bin='/opt/perl/bin' bincompat5005='undef' binexp='/opt/perl/bin' ! bison='bison' byacc='byacc' byteorder='12345678' c='\c' *************** *** 54,65 **** cat='cat' cc='cc' cccdlflags=' ' ! ccdlflags=' -Wl,-rpath,/opt/perl/lib/5.6.0/alpha-dec_osf-thread-multi/CORE' ccflags='-pthread -std -DLANGUAGE_C' ccsymbols='__alpha=1 __LANGUAGE_C__=1 __osf__=1 __unix__=1 _LONGLONG=1 _SYSTYPE_BSD=1 SYSTYPE_BSD=1 unix=1' cf_by='jhi' cf_email='yourname@yourhost.yourplace.com' ! cf_time='Tue Mar 21 23:22:20 EET 2000' charsize='1' chgrp='' chmod='' --- 54,68 ---- cat='cat' cc='cc' cccdlflags=' ' ! ccdlflags=' -Wl,-rpath,/opt/perl/lib/5.6.1/alpha-dec_osf-thread/CORE' ccflags='-pthread -std -DLANGUAGE_C' + ccflags_uselargefiles='' + ccname='cc' ccsymbols='__alpha=1 __LANGUAGE_C__=1 __osf__=1 __unix__=1 _LONGLONG=1 _SYSTYPE_BSD=1 SYSTYPE_BSD=1 unix=1' + ccversion='V5.6-082' cf_by='jhi' cf_email='yourname@yourhost.yourplace.com' ! cf_time='Sat Mar 3 01:13:55 EET 2001' charsize='1' chgrp='' chmod='' *************** *** 83,92 **** cryptlib='' csh='csh' d_Gconvert='gcvt((x),(n),(b))' ! d_PRIEldbl='define' ! d_PRIFldbl='define' ! d_PRIGldbl='define' ! d_PRIX64='define' d_PRId64='define' d_PRIeldbl='define' d_PRIfldbl='define' --- 86,95 ---- cryptlib='' csh='csh' d_Gconvert='gcvt((x),(n),(b))' ! d_PRIEUldbl='define' ! d_PRIFUldbl='define' ! d_PRIGUldbl='define' ! d_PRIXU64='define' d_PRId64='define' d_PRIeldbl='define' d_PRIfldbl='define' *************** *** 95,100 **** --- 98,105 ---- d_PRIo64='define' d_PRIu64='define' d_PRIx64='define' + d_SCNfldbl='define' + d__fwalk='undef' d_access='define' d_accessx='undef' d_alarm='define' *************** *** 136,147 **** d_endpent='define' d_endpwent='define' d_endsent='define' - d_endspent='undef' d_eofnblk='define' d_eunice='undef' d_fchmod='define' d_fchown='define' d_fcntl='define' d_fd_macros='define' d_fd_set='define' d_fds_bits='define' --- 141,152 ---- d_endpent='define' d_endpwent='define' d_endsent='define' d_eofnblk='define' d_eunice='undef' d_fchmod='define' d_fchown='define' d_fcntl='define' + d_fcntl_can_lock='define' d_fd_macros='define' d_fd_set='define' d_fds_bits='define' *************** *** 151,164 **** --- 156,172 ---- d_fork='define' d_fpathconf='define' d_fpos64_t='undef' + d_frexpl='define' d_fs_data_s='undef' d_fseeko='undef' d_fsetpos='define' d_fstatfs='define' d_fstatvfs='define' + d_fsync='define' d_ftello='undef' d_ftime='undef' d_getcwd='define' + d_getespwnam='undef' d_getfsstat='define' d_getgrent='define' d_getgrps='define' *************** *** 174,179 **** --- 182,188 ---- d_getnbyname='define' d_getnent='define' d_getnetprotos='define' + d_getpagsz='define' d_getpbyname='define' d_getpbynumber='define' d_getpent='define' *************** *** 183,194 **** d_getppid='define' d_getprior='define' d_getprotoprotos='define' d_getpwent='define' d_getsbyname='define' d_getsbyport='define' d_getsent='define' d_getservprotos='define' - d_getspent='undef' d_getspnam='undef' d_gettimeod='define' d_gnulibc='undef' --- 192,203 ---- d_getppid='define' d_getprior='define' d_getprotoprotos='define' + d_getprpwnam='undef' d_getpwent='define' d_getsbyname='define' d_getsbyport='define' d_getsent='define' d_getservprotos='define' d_getspnam='undef' d_gettimeod='define' d_gnulibc='undef' *************** *** 200,205 **** --- 209,216 ---- d_inetaton='define' d_int64_t='undef' d_isascii='define' + d_isnan='define' + d_isnanl='define' d_killpg='define' d_lchown='define' d_ldbl_dig='define' *************** *** 226,231 **** --- 237,243 ---- d_mkstemps='undef' d_mktime='define' d_mmap='define' + d_modfl='define' d_mprotect='define' d_msg='define' d_msg_ctrunc='define' *************** *** 242,247 **** --- 254,260 ---- d_mymalloc='undef' d_nice='define' d_nv_preserves_uv='undef' + d_nv_preserves_uv_bits='53' d_off64_t='undef' d_old_pthread_create_joinable='undef' d_oldpthreads='undef' *************** *** 249,254 **** --- 262,268 ---- d_open3='define' d_pathconf='define' d_pause='define' + d_perl_otherlibdirs='undef' d_phostname='undef' d_pipe='define' d_poll='define' *************** *** 272,277 **** --- 286,292 ---- d_safebcpy='define' d_safemcpy='undef' d_sanemcmp='define' + d_sbrkproto='define' d_sched_yield='define' d_scm_rights='define' d_seekdir='define' *************** *** 295,300 **** --- 310,316 ---- d_setpgrp2='undef' d_setpgrp='define' d_setprior='define' + d_setproctitle='undef' d_setpwent='define' d_setregid='define' d_setresgid='undef' *************** *** 304,310 **** d_setruid='define' d_setsent='define' d_setsid='define' - d_setspent='undef' d_setvbuf='define' d_sfio='undef' d_shm='define' --- 320,325 ---- *************** *** 318,323 **** --- 333,339 ---- d_socket='define' d_socklen_t='undef' d_sockpair='define' + d_socks5_init='undef' d_sqrtl='define' d_statblks='define' d_statfs_f_flags='define' *************** *** 325,330 **** --- 341,348 ---- d_statvfs='define' d_stdio_cnt_lval='define' d_stdio_ptr_lval='define' + d_stdio_ptr_lval_nochange_cnt='define' + d_stdio_ptr_lval_sets_cnt='undef' d_stdio_stream_array='define' d_stdiobase='define' d_stdstdio='define' *************** *** 404,409 **** --- 422,428 ---- full_ar='/usr/bin/ar' full_csh='/usr/bin/csh' full_sed='/usr/bin/sed' + gccosandvers='' gccversion='' gidformat='"u"' gidsign='1' *************** *** 418,424 **** h_sysfile='true' hint='recommended' hostcat='cat /etc/hosts' - huge='' i16size='2' i16type='short' i32size='4' --- 437,442 ---- *************** *** 441,446 **** --- 459,465 ---- i_iconv='define' i_ieeefp='undef' i_inttypes='undef' + i_libutil='undef' i_limits='define' i_locale='define' i_machcthr='undef' *************** *** 454,459 **** --- 473,479 ---- i_netinettcp='define' i_niin='define' i_poll='define' + i_prot='define' i_pthread='define' i_pwd='define' i_rpcsvcdbm='undef' *************** *** 509,552 **** inc_version_list_init='0' incpath='' inews='' ! installarchlib='/opt/perl/lib/5.6.0/alpha-dec_osf-thread-multi' installbin='/opt/perl/bin' installman1dir='/opt/perl/man/man1' installman3dir='/opt/perl/man/man3' installprefix='/opt/perl' installprefixexp='/opt/perl' ! installprivlib='/opt/perl/lib/5.6.0' installscript='/opt/perl/bin' ! installsitearch='/opt/perl/lib/site_perl/5.6.0/alpha-dec_osf-thread-multi' installsitebin='/opt/perl/bin' ! installsitelib='/opt/perl/lib/site_perl/5.6.0' installstyle='lib' installusrbinperl='define' installvendorarch='' installvendorbin='' installvendorlib='' intsize='4' ivdformat='"ld"' ivsize='8' ivtype='long' known_extensions='B ByteLoader DB_File Data/Dumper Devel/DProf Devel/Peek Fcntl File/Glob GDBM_File IO IPC/SysV NDBM_File ODBM_File Opcode POSIX SDBM_File Socket Sys/Hostname Sys/Syslog Thread attrs re' ksh='' - large='' ld='ld' lddlflags='-shared -expect_unresolved "*" -msym -std -s' ldflags='' ldlibpthname='LD_LIBRARY_PATH' less='less' lib_ext='.a' libc='/usr/shlib/libc.so' libperl='libperl.so' libpth='/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /var/shlib' ! libs='-lgdbm -ldbm -ldb -lm -liconv -lpthread -lexc' libsdirs=' /usr/shlib /usr/ccs/lib' ! libsfiles=' libgdbm.so libdbm.a libdb.so libm.so libiconv.so libpthread.so libexc.so' ! libsfound=' /usr/shlib/libgdbm.so /usr/ccs/lib/libdbm.a /usr/shlib/libdb.so /usr/shlib/libm.so /usr/shlib/libiconv.so /usr/shlib/libpthread.so /usr/shlib/libexc.so' libspath=' /usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /var/shlib' ! libswanted='sfio socket bind inet nsl nm gdbm dbm db malloc dld ld sun m cposix posix ndir dir crypt sec ucb BSD x iconv pthread exc' line='' lint='' lkflags='' --- 529,574 ---- inc_version_list_init='0' incpath='' inews='' ! installarchlib='/opt/perl/lib/5.6.1/alpha-dec_osf-thread' installbin='/opt/perl/bin' installman1dir='/opt/perl/man/man1' installman3dir='/opt/perl/man/man3' installprefix='/opt/perl' installprefixexp='/opt/perl' ! installprivlib='/opt/perl/lib/5.6.1' installscript='/opt/perl/bin' ! installsitearch='/opt/perl/lib/site_perl/5.6.1/alpha-dec_osf-thread' installsitebin='/opt/perl/bin' ! installsitelib='/opt/perl/lib/site_perl/5.6.1' installstyle='lib' installusrbinperl='define' installvendorarch='' installvendorbin='' installvendorlib='' intsize='4' + issymlink='-h' ivdformat='"ld"' ivsize='8' ivtype='long' known_extensions='B ByteLoader DB_File Data/Dumper Devel/DProf Devel/Peek Fcntl File/Glob GDBM_File IO IPC/SysV NDBM_File ODBM_File Opcode POSIX SDBM_File Socket Sys/Hostname Sys/Syslog Thread attrs re' ksh='' ld='ld' lddlflags='-shared -expect_unresolved "*" -msym -std -s' ldflags='' + ldflags_uselargefiles='' ldlibpthname='LD_LIBRARY_PATH' less='less' lib_ext='.a' libc='/usr/shlib/libc.so' libperl='libperl.so' libpth='/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /var/shlib' ! libs='-lgdbm -ldbm -ldb -lm -liconv -lutil -lpthread -lexc' libsdirs=' /usr/shlib /usr/ccs/lib' ! libsfiles=' libgdbm.so libdbm.a libdb.so libm.so libiconv.so libutil.a libpthread.so libexc.so' ! libsfound=' /usr/shlib/libgdbm.so /usr/ccs/lib/libdbm.a /usr/shlib/libdb.so /usr/shlib/libm.so /usr/shlib/libiconv.so /usr/ccs/lib/libutil.a /usr/shlib/libpthread.so /usr/shlib/libexc.so' libspath=' /usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /var/shlib' ! libswanted='sfio socket bind inet nsl nm gdbm dbm db malloc dld ld sun m cposix posix ndir dir crypt sec ucb BSD x iconv util pthread exc' ! libswanted_uselargefiles='' line='' lint='' lkflags='' *************** *** 575,585 **** man3dir='/opt/perl/man/man3' man3direxp='/opt/perl/man/man3' man3ext='3' - medium='' mips_type='' mkdir='mkdir' mmaptype='void *' - models='none' modetype='mode_t' more='more' multiarch='undef' --- 597,605 ---- *************** *** 598,603 **** --- 618,629 ---- nm_so_opt='' nonxs_ext='Errno' nroff='nroff' + nvEUformat='"E"' + nvFUformat='"F"' + nvGUformat='"G"' + nveformat='"e"' + nvfformat='"f"' + nvgformat='"g"' nvsize='8' nvtype='double' o_nonblock='O_NONBLOCK' *************** *** 607,612 **** --- 633,639 ---- orderlib='false' osname='dec_osf' osvers='4.0' + otherlibdirs=' ' package='perl5' pager='/c/bin/less' passcat='cat /etc/passwd' *************** *** 615,620 **** --- 642,648 ---- perl5='/u/vieraat/vieraat/jhi/Perl/bin/perl' perl='' perladmin='yourname@yourhost.yourplace.com' + perllibs='-lm -liconv -lutil -lpthread -lexc' perlpath='/opt/perl/bin/perl' pg='pg' phostname='' *************** *** 625,632 **** pr='' prefix='/opt/perl' prefixexp='/opt/perl' ! privlib='/opt/perl/lib/5.6.0' ! privlibexp='/opt/perl/lib/5.6.0' prototype='define' ptrsize='8' quadkind='2' --- 653,660 ---- pr='' prefix='/opt/perl' prefixexp='/opt/perl' ! privlib='/opt/perl/lib/5.6.1' ! privlibexp='/opt/perl/lib/5.6.1' prototype='define' ptrsize='8' quadkind='2' *************** *** 640,649 **** rm='rm' rmail='' runnm='true' ! sPRIEldbl='"E"' ! sPRIFldbl='"F"' ! sPRIGldbl='"G"' ! sPRIX64='"lX"' sPRId64='"ld"' sPRIeldbl='"e"' sPRIfldbl='"f"' --- 668,677 ---- rm='rm' rmail='' runnm='true' ! sPRIEUldbl='"E"' ! sPRIFUldbl='"F"' ! sPRIGUldbl='"G"' ! sPRIXU64='"lX"' sPRId64='"ld"' sPRIeldbl='"e"' sPRIfldbl='"f"' *************** *** 652,657 **** --- 680,686 ---- sPRIo64='"lo"' sPRIu64='"lu"' sPRIx64='"lx"' + sSCNfldbl='"f"' sched_yield='sched_yield()' scriptdir='/opt/perl/bin' scriptdirexp='/opt/perl/bin' *************** *** 673,692 **** sig_num='0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 6 6 16 20 23 23 23 29 48 ' sig_num_init='0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 6, 6, 16, 20, 23, 23, 23, 29, 48, 0' signal_t='void' ! sitearch='/opt/perl/lib/site_perl/5.6.0/alpha-dec_osf-thread-multi' ! sitearchexp='/opt/perl/lib/site_perl/5.6.0/alpha-dec_osf-thread-multi' sitebin='/opt/perl/bin' sitebinexp='/opt/perl/bin' ! sitelib='/opt/perl/lib/site_perl/5.6.0' sitelib_stem='/opt/perl/lib/site_perl' ! sitelibexp='/opt/perl/lib/site_perl/5.6.0' siteprefix='/opt/perl' siteprefixexp='/opt/perl' sizesize='8' sizetype='size_t' sleep='' smail='' - small='' so='so' sockethdr='' socketlib='' --- 702,720 ---- sig_num='0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 6 6 16 20 23 23 23 29 48 ' sig_num_init='0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 6, 6, 16, 20, 23, 23, 23, 29, 48, 0' signal_t='void' ! sitearch='/opt/perl/lib/site_perl/5.6.1/alpha-dec_osf-thread' ! sitearchexp='/opt/perl/lib/site_perl/5.6.1/alpha-dec_osf-thread' sitebin='/opt/perl/bin' sitebinexp='/opt/perl/bin' ! sitelib='/opt/perl/lib/site_perl/5.6.1' sitelib_stem='/opt/perl/lib/site_perl' ! sitelibexp='/opt/perl/lib/site_perl/5.6.1' siteprefix='/opt/perl' siteprefixexp='/opt/perl' sizesize='8' sizetype='size_t' sleep='' smail='' so='so' sockethdr='' socketlib='' *************** *** 694,701 **** sort='sort' spackage='Perl5' spitshell='cat' ! split='' ! src='.' ssizetype='ssize_t' startperl='#!/opt/perl/bin/perl' startsh='#!/bin/sh' --- 722,728 ---- sort='sort' spackage='Perl5' spitshell='cat' ! src='/m/fs/work/work/permanent/perl/pp4/maint-5.6/perl' ssizetype='ssize_t' startperl='#!/opt/perl/bin/perl' startsh='#!/bin/sh' *************** *** 709,715 **** stdio_stream_array='_iob' strings='/usr/include/string.h' submit='' ! subversion='0' sysman='/usr/man/man1' tail='' tar='' --- 736,742 ---- stdio_stream_array='_iob' strings='/usr/include/string.h' submit='' ! subversion='1' sysman='/usr/man/man1' tail='' tar='' *************** *** 737,751 **** uname='uname' uniq='uniq' uquadtype='unsigned long' ! use5005threads='undef' use64bitall='define' use64bitint='define' usedl='define' ! useithreads='define' uselargefiles='define' uselongdouble='undef' usemorebits='undef' ! usemultiplicity='define' usemymalloc='n' usenm='true' useopcode='true' --- 764,778 ---- uname='uname' uniq='uniq' uquadtype='unsigned long' ! use5005threads='define' use64bitall='define' use64bitint='define' usedl='define' ! useithreads='undef' uselargefiles='define' uselongdouble='undef' usemorebits='undef' ! usemultiplicity='undef' usemymalloc='n' usenm='true' useopcode='true' *************** *** 759,764 **** --- 786,792 ---- usevfork='false' usrinc='/usr/include' uuname='' + uvXUformat='"lX"' uvoformat='"lo"' uvsize='8' uvtype='unsigned long' *************** *** 773,803 **** vendorlibexp='' vendorprefix='' vendorprefixexp='' ! version='5.6.0' vi='' voidflags='15' xlibpth='/usr/lib/386 /lib/386' ! xs_apiversion='5.6.0' zcat='' zip='zip' # Configure command line arguments. ! config_arg0='Configure' ! config_args='-Dprefix=/opt/perl -Doptimize=-O -Dusethreads -Duse64bitint -Duselargefiles -Dcf_by=yourname -Dcf_email=yourname@yourhost.yourplace.com -Dperladmin=yourname@yourhost.yourplace.com -Dmydomain=.yourplace.com -Dmyhostname=yourhost -dE' ! config_argc=11 config_arg1='-Dprefix=/opt/perl' config_arg2='-Doptimize=-O' config_arg3='-Dusethreads' ! config_arg4='-Duse64bitint' ! config_arg5='-Duselargefiles' ! config_arg6='-Dcf_by=yourname' ! config_arg7='-Dcf_email=yourname@yourhost.yourplace.com' ! config_arg8='-Dperladmin=yourname@yourhost.yourplace.com' ! config_arg9='-Dmydomain=.yourplace.com' ! config_arg10='-Dmyhostname=yourhost' ! config_arg11='-dE' PERL_REVISION=5 PERL_VERSION=6 ! PERL_SUBVERSION=0 PERL_API_REVISION=5 PERL_API_VERSION=5 PERL_API_SUBVERSION=0 --- 801,836 ---- vendorlibexp='' vendorprefix='' vendorprefixexp='' ! version='5.6.1' ! versiononly='undef' vi='' voidflags='15' xlibpth='/usr/lib/386 /lib/386' ! xs_apiversion='5.6.1' ! yacc='/u/vieraat/vieraat/jhi/Perl/bin/byacc' ! yaccflags='' zcat='' zip='zip' # Configure command line arguments. ! config_arg0='./Configure' ! config_args='-Dprefix=/opt/perl -Doptimize=-O -Dusethreads -Duse5005threads -Duse64bitint -Duselargefiles -Dcf_by=yourname -Dcf_email=yourname@yourhost.yourplace.com -Dperladmin=yourname@yourhost.yourplace.com -Dmydomain=.yourplace.com -Dmyhostname=yourhost -dE -Dusedevel' ! config_argc=13 config_arg1='-Dprefix=/opt/perl' config_arg2='-Doptimize=-O' config_arg3='-Dusethreads' ! config_arg4='-Duse5005threads' ! config_arg5='-Duse64bitint' ! config_arg6='-Duselargefiles' ! config_arg7='-Dcf_by=yourname' ! config_arg8='-Dcf_email=yourname@yourhost.yourplace.com' ! config_arg9='-Dperladmin=yourname@yourhost.yourplace.com' ! config_arg10='-Dmydomain=.yourplace.com' ! config_arg11='-Dmyhostname=yourhost' ! config_arg12='-dE' ! config_arg13='-Dusedevel' PERL_REVISION=5 PERL_VERSION=6 ! PERL_SUBVERSION=1 PERL_API_REVISION=5 PERL_API_VERSION=5 PERL_API_SUBVERSION=0 Index: Porting/config_H Prereq: 3.0.1.5 ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/Porting/config_H Wed Mar 22 05:51:17 2000 --- perl-5.6.1/Porting/config_H Sat Mar 3 11:53:20 2001 *************** *** 17,23 **** /* * Package name : perl5 * Source directory : . ! * Configuration time: Tue Mar 21 23:22:20 EET 2000 * Configured by : jhi * Target system : osf1 alpha.hut.fi v4.0 878 alpha */ --- 17,23 ---- /* * Package name : perl5 * Source directory : . ! * Configuration time: Sat Mar 3 01:13:55 EET 2001 * Configured by : jhi * Target system : osf1 alpha.hut.fi v4.0 878 alpha */ *************** *** 224,240 **** */ #define HAS_GETPGID /**/ - /* HAS_GETPGRP: - * This symbol, if defined, indicates that the getpgrp routine is - * available to get the current process group. - */ - /* USE_BSD_GETPGRP: - * This symbol, if defined, indicates that getpgrp needs one - * arguments whereas USG one needs none. - */ - #define HAS_GETPGRP /**/ - /*#define USE_BSD_GETPGRP / **/ - /* HAS_GETPGRP2: * This symbol, if defined, indicates that the getpgrp2() (as in DG/UX) * routine is available to get the current process group. --- 224,229 ---- *************** *** 489,506 **** */ #define HAS_SETPGID /**/ - /* HAS_SETPGRP: - * This symbol, if defined, indicates that the setpgrp routine is - * available to set the current process group. - */ - /* USE_BSD_SETPGRP: - * This symbol, if defined, indicates that setpgrp needs two - * arguments whereas USG one needs none. See also HAS_SETPGID - * for a POSIX interface. - */ - #define HAS_SETPGRP /**/ - #define USE_BSD_SETPGRP /**/ - /* HAS_SETPGRP2: * This symbol, if defined, indicates that the setpgrp2() (as in DG/UX) * routine is available to set the current process group. --- 478,483 ---- *************** *** 984,995 **** */ #define SH_PATH "/bin/sh" /**/ - /* STDCHAR: - * This symbol is defined to be the type of char used in stdio.h. - * It has the values "unsigned char" or "char". - */ - #define STDCHAR unsigned char /**/ - /* CROSSCOMPILE: * This symbol, if defined, signifies that we our * build process is a cross-compilation. --- 961,966 ---- *************** *** 1092,1099 **** * This symbol contains the ~name expanded version of ARCHLIB, to be used * in programs that are not prepared to deal with ~ expansion at run-time. */ ! #define ARCHLIB "/opt/perl/lib/5.6.0/alpha-dec_osf-thread-multi" /**/ ! #define ARCHLIB_EXP "/opt/perl/lib/5.6.0/alpha-dec_osf-thread-multi" /**/ /* ARCHNAME: * This symbol holds a string representing the architecture name. --- 1063,1070 ---- * This symbol contains the ~name expanded version of ARCHLIB, to be used * in programs that are not prepared to deal with ~ expansion at run-time. */ ! #define ARCHLIB "/opt/perl/lib/5.6.1/alpha-dec_osf-thread" /**/ ! #define ARCHLIB_EXP "/opt/perl/lib/5.6.1/alpha-dec_osf-thread" /**/ /* ARCHNAME: * This symbol holds a string representing the architecture name. *************** *** 1101,1107 **** * where library files may be held under a private library, for * instance. */ ! #define ARCHNAME "alpha-dec_osf-thread-multi" /**/ /* HAS_ATOLF: * This symbol, if defined, indicates that the atolf routine is --- 1072,1078 ---- * where library files may be held under a private library, for * instance. */ ! #define ARCHNAME "alpha-dec_osf-thread" /**/ /* HAS_ATOLF: * This symbol, if defined, indicates that the atolf routine is *************** *** 1184,1204 **** * This macro surrounds its token with double quotes. */ #if 42 == 1 ! # define CAT2(a,b) a/**/b ! # define STRINGIFY(a) "a" /* If you can get stringification with catify, tell me how! */ #endif #if 42 == 42 ! # define PeRl_CaTiFy(a, b) a ## b ! # define PeRl_StGiFy(a) #a /* the additional level of indirection enables these macros to be * used as arguments to other macros. See K&R 2nd ed., page 231. */ ! # define CAT2(a,b) PeRl_CaTiFy(a,b) ! # define StGiFy(a) PeRl_StGiFy(a) ! # define STRINGIFY(a) PeRl_StGiFy(a) #endif #if 42 != 1 && 42 != 42 ! #include "Bletch: How does this C preprocessor catenate tokens?" #endif /* CPPSTDIN: --- 1155,1175 ---- * This macro surrounds its token with double quotes. */ #if 42 == 1 ! #define CAT2(a,b) a/**/b ! #define STRINGIFY(a) "a" /* If you can get stringification with catify, tell me how! */ #endif #if 42 == 42 ! #define PeRl_CaTiFy(a, b) a ## b ! #define PeRl_StGiFy(a) #a /* the additional level of indirection enables these macros to be * used as arguments to other macros. See K&R 2nd ed., page 231. */ ! #define CAT2(a,b) PeRl_CaTiFy(a,b) ! #define StGiFy(a) PeRl_StGiFy(a) ! #define STRINGIFY(a) PeRl_StGiFy(a) #endif #if 42 != 1 && 42 != 42 ! # include "Bletch: How does this C preprocessor catenate tokens?" #endif /* CPPSTDIN: *************** *** 1328,1350 **** */ #define HAS_ENDSERVENT /**/ - /* HAS_ENDSPENT: - * This symbol, if defined, indicates that the endspent system call is - * available to finalize the scan of SysV shadow password entries. - */ - /*#define HAS_ENDSPENT / **/ - /* HAS_FD_SET: * This symbol, when defined, indicates presence of the fd_set typedef * in */ #define HAS_FD_SET /**/ /* HAS_FPOS64_T: * This symbol will be defined if the C compiler supports fpos64_t. */ /*#define HAS_FPOS64_T / **/ /* HAS_STRUCT_FS_DATA: * This symbol, if defined, indicates that the struct fs_data * to do statfs() is supported. --- 1299,1328 ---- */ #define HAS_ENDSERVENT /**/ /* HAS_FD_SET: * This symbol, when defined, indicates presence of the fd_set typedef * in */ #define HAS_FD_SET /**/ + /* FLEXFILENAMES: + * This symbol, if defined, indicates that the system supports filenames + * longer than 14 characters. + */ + #define FLEXFILENAMES /**/ + /* HAS_FPOS64_T: * This symbol will be defined if the C compiler supports fpos64_t. */ /*#define HAS_FPOS64_T / **/ + /* HAS_FREXPL: + * This symbol, if defined, indicates that the frexpl routine is + * available to break a long double floating-point number into + * a normalized fraction and an integral power of 2. + */ + #define HAS_FREXPL /**/ + /* HAS_STRUCT_FS_DATA: * This symbol, if defined, indicates that the struct fs_data * to do statfs() is supported. *************** *** 1392,1397 **** --- 1370,1381 ---- */ #define HAS_GETCWD /**/ + /* HAS_GETESPWNAM: + * This symbol, if defined, indicates that the getespwnam system call is + * available to retrieve enchanced (shadow) password entries by name. + */ + /*#define HAS_GETESPWNAM / **/ + /* HAS_GETFSSTAT: * This symbol, if defined, indicates that the getfsstat routine is * available to stat filesystems in bulk. *************** *** 1497,1502 **** --- 1481,1493 ---- */ #define HAS_GETNET_PROTOS /**/ + /* HAS_GETPAGESIZE: + * This symbol, if defined, indicates that the getpagesize system call + * is available to get system page size, which is the granularity of + * many memory management calls. + */ + #define HAS_GETPAGESIZE /**/ + /* HAS_GETPROTOENT: * This symbol, if defined, indicates that the getprotoent() routine is * available to look up protocols in some data base or another. *************** *** 1522,1527 **** --- 1513,1524 ---- */ #define HAS_GETPROTO_PROTOS /**/ + /* HAS_GETPRPWNAM: + * This symbol, if defined, indicates that the getprpwnam system call is + * available to retrieve protected (shadow) password entries by name. + */ + /*#define HAS_GETPRPWNAM / **/ + /* HAS_GETPWENT: * This symbol, if defined, indicates that the getpwent routine is * available for sequential access of the passwd database. *************** *** 1543,1554 **** */ #define HAS_GETSERV_PROTOS /**/ - /* HAS_GETSPENT: - * This symbol, if defined, indicates that the getspent system call is - * available to retrieve SysV shadow password entries sequentially. - */ - /*#define HAS_GETSPENT / **/ - /* HAS_GETSPNAM: * This symbol, if defined, indicates that the getspnam system call is * available to retrieve SysV shadow password entries by name. --- 1540,1545 ---- *************** *** 1624,1629 **** --- 1615,1639 ---- */ #define HAS_ISASCII /**/ + /* HAS_ISNAN: + * This symbol, if defined, indicates that the isnan routine is + * available to check whether a double is a NaN. + */ + #define HAS_ISNAN /**/ + + /* HAS_ISNANL: + * This symbol, if defined, indicates that the isnanl routine is + * available to check whether a long double is a NaN. + */ + #define HAS_ISNANL /**/ + + /* HAS_LCHOWN: + * This symbol, if defined, indicates that the lchown routine is + * available to operate on a symbolic link (instead of following the + * link). + */ + #define HAS_LCHOWN /**/ + /* HAS_LDBL_DIG: * This symbol, if defined, indicates that this system's * or defines the symbol LDBL_DIG, which is the number *************** *** 1711,1716 **** --- 1721,1733 ---- #define HAS_MMAP /**/ #define Mmap_t void * /**/ + /* HAS_MODFL: + * This symbol, if defined, indicates that the modfl routine is + * available to split a long double x into a fractional part f and + * an integer part i such that |f| < 1.0 and (f + i) = x. + */ + #define HAS_MODFL /**/ + /* HAS_MPROTECT: * This symbol, if defined, indicates that the mprotect system call is * available to modify the access protection of a memory mapped file. *************** *** 1823,1828 **** --- 1840,1851 ---- */ #define HAS_SETPROTOENT /**/ + /* HAS_SETPROCTITLE: + * This symbol, if defined, indicates that the setproctitle routine is + * available to set process title. + */ + /*#define HAS_SETPROCTITLE / **/ + /* HAS_SETPWENT: * This symbol, if defined, indicates that the setpwent routine is * available for initializing sequential access of the passwd database. *************** *** 1835,1846 **** */ #define HAS_SETSERVENT /**/ - /* HAS_SETSPENT: - * This symbol, if defined, indicates that the setspent system call is - * available to initialize the scan of SysV shadow password entries. - */ - /*#define HAS_SETSPENT / **/ - /* HAS_SETVBUF: * This symbol, if defined, indicates that the setvbuf routine is * available to change buffering on an open stdio stream. --- 1858,1863 ---- *************** *** 1944,1949 **** --- 1961,1972 ---- /*#define HAS_MSG_PROXY / **/ #define HAS_SCM_RIGHTS /**/ + /* HAS_SOCKS5_INIT: + * This symbol, if defined, indicates that the socks5_init routine is + * available to initialize SOCKS 5. + */ + /*#define HAS_SOCKS5_INIT / **/ + /* HAS_SQRTL: * This symbol, if defined, indicates that the sqrtl routine is * available to do long double square roots. *************** *** 2006,2017 **** --- 2029,2051 ---- * This symbol is defined if the FILE_cnt macro can be used as an * lvalue. */ + /* STDIO_PTR_LVAL_SETS_CNT: + * This symbol is defined if using the FILE_ptr macro as an lvalue + * to increase the pointer by n has the side effect of decreasing the + * value of File_cnt(fp) by n. + */ + /* STDIO_PTR_LVAL_NOCHANGE_CNT: + * This symbol is defined if using the FILE_ptr macro as an lvalue + * to increase the pointer by n leaves File_cnt(fp) unchanged. + */ #define USE_STDIO_PTR /**/ #ifdef USE_STDIO_PTR #define FILE_ptr(fp) ((fp)->_ptr) #define STDIO_PTR_LVALUE /**/ #define FILE_cnt(fp) ((fp)->_cnt) #define STDIO_CNT_LVALUE /**/ + /*#define STDIO_PTR_LVAL_SETS_CNT / **/ + #define STDIO_PTR_LVAL_NOCHANGE_CNT /**/ #endif /* USE_STDIO_BASE: *************** *** 2279,2284 **** --- 2313,2324 ---- */ /*#define I_INTTYPES / **/ + /* I_LIBUTIL: + * This symbol, if defined, indicates that exists and + * should be included. + */ + /*#define I_LIBUTIL / **/ + /* I_MACH_CTHREADS: * This symbol, if defined, indicates to the C program that it should * include . *************** *** 2309,2314 **** --- 2349,2360 ---- */ #define I_POLL /**/ + /* I_PROT: + * This symbol, if defined, indicates that exists and + * should be included. + */ + #define I_PROT /**/ + /* I_PTHREAD: * This symbol, if defined, indicates to the C program that it should * include . *************** *** 2471,2478 **** --- 2517,2534 ---- * This symbol, if defined, contains the string used by stdio to * format long doubles (format 'g') for output. */ + /* PERL_PRIeldbl: + * This symbol, if defined, contains the string used by stdio to + * format long doubles (format 'e') for output. + */ + /* PERL_SCNfldbl: + * This symbol, if defined, contains the string used by stdio to + * format long doubles (format 'f') for input. + */ #define PERL_PRIfldbl "f" /**/ #define PERL_PRIgldbl "g" /**/ + #define PERL_PRIeldbl "e" /**/ + #define PERL_SCNfldbl "f" /**/ /* Off_t: * This symbol holds the type used to declare offsets in the kernel. *************** *** 2560,2565 **** --- 2616,2631 ---- #define Netdb_name_t const char * /**/ #define Netdb_net_t int /**/ + /* PERL_OTHERLIBDIRS: + * This variable contains a colon-separated set of paths for the perl + * binary to search for additional library files or modules. + * These directories will be tacked to the end of @INC. + * Perl will automatically search below each path for version- + * and architecture-specific directories. See PERL_INC_VERSION_LIST + * for more details. + */ + /*#define PERL_OTHERLIBDIRS " " / **/ + /* IVTYPE: * This symbol defines the C type used for Perl's IV. */ *************** *** 2623,2631 **** /* U64SIZE: * This symbol contains the sizeof(U64). */ /* NV_PRESERVES_UV: * This symbol, if defined, indicates that a variable of type NVTYPE ! * can preserve all the bit of a variable of type UVSIZE. */ #define IVTYPE long /**/ #define UVTYPE unsigned long /**/ --- 2689,2704 ---- /* U64SIZE: * This symbol contains the sizeof(U64). */ + /* NVSIZE: + * This symbol contains the sizeof(NV). + */ /* NV_PRESERVES_UV: * This symbol, if defined, indicates that a variable of type NVTYPE ! * can preserve all the bits of a variable of type UVTYPE. ! */ ! /* NV_PRESERVES_UV_BITS: ! * This symbol contains the number of bits a variable of type NVTYPE ! * can preserve of a variable of type UVTYPE. */ #define IVTYPE long /**/ #define UVTYPE unsigned long /**/ *************** *** 2652,2658 **** --- 2725,2733 ---- #define I64SIZE 8 /**/ #define U64SIZE 8 /**/ #endif + #define NVSIZE 8 /**/ #undef NV_PRESERVES_UV + #define NV_PRESERVES_UV_BITS 53 /* IVdf: * This symbol defines the format string used for printing a Perl IV *************** *** 2668,2679 **** */ /* UVxf: * This symbol defines the format string used for printing a Perl UV ! * as an unsigned hexadecimal integer. */ #define IVdf "ld" /**/ #define UVuf "lu" /**/ #define UVof "lo" /**/ #define UVxf "lx" /**/ /* Pid_t: * This symbol holds the type used to declare process ids in the kernel. --- 2743,2769 ---- */ /* UVxf: * This symbol defines the format string used for printing a Perl UV ! * as an unsigned hexadecimal integer in lowercase abcdef. ! */ ! /* NVef: ! * This symbol defines the format string used for printing a Perl NV ! * using %e-ish floating point format. ! */ ! /* NVff: ! * This symbol defines the format string used for printing a Perl NV ! * using %f-ish floating point format. ! */ ! /* NVgf: ! * This symbol defines the format string used for printing a Perl NV ! * using %g-ish floating point format. */ #define IVdf "ld" /**/ #define UVuf "lu" /**/ #define UVof "lo" /**/ #define UVxf "lx" /**/ + #define NVef "e" /**/ + #define NVff "f" /**/ + #define NVgf "g" /**/ /* Pid_t: * This symbol holds the type used to declare process ids in the kernel. *************** *** 2692,2699 **** * This symbol contains the ~name expanded version of PRIVLIB, to be used * in programs that are not prepared to deal with ~ expansion at run-time. */ ! #define PRIVLIB "/opt/perl/lib/5.6.0" /**/ ! #define PRIVLIB_EXP "/opt/perl/lib/5.6.0" /**/ /* PTRSIZE: * This symbol contains the size of a pointer, so that the C preprocessor --- 2782,2789 ---- * This symbol contains the ~name expanded version of PRIVLIB, to be used * in programs that are not prepared to deal with ~ expansion at run-time. */ ! #define PRIVLIB "/opt/perl/lib/5.6.1" /**/ ! #define PRIVLIB_EXP "/opt/perl/lib/5.6.1" /**/ /* PTRSIZE: * This symbol contains the size of a pointer, so that the C preprocessor *************** *** 2791,2798 **** * This symbol contains the ~name expanded version of SITEARCH, to be used * in programs that are not prepared to deal with ~ expansion at run-time. */ ! #define SITEARCH "/opt/perl/lib/site_perl/5.6.0/alpha-dec_osf-thread-multi" /**/ ! #define SITEARCH_EXP "/opt/perl/lib/site_perl/5.6.0/alpha-dec_osf-thread-multi" /**/ /* SITELIB: * This symbol contains the name of the private library for this package. --- 2881,2888 ---- * This symbol contains the ~name expanded version of SITEARCH, to be used * in programs that are not prepared to deal with ~ expansion at run-time. */ ! #define SITEARCH "/opt/perl/lib/site_perl/5.6.1/alpha-dec_osf-thread" /**/ ! #define SITEARCH_EXP "/opt/perl/lib/site_perl/5.6.1/alpha-dec_osf-thread" /**/ /* SITELIB: * This symbol contains the name of the private library for this package. *************** *** 2814,2821 **** * removed. The elements in inc_version_list (inc_version_list.U) can * be tacked onto this variable to generate a list of directories to search. */ ! #define SITELIB "/opt/perl/lib/site_perl/5.6.0" /**/ ! #define SITELIB_EXP "/opt/perl/lib/site_perl/5.6.0" /**/ #define SITELIB_STEM "/opt/perl/lib/site_perl" /**/ /* Size_t_size: --- 2904,2911 ---- * removed. The elements in inc_version_list (inc_version_list.U) can * be tacked onto this variable to generate a list of directories to search. */ ! #define SITELIB "/opt/perl/lib/site_perl/5.6.1" /**/ ! #define SITELIB_EXP "/opt/perl/lib/site_perl/5.6.1" /**/ #define SITELIB_STEM "/opt/perl/lib/site_perl" /**/ /* Size_t_size: *************** *** 2943,2949 **** * be built to use multiplicity. */ #ifndef MULTIPLICITY ! #define MULTIPLICITY /**/ #endif /* USE_PERLIO: --- 3033,3039 ---- * be built to use multiplicity. */ #ifndef MULTIPLICITY ! /*#define MULTIPLICITY / **/ #endif /* USE_PERLIO: *************** *** 2975,2982 **** * This symbol, if defined, indicates that Perl should * be built to use the old draft POSIX threads API. */ ! /*#define USE_5005THREADS / **/ ! #define USE_ITHREADS /**/ #if defined(USE_5005THREADS) && !defined(USE_ITHREADS) #define USE_THREADS /* until src is revised*/ #endif --- 3065,3072 ---- * This symbol, if defined, indicates that Perl should * be built to use the old draft POSIX threads API. */ ! #define USE_5005THREADS /**/ ! /*#define USE_ITHREADS / **/ #if defined(USE_5005THREADS) && !defined(USE_ITHREADS) #define USE_THREADS /* until src is revised*/ #endif *************** *** 3040,3046 **** /* PERL_XS_APIVERSION: * This variable contains the version of the oldest perl binary * compatible with the present perl. perl.c:incpush() and ! * lib/lib.pm will automatically search in /opt/perl/lib/site_perl/5.6.0/alpha-dec_osf-thread-multi for older * directories across major versions back to xs_apiversion. * This is only useful if you have a perl library directory tree * structured like the default one. --- 3130,3136 ---- /* PERL_XS_APIVERSION: * This variable contains the version of the oldest perl binary * compatible with the present perl. perl.c:incpush() and ! * lib/lib.pm will automatically search in /opt/perl/lib/site_perl/5.6.1/alpha-dec_osf-thread for older * directories across major versions back to xs_apiversion. * This is only useful if you have a perl library directory tree * structured like the default one. *************** *** 3059,3065 **** * compatible with the present perl. (That is, pure perl modules * written for pm_apiversion will still work for the current * version). perl.c:incpush() and lib/lib.pm will automatically ! * search in /opt/perl/lib/site_perl/5.6.0 for older directories across major versions * back to pm_apiversion. This is only useful if you have a perl * library directory tree structured like the default one. The * versioned site_perl library was introduced in 5.005, so that's --- 3149,3155 ---- * compatible with the present perl. (That is, pure perl modules * written for pm_apiversion will still work for the current * version). perl.c:incpush() and lib/lib.pm will automatically ! * search in /opt/perl/lib/site_perl/5.6.1 for older directories across major versions * back to pm_apiversion. This is only useful if you have a perl * library directory tree structured like the default one. The * versioned site_perl library was introduced in 5.005, so that's *************** *** 3069,3088 **** * (presumably) be similar. * See the INSTALL file for how this works. */ ! #define PERL_XS_APIVERSION "5.6.0" #define PERL_PM_APIVERSION "5.005" ! /* HAS_LCHOWN: ! * This symbol, if defined, indicates that the lchown routine is ! * available to operate on a symbolic link (instead of following the ! * link). */ ! #define HAS_LCHOWN /**/ ! /* FLEXFILENAMES: ! * This symbol, if defined, indicates that the system supports filenames ! * longer than 14 characters. */ ! #define FLEXFILENAMES /**/ #endif --- 3159,3223 ---- * (presumably) be similar. * See the INSTALL file for how this works. */ ! #define PERL_XS_APIVERSION "5.6.1" #define PERL_PM_APIVERSION "5.005" ! /* HAS_GETPGRP: ! * This symbol, if defined, indicates that the getpgrp routine is ! * available to get the current process group. */ ! /* USE_BSD_GETPGRP: ! * This symbol, if defined, indicates that getpgrp needs one ! * arguments whereas USG one needs none. ! */ ! #define HAS_GETPGRP /**/ ! /*#define USE_BSD_GETPGRP / **/ ! /* HAS_SETPGRP: ! * This symbol, if defined, indicates that the setpgrp routine is ! * available to set the current process group. */ ! /* USE_BSD_SETPGRP: ! * This symbol, if defined, indicates that setpgrp needs two ! * arguments whereas USG one needs none. See also HAS_SETPGID ! * for a POSIX interface. ! */ ! #define HAS_SETPGRP /**/ ! #define USE_BSD_SETPGRP /**/ ! ! /* STDCHAR: ! * This symbol is defined to be the type of char used in stdio.h. ! * It has the values "unsigned char" or "char". ! */ ! #define STDCHAR unsigned char /**/ ! ! /* HAS__FWALK: ! * This symbol, if defined, indicates that the _fwalk system call is ! * available to apply a function to all the file handles. ! */ ! /*#define HAS__FWALK / **/ ! ! /* FCNTL_CAN_LOCK: ! * This symbol, if defined, indicates that fcntl() can be used ! * for file locking. Normally on Unix systems this is defined. ! * It may be undefined on VMS. ! */ ! #define FCNTL_CAN_LOCK /**/ ! ! /* HAS_FSYNC: ! * This symbol, if defined, indicates that the fsync routine is ! * available to write a file's modified data and attributes to ! * permanent storage. ! */ ! #define HAS_FSYNC /**/ ! ! /* HAS_SBRK_PROTO: ! * This symbol, if defined, indicates that the system provides ! * a prototype for the sbrk() function. Otherwise, it is up ! * to the program to supply one. Good guesses are ! * extern void* sbrk _((int)); ! * extern void* sbrk _((size_t)); ! */ ! #define HAS_SBRK_PROTO /**/ #endif Index: Porting/genlog ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/Porting/genlog Tue Nov 30 19:57:56 1999 --- perl-5.6.1/Porting/genlog Thu Feb 22 18:57:52 2001 *************** *** 20,26 **** $0 =~ s|^.*/||; unless (@ARGV) { die < USAGE } --- 20,26 ---- $0 =~ s|^.*/||; unless (@ARGV) { die < USAGE } *************** *** 32,37 **** --- 32,42 ---- my $p4port = $ENV{P4PORT} || 'localhost:1666'; + my @branch_include; + my @branch_exclude; + my %branch_include; + my %branch_exclude; + while (@ARGV) { $_ = shift; if (/^(\d+)\.\.(\d+)$/) { *************** *** 43,48 **** --- 48,59 ---- elsif (/^-p(.*)$/) { $p4port = $1 || shift; } + elsif (/^-bi(.*)$/) { + push @branch_include, $1 || shift; + } + elsif (/^-be(.*)$/) { + push @branch_exclude, $1 || shift; + } else { warn "Arguments must be change numbers, ignoring `$_'\n"; } *************** *** 50,55 **** --- 61,69 ---- @changes = sort { $b <=> $a } @changes; + @branch_include{@branch_include} = @branch_include if @branch_include; + @branch_exclude{@branch_exclude} = @branch_exclude if @branch_exclude; + my @desc = `p4 -p $p4port describe -s @changes`; if ($?) { die "$0: `p4 -p $p4port describe -s @changes` failed, status[$?]\n"; *************** *** 58,63 **** --- 72,79 ---- chomp @desc; while (@desc) { my ($change,$who,$date,$time,@log,$branch,$file,$type,%files); + my $skip = 0; + my $nbranch = 0; $_ = shift @desc; if (/^Change (\d+) by (\w+)\@.+ on (\S+) (\S+)\s*$/) { ($change, $who, $date, $time) = ($1,$2,$3,$4); *************** *** 73,78 **** --- 89,100 ---- last unless /^\.\.\./; if (m{^\.\.\. //depot/(.*?perl|[^/]*)/([^#]+)#\d+ (\w+)\s*$}) { ($branch,$file,$type) = ($1,$2,$3); + $nbranch++; + if (exists $branch_exclude{$branch} or + @branch_include and + not exists $branch_include{$branch}) { + $skip++; + } $files{$branch} = {} unless exists $files{$branch}; $files{$branch}{$type} = [] unless exists $files{$branch}{$type}; push @{$files{$branch}{$type}}, $file; *************** *** 83,89 **** } } } ! next unless $change; print "_" x 76, "\n"; printf < perl-5.6.1 *** perl-5.6.1/Porting/makerel Sun Feb 27 16:40:56 2000 --- perl-5.6.1/Porting/makerel Fri Mar 23 08:23:28 2001 *************** *** 78,100 **** chdir "$relroot/$reldir" or die $!; print "Setting file permissions...\n"; ! system("find . -type f -print | xargs chmod -w"); ! system("find . -type d -print | xargs chmod g-s"); ! system("find t -name '*.t' -print | xargs chmod +x"); my @exe = qw( Configure configpm - embed.pl installperl installman keywords.pl opcode.pl perly.fixer t/TEST t/*/*.t *.SH vms/ext/Stdio/test.pl ! vms/ext/filespec.t x2p/*.SH Porting/patchls Porting/makerel --- 78,106 ---- chdir "$relroot/$reldir" or die $!; print "Setting file permissions...\n"; ! system("find . -type f -print | xargs chmod a-w"); ! system("find . -type d -print | xargs chmod 0755"); ! ! # the right files should already have the execute bit set ! # in the repository, but this is just insurance ! system("find t -name '*.t' -print | xargs chmod a+x"); my @exe = qw( Configure + configure.gnu configpm installperl + installhtml installman + embed.pl keywords.pl opcode.pl + warnings.pl perly.fixer t/TEST t/*/*.t *.SH vms/ext/Stdio/test.pl ! vms/ext/*.t x2p/*.SH Porting/patchls Porting/makerel *************** *** 102,121 **** system("chmod +x @exe"); my @writables = qw( embed.h embedvar.h - ext/B/B/Asmdata.pm - ext/ByteLoader/byterun.c - ext/ByteLoader/byterun.h global.sym ! keywords.h ! lib/warnings.pm objXSUB.h ! opcode.h ! pp.sym ! pp_proto.h regnodes.h warnings.h win32/config_H.bc win32/config_H.gc win32/config_H.vc --- 108,138 ---- system("chmod +x @exe"); my @writables = qw( + keywords.h + opcode.h + opnames.h + pp_proto.h + pp.sym + proto.h embed.h embedvar.h global.sym ! pod/perlintern.pod ! pod/perlapi.pod objXSUB.h ! perlapi.h ! perlapi.c ! ext/ByteLoader/byterun.h ! ext/ByteLoader/byterun.c ! ext/B/B/Asmdata.pm regnodes.h warnings.h + lib/warnings.pm + vms/perly_c.vms + vms/perly_h.vms + win32/Makefile + win32/makefile.mk + win32/config_H.bc win32/config_H.bc win32/config_H.gc win32/config_H.vc Index: Porting/p4desc ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/Porting/p4desc Wed Jan 26 14:45:14 2000 --- perl-5.6.1/Porting/p4desc Thu Feb 22 18:57:52 2001 *************** *** 6,12 **** # Gurusamy Sarathy # ! use vars qw($thisfile $change $file $fnum $h $v $p4port @addfiles); BEGIN { $0 =~ s|^.*/||; --- 6,13 ---- # Gurusamy Sarathy # ! use vars qw($thisfile $change $file $fnum $h $v $p4port @addfiles ! $branches $skip); BEGIN { $0 =~ s|^.*/||; *************** *** 18,23 **** --- 19,27 ---- elsif (/^-p(.*)$/) { $p4port = $1 || ' '; } + elsif (/^-b(.*)$/) { + $branches = $1; + } elsif (/^-v$/) { $v++; } *************** *** 30,49 **** } unless (@files) { @files = '-'; undef $^I; } @ARGV = @files; if ($h) { print STDERR < change-123.desc --- 34,61 ---- } unless (@files) { @files = '-'; undef $^I; } @ARGV = @files; + $branches = '//depot/perl/' unless defined $branches; if ($h) { print STDERR < change-123.desc *************** *** 65,78 **** # while we are within range if ($cur) { ! if (m{^\.\.\. (//depot/.+?#\d+) (add|branch)$}) { ! my $newfile = $1; ! push @addfiles, $newfile; ! warn "$newfile add, revision != 1!\n" unless $newfile =~ /#1$/; } warn "file [$file] line [$cur] file# [$fnum]\n" if $v; } if (/^Change (\d+) by/) { $_ = "\n\n" . $_ if $change; # start of a new change list $change = $1; --- 77,104 ---- # while we are within range if ($cur) { ! if (m|^\.\.\. |) { ! if (m|$branches|) { ! if (m{^\.\.\. (//depot/.+?\#\d+) (add|branch)$}) { ! my $newfile = $1; ! push @addfiles, $newfile; ! warn "$newfile add, revision != 1!\n" unless $newfile =~ /#1$/; ! } ! } else { ! push @skipped, "# $_"; ! $_ = ''; ! } } warn "file [$file] line [$cur] file# [$fnum]\n" if $v; } + if (m|^==== //depot/|) { + $skip = !m|$branches|; + print "# Skipped because not under branches: $branches\n" if $skip; + } + + $_ = "# $_" if $skip; + if (/^Change (\d+) by/) { $_ = "\n\n" . $_ if $change; # start of a new change list $change = $1; *************** *** 84,89 **** --- 110,118 ---- if (eof) { $_ .= newfiles(); + $_ .= join('', "\n", + "# Skipped because not under branches: $branches\n", + @skipped, "\n") if @skipped; } sub newfiles { Index: Porting/patching.pod ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/Porting/patching.pod Fri Aug 20 08:28:24 1999 --- perl-5.6.1/Porting/patching.pod Sat Mar 3 11:53:20 2001 *************** *** 94,105 **** # show function name in every hunk (safer, more informative) % diff -u -F '^[_a-zA-Z0-9]+ *(' old/file new/file ! ! =item Directories ! ! IMPORTANT: Patches should be generated from the source root directory, not ! from the directory that the patched file resides in. This ensures that the ! maintainer patches the proper file. Many files in the distribution are derivative--avoid patching them. Patch the originals instead. Most utilities (like perldoc) are in --- 94,100 ---- # show function name in every hunk (safer, more informative) % diff -u -F '^[_a-zA-Z0-9]+ *(' old/file new/file ! =item Derived Files Many files in the distribution are derivative--avoid patching them. Patch the originals instead. Most utilities (like perldoc) are in *************** *** 119,124 **** --- 114,144 ---- If you are submitting patches that affect multiple files then you should backup the entire directory tree (to $source_root.old/ for example). This will allow C to create all the patches at once. + + =item Directories + + IMPORTANT: Patches should be generated from the source root directory, not + from the directory that the patched file resides in. This ensures that the + maintainer patches the proper file. + + For larger patches that are dealing with multiple files or + directories, Johan Vromans has written a powerful utility: makepatch. + See the JV directory on CPAN for the current version. If you have this + program available, it is recommended to create a duplicate of the perl + directory tree against which you are intending to provide a patch and + let makepatch figure out all the changes you made to your copy of the + sources. As perl comes with a MANIFEST file, you need not delete + object files and other derivative files from the two directory trees, + makepatch is smart about them. + + Say, you have created a directory perl-5.7.1@8685/ for the perl you + are taking as the base and a directory perl-5.7.1@8685-withfoo/ where + you have your changes, you would run makepatch as follows: + + makepatch -oldman perl-5.7.1@8685/MANIFEST \ + -newman perl-5.7.1@8685-withfoo/MANIFEST \ + -diff "diff -u" \ + perl-5.7.1@8685 perl-5.7.1@8685-withfoo =item Try it yourself Index: Porting/pumpkin.pod Prereq: 1.23 ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/Porting/pumpkin.pod Mon Feb 14 10:54:08 2000 --- perl-5.6.1/Porting/pumpkin.pod Thu Feb 22 18:57:52 2001 *************** *** 58,64 **** For compatibility with the older numbering scheme the composite floating point version number continues to be available as the magic variable $], ! and amounts to C<$revision + $version/1000 + $subversion/1000000>. This can still be used in comparisons. print "You've got an old perl\n" if $] < 5.005_03; --- 58,64 ---- For compatibility with the older numbering scheme the composite floating point version number continues to be available as the magic variable $], ! and amounts to C<$revision + $version/1000 + $subversion/100000>. This can still be used in comparisons. print "You've got an old perl\n" if $] < 5.005_03; *************** *** 210,216 **** line options and possibly existing config.sh and Policy.sh files from previous Configure runs. ! The extension hints are written Perl (by the time they are used miniperl has been built) and control the building of their respective extensions. They can be used to for example manipulate compilation and linking flags. --- 210,216 ---- line options and possibly existing config.sh and Policy.sh files from previous Configure runs. ! The extension hints are written in Perl (by the time they are used miniperl has been built) and control the building of their respective extensions. They can be used to for example manipulate compilation and linking flags. *************** *** 252,258 **** A file called F at the top level that explains things like how to install perl at this platform, where to get any possibly required additional software, and for example what test suite errors ! to expect, is nice too. You may also want to write a separate F<.pod> file for your operating system to tell about existing mailing lists, os-specific modules, --- 252,259 ---- A file called F at the top level that explains things like how to install perl at this platform, where to get any possibly required additional software, and for example what test suite errors ! to expect, is nice too. Such files are in the process of being written ! in pod format and will eventually be renamed F. You may also want to write a separate F<.pod> file for your operating system to tell about existing mailing lists, os-specific modules, *************** *** 449,455 **** to config.sh and then propoagate them to a canned 'config.h' by any number of means, including a perl script in win32/ or carrying config.sh and config_h.SH to a Unix system and running sh ! config_h.SH.) XXX] The Porting/config.sh and Porting/config_H files are provided to --- 450,458 ---- to config.sh and then propoagate them to a canned 'config.h' by any number of means, including a perl script in win32/ or carrying config.sh and config_h.SH to a Unix system and running sh ! config_h.SH.) Vms uses configure.com to generate its own config.sh ! and config.h. If you want to add a new variable to config.sh check ! with vms folk how to add it to configure.com too. XXX] The Porting/config.sh and Porting/config_H files are provided to *************** *** 460,466 **** Simply edit the existing config_H file; keep the first few explanatory lines and then copy your new config.h below. ! It may also be necessary to update win32/config.?c, vms/config.vms and plan9/config.plan9, though you should be quite careful in doing so if you are not familiar with those systems. You might want to issue your patch with a promise to quickly issue a follow-up that handles those --- 463,469 ---- Simply edit the existing config_H file; keep the first few explanatory lines and then copy your new config.h below. ! It may also be necessary to update win32/config.?c, and plan9/config.plan9, though you should be quite careful in doing so if you are not familiar with those systems. You might want to issue your patch with a promise to quickly issue a follow-up that handles those *************** *** 481,488 **** started to fix F to detect this, but I never completed the task. ! If C changes, make sure you run C to ! update the corresponding VMS files. See L. Some additional notes from Larry on this: --- 484,493 ---- started to fix F to detect this, but I never completed the task. ! If C or C changes, make sure you run C ! to update the corresponding VMS files. This could be taken care of by ! the regen_all target in the Unix Makefile. See also ! L. Some additional notes from Larry on this: *************** *** 507,512 **** --- 512,522 ---- Larry + =head2 make regen_all + + This target takes care of the PERLYVMS, regen_headers, and regen_pods + targets. + =head2 make regen_headers The F, F, and F files are all automatically *************** *** 532,537 **** --- 542,551 ---- than answering all the questions and complaints about the failing command. + =head2 make regen_pods + + Will run `make regen_pods` in the pod directory for indexing. + =head2 global.sym, interp.sym and perlio.sym Make sure these files are up-to-date. Read the comments in these *************** *** 541,547 **** If you do change F or F, think carefully about what you are doing. To the extent reasonable, we'd like to maintain ! souce and binary compatibility with older releases of perl. That way, extensions built under one version of perl will continue to work with new versions of perl. --- 555,561 ---- If you do change F or F, think carefully about what you are doing. To the extent reasonable, we'd like to maintain ! source and binary compatibility with older releases of perl. That way, extensions built under one version of perl will continue to work with new versions of perl. *************** *** 594,604 **** =head2 VMS-specific updates If you have changed F or F, then you most probably want ! to update F by running C. ! The Perl version number appears in several places under F. ! It is courteous to update these versions. For example, if you are ! making 5.004_42, replace "5.00441" with "5.00442". =head2 Making the new distribution --- 608,618 ---- =head2 VMS-specific updates If you have changed F or F, then you most probably want ! to update F by running C, or ! by running `make regen_all` which will run that script for you. ! The Perl revision number appears as "perl5" in configure.com. ! It is courteous to update that if necessary. =head2 Making the new distribution *************** *** 701,706 **** --- 715,748 ---- You can also hand-tweak your config.h to try out different #ifdef branches. + =head2 Other tests + + =over 4 + + =item CHECK_FORMAT + + To test the correct use of printf-style arguments, C with + S<-Dccflags='-DCHECK_FORMAT -Wformat'> and run C. The compiler + will produce warning of incorrect use of format arguments. CHECK_FORMAT + changes perl-defined formats to common formats, so DO NOT USE the executable + produced by this process. + + A more accurate approach is the following commands: + + sh Configure -des -Dccflags=-Wformat ... + make miniperl # without -DCHECK_FORMAT + perl -i.orig -pwe 's/-Wformat/-DCHECK_FORMAT $&/' config.sh + sh Configure -S + make >& make.log # build from correct miniperl + make clean + make miniperl >& mini.log # build miniperl with -DCHECK_FORMAT + perl -nwe 'print if /^\S+:/ and not /^make\b/' mini.log make.log + make clean + + (-Wformat support by Robin Barker.) + + =back + =head1 Running Purify Purify is a commercial tool that is helpful in identifying memory *************** *** 1325,1331 **** =item File locking Somehow, straighten out, document, and implement lockf(), flock(), ! and/or fcntl() file locking. It's a mess. =back --- 1367,1374 ---- =item File locking Somehow, straighten out, document, and implement lockf(), flock(), ! and/or fcntl() file locking. It's a mess. See $d_fcntl_can_lock ! in recent config.sh files though. =back Index: Porting/repository.pod ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/Porting/repository.pod Tue May 5 13:32:27 1998 --- perl-5.6.1/Porting/repository.pod Thu Feb 22 18:57:52 2001 *************** *** 0 **** --- 1,327 ---- + =head1 NAME + + repository - Using the Perl repository + + This document describes what a Perl Porter needs to do + to start using the Perl repository. + + =head1 Prerequisites + + You'll need to get hold of the following software. + + =over 4 + + =item Perforce + + Download a perforce client from: + + http://www.perforce.com/perforce/loadprog.html + + You'll probably also want to look at: + + http://www.perforce.com/perforce/technical.html + + where you can look at or download its documentation. + + =item ssh + + If you don't already have access to an ssh client, then look at its + home site C which mentions ftp sites from + which it's available. You only need to build the client parts (ssh + and ssh-keygen should suffice). + + =back + + =head1 Creating an SSH Key Pair + + If you already use ssh and want to use the same key pair for perl + repository access then you can skip the rest of this section. + Otherwise, generate an ssh key pair for use with the repository + by typing the command + + ssh-keygen + + After generating a key pair and testing it, ssh-keygen will ask you + to enter a filename in which to save the key. The default it offers + will be the file F<~/.ssh/identity> which is suitable unless you + particularly want to keep separate ssh identities for some reason. + If so, you could save the perl repository private key in the file + F<~/.ssh/perl>, for example, but I will use the standard filename + in the remainder of the examples of this document. + + After typing in the filename, it will prompt you to type in a + passphrase. The private key will itself be encrypted so that it is + usable only when that passphrase is typed. (When using ssh, you will + be prompted when it requires a pass phrase to unlock a private key.) + If you provide a blank passphrase then no passphrase will be needed + to unlock the key and, as a consequence, anyone who gains access to + the key file gains access to accounts protected with that key + (barring additional configuration to restrict access by IP address). + + When you have typed the passphrase in twice, ssh-keygen will confirm + where it has saved the private key (in the filename you gave and + with permissions set to be only readable by you), what your public + key is (don't worry: you don't need to memorise it) and where it + has saved the corresponding public key. The public key is saved in + a filename corresponding to your private key's filename but with + ".pub" appended, usually F<~/.ssh/identity.pub>. That public key + can be (but need not be) world readable. It is not used by your + own system at all. + + =head1 Notifying the Repository Keeper + + Mail the contents of that public key file to the keeper of the perl + repository (see L below). + When the key is added to the repository host's configuration file, + you will be able to connect to it with ssh by using the corresponding + private key file (after unlocking it with your chosen passphrase). + + =head1 Connecting to the Repository + + Connections to the repository are made by using ssh to provide a + TCP "tunnel" rather than by using ssh to login to or invoke any + ordinary commands on the repository. When you want to start a + session using the repository, use the command + + ssh -l perlrep -f -q -x -L 1666:127.0.0.1:1666 sickle.activestate.com + foo + + If you are not using the default filename of F<~/.ssh/identity> + to hold your perl repository private key then you'll need to add + the option B<-i filename> to tell ssh where it is. Unless you chose + a blank passphrase for that private key, ssh will prompt you for the + passphrase to unlock that key. Then ssh will fork and put itself + in the background, returning you (silently) to your shell prompt. + The tunnel for repository access is now ready for use. + + For the sake of completeness (and for the case where the chosen + port of 1666 is already in use on your machine), I'll briefly + describe what all those ssh arguments are for. + + =over 4 + + =item B<-l perl> + + Use a remote username of perl. The account on the repository which + provides the end-point of the ssh tunnel is named "perl". + + =item B<-f> + + Tells ssh to fork and remain running in the background. Since ssh + is only being used for its tunnelling capabilities, the command + that ssh runs never does any I/O and can sit silently in the + background. + + =item B<-q> + + Tells ssh to be quiet. Without this option, ssh will output a + message each time you use a p4 command (since each p4 command + tunnels over the ssh connection to reach the repository). + + =item B<-x> + + Tells ssh not to bother to set up a tunnel for X11 connections. + The repository doesn't allow this anyway. + + =item B<-L 1666:127.0.0.1:1666> + + This is the important option. It tells ssh to listen out for + connections made to port 1666 on your local machine. When such + a connection is made, the ssh client tells the remote side + (the corresponding ssh daemon on the repository) to make a + connection to IP address 127.0.0.1, port 1666. Data flowing + along that connection is tunnelled over the ssh connection + (encrypted). The perforce daemon running on the repository + only accepts connections from localhost and that is exactly + where ssh-tunnelled connections appear to come from. + + If port 1666 is already in use on your machine then you can + choose any non-privileged port (a number between 1024 and 65535) + which happens to be free on your machine. It's the first of the + three colon separated values that you should change. Picking + port 2345 would mean changing the option to + B<-L 2345:127.0.0.1:1666>. Whatever port number you choose should + be used for the value of the P4PORT environment variable (q.v.). + + =item sickle.activestate.com + + This is the canonical IP name of the host on which the perl + repository runs. Its IP number is 199.60.48.20. + + =item foo + + This is a dummy place holder argument. Without an argument + here, ssh will try to perform an interactive login to the + repository which is not allowed. Ordinarily, this argument + is for the one-off command which is to be executed on the + remote host. However, the repository's ssh configuration + file uses the "command=" option to force a particular + command to run so the actual value of the argument is + ignored. The command that's actually run merely pauses and + waits for the ssh connection to drop, then exits. + + =back + + =head1 Problems + + You should normally get a prompt that asks for the passphrase + for your RSA key when you connect with the ssh command shown + above. If you see a prompt that looks like: + + perlrep@sickle.activestate.com's password: + + Then you either don't have a ~/.ssh/identity file corresponding + to your public key, or your ~/.ssh/identity file is not readable. + Fix the problem and try again. + + =head1 Using the Perforce Client + + Remember to read the documentation for Perforce. You need + to make sure that three environment variable are set + correctly before using the p4 client with the perl repository. + + =over 4 + + =item P4PORT + + Set this to localhost:1666 (the port for your ssh client to listen on) + unless that port is already in use on your host. If it is, see + the section above on the B<-L 1666:127.0.0.1:1666> option to ssh. + + =item P4CLIENT + + The value of this is the name by which Perforce knows your + host's workspace. You need to pick a name (for example, your + hostname unless that clashes with someone else's client name) + when you first start using the perl repository and then + stick with it. If you connect from multiple hosts (with + different workspaces) then maybe you could have multiple + clients. There is a licence limit on the number of perforce + clients which can be created. Although we have been told that + Perforce will raise our licence limits within reason, it's + probably best not to use additional clients unless needed. + + Note that perforce only needs the client name so that it can + find the directory under which your client files are stored. + If you have multiple hosts sharing the same directory structure + via NFS then only one client name is necessary. + + The C command lists all currently known clients. + + =item P4USER + + This is the username by which perforce knows you. Use your + username if you have a well known or obvious one or else pick + a new one which other perl5-porters will recognise. There is + a licence limit on the number of these usernames. Perforce + doesn't enforce security between usernames. If you set P4USER + to be somebody else's username then perforce will believe you + completely with regard to access control, logging and so on. + + The C command lists all currently known users. + + =back + + Once these three environment variables are set, you can use the + perforce p4 client exactly as described in its documentation. + After setting these variables and connecting to the repository + for the first time, you should use the C and + C commands to tell perforce the details of your + new username and your new client workspace specifications. + + =head1 Ending a Repository Session + + When you have finished a session using the repository, you + should kill off the ssh client process to break the tunnel. + Since ssh forked itself into the background, you'll need to use + something like ps with the appropriate options to find the ssh + process and then kill it manually. The default signal of + SIGTERM is fine. + + =head1 Overview of the Repository + + Please read at least the introductory sections of the Perforce + User Guide (and perhaps the Quick Start Guide as well) before + reading this section. + + Every repository user typically "owns" a "branch" of the mainline + code in the repository. They hold the "pumpkin" for things in this + area, and are usually the only user who will modify files there. + This is not strictly enforced in order to allow the flexibility + of other users stealing the pumpkin for short periods with the + owner's permission. + + Here is the current structure of the repository: + + /----+-----perl - Mainline development (bleadperl) + +-----cfgperl - Configure Pumpkin's Perl + +-----vmsperl - VMS Pumpkin's Perl + +-----maint-5.004------perl - Maintainance branches + +-----maint-5.005------perl + +-----maint-5.6------perl + + Perforce uses a branching model that simply tracks relationships + between files. It does not care about directories at all, so + any file can be a branch of any other file--the fully qualified + depot path name (of the form //depot/foo/bar.c) uniquely determines + a file for the purpose of establishing branching relationships. + Since a branch usually involves hundreds of files, such relationships + are typically specified en masse using a branch map (try `p4 help branch`). + `p4 branches` lists the existing branches that have been set up. + `p4 branch -o branchname` can be used to view the map for a particular + branch, if you want to determine the ancestor for a particular set of + files. + + The mainline (aka "trunk") code in the Perl repository is under + "//depot/perl/...". Most branches typically map its entire + contents under a directory that goes by the same name as the branch + name. Thus the contents of the cfgperl branch are to be found + in //depot/cfgperl. + + Run `p4 client` to specify how the repository contents should map to + your local disk. Most users will typically have a client map that + includes at least their entire branch and the contents of the mainline. + + Run `p4 changes -l -m10` to check on the activity in the repository. + //depot/perl/Porting/genlog is useful to get an annotated changelog + that shows files and branches. You can use this listing to determine + if there are any changes in the mainline that you need to merge into + your own branch. A typical merging session looks like this: + + % cd ~/p4view/cfgperl + % p4 integrate -b cfgperl # to bring parent changes into cfgperl + % p4 resolve -a ./... # auto merge the changes + % p4 resolve ./... # manual merge conflicting changes + % p4 submit ./... # check in + + If the owner of the mainline wants to bring the changes in cfgperl + back into the mainline, they do: + + % p4 integrate -r -b cfgperl + ... + + Generating a patch for change#42 is done as follows: + + % p4 describe -du 42 | p4desc | p4d2p > change-42.patch + + p4desc and p4d2p are to be found in //depot/perl/Porting/. + + =head1 Contact Information + + The mail alias can be used to reach + all current users of the repository. + + The repository keeper is currently Gurusamy Sarathy + . + + =head1 AUTHORS + + Malcolm Beattie, mbeattie@sable.ox.ac.uk, 24 June 1997. + + Gurusamy Sarathy, gsar@activestate.com, 8 May 1999. + + Slightly updated by Simon Cozens, simon@brecon.co.uk, 3 July 2000 + + =cut + + Index: README ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/README Sun Feb 6 11:32:59 2000 --- perl-5.6.1/README Wed Mar 21 21:05:02 2001 *************** *** 1,7 **** Perl Kit, Version 5.0 ! Copyright 1989-2000, Larry Wall All rights reserved. This program is free software; you can redistribute it and/or modify --- 1,7 ---- Perl Kit, Version 5.0 ! Copyright 1989-2001, Larry Wall All rights reserved. This program is free software; you can redistribute it and/or modify *************** *** 22,29 **** Kit, in the file named "Artistic". If not, I'll be glad to provide one. You should also have received a copy of the GNU General Public License ! along with this program; if not, write to the Free Software Foundation, ! Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. For those of you that choose to use the GNU General Public License, my interpretation of the GNU General Public License is that no Perl --- 22,31 ---- Kit, in the file named "Artistic". If not, I'll be glad to provide one. You should also have received a copy of the GNU General Public License ! along with this program in the file named "Copying". If not, write to the ! Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA ! 02111-1307, USA or visit their web page on the internet at ! http://www.gnu.org/copyleft/gpl.html. For those of you that choose to use the GNU General Public License, my interpretation of the GNU General Public License is that no Perl *************** *** 70,76 **** 2) Read the manual entries before running perl. 3) IMPORTANT! Help save the world! Communicate any problems and suggested ! patches to perlbug@perl.com so we can keep the world in sync. If you have a problem, there's someone else out there who either has had or will have the same problem. It's usually helpful if you send the output of the "myconfig" script in the main perl directory. --- 72,78 ---- 2) Read the manual entries before running perl. 3) IMPORTANT! Help save the world! Communicate any problems and suggested ! patches to perlbug@perl.org so we can keep the world in sync. If you have a problem, there's someone else out there who either has had or will have the same problem. It's usually helpful if you send the output of the "myconfig" script in the main perl directory. Index: README.Y2K ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/README.Y2K Mon Sep 20 09:59:18 1999 --- perl-5.6.1/README.Y2K Thu Feb 22 18:57:52 2001 *************** *** 21,27 **** localtime) supply adequate information to determine the year well beyond 2000 (2038 is when trouble strikes for 32-bit machines). The year returned by these functions ! when used in an array context is the year minus 1900. For years between 1910 and 1999 this happens to be a 2-digit decimal number. To avoid the year 2000 problem simply do not treat the year as a 2-digit number. It isn't. --- 21,27 ---- localtime) supply adequate information to determine the year well beyond 2000 (2038 is when trouble strikes for 32-bit machines). The year returned by these functions ! when used in a list context is the year minus 1900. For years between 1910 and 1999 this happens to be a 2-digit decimal number. To avoid the year 2000 problem simply do not treat the year as a 2-digit number. It isn't. Index: README.aix ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/README.aix Tue May 5 13:32:27 1998 --- perl-5.6.1/README.aix Thu Feb 22 18:57:52 2001 *************** *** 0 **** --- 1,174 ---- + If you read this file _as_is_, just ignore the funny characters you see. + It is written in the POD format (see pod/perlpod.pod) which is specially + designed to be readable as is. + + =head1 NAME + + README.aix - Perl version 5 on IBM Unix (AIX) systems + + =head1 DESCRIPTION + + This document describes various features of IBM's Unix operating + system (AIX) that will affect how Perl version 5 (hereafter just Perl) + is compiled and/or runs. + + =head2 Compiling Perl 5 on AIX + + When compiling Perl, you must use an ANSI C compiler. AIX does not ship + an ANSI compliant C-compiler with AIX by default, but binary builds of + gcc for AIX are widely available. + + At the moment of writing, AIX supports two different native C compilers, + for which you have to pay: B and B. If you decide to use eiter + of these two (which is quite a lot easier than using gcc), be sure to + upgrade to the latest available patch level. Currently: + + xlC.C 3.1.4.0 + vac.C 4.4.0.3 (5.0 is already available) + + Perl can be compiled with either IBM's ANSI C compiler or with gcc. + The former is recommended, as not only can it compile Perl with no + difficulty, but also can take advantage of features listed later that + require the use of IBM compiler-specific command-line flags. + + If you decide to use gcc, make sure your installation is recent and + complete, and be sure to read the Perl README file for more gcc-specific + details. + + =head2 OS level + + Before installing the patches to the IBM C-compiler you need to know the + level of patching for the Operating System. IBM's command 'oslevel' will + show the base, but is not always complete: + + # oslevel + 4.3.0.0 + # lslpp -l | grep 'bos.rte ' + bos.rte 4.3.2.1 COMMITTED Base Operating System Runtime + bos.rte 4.3.2.0 COMMITTED Base Operating System Runtime + # + + =head2 Building Dynamic Extensions on AIX + + AIX supports dynamically loadable libraries (shared libraries). + Shared libraries end with the suffix .a, which is a bit misleading, + because *all* libraries are shared ;-). + + =head2 The IBM ANSI C Compiler + + All defaults for Configure can be used. + + If you've chosen to use vac 4, be sure to run 4.4.0.3. Older versions + will turn up nasty later on. + + Here's a brief lead of how to upgrade the compiler to the latest + level. Of course this is subject to changes. You can only upgrade + versions from ftp-available updates if the first three digit groups + are the same (in where you can skip intermediate unlike the patches + in the developer snapshots of perl), or to one version up where the + `base' is available. In other words, the AIX compiler patches are + cumulative. + + vac.C.4.4.0.1 => vac.C.4.4.0.3 is OK (vac.C.4.4.0.2 not needed) + xlC.C.3.1.3.3 => xlC.C.3.1.4.10 is NOT OK (xlC.C.3.1.4.0 is not available) + + # ftp ftp.software.ibm.com + Connected to service.boulder.ibm.com. + : welcome message ... + Name (ftp.software.ibm.com:merijn): anonymous + 331 Guest login ok, send your complete e-mail address as password. + Password: + ... accepted login stuff + ftp> cd /aix/fixes/v4/ + ftp> dir other other.ll + output to local-file: other.ll? y + 200 PORT command successful. + 150 Opening ASCII mode data connection for /bin/ls. + 226 Transfer complete. + ftp> dir xlc xlc.ll + output to local-file: xlc.ll? y + 200 PORT command successful. + 150 Opening ASCII mode data connection for /bin/ls. + 226 Transfer complete. + ftp> bye + ... goodbye messages + # ls -l *.ll + -rw-rw-rw- 1 merijn system 1169432 Nov 2 17:29 other.ll + -rw-rw-rw- 1 merijn system 29170 Nov 2 17:29 xlc.ll + + On AIX 4.2 using xlC, we continue: + + # lslpp -l | fgrep 'xlC.C ' + xlC.C 3.1.4.9 COMMITTED C for AIX Compiler + xlC.C 3.1.4.0 COMMITTED C for AIX Compiler + # grep 'xlC.C.3.1.4.*.bff' xlc.ll + -rw-r--r-- 1 45776101 1 6286336 Jul 22 1996 xlC.C.3.1.4.1.bff + -rw-rw-r-- 1 45776101 1 6173696 Aug 24 1998 xlC.C.3.1.4.10.bff + -rw-r--r-- 1 45776101 1 6319104 Aug 14 1996 xlC.C.3.1.4.2.bff + -rw-r--r-- 1 45776101 1 6316032 Oct 21 1996 xlC.C.3.1.4.3.bff + -rw-r--r-- 1 45776101 1 6315008 Dec 20 1996 xlC.C.3.1.4.4.bff + -rw-rw-r-- 1 45776101 1 6178816 Mar 28 1997 xlC.C.3.1.4.5.bff + -rw-rw-r-- 1 45776101 1 6188032 May 22 1997 xlC.C.3.1.4.6.bff + -rw-rw-r-- 1 45776101 1 6191104 Sep 5 1997 xlC.C.3.1.4.7.bff + -rw-rw-r-- 1 45776101 1 6185984 Jan 13 1998 xlC.C.3.1.4.8.bff + -rw-rw-r-- 1 45776101 1 6169600 May 27 1998 xlC.C.3.1.4.9.bff + # wget ftp://ftp.software.ibm.com/aix/fixes/v4/xlc/xlC.C.3.1.4.10.bff + # + + On AIX 4.3 using vac, we continue: + + # lslpp -l | fgrep 'vac.C ' + vac.C 4.4.0.2 COMMITTED C for AIX Compiler + vac.C 4.4.0.0 COMMITTED C for AIX Compiler + # grep 'vac.C.4.4.0.*.bff' other.ll + -rw-rw-r-- 1 45776101 1 13466624 May 26 1999 vac.C.4.4.0.1.bff + -rw-rw-r-- 1 45776101 1 13473792 Aug 31 1999 vac.C.4.4.0.2.bff + -rw-rw-r-- 1 45776101 1 13480960 May 19 20:32 vac.C.4.4.0.3.bff + # wget ftp://ftp.software.ibm.com/aix/fixes/v4/other/vac.C.4.4.0.3.bff + # + + Then execute the following command, and fill in its choices + + # smit install_update + -> Install and Update from LATEST Available Software + * INPUT device / directory for software [ vac.C.4.4.0.3.bff ] + [ OK ] + [ OK ] + + Follow the messages ... and you're done. + + =head2 Using GNU's gcc for building perl + + ... ? + + =head2 Using Large Files with Perl + + ... ? + + =head2 Threaded Perl + + ... ? + + =head2 64-bit Perl + + ... ? + + =head2 GDBM and Threads + + ... ? + + =head2 NFS filesystems and utime(2) + + ... ? + + =head1 AUTHOR + + H.Merijn Brand + + Structure copied from README.hpux + + =head1 DATE + + Version 0.0.1: 16-10-2000 + + =cut Index: README.amiga ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/README.amiga Fri Mar 3 19:59:44 2000 --- perl-5.6.1/README.amiga Thu Feb 22 18:57:52 2001 *************** *** 16,21 **** --- 16,26 ---- to list some (not all may be available simultaneously), or it may be read I: either as F, or F. + A recent version of perl for the Amiga can be found at the Geek Gadgets + section of the Aminet: + + http://www.aminet.net/~aminet/dirs/dev_gg.html + =cut Contents *************** *** 53,68 **** =item B You need the Unix emulation for AmigaOS, whose most important part is ! B. For a minimum setup, get the following archives from ! ftp://ftp.ninemoons.com/pub/ade/current or a mirror: ! ! ixemul-46.0-bin.lha ! ixemul-46.0-env-bin.lha ! pdksh-4.9-bin.lha ! ADE-misc-bin.lha ! Note that there might be newer versions available by the time you read ! this. Note also that this is a minimum setup; you might want to add other packages of B (the I). --- 58,69 ---- =item B You need the Unix emulation for AmigaOS, whose most important part is ! B. For a minimum setup, get the latest versions ! of the following packages from the Aminet archives (http://www.aminet.net/~aminet/): ! ixemul-bin ! ixemul-env-bin ! pdksh-bin Note also that this is a minimum setup; you might want to add other packages of B (the I). *************** *** 100,115 **** Perl under AmigaOS lacks some features of perl under UNIX because of deficiencies in the UNIX-emulation, most notably: ! =over 6 ! =item fork() ! =item some features of the UNIX filesystem regarding link count and file dates ! =item inplace operation (the -i switch) without backup file ! =item umask() works, but the correct permissions are only set when the file is ! finally close()d =back --- 101,124 ---- Perl under AmigaOS lacks some features of perl under UNIX because of deficiencies in the UNIX-emulation, most notably: ! =over 4 ! ! =item * ! ! fork() ! ! =item * ! ! some features of the UNIX filesystem regarding link count and file dates ! =item * ! inplace operation (the B<-i> switch) without backup file ! =item * ! umask() works, but the correct permissions are only set when the file is ! finally close()d =back *************** *** 118,128 **** Change to the installation directory (most probably ADE:), and extract the binary distribution: ! lha -mraxe x perl-5.003-bin.lha or ! tar xvzpf perl-5.003-bin.tgz (Of course you need lha or tar and gunzip for this.) --- 127,137 ---- Change to the installation directory (most probably ADE:), and extract the binary distribution: ! lha -mraxe x perl-$VERSION-bin.lha or ! tar xvzpf perl-$VERSION-bin.tgz (Of course you need lha or tar and gunzip for this.) *************** *** 181,196 **** =head2 Prerequisites ! You need to have the latest B (Amiga Developers Environment) ! from ftp://ftp.ninemoons.com/pub/ade/current. ! Also, you need a lot of free memory, probably at least 8MB. =head2 Getting the perl source You can either get the latest perl-for-amiga source from Ninemoons and extract it with: ! tar xvzpf perl-5.004-src.tgz or get the official source from CPAN: --- 190,204 ---- =head2 Prerequisites ! You need to have the latest B (Unix emulation for Amiga) ! from Aminet. =head2 Getting the perl source You can either get the latest perl-for-amiga source from Ninemoons and extract it with: ! tar xvzpf perl-$VERSION-src.tgz or get the official source from CPAN: *************** *** 198,204 **** Extract it like this ! tar xvzpf perl5.004.tar.gz You will see a message about errors while extracting F. This is normal and expected. (There is a conflict with a similarly-named file --- 206,212 ---- Extract it like this ! tar xvzpf perl-$VERSION.tar.gz You will see a message about errors while extracting F. This is normal and expected. (There is a conflict with a similarly-named file *************** *** 206,217 **** =head2 Making ! sh configure.gnu --prefix=/ade ! Now make =head2 Testing Now run --- 214,273 ---- =head2 Making ! =over 4 ! ! =item * ! ! remember to use a healthy sized stack (I used 2000000) ! ! =item * ! ! your PATH environment variable must include /bin (e.g. ".:/bin" is good) ! (or, more precisely, it must include the directory where you have your ! basic UNIX utilities like test, cat, sed, and so on) ! ! =item * ! ! sh Configure -Dprefix=/ade -Dloclibpth=/ade/lib ! ! =item * ! ! fix makedepend ! In the file 'makedepend' there are three spots like this `$cat ...`: ! a for loop near line 75, an egrep near line 161, and a for loop near ! line 175. In all those spots using an editor change the $cat to ! /bin/cat. ! ! =item * ! ! now type make depend ! ! When the make depend has ended load the gnumakefile into ! an editor and go to the end of the file. ! ! Move upwards in the file until you reach av.o: EXTERN.h ! and delete all lines down to # WARNING: Put.... ! ! =item * ! ! now go to the x2p directory ! ! Load the gnumakefile into an editor. ! ! Go to the end moveup until you reach hash.o: EXTERN.h ! and delete all lines dowonwards until you reach a line saying ! ! # WARNING: Put nothing.... ! ! =item * ! ! Now! make + =back + =head2 Testing Now run *************** *** 229,237 **** make install ! =head1 AUTHOR Norbert Pueschel, pueschel@imsdd.meb.uni-bonn.de =head1 SEE ALSO --- 285,294 ---- make install ! =head1 AUTHORS Norbert Pueschel, pueschel@imsdd.meb.uni-bonn.de + Jan-Erik Karlsson, trg@privat.utfors.se =head1 SEE ALSO Index: README.bs2000 ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/README.bs2000 Tue May 5 13:32:27 1998 --- perl-5.6.1/README.bs2000 Sat Mar 3 11:53:20 2001 *************** *** 0 **** --- 1,202 ---- + This document is written in pod format hence there are punctuation + characters in in odd places. Do not worry, you've apparently got the + ASCII->EBCDIC translation worked out correctly. You can read more + about pod in pod/perlpod.pod or the short summary in the INSTALL file. + + =head1 NAME + + README.BS2000 - building and installing Perl for BS2000. + + =head1 SYNOPSIS + + This document will help you Configure, build, test and install Perl + on BS2000 in the POSIX subsystem. + + =head1 DESCRIPTION + + This is a ported perl for the POSIX subsystem in BS2000 VERSION OSD + V3.1A or later. It may work on other versions, but we started porting + and testing it with 3.1A and are currently using Version V4.0A. + + You may need the following GNU programs in order to install perl: + + =head2 gzip + + We used version 1.2.4, which could be installed out of the box with + one failure during 'make check'. + + =head2 bison + + The yacc coming with BS2000 POSIX didn't work for us. So we had to + use bison. We had to make a few changes to perl in order to use the + pure (reentrant) parser of bison. We used version 1.25, but we had to + add a few changes due to EBCDIC. See below for more details + concerning yacc. + + =head2 Unpacking + + To extract an ASCII tar archive on BS2000 POSIX you need an ASCII + filesystem (we used the mountpoint /usr/local/ascii for this). Now + you extract the archive in the ASCII filesystem without + I/O-conversion: + + cd /usr/local/ascii + export IO_CONVERSION=NO + gunzip < /usr/local/src/perl.tar.gz | pax -r + + You may ignore the error message for the first element of the archive + (this doesn't look like a tar archive / skipping to next file...), + it's only the directory which will be created automatically anyway. + + After extracting the archive you copy the whole directory tree to your + EBCDIC filesystem. B: + + cd /usr/local/src + IO_CONVERSION=YES + cp -r /usr/local/ascii/perl5.005_02 ./ + + =head2 Compiling + + There is a "hints" file for BS2000 called hints.posix-bc (because + posix-bc is the OS name given by `uname`) that specifies the correct + values for most things. The major problem is (of course) the EBCDIC + character set. We have german EBCDIC version. + + Because of our problems with the native yacc we used GNU bison to + generate a pure (=reentrant) parser for perly.y. So our yacc is + really the following script: + + -----8<-----/usr/local/bin/yacc-----8<----- + #! /usr/bin/sh + + # Bison as a reentrant yacc: + + # save parameters: + params="" + while [[ $# -gt 1 ]]; do + params="$params $1" + shift + done + + # add flag %pure_parser: + + tmpfile=/tmp/bison.$$.y + echo %pure_parser > $tmpfile + cat $1 >> $tmpfile + + # call bison: + + echo "/usr/local/bin/bison --yacc $params $1\t\t\t(Pure Parser)" + /usr/local/bin/bison --yacc $params $tmpfile + + # cleanup: + + rm -f $tmpfile + -----8<----------8<----- + + We still use the normal yacc for a2p.y though!!! We made a softlink + called byacc to distinguish between the two versions: + + ln -s /usr/bin/yacc /usr/local/bin/byacc + + We build perl using GNU make. We tried the native make once and it + worked too. + + =head2 Testing + + We still got a few errors during C. Some of them are the + result of using bison. Bison prints I instead of I, so we may ignore them. The following list shows + our errors, your results may differ: + + op/numconvert.......FAILED tests 1409-1440 + op/regexp...........FAILED tests 483, 496 + op/regexp_noamp.....FAILED tests 483, 496 + pragma/overload.....FAILED tests 152-153, 170-171 + pragma/warnings.....FAILED tests 14, 82, 129, 155, 192, 205, 207 + lib/bigfloat........FAILED tests 351-352, 355 + lib/bigfltpm........FAILED tests 354-355, 358 + lib/complex.........FAILED tests 267, 487 + lib/dumper..........FAILED tests 43, 45 + Failed 11/231 test scripts, 95.24% okay. 57/10595 subtests failed, 99.46% okay. + + =head2 Install + + We have no nroff on BS2000 POSIX (yet), so we ignored any errors while + installing the documentation. + + + =head2 Using Perl in the Posix-Shell + + BS2000 POSIX doesn't support the shebang notation + (C<#!/usr/local/bin/perl>), so you have to use the following lines + instead: + + : # use perl + eval 'exec /usr/local/bin/perl -S $0 ${1+"$@"}' + if $running_under_some_shell; + + =head2 Using Perl in "native" BS2000 + + We don't have much experience with this yet, but try the following: + + Copy your Perl executable to a BS2000 LLM using bs2cp: + + C + + Now you can start it with the following (SDF) command: + + C + + First you get the BS2000 commandline prompt ('*'). Here you may enter + your parameters, e.g. C<-e 'print "Hello World!\\n";'> (note the + double backslash!) or C<-w> and the name of your Perl script. + Filenames starting with C are searched in in the Posix filesystem, + others are searched in the BS2000 filesystem. You may even use + wildcards if you put a C<%> in front of your filename (e.g. C<-w + checkfiles.pl %*.c>). Read your C/C++ manual for additional + possibilities of the commandline prompt (look for + PARAMETER-PROMPTING). + + =head2 Floating point anomalies + + There appears to be a bug in the floating point implementation on BS2000 POSIX + systems such that calling int() on the product of a number and a small + magnitude number is not the same as calling int() on the quotient of + that number and a large magnitude number. For example, in the following + Perl code: + + my $x = 100000.0; + my $y = int($x * 1e-5) * 1e5; # '0' + my $z = int($x / 1e+5) * 1e5; # '100000' + print "\$y is $y and \$z is $z\n"; # $y is 0 and $z is 100000 + + Although one would expect the quantities $y and $z to be the same and equal + to 100000 they will differ and instead will be 0 and 100000 respectively. + + =head1 AUTHORS + + Thomas Dorner + + =head1 SEE ALSO + + L, L. + + =head2 Mailing list + + The Perl Institute (http://www.perl.org/) maintains a perl-mvs mailing + list of interest to all folks building and/or using perl on EBCDIC + platforms. To subscribe, send a message of: + + subscribe perl-mvs + + to majordomo@perl.org. + + =head1 HISTORY + + This document was originally written by Thomas Dorner for the 5.005 + release of Perl. + + This document was podified for the 5.6 release of perl 11 July 2000. + + =cut Index: README.cygwin ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/README.cygwin Thu Mar 2 09:52:52 2000 --- perl-5.6.1/README.cygwin Thu Feb 22 18:57:52 2001 *************** *** 13,19 **** affect how Perl behaves at runtime. B There are pre-built Perl packages available for Cygwin and a ! version of Perl is provided on the Cygwin CD. If you have no need to customize the configuration, consider using one of these packages: http://cygutils.netpedia.net/ --- 13,19 ---- affect how Perl behaves at runtime. B There are pre-built Perl packages available for Cygwin and a ! version of Perl is provided on the Cygwin CD. If you do not need to customize the configuration, consider using one of these packages: http://cygutils.netpedia.net/ *************** *** 27,57 **** system calls and environment these programs expect. More information about this project can be found at: ! http://sourceware.cygnus.com/cygwin/ A recent net or commercial release of Cygwin is required. ! At the time this document was written, the port required recent ! development snapshots that were expected to stabilize early in 2000 and ! be released to the net as B21 and commercially as v1.1. B At this point, minimal effort has been made to provide compatibility with old (beta) Cygwin releases. The focus has been to provide a high quality release and not worry about working around old ! Cygwin bugs. If you wish to use Perl with Cygwin B20.1 or earlier, ! consider using either perl5.005_03 or perl5.005_62, which are available ! in source and binary form at C or on the ! Cygwin CD. If there is significant demand, a patch kit can be developed ! to port back to earlier Cygwin versions. ! ! =head2 Compiler ! ! A recent net or commercial release of I is required. ! ! At the time this document was written, I was current and ! could be downloaded from: ! ! ftp://ftp.xraylith.wisc.edu/pub/khan/gnu-win32/cygwin/gcc-2.95.2/ =head2 Cygwin Configuration --- 27,45 ---- system calls and environment these programs expect. More information about this project can be found at: ! http://www.cygwin.com/ A recent net or commercial release of Cygwin is required. ! At the time this document was last updated, Cygwin 1.1.5 was current. B At this point, minimal effort has been made to provide compatibility with old (beta) Cygwin releases. The focus has been to provide a high quality release and not worry about working around old ! bugs. If you wish to use Perl with Cygwin B20.1 or earlier, consider ! using perl5.005_03, which is available in source and binary form at ! C. If there is significant demand, ! a patch kit can be developed to port back to earlier Cygwin versions. =head2 Cygwin Configuration *************** *** 60,74 **** Perl usage. B The binaries that are built will run on all Win32 versions. ! They do not depend on your host system (Win9x, WinNT) or your Cygwin ! configuration (I, I, binary/text mounts). The only ! dependencies come from hardcoded pathnames like C. However, ! your host system and Cygwin configuration will affect Perl's runtime ! behavior (see L). Some regression tests may fail in different ! ways depending on your setup. For now, the test suite does not skip ! tests that do not make sense given a particular setup. If a test can ! pass in some Cygwin setup, it is left in and explainable test failures ! are documented. =over 4 --- 48,58 ---- Perl usage. B The binaries that are built will run on all Win32 versions. ! They do not depend on your host system (Win9x/WinME, WinNT/Win2K) ! or your Cygwin configuration (I, I, binary/text mounts). ! The only dependencies come from hard-coded pathnames like C. ! However, your host system and Cygwin configuration will affect Perl's ! runtime behavior (see L). =over 4 *************** *** 78,106 **** versions of programs. Any Windows directories should be removed or moved to the end of your C. - =item * F - - There should be an instance of I in F (or F). - Configure tests C<#!/bin/cat> and if it is not found, you will see - the error: - - Configure: ./try: No such file or directory - - =item * F - - If you do not have a F directory, Configure will B prompt - you to install I into F. - =item * I If you do not have I (which is part of the I package), ! Configure will B prompt you to install man pages. =item * Permissions On WinNT with either the I or I C settings, directory and file permissions may not be set correctly. Since the build process ! creates files and directories, to be safe you may want to run a `C' on the entire Perl source tree. Also, it is a well known WinNT "feature" that files created by a login --- 62,77 ---- versions of programs. Any Windows directories should be removed or moved to the end of your C. =item * I If you do not have I (which is part of the I package), ! Configure will B prompt you to install I pages. =item * Permissions On WinNT with either the I or I C settings, directory and file permissions may not be set correctly. Since the build process ! creates directories and files, to be safe you may want to run a `C' on the entire Perl source tree. Also, it is a well known WinNT "feature" that files created by a login *************** *** 123,129 **** ./Configure 2>&1 | tee log.configure ! If you are willing to accept all the defaults add a B<-d> option. However, several useful customizations are available. =head2 Strip Binaries --- 94,100 ---- ./Configure 2>&1 | tee log.configure ! If you are willing to accept all the defaults run Configure with B<-de>. However, several useful customizations are available. =head2 Strip Binaries *************** *** 153,174 **** =item * C<-lcrypt> ! The crypt libraries in GNU libc have been ported to Cygwin. The DES based Ultra Fast Crypt port was done by Alexey Truhan: ! http://dome.weeg.uiowa.edu/pub/domestic/sos/cw32crypt-dist-0.tgz NOTE: There are various export restrictions on DES implementations, see the glibc README for more details. The MD5 port was done by Andy Piper: ! http://dome.weeg.uiowa.edu/pub/domestic/sos/libcrypt.tgz ! ! More information can also be found at: ! ! http://miracle.geol.msu.ru/sos/ =item * C<-lgdbm> (C) --- 124,144 ---- =item * C<-lcrypt> ! The crypt package distributed with Cygwin is a Linux compatible 56-bit ! DES crypt port by Corinna Vinschen. ! ! Alternatively, the crypt libraries in GNU libc have been ported to Cygwin. The DES based Ultra Fast Crypt port was done by Alexey Truhan: ! ftp://ftp.franken.de/pub/win32/develop/gnuwin32/cygwin/porters/Okhapkin_Sergey/cw32crypt-dist-0.tgz NOTE: There are various export restrictions on DES implementations, see the glibc README for more details. The MD5 port was done by Andy Piper: ! ftp://ftp.franken.de/pub/win32/develop/gnuwin32/cygwin/porters/Okhapkin_Sergey/libcrypt.tgz =item * C<-lgdbm> (C) *************** *** 176,193 **** also makes C and C possible (although they add little extra value). =item * C<-ldb> (C) BerkeleyDB is available for Cygwin. Some details can be found in F. =item * C<-lcygipc> (C) A port of SysV IPC is available for Cygwin. NOTE: This has B been extensively tested. In particular, ! C is undefined because it fails a configure test and on ! Win9x the shm*() functions seem to hang. =back --- 146,170 ---- also makes C and C possible (although they add little extra value). + NOTE: The ndbm/dbm emulations only completely work on NTFS partitions. + =item * C<-ldb> (C) BerkeleyDB is available for Cygwin. Some details can be found in F. + NOTE: The BerkeleyDB library only completely works on NTFS partitions. + =item * C<-lcygipc> (C) A port of SysV IPC is available for Cygwin. NOTE: This has B been extensively tested. In particular, ! C is undefined because it fails a Configure test ! and on Win9x the I functions seem to hang. It also creates ! a compile time dependency because F includes F<> ! and F<> (which will be required in the future when compiling ! CPAN modules). =back *************** *** 228,234 **** I supports long doubles (12 bytes). However, several additional long double math functions are necessary to use them within Perl ! (I<{atan2,cos,exp,floor,fmod,frexp,log,modf,pow,sin,sqrt}l,strtold>). These are B yet available with Cygwin. =item * C<-Dusethreads> --- 205,211 ---- I supports long doubles (12 bytes). However, several additional long double math functions are necessary to use them within Perl ! (I<{atan2,cos,exp,floor,fmod,frexp,isnan,log,modf,pow,sin,sqrt}l,strtold>). These are B yet available with Cygwin. =item * C<-Dusethreads> *************** *** 248,279 **** =over 4 ! =item * Whoa There ! ! Cygwin does not yet implement chroot(), setegid() or seteuid() ! functionality, but has stub functions that return C. You will ! see a message when Configure detects that its guess conflicts with the ! hint file. ! ! *** WHOA THERE!!! *** ! The recommended value for $d_chroot on this machine was "undef"! ! Keep the recommended value? [y] ! ! You should keep the recommended value. ! ! =item * dlsym I is needed to build dynamic libraries, but it does not exist when dlsym() checking occurs (it is not created until `C' runs). You will see the following message: Checking whether your dlsym() needs a leading underscore ... I can't compile and run the test program. I'm guessing that dlsym doesn't need a leading underscore. Since the guess is correct, this is not a problem. ! =item * Win9x and d_eofnblk Win9x does not correctly report C with a non-blocking read on a closed pipe. You will see the following messages: --- 225,244 ---- =over 4 ! =item * I I is needed to build dynamic libraries, but it does not exist when dlsym() checking occurs (it is not created until `C' runs). You will see the following message: Checking whether your dlsym() needs a leading underscore ... + ld2: not found I can't compile and run the test program. I'm guessing that dlsym doesn't need a leading underscore. Since the guess is correct, this is not a problem. ! =item * Win9x and C Win9x does not correctly report C with a non-blocking read on a closed pipe. You will see the following messages: *************** *** 288,308 **** At least for consistency with WinNT, you should keep the recommended value. - =item * Checking how std your stdio is... - - Configure reports: - - Your stdio doesn't appear very std. - - This is correct. - =item * Compiler/Preprocessor defines The following error occurs because of the Cygwin C<#define> of C<_LONG_DOUBLE>: Guessing which symbols your C compiler and preprocessor define... ! try.c:3847: parse error This failure does not seem to cause any problems. --- 253,265 ---- At least for consistency with WinNT, you should keep the recommended value. =item * Compiler/Preprocessor defines The following error occurs because of the Cygwin C<#define> of C<_LONG_DOUBLE>: Guessing which symbols your C compiler and preprocessor define... ! try.c:: parse error This failure does not seem to cause any problems. *************** *** 310,316 **** =head1 MAKE ! Simply run make and wait: make 2>&1 | tee log.make --- 267,273 ---- =head1 MAKE ! Simply run I and wait: make 2>&1 | tee log.make *************** *** 321,328 **** warning: overriding commands for target warning: ignoring old commands for target ! Warning: no export definition file provided ! dllwrap will create one, but may not be what you want =head2 ld2 --- 278,285 ---- warning: overriding commands for target warning: ignoring old commands for target ! dllwrap: no export definition file provided ! dllwrap: creating one, but that may not be what you want =head2 ld2 *************** *** 332,340 **** this is because the remainder of the `C' refers to I without fully specifying its path and does this from multiple subdirectories. The assumption is that $installbin is in your current C. If this ! is not the case or if you do not have an I program, `C' ! will fail at some point. If this happens, just manually copy I ! from the source directory to someplace in your C. =head1 TEST --- 289,297 ---- this is because the remainder of the `C' refers to I without fully specifying its path and does this from multiple subdirectories. The assumption is that $installbin is in your current C. If this ! is not the case `C' will fail at some point. If this happens, ! just manually copy I from the source directory to somewhere in ! your C. =head1 TEST *************** *** 348,368 **** running as `C<./perl harness>'. Test results vary depending on your host system and your Cygwin ! configuration. It is possible that Cygwin will pass all the tests, ! but it is more likely that some tests will fail for one of these reasons. =head2 File Permissions UNIX file permissions are based on sets of mode bits for ! {read,write,execute} for each {user,group,other}. By default Cygwin only ! tracks the Win32 readonly attribute represented as the UNIX file user ! write bit (files are always readable, files are executable if they have ! a F<.{com,bat,exe}> extension or begin with C<#!>, directories are always ! readable and executable). On WinNT with the I C setting, ! the remaining mode bits are stored as extended attributes. On WinNT ! with the I C setting, permissions use the standard WinNT ! security descriptors and access control lists. Without one of these ! options, these tests will fail: Failed Test List of failed ------------------------------------ --- 305,327 ---- running as `C<./perl harness>'. Test results vary depending on your host system and your Cygwin ! configuration. If a test can pass in some Cygwin setup, it is always ! attempted and explainable test failures are documented. It is possible ! for Perl to pass all the tests, but it is more likely that some tests ! will fail for one of the reasons listed below. =head2 File Permissions UNIX file permissions are based on sets of mode bits for ! {read,write,execute} for each {user,group,other}. By default Cygwin ! only tracks the Win32 read-only attribute represented as the UNIX file ! user write bit (files are always readable, files are executable if they ! have a F<.{com,bat,exe}> extension or begin with C<#!>, directories are ! always readable and executable). On WinNT with the I C ! setting, the additional mode bits are stored as extended file attributes. ! On WinNT with the I C setting, permissions use the standard ! WinNT security descriptors and access control lists. Without one of ! these options, these tests will fail: Failed Test List of failed ------------------------------------ *************** *** 380,386 **** =head2 Hard Links FAT partitions do not support hard links (whereas NTFS does), in which ! case Cygwin implements link() by copying the file. These tests will fail: Failed Test List of failed ------------------------------------ --- 339,348 ---- =head2 Hard Links FAT partitions do not support hard links (whereas NTFS does), in which ! case Cygwin implements link() by copying the file. On remote (network) ! drives Cygwin's stat() always sets C to 1, so the link count ! for remote directories and files is not available. In either case, ! these tests will fail: Failed Test List of failed ------------------------------------ *************** *** 408,414 **** A required .DLL file, CYGWIN1.DLL, was not found WinNT ! perl.exe or sh.exe - Unable to Locate DLL The dynamic link library cygwin1.dll could not be found in the specified path ... --- 370,376 ---- A required .DLL file, CYGWIN1.DLL, was not found WinNT ! perl.exe - Unable to Locate DLL The dynamic link library cygwin1.dll could not be found in the specified path ... *************** *** 420,427 **** ------------------------------------ op/taint.t 1, 3, 31, 37 ! Alternatively, you can copy F into one of the Windows system ! directories (although, this is B recommended). =head2 /etc/group --- 382,394 ---- ------------------------------------ op/taint.t 1, 3, 31, 37 ! Alternatively, you can copy F into the directory where the ! tests run: ! ! cp /bin/cygwin1.dll t ! ! or one of the Windows system directories (although, this is B ! recommended). =head2 /etc/group *************** *** 433,451 **** ------------------------------------ op/grent.t 1 - =head2 Unexplained Failures - - Any additional tests that fail are likely due to bugs in Cygwin or the - optional libraries. It is expected that by the time of the next net - release most of these will be solved so they are not described here. - =head2 Script Portability ! Cygwin does an outstanding job of providing UNIX-like semantics on ! top of Win32 systems. However, in addition to the items noted above, ! there are some differences that you should know about. This is only a ! very brief guide to portability, more information can be found in the ! Cygwin documentation. =over 4 --- 400,411 ---- ------------------------------------ op/grent.t 1 =head2 Script Portability ! Cygwin does an outstanding job of providing UNIX-like semantics on top of ! Win32 systems. However, in addition to the items noted above, there are ! some differences that you should know about. This is a very brief guide ! to portability, more information can be found in the Cygwin documentation. =over 4 *************** *** 454,473 **** Cygwin pathnames can be separated by forward (F) or backward (F<\>) slashes. They may also begin with drive letters (F) or Universal Naming Codes (F). DOS device names (F, F, F, ! F, F) are invalid as base filenames. However, they can be ! used in extensions (e.g., F). Names may not contain these ! characters: : * ? " < > | ! File names are case insensitive, but case preserving. With the I ! C setting, file names are mixed-case (although, directory names ! remain case insensitive). ! ! The I setting is only available with the "coolview" version of ! F provided by Sergey Okhapkin at: ! ! ftp://ftp.franken.de/pub/win32/develop/gnuwin32/cygwin/porters/Okhapkin_Sergey/ =item * Text/Binary --- 414,428 ---- Cygwin pathnames can be separated by forward (F) or backward (F<\>) slashes. They may also begin with drive letters (F) or Universal Naming Codes (F). DOS device names (F, F, F, ! F, F, F) are invalid as base filenames. However, they ! can be used in extensions (e.g., F). Names may contain all ! printable characters except these: : * ? " < > | ! File names are case insensitive, but case preserving. A pathname that ! contains a backslash or drive letter is a Win32 pathname (and not subject ! to the translations applied to POSIX style pathnames). =item * Text/Binary *************** *** 486,508 **** =item * F<.exe> ! The Cygwin stat() makes the F<.exe> extension transparent by looking for ! a F when you ask for F (unless a F also exists). ! Cygwin does not require a F<.exe> extension, but I adds it ! automatically when building a program. However, when accessing an ! executable as a normal file (e.g., I or I in a makefile) ! the F<.exe> is not transparent. ! ! NOTE: There is a version of I that understands the F<.exe> ! semantics, it can be found at: ! ! ftp://ftp.franken.de/pub/win32/develop/gnuwin32/cygwin/porters/Humblet_Pierre_A/ =item * chown() ! On WinNT with the I C setting, chown() can change a file's ! user and group IDs. In all other configurations chown() is a no-op, ! although this is appropriate on Win9x since there is no security model. =item * Miscellaneous --- 441,458 ---- =item * F<.exe> ! The Cygwin stat(), lstat() and readlink() functions make the F<.exe> ! extension transparent by looking for F when you ask for F ! (unless a F also exists). Cygwin does not require a F<.exe> ! extension, but I adds it automatically when building a program. ! However, when accessing an executable as a normal file (e.g., I ! in a makefile) the F<.exe> is not transparent. The I included ! with Cygwin automatically appends a F<.exe> when necessary. =item * chown() ! On WinNT chown() can change a file's user and group IDs. On Win9x chown() ! is a no-op, although this is appropriate since there is no security model. =item * Miscellaneous *************** *** 511,521 **** Win9x can not rename() an open file (although WinNT can). =back =head1 INSTALL ! This will install Perl, including man pages. make install | tee log.make-install --- 461,474 ---- Win9x can not rename() an open file (although WinNT can). + The Cygwin chroot() implementation has holes (it can not restrict file + access by native Win32 programs). + =back =head1 INSTALL ! This will install Perl, including I pages. make install | tee log.make-install *************** *** 539,549 **** =item Documentation ! INSTALL README.cygwin ! Changes Changes5.005 Changes5.004 ! AUTHORS MAINTAIN MANIFEST README.win32 ! pod/perl.pod pod/perlfaq3.pod pod/perlhist.pod pod/perlmodlib.pod ! pod/perlport.pod pod/perltoc.pod pod/perl5004delta.pod =item Build, Configure, Make, Install --- 492,502 ---- =item Documentation ! INSTALL README.cygwin README.win32 MANIFEST ! Changes Changes5.005 Changes5.004 Changes5.6 ! pod/perl.pod pod/perlport.pod pod/perlfaq3.pod ! pod/perldelta.pod pod/perl5004delta.pod pod/perl56delta.pod ! pod/perlhist.pod pod/perlmodlib.pod pod/buildtoc.PL pod/perltoc.pod =item Build, Configure, Make, Install *************** *** 565,570 **** --- 518,524 ---- =item Tests t/io/tell.t - binmode + t/lib/b.t - ignore Cwd from os_extras t/lib/glob-basic.t - Win32 directory list access differs from read mode t/op/magic.t - $^X/symlink WORKAROUND, s/.exe// t/op/stat.t - no /dev, skip Win32 ftCreationTime quirk *************** *** 575,588 **** EXTERN.h - __declspec(dllimport) XSUB.h - __declspec(dllexport) ! cygwin/cygwin.c - os_extras (getcwd) perl.c - os_extras perl.h - binmode doio.c - win9x can not rename a file when it is open ! pp_sys.c - do not define h_errno ! mg.c - environ WORKAROUND ! unixish.h - environ WORKAROUND ! util.c - environ WORKAROUND =item Compiled Module Source --- 529,540 ---- EXTERN.h - __declspec(dllimport) XSUB.h - __declspec(dllexport) ! cygwin/cygwin.c - os_extras (getcwd, spawn) perl.c - os_extras perl.h - binmode doio.c - win9x can not rename a file when it is open ! pp_sys.c - do not define h_errno, pp_system with spawn ! util.c - use setenv =item Compiled Module Source *************** *** 599,631 **** - require MM_Cygwin.pm lib/ExtUtils/MM_Cygwin.pm - canonpath, cflags, manifypods, perl_archive lib/File/Spec/Unix.pm - preserve //unc lib/perl5db.pl - use stdin not /dev/tty - utils/perlcc.PL - DynaLoader.a in compile, -DUSEIMPORTLIB utils/perldoc.PL - version comment =back =head1 BUGS ! Upon each start, I warns that a rule for F is overridden ! (but there seems to be no better solution than adding an explicit define). ! `C' does not remove library F<.def> and F<.exe.stackdump> files. The I script contains references to the source directory. You should ! change these to C (or whatever) after install. =head1 AUTHORS ! Charles Wilson Ecwilson@ece.gatech.eduE, ! Eric Fifer Eefifer@sanwaint.comE, ! alexander smishlajev Eals@turnhere.comE, ! Steven Morlock Enewspost@morlock.netE, ! Sebastien Barre ESebastien.Barre@utc.frE, ! Teun Burgers Eburgers@ecn.nlE. =head1 HISTORY ! Last updated: 1 March 2000 --- 551,592 ---- - require MM_Cygwin.pm lib/ExtUtils/MM_Cygwin.pm - canonpath, cflags, manifypods, perl_archive + lib/File/Find.pm - on remote drives stat() always sets st_nlink to 1 lib/File/Spec/Unix.pm - preserve //unc + lib/File/Temp.pm - no directory sticky bit lib/perl5db.pl - use stdin not /dev/tty utils/perldoc.PL - version comment =back =head1 BUGS ! When I starts, it warns about overriding commands for F. ! `C' does not remove library F<.def> or F<.exe.stackdump> files. The I script contains references to the source directory. You should ! change these to $installbin after `C'. ! ! Support for swapping real and effective user and group IDs is incomplete. ! On WinNT Cygwin provides setuid(), seteuid(), setgid() and setegid(). ! However, additional Cygwin calls for manipulating WinNT access tokens ! and security contexts are required. ! ! When building DLLs, `C' is used to export ! global symbols. It might be better to generate an explicit F<.def> file ! (see F). Also, DLLs can now be build with `C'. =head1 AUTHORS ! Charles Wilson , ! Eric Fifer , ! alexander smishlajev , ! Steven Morlock , ! Sebastien Barre , ! Teun Burgers . =head1 HISTORY ! Last updated: 9 November 2000 Index: README.dos ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/README.dos Wed Mar 22 21:41:53 2000 --- perl-5.6.1/README.dos Sun Apr 8 20:13:50 2001 *************** *** 9,15 **** =head1 SYNOPSIS These are instructions for building Perl under DOS (or w??), using ! DJGPP v2.01 or later. Under w95 long filenames are supported. =head1 DESCRIPTION --- 9,15 ---- =head1 SYNOPSIS These are instructions for building Perl under DOS (or w??), using ! DJGPP v2.03 or later. Under w95 long filenames are supported. =head1 DESCRIPTION *************** *** 22,27 **** --- 22,31 ---- is used to build extensions to perl). Therefore, you should be able to build and install most extensions found in the CPAN sites. + Detailed instructions on how to build and install perl extension + modules, including XS-type modules, is included. See 'BUILDING AND + INSTALLING MODULES'. + =head2 Prerequisites =over 4 *************** *** 46,64 **** You need the following files to build perl (or add new modules): ! v2/djdev202.zip ! v2/bnu27b.zip ! v2gnu/gcc2721b.zip ! v2gnu/bsh1147b.zip ! v2gnu/mak3761b.zip v2gnu/fil316b.zip ! v2gnu/sed118b.zip ! v2gnu/txt122b.zip ! v2gnu/dif271b.zip ! v2gnu/grep21b.zip v2gnu/shl112b.zip v2gnu/gawk303b.zip ! v2misc/csdpmi4b.zip or possibly any newer version. --- 50,68 ---- You need the following files to build perl (or add new modules): ! v2/djdev203.zip ! v2/bnu2951b.zip ! v2gnu/gcc2952b.zip ! v2gnu/bsh204b.zip ! v2gnu/mak3791b.zip v2gnu/fil316b.zip ! v2gnu/sed302b.zip ! v2gnu/txt20b.zip ! v2gnu/dif272b.zip ! v2gnu/grep24b.zip v2gnu/shl112b.zip v2gnu/gawk303b.zip ! v2misc/csdpmi4b.zip or possibly any newer version. *************** *** 100,108 **** =item * Unpack the source package F with djtarx. If you want ! to use long file names under w95, don't forget to use set LFN=y before unpacking the archive. --- 104,114 ---- =item * Unpack the source package F with djtarx. If you want ! to use long file names under w95 and also to get Perl to pass all its ! tests, don't forget to use set LFN=y + set FNCASE=y before unpacking the archive. *************** *** 113,118 **** --- 119,127 ---- ln -s bash.exe sh.exe + [If you have the recommended version of bash for DJGPP, this is already + done for you.] + And make the C environment variable point to this F: set SHELL=c:/djgpp/bin/sh.exe (use full path name!) *************** *** 129,148 **** Copy or link F to F if you don't have F. Copy or link F to F if you don't have F. =item * Chdir to the djgpp subdirectory of perl toplevel and type the following ! command: configure.bat This will do some preprocessing then run the Configure script for you. ! The Configure script is interactive, but in most cases you ! just need to press ENTER. If the script says that your package is incomplete, and asks whether to continue, just answer with Y (this can only happen if you don't use ! long filenames). When Configure asks about the extensions, I suggest IO and Fcntl, and if you want database handling then SDBM_File or GDBM_File --- 138,171 ---- Copy or link F to F if you don't have F. Copy or link F to F if you don't have F. + [If you have the recommended versions of djdev, shell utilities and + gawk, all these are already done for you, and you will not need to do + anything.] + =item * Chdir to the djgpp subdirectory of perl toplevel and type the following ! commands: + set FNCASE=y configure.bat This will do some preprocessing then run the Configure script for you. ! The Configure script is interactive, but in most cases you just need to ! press ENTER. The "set" command ensures that DJGPP preserves the letter ! case of file names when reading directories. If you already issued this ! set command when unpacking the archive, and you are in the same DOS ! session as when you unpacked the archive, you don't have to issue the ! set command again. This command is necessary *before* you start to ! (re)configure or (re)build perl in order to ensure both that perl builds ! correctly and that building XS-type modules can succeed. See the DJGPP ! info entry for "_preserve_fncase" for more information: ! ! info libc alphabetical _preserve_fncase If the script says that your package is incomplete, and asks whether to continue, just answer with Y (this can only happen if you don't use ! long filenames or forget to issue "set FNCASE=y" first). When Configure asks about the extensions, I suggest IO and Fcntl, and if you want database handling then SDBM_File or GDBM_File *************** *** 201,209 **** and the library goes under C<($DJDIR)/lib/perl5>. The pod documentation goes under C<($DJDIR)/lib/perl5/pod>. =head1 AUTHOR ! Laszlo Molnar, F =head1 SEE ALSO --- 224,329 ---- and the library goes under C<($DJDIR)/lib/perl5>. The pod documentation goes under C<($DJDIR)/lib/perl5/pod>. + =head1 BUILDING AND INSTALLING MODULES + + + =head2 Prerequisites + + For building and installing non-XS modules, all you need is a working + perl under DJGPP. Non-XS modules do not require re-linking the perl + binary, and so are simpler to build and install. + + XS-type modules do require re-linking the perl binary, because part of + an XS module is written in "C", and has to be linked together with the + perl binary to be executed. This is required because perl under DJGPP + is built with the "static link" option, due to the lack of "dynamic + linking" in the DJGPP environment. + + Because XS modules require re-linking of the perl binary, you need both + the perl binary distribution and the perl source distribution to build + an XS extension module. In addition, you will have to have built your + perl binary from the source distribution so that all of the components + of the perl binary are available for the required link step. + + =head2 Unpacking CPAN Modules + + First, download the module package from CPAN (e.g., the "Comma Separated + Value" text package, Text-CSV-0.01.tar.gz). Then expand the contents of + the package into some location on your disk. Most CPAN modules are + built with an internal directory structure, so it is usually safe to + expand it in the root of your DJGPP installation. Some people prefer to + locate source trees under /usr/src (i.e., C<($DJDIR)/usr/src>), but you may + put it wherever seems most logical to you, *EXCEPT* under the same + directory as your perl source code. There are special rules that apply + to modules which live in the perl source tree that do not apply to most + of the modules in CPAN. + + Unlike other DJGPP packages, which are normal "zip" files, most CPAN + module packages are "gzipped tarballs". Recent versions of WinZip will + safely unpack and expand them, *UNLESS* they have zero-length files. It + is a known WinZip bug (as of v7.0) that it will not extract zero-length + files. + + From the command line, you can use the djtar utility provided with DJGPP + to unpack and expand these files. For example: + + C:\djgpp>djtarx -v Text-CSV-0.01.tar.gz + + This will create the new directory C<($DJDIR)/Text-CSV-0.01>, filling + it with the source for this module. + + =head2 Building Non-XS Modules + + To build a non-XS module, you can use the standard module-building + instructions distributed with perl modules. + + perl Makefile.PL + make + make test + make install + + This is sufficient because non-XS modules install only ".pm" files and + (sometimes) pod and/or man documentation. No re-linking of the perl + binary is needed to build, install or use non-XS modules. + + =head2 Building XS Modules + + To build an XS module, you must use the standard module-building + instructions distributed with perl modules *PLUS* three extra + instructions specific to the DJGPP "static link" build environment. + + set FNCASE=y + perl Makefile.PL + make + make perl + make test + make -f Makefile.aperl inst_perl MAP_TARGET=perl.exe + make install + + The first extra instruction sets DJGPP's FNCASE environment variable so + that the new perl binary which you must build for an XS-type module will + build correctly. The second extra instruction re-builds the perl binary + in your module directory before you run "make test", so that you are + testing with the new module code you built with "make". The third extra + instruction installs the perl binary from your module directory into the + standard DJGPP binary directory, C<($DJDIR)/bin>, replacing your + previous perl binary. + + Note that the MAP_TARGET value *must* have the ".exe" extension or you + will not create a "perl.exe" to replace the one in C<($DJDIR)/bin>. + + When you are done, the XS-module install process will have added information + to yout "perllocal" information telling that the perl binary has been replaced, + and what module was installed. you can view this information at any time + by using the command: + + perl -S perldoc perllocal + =head1 AUTHOR ! Laszlo Molnar, F [Installing/building perl] ! ! Peter J. Farley III F [Building/installing modules] =head1 SEE ALSO Index: README.epoc ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/README.epoc Tue Feb 22 01:37:18 2000 --- perl-5.6.1/README.epoc Sat Mar 3 11:53:20 2001 *************** *** 1,49 **** ! ===================================================================== Perl 5 README file for the EPOC operating system. - ===================================================================== ! Olaf Flebbe ! http://www.linuxstart.com/~oflebbe/perl/perl5.html ! 2000-02-20 ! ! ===================================================================== ! Introduction ! ===================================================================== EPOC is a OS for palmtops and mobile phones. For more informations look at: http://www.symbian.com/ ! This is a port of Perl version 5.5.650 to EPOC. It runs on the Perl ! Series 5, Series 5mx and the Psion Revo. I have no reports for other ! EPOC devices. ! Features are left out, because of restrictions of the POSIX support. ! ===================================================================== ! Installation/Usage ! ===================================================================== ! You will need ~4MB free space in order to install and run perl. ! Install perl.sis on the EPOC machine (most likely a PSION Series 5, ! 5mx). If you do not know how to do that, you are on your own. ! Perl itself and its standard library are using 2.5 MB disk space. I ! left out unicode support modules and modules which will not work with ! this version. (For details look into epoc/createpkg.pl). If you like ! to use them, you are free to copy them from a current perl release. ! Copy eshell.exe from the same page you got perl to your EPOC device. ! Start eshell.exe with a double tap. ! Now you can enter: perl -de 0 in order to run the perl debugger. If ! you are leaving perl, you get into the system screen. You have to ! switch back manually to eshell.exe When perl is running, you will see ! a task with the name STDOUT in the task list. ! ====================================================================== ! IO Redirection ! ====================================================================== You can redirect the output with the UNIX bourne shell syntax (this is built into perl rather then eshell) For instance the following command --- 1,79 ---- ! If you read this file _as_is_, just ignore the funny characters you ! see. It is written in the POD format (see pod/perlpod.pod) which is ! specially designed to be readable as is. ! ! =head1 NAME ! ! README.epoc - Perl for EPOC ! ! =head1 SYNOPSIS ! Perl 5 README file for the EPOC operating system. ! =head1 INTRODUCTION EPOC is a OS for palmtops and mobile phones. For more informations look at: http://www.symbian.com/ ! This is a port of perl to EPOC. It runs on ER5 machines: Psion 5mx, ! 5mx Pro, Psion Revo and on the Ericson M128. I have no report about ! the Psion Netbook or the S7. It runs on ER3 Hardware (Series 5 ! classic), too. For more information about this hardware please refer ! to http://www.psion.com. ! ! Vendors which like to have support for their devices are free to send ! me a sample. ! ! =head1 INSTALLING PERL ON EPOC ! ! You can download a ready-to-install version from ! http://www.science-computing.de/o.flebbe/perl. You may find other ! versions with some CPAN modules included at this location. ! ! You will need at least 4MB free space in order to install and run ! perl. ! ! Install perl.sis on the EPOC machine. If you do not know how to do ! that, consult your PsiWin documentation. ! Perl itself and its standard library is using 2.9 MB disk space. ! Unicode support and some other modules are left out. (For details, ! please look into epoc/createpkg.pl). If you like to use these modules, ! you are free to copy them from a current perl release. ! =head1 STARTING PERL ON EPOC ! For ER5 machines, you can get the software Perlstart ! http://www.science-computing.de/o.flebbe/perl. It contains file ! recognizers for files with the extension .pl and .pm. With it you can ! start perl with a double click on the camel icon. Be sure to configure ! the perl installation drive first. You can even provide a script with ! a special commandline, if needed. ! Alternativly you can get ESHELL from symbian: ! http://developer.epocworld.com/downloads/progs/Eshell.zip ! Running ESHELL you can enter: perl -de 0 in order to run the perl ! debugger. If you are leaving perl, you get into the system screen. You ! have to switch back manually to ESHELL. When perl is running, you will ! see a task with the name STDOUT in the task list. ! If you have a ER3 machine (i.e. a PSION 5), you may have to supply the ! full path to the perl executable C:\system\programs\perl.exe. ! If you need to set the current directory of perl, please use the ! command line switch '-x'. See L for details. ! =head1 STOPPING PERL ON EPOC ! ! You can stop a running perl process in the task list by closing the ! application `STDOUT'. You cannot stop a running perl process if it has ! not written anyting to stdout or stderr! Be very cautious with I/O ! redirection. You will have to reboot the PDA! ! ! =head1 USING PERL ON EPOC ! ! =head2 I/O Redirection You can redirect the output with the UNIX bourne shell syntax (this is built into perl rather then eshell) For instance the following command *************** *** 52,160 **** perl test.pl >stdout_file stderr_file ! Alternativly you can use 2>&1 in order to add the standard error output to stdout. ! ====================================================================== ! PATH Names ! ====================================================================== ! Pathnames to executables in eshell.exe have to be written with ! backslashes '\', file arguments to perl with slashes '/'. The default ! drive of perl is the same as the drive perl.exe is located on, the ! default path seems to be '/'. ! i.e. command lines look a little bit funny: ! D:\perl.exe C:/test.pl >C:/output.txt ! You can automatically search for file on all EPOC drives with a ? as ! the driver letter. For instance ?:\a.txt seraches for C:\a.txt, ! D:\b.txt (and Z:\a.txt). ! ====================================================================== ! Editors ! ====================================================================== ! You may have a problem to create perl scripts. A cumbersome workaround ! is to use the OPL Editor and exporting to text. ! The OPL+ Editor is quite good. (Shareware: http://www.twiddlebit.com) ! There is a port of vim around: ! http://www.starship.freeserve.co.uk/index.html ! ====================================================================== ! Restrictions ! ====================================================================== ! The following things are left out of this perl port: ! + backquoting, pipes etc. ! + system() does not inherit ressources like: file descriptors, ! environment etc. ! + signal, kill, alarm. Do not try to use them. This may be ! impossible to implement on EPOC. ! + select is missing. ! + binmode does not exist. (No CR LF to LF translation for text files) ! + EPOC does not handle the notion of current drive and current ! directory very well (i.e. not at all, but it tries hard to emulate ! one) See PATH. ! + You need the shell eshell.exe in order to run perl.exe and supply ! it with arguments. ! + Heap is limited to 4MB. ! =================================================================== ! Compiling Perl 5 on the EPOC cross compiling envionment. ! =================================================================== Sorry, this is far too short. ! You will need the C++ SDK from http://developer.epocworld.com/. ! You will need to set up the cross SDK from ! http://www.linuxstart.com/~oflebbe ! You may have to adjust config.sh (cc, cppflags) for your epoc ! install location. ! You may have to adjust config.sh for your cross SDK location ! Get the Perl sources from your nearest CPAN site. ! Unpack the sources. - Build a native perl from this sources... cp epoc/* . ./Configure -S ! make perl cp miniperl.native miniperl ! make perl perl link.pl perlmain.o lib/auto/DynaLoader/DynaLoader.a \ ! lib/auto/Data/Dumper.a \ lib/auto/File/Glob/Glob.a lib/auto/IO/IO.a \ ! lib/auto/Socket/Socket.a perl.a `cat ext.libs` perl createpkg.pl - wine "G:/bin/makesis perl.pkg perl.sis" ! ==================================================================== ! Wish List ! ==================================================================== ! - Threads ? ! - Acess to the GUI? ! ==================================================================== ! Support Status ! ==================================================================== ! I'm offering this port "as is". You can ask me questions, but I can't ! guarantee I'll be able to answer them; I don't know much about Perl ! internals myself; --- 82,231 ---- perl test.pl >stdout_file stderr_file ! Alternatively you can use 2>&1 in order to add the standard error output to stdout. ! =head2 PATH Names ! ! ESHELL looks for executables in ?:/System/Programs. The SIS file ! installs perl in this special folder directory. The default drive and ! path are the same as folder the executable resides. The EPOC ! filesystem is case-preserving, not case-sensitive. ! ! The EPOC estdlib uses the ?: syntax for establishing a search order: ! First in C: (RAM), then on D: (CF Card, if present) and last in Z: ! (ROM). For instance ?:\a.txt searches for C:\a.txt, D:\a.txt (and ! Z:\a.txt) ! ! The perl @INC search path is implemented with '?:'. Your perl ! executable can live on a different drive than the perl library or even ! your scripts. ! ! ESHELL paths have to be written with backslashes '\', file arguments ! to perl with slashes '/'. Remember that I/O redirection is done ! internally in perl, so please use slashes for redirects. ! ! perl.exe C:/test.pl >C:/output.txt ! ! =head2 Editors ! A suitable text editor can be downloaded from symbian ! http://developer.epocworld.com/downloads/progs/Editor.zip ! =head2 Features ! The built-in function EPOC::getcwd returns the current directory. ! =head2 Restrictions ! Features are left out, because of restrictions of the POSIX support in ! EPOC: ! =over 4 ! =item * ! backquoting, pipes etc. ! =item * ! system() does not inherit ressources like: file descriptors, ! environment etc. ! =item * ! signal, kill, alarm. Do not try to use them. This may be ! impossible to implement on EPOC. ! =item * ! select is missing. ! =item * ! binmode does not exist. (No CR LF to LF translation for text files) ! =item * ! EPOC does not handle the notion of current drive and current ! directory very well (i.e. not at all, but it tries hard to emulate ! one) See PATH. ! ! =item * ! ! Heap is limited to 4MB. ! ! =item * ! ! Dynamic loading is not implemented. ! ! =back ! ! =head2 Compiling Perl 5 on the EPOC cross compiling environment Sorry, this is far too short. ! =over 4 ! ! =item * ! ! You will need the C++ SDK from http://developer.epocworld.com/. ! ! =item * ! You will need to set up the cross SDK from ! http://www.science-computing.de/o.flebbe/sdk ! =item * ! You may have to adjust config.sh (cc, cppflags) to reflect your epoc ! and SDK location. ! =item * ! Get the Perl sources from your nearest CPAN site. ! ! =item * ! ! Unpack the sources. ! ! =item * ! ! Build a native perl from this sources... Make sure to save the ! miniperl executable as miniperl.native. ! ! Start again from scratch cp epoc/* . ./Configure -S ! make cp miniperl.native miniperl ! make ! make ext/Errno/pm_to_blib perl link.pl perlmain.o lib/auto/DynaLoader/DynaLoader.a \ ! lib/auto/Data/Dumper/Dumper.a \ lib/auto/File/Glob/Glob.a lib/auto/IO/IO.a \ ! lib/auto/Socket/Socket.a \ ! lib/auto/Fcntl/Fcntl.a lib/auto/Sys/Hostname/Hostname.a \ ! perl.a `cat ext.libs` perl createpkg.pl + wine G:/bin/makesis perl.pkg perl.sis + + =back + + =head1 SUPPORT STATUS + + I'm offering this port "as is". You can ask me questions, but I can't + guarantee I'll be able to answer them. + + =head1 AUTHOR ! Olaf Flebbe ! http://www.science-computing.de/o.flebbe/perl/ ! =head1 LAST UPDATE ! 2001-02-26 ! =cut Index: README.hpux ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/README.hpux Tue Jul 20 10:17:52 1999 --- perl-5.6.1/README.hpux Thu Feb 22 18:57:53 2001 *************** *** 1,6 **** ! If you read this file _as_is_, just ignore the funny characters you ! see. It is written in the POD format (see pod/perlpod.pod) which is ! specially designed to be readable as is. =head1 NAME --- 1,6 ---- ! If you read this file _as_is_, just ignore the funny characters you see. ! It is written in the POD format (see pod/perlpod.pod) which is specially ! designed to be readable as is. =head1 NAME *************** *** 8,40 **** =head1 DESCRIPTION ! This document describes various features of HP's Unix operating system (HP-UX) ! that will affect how Perl version 5 (hereafter just Perl) is compiled and/or ! runs. =head2 Compiling Perl 5 on HP-UX ! When compiling Perl, the use of an ANSI C compiler is highly recommended. ! The C compiler that ships with all HP-UX systems is a K&R compiler that ! should only be used to build new kernels. Perl can be compiled with either HP's ANSI C compiler or with gcc. The ! former is recommended, as not only can it compile Perl with no difficulty, ! but also can take advantage of features listed later that require the use ! of HP compiler-specific command-line flags. ! ! If you decide to use gcc, make sure your installation is recent and complete, ! and be sure to read the Perl README file for more gcc-specific details. =head2 PA-RISC ! HP's current Unix systems run on its own Precision Architecture (PA-RISC) chip. ! HP-UX used to run on the Motorola MC68000 family of chips, but any machine with ! this chip in it is quite obsolete and this document will not attempt to address ! issues for compiling Perl on the Motorola chipset. ! The most recent version of PA-RISC at the time of this document's last update ! is 2.0. =head2 PA-RISC 1.0 --- 8,42 ---- =head1 DESCRIPTION ! This document describes various features of HP's Unix operating system ! (HP-UX) that will affect how Perl version 5 (hereafter just Perl) is ! compiled and/or runs. =head2 Compiling Perl 5 on HP-UX ! When compiling Perl, you must use an ANSI C compiler. The C compiler ! that ships with all HP-UX systems is a K&R compiler that should only be ! used to build new kernels. Perl can be compiled with either HP's ANSI C compiler or with gcc. The ! former is recommended, as not only can it compile Perl with no ! difficulty, but also can take advantage of features listed later that ! require the use of HP compiler-specific command-line flags. ! ! If you decide to use gcc, make sure your installation is recent and ! complete, and be sure to read the Perl README file for more gcc-specific ! details. =head2 PA-RISC ! HP's current Unix systems run on its own Precision Architecture ! (PA-RISC) chip. HP-UX used to run on the Motorola MC68000 family of ! chips, but any machine with this chip in it is quite obsolete and this ! document will not attempt to address issues for compiling Perl on the ! Motorola chipset. ! The most recent version of PA-RISC at the time of this document's last ! update is 2.0. =head2 PA-RISC 1.0 *************** *** 42,49 **** The following systems contain PA-RISC 1.0 chips: ! 600, 635, 645, 800, 808, 815, 822, 825, 832, 834, 835, 840, ! 842, 845, 850, 852, 855, 860, 865, 870, 890 =head2 PA-RISC 1.1 --- 44,51 ---- The following systems contain PA-RISC 1.0 chips: ! 600, 635, 645, 808, 815, 822, 825, 832, 834, 835, 840, 842, 845, 850, 852, ! 855, 860, 865, 870, 890 =head2 PA-RISC 1.1 *************** *** 52,103 **** The following systems contain with PA-RISC 1.1 chips: ! 705, 710, 712, 715, 720, 722, 725, 728, 730, 735, 743, 745, 747, 750, ! 755, 770, 807S, 817S, 827S, 837S, 847S, 857S, 867S, 877S, 887S, 897S, ! D200, D210, D220, D230, D250, D260, D310, D320, D330, D350, D360, D400, ! E25, E35, E45, E55, F10, F20, F30, G30, G40, G50, G60, G70, H30, H40, ! H50, H60, H70, I30, I40, I50, I60, I70, K100, K200, K210, K220, K400, ! K410, K420, T500, T520 ! =head2 PA-RISC 2.0 ! The most recent upgrade to the PA-RISC design, it added support for 64-bit ! integer data. ! The following systems contain PA-RISC 2.0 chips (this is very likely to be ! out of date): ! D270, D280, D370, D380, K250, K260, K370, K380, K450, K460, K570, K580, ! T600, V2200 A complete list of models at the time the OS was built is in the file ! /opt/langtools/lib/sched.models. ! The first column corresponds to the output of the "uname -m" command ! (without the leading "9000/"). ! The second column is the PA-RISC version ! and the third column is the exact chip type used. =head2 Portability Between PA-RISC Versions An executable compiled on a PA-RISC 2.0 platform will not execute on a ! PA-RISC 1.1 platform, even if they are running the same version of HP-UX. ! If you are building Perl on a PA-RISC 2.0 platform and want that Perl to ! to also run on a PA-RISC 1.1, the compiler flags +DAportable and +DS32 ! should be used. ! It is no longer possible to compile PA-RISC 1.0 executables on either the ! PA-RISC 1.1 or 2.0 platforms. =head2 Building Dynamic Extensions on HP-UX HP-UX supports dynamically loadable libraries (shared libraries). Shared libraries end with the suffix .sl. ! Shared libraries created on a platform using a particular PA-RISC version ! are not usable on platforms using an earlier PA-RISC version by default. ! However, this backwards compatibility may be enabled using the same ! +DAportable compiler flag (with the same PA-RISC 1.0 caveat mentioned above). To create a shared library, the following steps must be performed: --- 54,111 ---- The following systems contain with PA-RISC 1.1 chips: ! 705, 710, 712, 715, 720, 722, 725, 728, 730, 735, 742, 743, 745, 747, 750, ! 755, 770, 777, 778, 779, 800, 801, 803, 806, 807, 809, 811, 813, 816, 817, ! 819, 821, 826, 827, 829, 831, 837, 839, 841, 847, 849, 851, 856, 857, 859, ! 867, 869, 877, 887, 891, 892, 897, A180, A180C, B115, B120, B132L, B132L+, ! B160L, B180L, C100, C110, C115, C120, C160L, D200, D210, D220, D230, D250, ! D260, D310, D320, D330, D350, D360, D410, DX0, DX5, DZO, E25, E35, E45, ! E55, F10, F20, F30, G30, G40, G50, G60, G70, H20, H30, H40, H50, H60, H70, ! I30, I40, I50, I60, I70, J200, J210, J210XC, K100, K200, K210, K220, K230, ! K400, K410, K420, S700i, S715, S724, S760, T500, T520 =head2 PA-RISC 2.0 ! The most recent upgrade to the PA-RISC design, it added support for ! 64-bit integer data. ! As of the date of this document's last update, the following systems ! contain PA-RISC 2.0 chips (this is very likely to be out of date): ! 700, 780, 781, 782, 783, 785, 802, 804, 810, 820, 861, 871, 879, 889, 893, ! 895, 896, 898, 899, B1000, C130, C140, C160, C180, C180+, C180-XP, C200+, ! C400+, C3000, C360, CB260, D270, D280, D370, D380, D390, D650, J220, J2240, ! J280, J282, J400, J410, J5000, J7000, K250, K260, K260-EG, K270, K360, ! K370, K380, K450, K460, K460-EG, K460-XP, K470, K570, K580, L1000, L2000, ! N4000, R380, R390, T540, T600, V2000, V2200, V2250, V2500 A complete list of models at the time the OS was built is in the file ! /opt/langtools/lib/sched.models. The first column corresponds to the ! output of the "uname -m" command (without the leading "9000/"). The ! second column is the PA-RISC version and the third column is the exact ! chip type used. =head2 Portability Between PA-RISC Versions An executable compiled on a PA-RISC 2.0 platform will not execute on a ! PA-RISC 1.1 platform, even if they are running the same version of ! HP-UX. If you are building Perl on a PA-RISC 2.0 platform and want that ! Perl to to also run on a PA-RISC 1.1, the compiler flags +DAportable and ! +DS32 should be used. ! It is no longer possible to compile PA-RISC 1.0 executables on either ! the PA-RISC 1.1 or 2.0 platforms. =head2 Building Dynamic Extensions on HP-UX HP-UX supports dynamically loadable libraries (shared libraries). Shared libraries end with the suffix .sl. ! Shared libraries created on a platform using a particular PA-RISC ! version are not usable on platforms using an earlier PA-RISC version by ! default. However, this backwards compatibility may be enabled using the ! same +DAportable compiler flag (with the same PA-RISC 1.0 caveat ! mentioned above). To create a shared library, the following steps must be performed: *************** *** 116,162 **** time, you will get fatal "Unresolved symbol" errors at run time when the library is loaded. ! You may create a shared library that referers to another library, which ! may be either an archive library or a shared library. If it is a ! shared library, this is called a "dependent library". ! The dependent library's name is recorded in the main shared library, ! but it is not linked into the shared library. ! Instead, it is loaded when the main shared library is loaded. If the referred library is an archive library, then it is treated as a simple collection of .o modules (all of which must contain PIC). These modules are then linked into the shared library. ! Note that it is okay to create a library which contains a dependent library ! that is already linked into perl. It is no longer possible to link PA-RISC 1.0 shared libraries. =head2 The HP ANSI C Compiler ! When using this compiler to build Perl, you should make sure that ! the flag -Aa is added to the cpprun and cppstdin variables in the ! config.sh file. =head2 Using Large Files with Perl ! Beginning with HP-UX version 10.20, files larger than 2GB (2^31) may be ! created and manipulated. ! Three separate methods of doing this are available. ! Of these methods, ! the best method for Perl is to compile using the -D_FILE_OFFSET_BITS=64 ! compiler flag. ! This causes Perl to be compiled using structures and functions in which ! these are 64 bits wide, rather than 32 bits wide. ! ! There are only two drawbacks to this approach: ! the first is that the seek and tell functions (both the builtin version ! and the POSIX module's version) will not correctly ! function for these large files ! (the offset arguments in seek and tell are implemented as type long). ! The second is that any extension which calls any file-manipulating C function ! will need to be recompiled using the above-mentioned -D_FILE_OFFSET_BITS=64 ! flag. The list of functions that will need to recompiled is: creat, fgetpos, fopen, freopen, fsetpos, fstat, --- 124,169 ---- time, you will get fatal "Unresolved symbol" errors at run time when the library is loaded. ! You may create a shared library that refers to another library, which ! may be either an archive library or a shared library. If this second ! library is a shared library, this is called a "dependent library". The ! dependent library's name is recorded in the main shared library, but it ! is not linked into the shared library. Instead, it is loaded when the ! main shared library is loaded. This can cause problems if you build an ! extension on one system and move it to another system where the ! libraries may not be located in the same place as on the first system. If the referred library is an archive library, then it is treated as a simple collection of .o modules (all of which must contain PIC). These modules are then linked into the shared library. ! Note that it is okay to create a library which contains a dependent ! library that is already linked into perl. It is no longer possible to link PA-RISC 1.0 shared libraries. =head2 The HP ANSI C Compiler ! When using this compiler to build Perl, you should make sure that the ! flag -Aa is added to the cpprun and cppstdin variables in the config.sh ! file (though see the section on 64-bit perl below). =head2 Using Large Files with Perl ! Beginning with HP-UX version 10.20, files larger than 2GB (2^31 bytes) ! may be created and manipulated. Three separate methods of doing this ! are available. Of these methods, the best method for Perl is to compile ! using the -Duselargefiles flag to Configure. This causes Perl to be ! compiled using structures and functions in which these are 64 bits wide, ! rather than 32 bits wide. (Note that this will only work with HP's ANSI ! C compiler. If you want to compile Perl using gcc, you will have to get ! a version of the compiler that support 64-bit operations.) ! ! There are some drawbacks to this approach. One is that any extension ! which calls any file-manipulating C function will need to be recompiled ! (just follow the usual "perl Makefile.PL; make; make test; make install" ! procedure). ! The list of functions that will need to recompiled is: creat, fgetpos, fopen, freopen, fsetpos, fstat, *************** *** 167,217 **** statvfs, statvfsdev, tmpfile, truncate, getrlimit, setrlimit =head2 Threaded Perl ! It is impossible to compile a version of threaded Perl on any version of ! HP-UX before 10.30, and it is strongly suggested that you be running on HP-UX 11.00 at least. ! To compile Perl with thread, add -Dusethreads to the arguments of Configure. ! Ensure that the -D_POSIX_C_SOURCE=199506L compiler flag is automatically ! added to the list of flags. Also make sure that -lpthread is listed before ! -lc in the list of libraries to link Perl with. ! ! As of the date of this document, Perl threads are not fully supported on HP-UX. =head2 64-bit Perl ! Beginning with HP-UX 11.00, programs compiled under HP-UX can take advantage ! of the LP64 programming environment (LP64 means Longs and Pointers are 64 bits ! wide). ! ! Work is being performed on Perl to make it 64-bit compliant on all versions ! of Unix. Once this is complete, scalar variables will be able to hold ! numbers larger than 2^32 with complete precision. As of the date of this document, Perl is not 64-bit compliant on HP-UX. ! Should a user wish to experiment with compiling Perl in the LP64 environment, ! the following steps must be taken: libraries must be searched only within ! /lib/pa20_64, the compiler flag +DD64 must be used, and the C library is ! now located at /lib/pa20_64/libc.sl. ! ! On the brighter side, the large file problem goes away, as longs are now ! 64 bits wide. =head2 GDBM and Threads ! If you attempt to compile Perl with threads on an 11.X system and also link ! in the GDBM library, then Perl will immediately core dump when it starts up. ! The only workaround at this point is to relink the GDBM library under 11.X, ! then relink it into Perl. =head2 NFS filesystems and utime(2) If you are compiling Perl on a remotely-mounted NFS filesystem, the test ! io/fs.t may fail on test #18. ! This appears to be a bug in HP-UX and no fix is currently available. =head1 AUTHOR --- 174,271 ---- statvfs, statvfsdev, tmpfile, truncate, getrlimit, setrlimit + Another drawback is only valid for Perl versions before 5.6.0. This + drawback is that the seek and tell functions (both the builtin version + and POSIX module version) will not perform correctly. + + It is strongly recommended that you use this flag when you run + Configure. If you do not do this, but later answer the question about + large files when Configure asks you, you may get a configuration that + cannot be compiled, or that does not function as expected. + =head2 Threaded Perl ! It is possible to compile a version of threaded Perl on any version of ! HP-UX before 10.30, but it is strongly suggested that you be running on HP-UX 11.00 at least. ! To compile Perl with threads, add -Dusethreads to the arguments of ! Configure. Verify that the -D_POSIX_C_SOURCE=199506L compiler flag is ! automatically added to the list of flags. Also make sure that -lpthread ! is listed before -lc in the list of libraries to link Perl with. ! ! As of the date of this document, Perl threads are not fully supported on ! HP-UX. ! ! HP-UX versions before 10.30 require a seperate installation of a POSIX ! threads library package. Two examples are the HP DCE package, available ! on "HP-UX Hardware Extensions 3.0, Install and Core OS, Release 10.20, ! April 1999 (B3920-13941)" or the Freely available PTH package, available ! though worldwide HP-UX mirrors of precompiled packages ! (e.g. http://hpux.tn.tudelft.nl/hppd/hpux/alpha.html) =head2 64-bit Perl ! Beginning with HP-UX 11.00, programs compiled under HP-UX can take ! advantage of the LP64 programming environment (LP64 means Longs and ! Pointers are 64 bits wide). ! ! Work is being performed on Perl to make it 64-bit compliant on all ! versions of Unix. Once this is complete, scalar variables will be able ! to hold numbers larger than 2^32 with complete precision. As of the date of this document, Perl is not 64-bit compliant on HP-UX. ! Should a user wish to experiment with compiling Perl in the LP64 ! environment, use the -Duse64bitall flag to Configure. This will force ! Perl to be compiled in a pure LP64 environment (via the +DD64 flag). ! ! You can also use the -Duse64bitint flag to Configure. Although there ! are some minor differences between compiling Perl with this flag versus ! the -Duse64bitall flag, they should not be noticeable from a Perl user's ! perspective. ! ! In both cases, it is strongly recommended that you use these flags when ! you run Configure. If you do not use do this, but later answer the ! questions about 64-bit numbers when Configure asks you, you may get a ! configuration that cannot be compiled, or that does not function as ! expected. ! ! (Note that these Configure flags will only work with HP's ANSI C ! compiler. If you want to compile Perl using gcc, you will have to get a ! version of the compiler that support 64-bit operations.) =head2 GDBM and Threads ! If you attempt to compile Perl with threads on an 11.X system and also ! link in the GDBM library, then Perl will immediately core dump when it ! starts up. The only workaround at this point is to relink the GDBM ! library under 11.X, then relink it into Perl. =head2 NFS filesystems and utime(2) If you are compiling Perl on a remotely-mounted NFS filesystem, the test ! io/fs.t may fail on test #18. This appears to be a bug in HP-UX and no ! fix is currently available. ! ! =head2 perl -P and // ! ! In HP-UX Perl is compiled with flags that will cause problems if the ! -P flag of Perl (preprocess Perl code with the C preprocessor before ! perl sees it) is used. The problem is that C, being a C++-style ! until-end-of-line comment, will disappear along with the remainder ! of the line. This means that common Perl constructs like ! ! s/foo//; ! ! will turn into illegal code ! ! s/foo ! ! The workaround is to use some other quoting separator than C<"/">, ! like for example C<"!">: ! ! s!foo!!; =head1 AUTHOR *************** *** 221,226 **** =head1 DATE ! Version 0.2: 1999/03/01 =cut --- 275,280 ---- =head1 DATE ! Version 0.6.2: 2001-02-02 =cut Index: README.machten ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/README.machten Wed Mar 22 19:00:54 2000 --- perl-5.6.1/README.machten Thu Feb 22 18:57:53 2001 *************** *** 57,81 **** =back - =head2 Using external modules - - If warnings are enabled with Perl's C<-w> command-line flag, you are - likely to see warnings when using external modules containing XS - (compiled) code: - - Subroutine DynaLoader::dl_error redefined at /usr/local/lib/perl5/5.6.0/powerpc-machten/DynaLoader.pm line 93. - - This is a harmless consequence of the static linking used for MachTen - perl. You can suppress the warnings by using the more modern - C<-Mwarnings> instead of the traditional C<-w>. (See L.) - =head2 Building external modules To add an external module to perl, build in the normal way, which is documented in L, or which can be driven automatically by the CPAN module (see L), which is part of the ! standard distribution. If wou want to install a ! module contains XS code (C or C++ source which compiles to object code for linking with perl), you will have to replace your perl binary with a new version containing the new statically-linked object module. The build process tells you how to do this. --- 57,69 ---- =back =head2 Building external modules To add an external module to perl, build in the normal way, which is documented in L, or which can be driven automatically by the CPAN module (see L), which is part of the ! standard distribution. If you want to install a module which ! contains XS code (C or C++ source which compiles to object code for linking with perl), you will have to replace your perl binary with a new version containing the new statically-linked object module. The build process tells you how to do this. *************** *** 98,101 **** =head1 DATE ! Version 1.0 2000-03-22 --- 86,89 ---- =head1 DATE ! Version 1.0.1 2000-03-27 Index: README.macos ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/README.macos Tue May 5 13:32:27 1998 --- perl-5.6.1/README.macos Sat Apr 7 23:09:16 2001 *************** *** 0 **** --- 1,60 ---- + If you read this file _as_is_, just ignore the funny characters you see. + It is written in the POD format (see pod/perlpod.pod) which is specially + designed to be readable as is. + + =head1 NAME + + README.macos - Perl under Mac OS (Classic) + + + =head1 SYNOPSIS + + This document briefly describes perl under Mac OS (Classic). + If you are running perl under Mac OS X, you don't want to be + here (unless you are in the Classic environment under Mac OS X). + + When we say "Mac OS" below, we mean pre-Mac OS X, which includes + Mac OS 7, 8, and 9. + + + =head1 DESCRIPTION + + The perl 5.6.1 source itself builds on Mac OS, with some additional + pieces. Support for Mac OS is now in the perl core, and MacPerl will be + able to, in the future, keep in closer sync with regular perl releases. + + At this time, though, it is very buggy, and is under development. An + alpha release is coming very soon. + + To build perl for Mac OS (as an MPW tool), you will need the addition + of the "macos" subdirectory, distributed separately. It includes extra + source files, config files, and make files. It also includes a lot of + extra Mac-specific modules. + + To build the MacPerl application, you will also need the "macperl" + directory, which includes the source files for creating the + application itself. + + All of this is also available from the SourceForge site, via + HTTP, FTP, and anonymous CVS. + + http://macperl.sourceforge.net/ + + You will also need compilers and libraries, all of them freely + available. These are linked to from the SourceForge site. Go that site + for all things having to do with MacPerl development. + + MacPerl 5.2.0r4 is available on the CPAN and on SourceForge. It + is based on perl 5.004. + + + =head1 AUTHOR + + perl was ported to Mac OS by Matthias Neeracher + Eneeracher@mac.comE. It is currently maintained by Chris + Nandor Epudge@pobox.comE. + + + =head1 DATE + + Last modified 2001.04.05. Index: README.mpeix ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/README.mpeix Tue Jul 20 10:17:52 1999 --- perl-5.6.1/README.mpeix Thu Feb 22 18:57:53 2001 *************** *** 1,260 **** ! Perl/iX for HP 3000 MPE ! http://www.cccd.edu/~markb/perlix.html ! Perl language for MPE ! Last updated July 15, 1998 @ 2030 UTC ! ! ------------------------------------------------------------------------ ! ! What's New ! ! * July 15, 1998 ! o Changed startperl to #!/PERL/PUB/perl so that Perl will recognize ! scripts more easily and efficiently. ! * July 8, 1998 ! o Updated to version 5.004_70 (internal developer release) which is ! now MPE-ready. The next public freeware release of Perl should ! compile "straight out of the box" on MPE. Note that this version ! of Perl/iX was strictly internal to me and never publicly ! released. Note that BIND/iX is now required (well, the include ! files and libbind.a) if you wish to compile Perl/iX. ! * November 6, 1997 ! o Updated to version 5.004_04. No changes in MPE-specific ! functionality. ! ! ------------------------------------------------------------------------ ! ! Welcome ! ! This is the official home page for the HP 3000 MPE port of the Perl ! scripting language which gives you all of the power of C, awk, sed, and sh ! in a single language. Check here for the latest news, implemented ! functionality, known bugs, to-do list, etc. Status reports about major ! milestones will also be posted to the HP3000-L mailing list and its ! associated gatewayed newsgroup comp.sys.hp.mpe. ! ! I'm doing this port because I can't live without Perl on the HPUX machines ! that I administer for the Coast Community College District, and I want to ! have the same power available to me on MPE. ! ! Please send your comments, questions, and bug reports directly to me, Mark ! Bixby, by e-mailing to markb@cccd.edu. Or just post them to HP3000-L. You ! can also telephone me at +1 714 438-4647 Monday-Friday 0815-1745 PDT ! (1615-0145 UTC). ! ! The platform I'm using to do this port is an HP 3000 969KS200 running ! MPE/iX 5.5 and using the gcc 2.8 compiler from ! http://www.interex.org/sources/freeware.html. ! ! The combined porting wisdom from all of my ports can be found in my MPE/iX ! Porting Guide. ! ! ------------------------------------------------------------------------ ! ! System Requirements ! ! * MPE/iX 5.5 or later. This version of Perl/iX does NOT run on MPE/iX ! 5.0 or earlier, nor does it run on "classic" MPE/V machines. ! * The Perl binary requires that you must have converted your NMRL ! libraries in /lib/lib*.a and /usr/lib/lib*.a to NMXL libraries ! /lib/lib*.sl and /usr/lib/lib*.sl via the LIBSHP3K script that comes ! with the GNUCORE portion of the FREEWARE tape. ! * If you wish to recompile Perl, you must install both GNUCORE and ! GNUGCC from the FREEWARE tape. ! * Perl/iX will be happier if you install the MPEKX76A additional POSIX ! filename characters patch, but this is optional. ! * If you will be compiling Perl/iX yourself, you will also need the ! /BIND/PUB/include and /BIND/PUB/lib portions of BIND/iX. ! ! ------------------------------------------------------------------------ ! ! Demos ! ! Here is a brief selection of some sample Perl/iX uses: ! ! * A web feedback CGI form that lets a web browser user enter some data ! and send e-mail to the person responsible for reading the feedback ! comments. The CGI is written in Perl and requires Sendmail/iX. ! ! ------------------------------------------------------------------------ ! ! How to Obtain Perl/iX ! ! 1. Download Perl using either FTP.ARPA.SYS or some other client ! 2. Extract the installation script ! 3. Edit the installation script ! 4. Run the installation script Download Perl using FTP.ARPA.SYS from your HP 3000 (the preferred method)..... ! ! :HELLO MANAGER.SYS ! :XEQ FTP.ARPA.SYS ! open ftp.cccd.edu ! anonymous ! your@email.address ! bytestream ! cd /pub/mpe ! get perl5.005.tar.Z /tmp/perl.tar.Z ! exit .....Or download using some other generic web or ftp client (the alternate method) ! Download the following files (make sure that you use "binary mode" or whatever client feature that is 8-bit clean): ! * Perl from http://www.cccd.edu/ftp/pub/mpe/perl5.005.tar.Z or ! ftp://ftp.cccd.edu/pub/mpe/perl5.005.tar.Z Upload those files to your HP 3000 in an 8-bit clean bytestream manner to: ! * /tmp/perl.tar.Z Then extract the installation script (after both download methods) ! :CHDIR /tmp ! :XEQ TAR.HPBIN.SYS 'xvfopz /tmp/perl.tar.Z INSTALL' Edit the installation script ! Examine the accounting structure creation commands and modify if necessary ! (adding additional capabilities, choosing a non-system volume set, etc). ! ! :XEQ VI.HPBIN.SYS /tmp/INSTALL ! Run the installation script The accounting structure will be created and then all files will be extracted from the archive. ! :XEQ SH.HPBIN.SYS /tmp/INSTALL ! ------------------------------------------------------------------------ ! Distribution Contents Highlights ! README ! The file you're reading now. ! INSTALL ! Perl/iX Installation script. ! PERL ! Perl NMPRG executable. A version-numbered backup copy also exists. ! You might wish to "ln -s /PERL/PUB/PERL /usr/local/bin/perl". ! lib/ ! Perl libraries, both core and add-on. ! man/ ! Perl man page documentation. ! public_html/feedback.cgi ! Sample feedback CGI form written in Perl. ! src/perl5.005 ! Source code. ! ! ------------------------------------------------------------------------ ! ! How to Compile Perl/iX ! ! 1. cd src/perl5.005 ! 2. Read the INSTALL file for the official instructions ! 3. ./Configure ! 4. make ! 5. ./mpeix/relink ! 6. make test (expect 31 out of 5899 subtests to fail, mostly due to MPE ! not supporting hard links and handling exit() return codes improperly) ! 7. make install ! 8. Optionally create symbolic links that point to the Perl executable, ! i.e. ln -s /usr/local/bin/perl /PERL/PUB/PERL The summary test results from "cd t; ./perl -I../lib harness": ! Failed Test Status Wstat Total Fail Failed List of failed ! ------------------------------------------------------------------------------- ! io/fs.t 26 8 30.77% 2-5, 7-9, 11 ! io/pipe.t 12 2 16.67% 11-12 ! lib/posix.t 18 1 5.56% 12 ! op/die_exit.t 16 16 100.00% 1-16 ! op/exec.t 8 2 25.00% 5-6 ! op/stat.t 58 2 3.45% 3, 35 ! Failed 6/183 test scripts, 96.72% okay. 31/5899 subtests failed, 99.47% okay. ! ! ------------------------------------------------------------------------ ! ! Getting Started with Perl/iX ! ! Create your Perl script files with "#!/PERL/PUB/perl" (or an equivalent ! symbolic link) as the first line. Use the chmod command to make sure that ! your script has execute permission. Run your script! ! ! If you want to use Perl to write web server CGI scripts, obtain and install ! CGI.pm. Build CGI.pm and all other add-on modules below /PERL/PUB/src/. ! ! Be sure to take a look at the CPAN module list. A wide variety of free Perl ! software is available. ! ! ------------------------------------------------------------------------ ! ! MPE/iX Implementation Considerations ! ! There some minor functionality issues to be aware of when comparing Perl ! for Unix (Perl/UX) to Perl/iX: ! ! * MPE gcc/ld doesn't properly support linking NMPRG executables against ! NMXL dynamic libraries, so you must manually run mpeix/relink after ! each re-build of Perl. ! * Perl/iX File::Copy will use MPE's /bin/cp command to copy files by ! name in order to preserve file attributes like file code. ! * MPE (and thus Perl/iX) lacks support for setgrent(), endgrent(), ! setpwent(), endpwent(). ! * MPE (and thus Perl/iX) lacks support for hard links. ! * MPE requires GETPRIVMODE() in order to bind() to ports less than ! 1024. Perl/iX will call GETPRIVMODE() automatically on your behalf if ! you attempt to bind() to these low-numbered ports. Note that the ! Perl/iX executable and the PERL account do not normally have CAP=PM, ! so if you will be bind()-ing to these privileged ports, you will ! manually need to add PM capability as appropriate. ! * MPE requires that you bind() to an IP address of zero. Perl/iX ! automatically replaces the IP address that you pass to bind() with a ! zero. ! * If you use Perl/iX fcntl() against a socket it will fail, because MPE ! requires that you use sfcntl() instead. Perl/iX does not presently ! support sfcntl(). ! * MPE requires GETPRIVMODE() in order to setuid(). There are too many ! calls to setuid() within Perl/iX, so I have not attempted an automatic ! GETPRIVMODE() solution similar to bind(). ! ! ------------------------------------------------------------------------ ! ! Known Bugs Under Investigation ! ! * None ! ! ------------------------------------------------------------------------ ! ! To-Do List ! ! * Make setuid()/setgid() support work. ! * Make sure that fcntl() against a socket descriptor is redirected to ! sfcntl(). ! * Add support for Berkeley DB once I've finished porting Berkeley DB. ! * Write an MPE XS extension library containing miscellaneous important ! MPE functions like GETPRIVMODE(), GETUSERMODE(), and sfcntl(). ! ! ------------------------------------------------------------------------ ! ! Change History ! ! * October 16, 1997 ! o Added Demos section to the Perl/iX home page so you can see some ! sample Perl applications running on my 3000. ! * October 3, 1997 ! o Added System Requirements section to the Perl/iX home page just ! so the prerequisites stand out more. Various other home page ! tweaks. ! * October 2, 1997 ! o Initial public release. ! * September 1997 ! o Porting begins. ! ------------------------------------------------------------------------ - Mark Bixby, markb@cccd.edu --- 1,675 ---- ! If you read this file _as_is_, just ignore the funny characters you ! see. It is written in the POD format (see perlpod manpage) which is ! specially designed to be readable as is. ! =head1 NAME ! ! README.mpeix - Perl/iX for HP e3000 MPE ! ! =head1 SYNOPSIS ! ! http://www.bixby.org/mark/perlix.html ! Perl language for MPE ! Last updated June 2, 2000 @ 0400 UTC ! ! =head1 NOTE ! ! This is a podified version of the above-mentioned web page, ! podified by Jarkko Hietaniemi 2001-Jan-01. ! ! =head1 What's New ! ! June 1, 2000 ! ! =over 4 ! ! =item * ! ! Rebuilt to be compatible with mod_perl. If you plan on using ! mod_perl, you MUST download and install this version of Perl/iX! ! ! =item * ! ! bincompat5005="undef": sorry, but you will have to recompile any ! binary 5.005 extensions that you may be using (if any; there is no ! 5.005 code in what you download from bixby.org) ! uselargefiles="undef": not available in MPE for POSIX files yet. ! ! =item * ! ! Now bundled with various add-on packages: ! ! =over 8 ! ! =item * ! ! libnet (http://www.gbarr.demon.co.uk/libnet/FAQ.html) ! ! =item * ! ! libwww-perl (LWP) which lets Perl programs behave like web browsers: ! ! 1. #!/PERL/PUB/perl ! 2. use LWP::Simple; ! 3. $doc = get('http://www.bixby.org/mark/perlix.html'); # reads the ! web page into variable $doc ! ! (http://www.bixby.org/mark/perlix.html) ! ! =item * ! ! mod_perl (just the perl portion; the actual DSO will be released ! soon with Apache/iX 1.3.12 from bixby.org). This module allows you to ! write high performance persistent Perl CGI scripts and all sorts of ! cool things. (http://perl.apache.org/) ! ! and much much more hiding under /PERL/PUB/.cpan/ ! ! =item * ! ! The CPAN module now works for automatic downloading and ! installing of add-on packages: ! ! 1. export FTP_PASSIVE=1 ! 2. perl -MCPAN -e shell ! 3. Ignore any terminal I/O related complaints! ! ! (http://theoryx5.uwinnipeg.ca/CPAN/data/perl/CPAN.html) ! ! =back ! ! =back ! ! May 20, 2000 ! ! =over 4 ! ! =item * ! ! Updated to version 5.6.0. Builds straight out of the box on MPE/iX. ! ! =item * ! ! Perl's getpwnam() function which had regressed to being ! unimplemented on MPE is now implemented once again. ! ! =back ! ! September 17, 1999 ! ! =over 4 ! ! =item * ! ! Migrated from cccd.edu to bixby.org. ! ! =back ! ! =head1 Welcome ! ! This is the official home page for the HP e3000 MPE/iX ! (http://www.businessservers.hp.com/) port of the Perl scripting ! language (http://www.perl.com/) which gives you all of the power of C, ! awk, sed, and sh in a single language. Check here for the latest news, ! implemented functionality, known bugs, to-do list, etc. Status reports ! about major milestones will also be posted to the HP3000-L mailing list ! (http://www.lsoft.com/scripts/wl.exe?SL1=HP3000-L&H=RAVEN.UTC.EDU) and ! its associated gatewayed newsgroup comp.sys.hp.mpe. ! ! I'm doing this port because I can't live without Perl on the Unix ! machines that I administer, and I want to have the same power ! available to me on MPE. ! ! Please send your comments, questions, and bug reports directly to me, ! Mark Bixby (http://www.bixby.org/mark/), by e-mailing to ! mark@bixby.org. Or just post them to HP3000-L. ! ! The platform I'm using to do this port is an HP 3000 957RX running ! MPE/iX 6.0 and using the GNU gcc C compiler ! (http://jazz.external.hp.com/src/gnu/gnuframe.html). ! ! The combined porting wisdom from all of my ports can be found in my ! MPE/iX Porting Guide (http://www.bixby.org/mark/porting.html). ! ! IMPORTANT NOTICE: Yes, I do work for the HP CSY R&D lab, but ALL of ! the software you download from bixby.org is my personal freeware that ! is NOT supported by HP. ! ! =head1 System Requirements ! ! =over 4 ! ! =item * ! ! MPE/iX 5.5 or later. This version of Perl/iX does NOT run on ! MPE/iX 5.0 or earlier, nor does it run on "classic" MPE/V machines. ! ! =item * ! ! If you wish to recompile Perl, you must install both GNUCORE and ! GNUGCC from jazz (http://jazz.external.hp.com/src/gnu/gnuframe.html). ! ! =item * ! ! Perl/iX will be happier on MPE/iX 5.5 if you install the MPEKX40B ! extended POSIX filename characters patch, but this is optional. ! ! =item * ! ! Patch LBCJXT6A is required on MPE/iX 5.5 machines in order to ! prevent Perl/iX from dying with an unresolved external reference ! to _getenv_libc. ! ! =item * ! ! If you will be compiling Perl/iX yourself, you will also need ! Syslog/iX (http://www.bixby.org/mark/syslogix.html) and the ! /BIND/PUB/include and /BIND/PUB/lib portions of BIND/iX ! (http://www.bixby.org/mark/bindix.html). ! ! =back ! ! =head1 How to Obtain Perl/iX ! ! =over 4 ! ! =item 1. ! ! Download Perl using either FTP.ARPA.SYS or some other client ! ! =item 2. ! ! Extract the installation script ! ! =item 3. ! ! Edit the installation script ! ! =item 4. ! ! Run the installation script ! ! =item 5. ! ! Convert your *.a system archive libraries to *.sl shared libraries ! ! =back Download Perl using FTP.ARPA.SYS from your HP 3000 (the preferred method)..... ! ! :HELLO MANAGER.SYS ! :XEQ FTP.ARPA.SYS ! open ftp.bixby.org ! anonymous ! your@email.address ! bytestream ! cd /pub/mpe ! get perl-5.6.0-mpe.tar.Z /tmp/perl.tar.Z;disc=2147483647 ! exit .....Or download using some other generic web or ftp client (the alternate method) ! Download the following files (make sure that you use "binary mode" or whatever client feature that is 8-bit clean): ! =over 4 ! ! =item * ! ! Perl from ! ! http://www.bixby.org/ftp/pub/mpe/perl-5.6.0-mpe.tar.Z ! ! or ! ! ftp://ftp.bixby.org/pub/mpe/perl-5.6.0-mpe.tar.Z ! ! =item * Upload those files to your HP 3000 in an 8-bit clean bytestream manner to: ! /tmp/perl.tar.Z ! ! =item * Then extract the installation script (after both download methods) + + :CHDIR /tmp + :XEQ TAR.HPBIN.SYS 'xvfopz /tmp/perl.tar.Z INSTALL' ! =item * Edit the installation script + + Examine the accounting structure creation commands and modify if + necessary (adding additional capabilities, choosing a non-system + volume set, etc). ! :XEQ VI.HPBIN.SYS /tmp/INSTALL ! =item * + Run the installation script. + The accounting structure will be created and then all files will be extracted from the archive. ! :XEQ SH.HPBIN.SYS /tmp/INSTALL ! ! =item * ! ! Convert your *.a system archive libraries to *.sl shared libraries ! ! You only have to do this ONCE on your MPE/iX 5.5 machine in order to ! convert /lib/lib*.a and /usr/lib/lib*.a libraries to their *.sl ! equivalents. This step should not be necessary on MPE/iX 6.0 or later ! machines because the 6.0 or later update process does it for you. ! ! :XEQ SH.HPBIN.SYS /PERL/PUB/LIBSHP3K ! ! =back ! ! =head1 Distribution Contents Highlights ! ! =over 4 ! ! =item README ! ! The file you're reading now. ! ! =item INSTALL ! ! Perl/iX Installation script. ! ! =item LIBSHP3K ! ! Script to convert *.a system archive libraries to *.sl shared libraries. ! ! =item PERL ! ! Perl NMPRG executable. A version-numbered backup copy also ! exists. You might wish to "ln -s /PERL/PUB/PERL /usr/local/bin/perl". ! ! =item .cpan/ ! ! Much add-on source code downloaded with the CPAN module. ! ! =item lib/ ! ! Perl libraries, both core and add-on. ! ! =item man/ ! ! Perl man page documentation. ! ! =item public_html/feedback.cgi ! ! Sample feedback CGI form written in Perl. ! ! =item src/perl-5.6.0-mpe ! ! Source code. ! ! =back ! ! =head1 How to Compile Perl/iX ! ! =over 4 ! ! =item 1. ! ! cd src/perl-5.6.0-mpe ! ! =item 2. ! ! Read the INSTALL file for the official instructions ! ! =item 3. ! ! ./Configure -d ! ! =item 4. ! ! make ! ! =item 5. ! ! ./mpeix/relink ! ! =item 6. ! make test (expect approximately 15 out of 11306 subtests to fail, ! mostly due to MPE not supporting hard links, UDP socket problems, ! and handling exit() return codes improperly) ! =item 7. ! make install ! ! =item 8. ! ! Optionally create symbolic links that point to the Perl ! executable, i.e. ln -s /PERL/PUB/PERL /usr/local/bin/perl ! ! =back The summary test results from "cd t; ./perl -I../lib harness": ! Failed Test Status Wstat Total Fail Failed List of failed ! --------------------------------------------------------------------------- ! io/fs.t 29 8 27.59% 2-5, 7-9, 11 ! io/openpid.t 10 1 10.00% 7 ! lib/io_sock.t 14 1 7.14% 13 ! lib/io_udp.t 7 2 28.57% 3, 5 ! lib/posix.t 27 1 3.70% 12 ! op/lex_assign.t 187 1 0.53% 13 ! op/stat.t 58 1 1.72% 3 ! 15 tests and 94 subtests skipped. ! Failed 7/236 test scripts, 97.03% okay. 15/11306 subtests failed, 99.87% okay. ! ! =head1 Getting Started with Perl/iX ! ! Create your Perl script files with "#!/PERL/PUB/perl" (or an ! equivalent symbolic link) as the first line. Use the chmod command to ! make sure that your script has execute permission. Run your script! ! ! Be sure to take a look at the CPAN module list ! (http://www.cpan.org/CPAN.html). A wide variety of free Perl software ! is available. You can automatically download these packages by using ! the CPAN module (http://theoryx5.uwinnipeg.ca/CPAN/data/perl/CPAN.html). ! ! =head1 MPE/iX Implementation Considerations ! ! There some minor functionality issues to be aware of when comparing ! Perl for Unix (Perl/UX) to Perl/iX: ! ! =over 4 ! ! =item * ! ! MPE gcc/ld doesn't properly support linking NMPRG executables against ! NMXL dynamic libraries, so you must manually run mpeix/relink after ! each re-build of Perl. ! ! =item * ! ! Perl/iX File::Copy will use MPE's /bin/cp command to copy files by ! name in order to preserve file attributes like file code. ! ! =item * ! ! MPE (and thus Perl/iX) lacks support for setgrent(), endgrent(), ! setpwent(), endpwent(). ! ! =item * ! ! MPE (and thus Perl/iX) lacks support for hard links. ! ! =item * ! ! MPE requires GETPRIVMODE() in order to bind() to ports less than 1024. ! Perl/iX will call GETPRIVMODE() automatically on your behalf if you ! attempt to bind() to these low-numbered ports. Note that the Perl/iX ! executable and the PERL account do not normally have CAP=PM, so if you ! will be bind()-ing to these privileged ports, you will manually need ! to add PM capability as appropriate. ! ! =item * ! ! MPE requires that you bind() to an IP address of zero. Perl/iX ! automatically replaces the IP address that you pass to bind() with ! a zero. ! ! =item * ! ! If you use Perl/iX fcntl() against a socket it will fail, because MPE ! requires that you use sfcntl() instead. Perl/iX does not presently ! support sfcntl(). ! ! =item * ! ! MPE requires GETPRIVMODE() in order to setuid(). There are too many ! calls to setuid() within Perl/iX, so I have not attempted an automatic ! GETPRIVMODE() solution similar to bind(). ! ! =back ! ! =head1 Known Bugs Under Investigation ! ! None. ! ! =head1 To-Do List ! ! =over 4 ! ! =item * ! ! Make setuid()/setgid() support work. ! ! =item * ! ! Make sure that fcntl() against a socket descriptor is redirected to sfcntl(). ! ! =item * ! ! Add support for Berkeley DB once I've finished porting Berkeley DB. ! ! =item * ! ! Write an MPE XS extension library containing miscellaneous important ! MPE functions like GETPRIVMODE(), GETUSERMODE(), and sfcntl(). ! ! =back ! ! =head1 Change History ! ! May 6, 1999 ! ! =over 4 ! ! =item * ! ! Patch LBCJXT6A is required on MPE/iX 5.5 machines in order to prevent ! Perl/iX from dying with an unresolved external reference to _getenv_libc. ! ! =back ! ! April 7, 1999 ! ! =over 4 ! ! =item * ! ! Updated to version 5.005_03. ! ! =item * ! ! The official source distribution once again compiles "straight out ! of the box" for MPE. ! ! =item * ! ! The current incarnation of the 5.5 POSIX filename extended ! characters patch is now MPEKX40B. ! ! =item * ! ! The LIBSHP3K *.a -> *.sl library conversion script is now included ! as /PERL/PUB/LIBSHP3K. ! ! =back ! ! November 20, 1998 ! ! =over 4 ! ! =item * ! ! Updated to version 5.005_02. ! ! =item * ! ! Fixed a DynaLoader bug that was unable to load symbols from relative ! path name libraries. ! ! =item * ! ! Fixed a .xs compilation bug where the mpeixish.sh include file wasn't ! being installed into the proper directory. ! ! =item * ! ! All bugfixes will be submitted back to the official Perl developers. ! ! =item * ! ! The current incarnation of the POSIX filename extended characters ! patch is now MPEKXJ3A. ! ! =back ! ! August 14, 1998 ! ! =over 4 ! ! =item * ! ! The previous POSIX filename extended characters patch MPEKX44C has ! been superseded by MPEKXB5A. ! ! =back ! ! August 7, 1998 ! ! =over 4 ! ! =item * ! ! The previous POSIX filename extended characters patch MPEKX76A has ! been superseded by MPEKX44C. ! ! =over 4 ! ! =back ! ! July 28, 1998 ! ! =item * ! ! Updated to version 5.005_01. ! ! =back ! ! July 23, 1998 ! ! =over 4 ! ! =item * ! ! Updated to version 5.005 (production release). The public ! freeware sources are now 100% MPE-ready "straight out of the box". ! ! =back ! ! July 17, 1998 ! ! =over 4 ! ! =item * ! ! Updated to version 5.005b1 (public beta release). The public ! freeware sources are now 99.9% MPE-ready. By installing and ! testing this beta on your own HP3000, you will be helping to ! insure that the final release of 5.005 will be 100% MPE-ready and ! 100% bug free. ! ! =item * ! ! My MPE binary release is now extracted using my standard INSTALL script. ! ! =back ! ! July 15, 1998 ! ! =over 4 ! ! =item * ! ! Changed startperl to #!/PERL/PUB/perl so that Perl will recognize ! scripts more easily and efficiently. ! ! =back ! ! July 8, 1998 ! ! =over 4 ! ! =item * ! ! Updated to version 5.004_70 (internal developer release) which is now ! MPE-ready. The next public freeware release of Perl should compile ! "straight out of the box" on MPE. Note that this version of Perl/iX ! was strictly internal to me and never publicly released. Note that ! [21]BIND/iX is now required (well, the include files and libbind.a) if ! you wish to compile Perl/iX. ! ! =back ! ! November 6, 1997 ! ! =over 4 ! ! =item * ! ! Updated to version 5.004_04. No changes in MPE-specific functionality. ! ! =back ! ! October 16, 1997 ! ! =over 4 ! ! =item * ! ! Added Demos section to the Perl/iX home page so you can see some ! sample Perl applications running on my 3000. ! ! =back ! ! October 3, 1997 ! ! =over 4 ! ! =item * ! ! Added System Requirements section to the Perl/iX home page just so the ! prerequisites stand out more. Various other home page tweaks. ! ! =back ! ! October 2, 1997 ! ! =over 4 ! ! =item * ! ! Initial public release. ! ! =back ! ! September 1997 ! ! =over 4 ! ! =item * ! ! Porting begins. ! =back ! ! =head1 Author ! ! Mark Bixby, mark@bixby.org Index: README.os2 ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/README.os2 Fri Mar 3 19:59:44 2000 --- perl-5.6.1/README.os2 Sun Mar 18 19:03:33 2001 *************** *** 115,121 **** - Threads AUTHOR SEE ALSO ! =head1 DESCRIPTION =head2 Target --- 115,121 ---- - Threads AUTHOR SEE ALSO ! =head1 DESCRIPTION =head2 Target *************** *** 131,150 **** =item * ! Some *nix programs use fork() a lot, but currently fork() is not ! supported after Iing dynamically loaded extensions. =item * You need a separate perl executable F (see L) ! to use PM code in your application (like the forthcoming Perl/Tk). =item * There is no simple way to access WPS objects. The only way I know is via C extension (see L), and we do not have access to convenience methods of Object-REXX. (Is it possible at all? I know ! of no Object-REXX API.) =back --- 131,158 ---- =item * ! Some *nix programs use fork() a lot; with the mostly useful flavors of perl ! for OS/2 (there are several built simultaneously) this is supported; ! some flavors do not. Using fork() after Iing dynamically loading ! extensions would not work with very old versions of EMX. =item * You need a separate perl executable F (see L) ! if you want to use PM code in your application (as Perl/Tk or OpenGL ! Perl modules do) without having a text-mode window present. ! ! While using the standard F from a text-mode window is possible ! too, I have seen cases when this causes degradation of the system stability. ! Using F avoids such a degradation. =item * There is no simple way to access WPS objects. The only way I know is via C extension (see L), and we do not have access to convenience methods of Object-REXX. (Is it possible at all? I know ! of no Object-REXX API.) The C extension (currently in alpha-text) ! may eventually remove this shortcoming. =back *************** *** 153,159 **** =head2 Other OSes Since OS/2 port of perl uses a remarkable EMX environment, it can ! run (and build extensions, and - possibly - be build itself) under any environment which can run EMX. The current list is DOS, DOS-inside-OS/2, Win0.3*, Win0.95 and WinNT. Out of many perl flavors, only one works, see L<"perl_.exe">. --- 161,167 ---- =head2 Other OSes Since OS/2 port of perl uses a remarkable EMX environment, it can ! run (and build extensions, and - possibly - be built itself) under any environment which can run EMX. The current list is DOS, DOS-inside-OS/2, Win0.3*, Win0.95 and WinNT. Out of many perl flavors, only one works, see L<"perl_.exe">. *************** *** 178,190 **** fact RSX is required if there is no VCPI present. Note the RSX requires DPMI. ! Only the latest runtime is supported, currently C<0.9c>. Perl may run under earlier versions of EMX, but this is not tested. One can get different parts of EMX from, say ! ftp://ftp.cdrom.com/pub/os2/emx09c/ ! ftp://hobbes.nmsu.edu/os2/unix/emx09c/ The runtime component should have the name F. --- 186,199 ---- fact RSX is required if there is no VCPI present. Note the RSX requires DPMI. ! Only the latest runtime is supported, currently C<0.9d fix 03>. Perl may run under earlier versions of EMX, but this is not tested. One can get different parts of EMX from, say ! http://www.leo.org/pub/comp/os/os2/leo/gnu/emx+gcc/ ! http://powerusersbbs.com/pub/os2/dev/ [EMX+GCC Development] ! http://hobbes.nmsu.edu/pub/os2/dev/emx/v0.9d/ The runtime component should have the name F. *************** *** 215,223 **** Contact the author on C. ! The latest F with DOS hooks is available at ! ftp://ftp.math.ohio-state.edu/pub/users/ilya/os2/sh_dos.zip =item HPFS --- 224,234 ---- Contact the author on C. ! The latest F with DOS hooks is available in ! ftp://ftp.math.ohio-state.edu/pub/users/ilya/os2/ ! ! as F or under similar names starting with C, C etc. =item HPFS *************** *** 232,246 **** To start external programs with complicated command lines (like with pipes in between, and/or quoting of arguments), Perl uses an external ! shell. With EMX port such shell should be named , and located either in the wired-in-during-compile locations (usually F), or in configurable location (see L<"PERL_SH_DIR">). ! For best results use EMX pdksh. The soon-to-be-available standard ! binary (5.2.12?) runs under DOS (with L) as well, meanwhile use ! the binary from ! ftp://ftp.math.ohio-state.edu/pub/users/ilya/os2/sh_dos.zip =back --- 243,256 ---- To start external programs with complicated command lines (like with pipes in between, and/or quoting of arguments), Perl uses an external ! shell. With EMX port such shell should be named F, and located either in the wired-in-during-compile locations (usually F), or in configurable location (see L<"PERL_SH_DIR">). ! For best results use EMX pdksh. The standard binary (5.2.14 or later) runs ! under DOS (with L) as well, see ! ftp://ftp.math.ohio-state.edu/pub/users/ilya/os2/ =back *************** *** 267,273 **** Note that because of stupid OS/2 limitations the full path of the perl script is not available when you use C, thus you are forced to ! use C<-S> perl switch, and your script should be on path. As a plus side, if you know a full path to your script, you may still start it with --- 277,283 ---- Note that because of stupid OS/2 limitations the full path of the perl script is not available when you use C, thus you are forced to ! use C<-S> perl switch, and your script should be on the C. As a plus side, if you know a full path to your script, you may still start it with *************** *** 378,404 **** but F<.exe> will be automatically appended if no dot is present in the name. The workaround as as simple as that: since F and F denote the same file, to start an executable residing in file F (no ! extension) give an argument C to system(). ! The last note is that currently it is not straightforward to start PM ! programs from VIO (=text-mode) Perl process and visa versa. Either ensure ! that shell will be used, as in C, or start it using optional arguments to system() documented in C module. This ! is considered a bug and should be fixed soon. ! =head1 Frequently asked questions =head2 I cannot run external programs =over 4 ! =item Did you run your programs with C<-w> switch? See L. ! =item Do you try to run I shell commands, like C<`copy a b`> (internal for F), or C<`glob a*b`> (internal for ksh)? You --- 388,422 ---- but F<.exe> will be automatically appended if no dot is present in the name. The workaround as as simple as that: since F and F denote the same file, to start an executable residing in file F (no ! extension) give an argument C (dot appended) to system(). ! Perl will correctly start PM programs from VIO (=text-mode) Perl process; ! the opposite is not true: when you start a non-PM program from a PM ! Perl process, it would not run it in a separate session. If a separate ! session is desired, either ensure ! that shell will be used, as in C, or start it using optional arguments to system() documented in C module. This ! is considered to be a feature. =head1 Frequently asked questions + =head2 "It does not work" + + Perl binary distributions come with a F script which tries + to detect common problems with misconfigured installations. There is a + pretty large chance it will discover which step of the installation you + managed to goof. C<;-)> + =head2 I cannot run external programs =over 4 ! =item * Did you run your programs with C<-w> switch? See L. ! =item * Do you try to run I shell commands, like C<`copy a b`> (internal for F), or C<`glob a*b`> (internal for ksh)? You *************** *** 444,450 **** This would start F via F via C via C, but this is a price to pay if you want to use non-conforming program. In fact F cannot be started at all ! using C library API only. Otherwise the following command-lines were equivalent: find "pattern" file --- 462,468 ---- This would start F via F via C via C, but this is a price to pay if you want to use non-conforming program. In fact F cannot be started at all ! using C library API only. Otherwise the following command-lines would be equivalent: find "pattern" file *************** *** 454,460 **** =head2 Automatic binary installation ! The most convenient way of installing perl is via perl installer F. Just follow the instructions, and 99% of the installation blues would go away. --- 472,478 ---- =head2 Automatic binary installation ! The most convenient way of installing a binary distribution of perl is via perl installer F. Just follow the instructions, and 99% of the installation blues would go away. *************** *** 542,567 **** unzip perl_mlb.zip -d f:/perllib/lib ! If this directory is preserved, you do not need to change ! anything. However, for perl to find it if it is changed, you need to C in F, see L<"PERLLIB_PREFIX">. =item Additional Perl modules ! unzip perl_ste.zip -d f:/perllib/lib/site_perl ! If you do not change this directory, do nothing. Otherwise put this directory and subdirectory F<./os2> in C or C variable. Do not use C unless you have it set already. See ! L. =item Tools to compile Perl modules unzip perl_blb.zip -d f:/perllib/lib ! If this directory is preserved, you do not need to change ! anything. However, for perl to find it if it is changed, you need to ! C in F, see L<"PERLLIB_PREFIX">. =item Manpages for Perl and utilities --- 560,587 ---- unzip perl_mlb.zip -d f:/perllib/lib ! If this directory is exactly the same as the prefix which was compiled ! into F, you do not need to change ! anything. However, for perl to find the library if you use a different ! path, you need to C in F, see L<"PERLLIB_PREFIX">. =item Additional Perl modules ! unzip perl_ste.zip -d f:/perllib/lib/site_perl/5.8.3/ ! Same remark as above applies. Additionally, if this directory is not ! one of directories on @INC (and @INC is influenced by C), you ! need to put this directory and subdirectory F<./os2> in C or C variable. Do not use C unless you have it set already. See ! L. =item Tools to compile Perl modules unzip perl_blb.zip -d f:/perllib/lib ! Same remark as for F. =item Manpages for Perl and utilities *************** *** 581,587 **** unzip perl_pod.zip -d f:/perllib/lib ! This is used by by C program (see L), and may be used to generate HTML documentation usable by WWW browsers, and documentation in zillions of other formats: C, C, C, C and so on. --- 601,607 ---- unzip perl_pod.zip -d f:/perllib/lib ! This is used by the C program (see L), and may be used to generate HTML documentation usable by WWW browsers, and documentation in zillions of other formats: C, C, C, C and so on. *************** *** 604,610 **** the above location. B It may be possible to use some other sh-compatible shell ! (I). =back --- 624,630 ---- the above location. B It may be possible to use some other sh-compatible shell ! (file globbing - if done via shell - may break). =back *************** *** 689,694 **** --- 709,716 ---- set MANPATH=c:/man;f:/perllib/man + for Perl manpages in C etc. + =head2 HTML If you have some WWW browser available, installed the Perl *************** *** 723,729 **** =head1 BUILD Here we discuss how to build Perl under OS/2. There is an alternative ! (but maybe older) view on L. =head2 Prerequisites --- 745,773 ---- =head1 BUILD Here we discuss how to build Perl under OS/2. There is an alternative ! (but maybe older) view on http://www.shadow.net/~troc/os2perl.html ! ! =head2 The short story ! ! Assume that you are a seasoned porter, so are sure that all the necessary ! tools are already present on your system, and you know how to get the Perl ! source distribution. Untar it, change to the extract directory, and ! ! gnupatch -p0 < os2\diff.configure ! sh Configure -des -D prefix=f:/perllib ! make ! make test ! make install ! make aout_test ! make aout_install ! ! This puts the executables in f:/perllib/bin. Manually move them to the ! C, manually move the built F to C (here F<*> is ! a not-very-meaningful hex checksum), and run ! ! make installcmd INSTALLCMDDIR=d:/ir/on/path ! ! What follows is a detailed guide through these steps. =head2 Prerequisites *************** *** 748,761 **** ftp://ftp.cdrom.com/pub/os2/emx09c/ It is reported that the following archives contain enough utils to ! build perl: gnufutil.zip, gnusutil.zip, gnututil.zip, gnused.zip, ! gnupatch.zip, gnuawk.zip, gnumake.zip and ksh527rt.zip. Note that ! all these utilities are known to be available from LEO: ftp://ftp.leo.org/pub/comp/os/os2/leo/gnu ! Make sure that no copies or perl are currently running. Later steps ! of the build may fail since an older version of perl.dll loaded into memory may be found. Also make sure that you have F directory on the current drive, --- 792,807 ---- ftp://ftp.cdrom.com/pub/os2/emx09c/ It is reported that the following archives contain enough utils to ! build perl: F, F, F, F, ! F, F, F, F and ! F (or a later version). Note that all these utilities are ! known to be available from LEO: ftp://ftp.leo.org/pub/comp/os/os2/leo/gnu ! If you have I installed already, ! make sure that no copies or perl are currently running. Later steps ! of the build may fail since an older version of F loaded into memory may be found. Also make sure that you have F directory on the current drive, *************** *** 776,782 **** shows you do not have it, do I, and choose C in I. If you get into ! link386, press C. =head2 Getting perl source --- 822,828 ---- shows you do not have it, do I, and choose C in I. If you get into ! link386 prompts, press C to exit. =head2 Getting perl source *************** *** 817,844 **** distribution of perl. Note also that the F and F from the EMX distribution ! are not suitable for multi-threaded compile (note that currently perl ! is not multithread-safe, but is compiled as multithreaded for compatibility with XFree86-OS/2). Get a corrected one from ftp://ftp.math.ohio-state.edu/pub/users/ilya/os2/db_mt.zip - To make C<-p> filetest work, one may also need to apply the following patch - to EMX headers: - - --- /emx/include/sys/stat.h.orig Thu May 23 13:48:16 1996 - +++ /emx/include/sys/stat.h Sun Jul 12 14:11:32 1998 - @@ -53,7 +53,7 @@ struct stat - #endif - - #if !defined (S_IFMT) - -#define S_IFMT 0160000 /* Mask for file type */ - +#define S_IFMT 0170000 /* Mask for file type */ - #define S_IFIFO 0010000 /* Pipe */ - #define S_IFCHR 0020000 /* Character device */ - #define S_IFDIR 0040000 /* Directory */ - - =head2 Hand-editing You may look into the file F<./hints/os2.sh> and correct anything --- 863,874 ---- distribution of perl. Note also that the F and F from the EMX distribution ! are not suitable for multi-threaded compile (even single-threaded ! flavor of Perl uses multi-threaded C RTL, for compatibility with XFree86-OS/2). Get a corrected one from ftp://ftp.math.ohio-state.edu/pub/users/ilya/os2/db_mt.zip =head2 Hand-editing You may look into the file F<./hints/os2.sh> and correct anything *************** *** 853,890 **** see L<"PERLLIB_PREFIX">. I, and about C<-c> option to ! tr>. In fact if you can trace where the latter spurious warning ! comes from, please inform me. Now make At some moment the built may die, reporting a I or ! I>. This means that most of the build has been ! finished, and it is the time to move the constructed F to ! some I location in LIBPATH. After this is done the build ! should finish without a lot of fuss. I on LIBPATH, but ! probably this is not needed anymore, since F is linked ! statically now.> ! ! Warnings which are safe to ignore: I inside ! F. =head2 Testing - If you haven't yet moved perl.dll onto LIBPATH, do it now (alternatively, if - you have a previous perl installation you'd rather not disrupt until this one - is installed, copy perl.dll to the t directory). - Now run make test ! All tests should succeed (with some of them skipped). Note that on one ! of the systems I see intermittent failures of F subtest 9. ! Any help to track what happens with this test is appreciated. Some tests may generate extra messages similar to --- 883,908 ---- see L<"PERLLIB_PREFIX">. I, and about C<-c> option to ! tr>. The latter is most probably already fixed, if you see it and can trace ! where the latter spurious warning comes from, please inform me. Now make At some moment the built may die, reporting a I or ! I>. This means that you do not have F<.> in ! your LIBPATH, so F cannot find the needed F (treat ! these hex digits as line noise). After this is fixed the build ! should finish without a lot of fuss. =head2 Testing Now run make test ! All tests should succeed (with some of them skipped). Some tests may generate extra messages similar to *************** *** 892,907 **** =item A lot of C ! in database tests related to Berkeley DB. This is a confirmed bug of ! DB. You may disable this warnings, see L<"PERL_BADFREE">. ! ! There is not much we can do with it (but apparently it does not cause ! any real error with data). =item Process terminated by SIGTERM/SIGINT This is a standard message issued by OS/2 applications. *nix ! applications die in silence. It is considered a feature. One can easily disable this by appropriate sighandlers. However the test engine bleeds these message to screen in unexpected --- 910,922 ---- =item A lot of C ! in database tests related to Berkeley DB. I ! If it persists, you may disable this warnings, see L<"PERL_BADFREE">. =item Process terminated by SIGTERM/SIGINT This is a standard message issued by OS/2 applications. *nix ! applications die in silence. It is considered to be a feature. One can easily disable this by appropriate sighandlers. However the test engine bleeds these message to screen in unexpected *************** *** 910,924 **** =back - Two F tests may generate popups (system error C), - but should succeed anyway. This is due to a bug of EMX related to - fork()ing with dynamically loaded libraries. - - I submitted a patch to EMX which makes it possible to fork() with EMX - dynamic libraries loaded, which makes F tests pass without - skipping offended tests. This means that soon the number of skipped tests - may decrease yet more. - To get finer test reports, call perl t/harness --- 925,930 ---- *************** *** 951,966 **** =back - =item F - - Checks C module. Some feature of EMX - test fork()s with - dynamic extension loaded - unsupported now. - - =item F - - Checks C module. Some feature of EMX - test fork()s - with dynamic extension loaded - unsupported now. - =item F Checks C. Tests: --- 957,962 ---- *************** *** 974,984 **** =back - =item F - - It never terminates, apparently some bug in storing the last socket from - which we obtained a message. - =back =head2 Installing the built perl --- 970,975 ---- *************** *** 995,1001 **** Run ! make cmdscripts INSTALLCMDDIR=d:/ir/on/path to convert perl utilities to F<.cmd> files and put them on PATH. You need to put F<.EXE>-utilities on path manually. They are --- 986,992 ---- Run ! make installcmd INSTALLCMDDIR=d:/ir/on/path to convert perl utilities to F<.cmd> files and put them on PATH. You need to put F<.EXE>-utilities on path manually. They are *************** *** 1015,1035 **** Manually put F to a location on your PATH. - Since C has the extensions prebuilt, it does not suffer from - the I syndrome, thus the failing tests - look like - - Failed Test Status Wstat Total Fail Failed List of failed - --------------------------------------------------------------- - io/fs.t 26 11 42.31% 2-5, 7-11, 18, 25 - op/stat.t 56 5 8.93% 3-4, 20, 35, 39 - Failed 2/118 test scripts, 98.31% okay. 16/2445 subtests failed, 99.35% okay. - B The build process for C I about all the dependencies, so you should make sure that anything is up-to-date, say, by doing ! make perl.dll first. --- 1006,1016 ---- Manually put F to a location on your PATH. B The build process for C I about all the dependencies, so you should make sure that anything is up-to-date, say, by doing ! make perl_dll first. *************** *** 1060,1065 **** --- 1041,1050 ---- You use an old version of GNU make. See L. + =head2 op/sprintf test failure + + This can result from a bug in emx sprintf which was fixed in 0.9d fix 03. + =head1 Specific (mis)features of OS/2 port =head2 C, C *************** *** 1068,1095 **** ports of '94 - 95. The priorities are absolute, go from 32 to -95, lower is quicker. 0 is the default priority. =head2 C Multi-argument form of C allows an additional numeric argument. The meaning of this argument is described in L. =head2 C on the first line ! If the first chars of a script are C<"extproc ">, this line is treated as C<#!>-line, thus all the switches on this line are processed (twice ! if script was started via cmd.exe). =head2 Additional modules: ! L, L, L, L. These modules provide access to additional numeric argument for C ! and to the list of the running processes, ! to DLLs having functions with REXX signature and to REXX runtime, to OS/2 databases in the F<.INI> format, and to Extended Attributes. Two additional extensions by Andreas Kaiser, C, and ! C, are included into my ftp directory, mirrored on CPAN. =head2 Prebuilt methods: --- 1053,1119 ---- ports of '94 - 95. The priorities are absolute, go from 32 to -95, lower is quicker. 0 is the default priority. + B. Calling C on a non-existing process can lock the + system before Warp3 fixpak22. + =head2 C Multi-argument form of C allows an additional numeric argument. The meaning of this argument is described in L. + When finding a program to run, Perl first asks the OS to look for executables + on C. If not found, it looks for a script with possible extensions + added in this order: no extension, F<.cmd>, F<.btm>, + F<.bat>, F<.pl>. If found, Perl checks the start of the file for magic + strings C<"#!"> and C<"extproc ">. If found, Perl uses the rest of the + first line as the beginning of the command line to run this script. The + only mangling done to the first line is extraction of arguments (currently + up to 3), and ignoring of the path-part of the "interpreter" name if it can't + be found using the full path. + + E.g., C may lead Perl to finding + F with the first line being + + extproc /bin/bash -x -c + + If F is not found, and appending of executable extensions to + F does not help either, then Perl looks for an executable F on + C. If found in F, then the above system() is + translated to + + system qw(C:/emx.add/bin/bash.exe -x -c C:/emx/bin/foo.cmd bar baz) + + One additional translation is performed: instead of F Perl uses + the hardwired-or-customized shell (see C>). + + The above search for "interpreter" is recursive: if F executable is not + found, but F is found, Perl will investigate its first line etc. + The only hardwired limit on the recursion depth is implicit: there is a limit + 4 on the number of additional arguments inserted before the actual arguments + given to system(). In particular, if no additional arguments are specified + on the "magic" first lines, then the limit on the depth is 4. + + If Perl finds that the found executable is of different type than the + current session, it will start the new process in a separate session of + necessary type. Call via C to disable this magic. + =head2 C on the first line ! If the first chars of a Perl script are C<"extproc ">, this line is treated as C<#!>-line, thus all the switches on this line are processed (twice ! if script was started via cmd.exe). See L. =head2 Additional modules: ! L, L, L, L, L. These modules provide access to additional numeric argument for C ! and to the information about the running process, ! to DLLs having functions with REXX signature and to the REXX runtime, to OS/2 databases in the F<.INI> format, and to Extended Attributes. Two additional extensions by Andreas Kaiser, C, and ! C, are included into C directory, mirrored on CPAN. =head2 Prebuilt methods: *************** *** 1113,1118 **** --- 1137,1143 ---- =item C + chanes the "current" drive. =item C *************** *** 1148,1175 **** present and I, works with END_LIBPATH, otherwise with C. =back (Note that some of these may be moved to different libraries - eventually). =head2 Misfeatures =over 4 ! =item Since L is present in EMX, but is not functional, it is emulated by perl. To disable the emulations, set environment variable C. ! =item Here is the list of things which may be "broken" on EMX (from EMX docs): ! =over =item * --- 1173,1308 ---- present and I, works with END_LIBPATH, otherwise with C. + =item C + + Returns C if it was not called yet, otherwise bit 1 is + set if on the previous call do_harderror was enabled, bit + 2 is set if if on previous call do_exception was enabled. + + This function enables/disables error popups associated with + hardware errors (Disk not ready etc.) and software exceptions. + + I know of no way to find out the state of popups I the first call + to this function. + + =item C + + Returns C if it was not called yet, otherwise return false if errors + were not requested to be written to a hard drive, or the drive letter if + this was requested. + + This function may redirect error popups associated with hardware errors + (Disk not ready etc.) and software exceptions to the file POPUPLOG.OS2 at + the root directory of the specified drive. Overrides OS2::Error() specified + by individual programs. Given argument undef will disable redirection. + + Has global effect, persists after the application exits. + + I know of no way to find out the state of redirection of popups to the disk + I the first call to this function. + + =item OS2::SysInfo() + + Returns a hash with system information. The keys of the hash are + + MAX_PATH_LENGTH, MAX_TEXT_SESSIONS, MAX_PM_SESSIONS, + MAX_VDM_SESSIONS, BOOT_DRIVE, DYN_PRI_VARIATION, + MAX_WAIT, MIN_SLICE, MAX_SLICE, PAGE_SIZE, + VERSION_MAJOR, VERSION_MINOR, VERSION_REVISION, + MS_COUNT, TIME_LOW, TIME_HIGH, TOTPHYSMEM, TOTRESMEM, + TOTAVAILMEM, MAXPRMEM, MAXSHMEM, TIMER_INTERVAL, + MAX_COMP_LENGTH, FOREGROUND_FS_SESSION, + FOREGROUND_PROCESS + + =item OS2::BootDrive() + + Returns a letter without colon. + + =item C, C + + Transforms the current application into a PM application and back. + The argument true means that a real message loop is going to be served. + OS2::MorphPM() returns the PM message queue handle as an integer. + + See L<"Centralized management of resources"> for additional details. + + =item C + + Fake on-demand retrieval of outstanding PM messages. If C is false, + will not dispatch messages if a real message loop is known to + be present. Returns number of messages retrieved. + + Dies with "QUITing..." if WM_QUIT message is obtained. + + =item C + + Retrieval of PM messages until window creation/destruction. + If C is false, will not dispatch messages if a real message loop + is known to be present. + + Returns change in number of windows. If C is given, + it is incremented by the number of messages retrieved. + + Dies with "QUITing..." if WM_QUIT message is obtained. + + =item C + + the same as L<_control87(3)> of EMX. Takes integers as arguments, returns + the previous coprocessor control word as an integer. Only bits in C which + are present in C are changed in the control word. + + =item OS2::get_control87() + + gets the coprocessor control word as an integer. + + =item C + + The variant of OS2::_control87() with default values good for + handling exception mask: if no C, uses exception mask part of C + only. If no C, disables all the floating point exceptions. + + See L<"Misfeatures"> for details. + =back (Note that some of these may be moved to different libraries - eventually). + =head2 Prebuilt variables: + + =over 4 + + =item $OS2::emx_rev + + same as _emx_rev of EMX, a string similar to C<0.9c>. + + =item $OS2::emx_env + + same as _emx_env of EMX, a number similar to 0x8001. + + =item $OS2::os_ver + + a number C. + + =back + =head2 Misfeatures =over 4 ! =item * Since L is present in EMX, but is not functional, it is emulated by perl. To disable the emulations, set environment variable C. ! =item * Here is the list of things which may be "broken" on EMX (from EMX docs): ! =over 4 =item * *************** *** 1200,1206 **** Note that C does not work with the current version of EMX. ! =item Since F is used for globing (see L), the bugs of F plague perl as well. --- 1333,1339 ---- Note that C does not work with the current version of EMX. ! =item * Since F is used for globing (see L), the bugs of F plague perl as well. *************** *** 1208,1213 **** --- 1341,1393 ---- In particular, uppercase letters do not work in C<[...]>-patterns with the current pdksh. + =item * + + Unix-domain sockets on OS/2 live in a pseudo-file-system C. + To avoid a failure to create a socket with a name of a different form, + C<"/socket/"> is prepended to the socket name (unless it starts with this + already). + + This may lead to problems later in case the socket is accessed via the + "usual" file-system calls using the "initial" name. + + =item * + + Apparently, IBM used a compiler (for some period of time around '95?) which + changes FP mask right and left. This is not I bad for IBM's + programs, but the same compiler was used for DLLs which are used with + general-purpose applications. When these DLLs are used, the state of + floating-point flags in the application is not predictable. + + What is much worse, some DLLs change the floating point flags when in + _DLLInitTerm() (e.g., F). This means that even if you do not I + any function in the DLL, just the act of loading this DLL will reset your + flags. What is worse, the same compiler was used to compile some HOOK DLLs. + Given that HOOK dlls are executed in the context of I the applications + in the system, this means a complete unpredictablity of floating point + flags on systems using such HOOK DLLs. E.g., F of B + origin changes the floating point flags on each write to the TTY of a VIO + (windowed text-mode) applications. + + Some other (not completely debugged) situations when FP flags change include + some video drivers (?), and some operations related to creation of the windows. + People who code B may have more experience on this. + + Perl is generally used in the situation when all the floating-point + exceptions are ignored, as is the default under EMX. If they are not ignored, + some benign Perl programs would get a C and would die a horrible death. + + To circumvent this, Perl uses two hacks. They help against I type of + damage only: FP flags changed when loading a DLL. + + One of the hacks is to disable floating point exceptions on startup (as + is the default with EMX). This helps only with compile-time-linked DLLs + changing the flags before main() had a chance to be called. + + The other hack is to restore FP flags after a call to dlopen(). This helps + against similar damage done by DLLs _DLLInitTerm() at runtime. Currently + no way to switch these hacks off is provided. + =back =head2 Modifications *************** *** 1238,1243 **** --- 1418,1428 ---- C special-cases F and F. + =item C, C + + these EMX functions do not work if the path contains a trailing C. + Perl contains a workaround for this. + =item C Since L is present in EMX, but is not functional, it is *************** *** 1246,1251 **** --- 1431,1500 ---- =back + =head2 Identifying DLLs + + All the DLLs built with the current versions of Perl have ID strings + identifying the name of the extension, its version, and the version + of Perl required for this DLL. Run C to find this + info. + + =head2 Centralized management of resources + + Since to call certain OS/2 API one needs to have a correctly initialized + C subsystem, OS/2-specific extensions may require getting Cs and + Cs. If an extension would do it on its own, another extension could + fail to initialize. + + Perl provides a centralized management of these resources: + + =over + + =item C + + To get the HAB, the extension should call C in C. After + this call is performed, C may be accessed as C. There is + no need to release the HAB after it is used. + + If by some reasons F cannot be included, use + + extern int Perl_hab_GET(void); + + instead. + + =item C + + There are two cases: + + =over + + =item * + + the extension needs an C only because some API will not work otherwise. + Use C below. + + =item * + + the extension needs an C since it wants to engage in a PM event loop. + Use C below. + + =back + + To get an C, the extension should call C in C. + After this call is performed, C may be accessed as C. + + To signal to Perl that HMQ is not needed any more, call + C. Perl process will automatically morph/unmorph itself + into/from a PM process if HMQ is needed/not-needed. Perl will automatically + enable/disable C message during shutdown if the message queue is + served/not-served. + + B. If during a shutdown there is a message queue which did not disable + WM_QUIT, and which did not process the received WM_QUIT message, the + shutdown will be automatically cancelled. Do not call C + unless you are going to process messages on an orderly basis. + + =back + =head1 Perl flavors Because of idiosyncrasies of OS/2 one cannot have all the eggs in the *************** *** 1260,1288 **** library F, and with dynamic CRT DLL. This executable is a VIO application. ! It can load perl dynamic extensions, and it can fork(). Unfortunately, ! with the current version of EMX it cannot fork() with dynamic ! extensions loaded (may be fixed by patches to EMX). B Keep in mind that fork() is needed to open a pipe to yourself. =head2 F ! This is a statically linked C-style executable. It can fork(), ! but cannot load dynamic Perl extensions. The supplied executable has a ! lot of extensions prebuilt, thus there are situations when it can ! perform tasks not possible using F, like fork()ing when ! having some standard extension loaded. This executable is a VIO application. ! B A better behaviour could be obtained from C if it ! were statically linked with standard I, but ! dynamically linked with the I and CRT DLL. Then it would ! be able to fork() with standard extensions, I would be able to ! dynamically load arbitrary extensions. Some changes to Makefiles and ! hint files should be necessary to achieve this. ! ! I The friends locked into C world would appreciate the fact that this executable runs under DOS, Win0.3*, Win0.95 and WinNT with an appropriate extender. See L<"Other OSes">. --- 1509,1527 ---- library F, and with dynamic CRT DLL. This executable is a VIO application. ! It can load perl dynamic extensions, and it can fork(). B Keep in mind that fork() is needed to open a pipe to yourself. =head2 F ! This is a statically linked C-style executable. It cannot ! load dynamic Perl extensions. The executable supplied in binary ! distributions has a lot of extensions prebuilt, thus the above restriction is ! important only if you use custom-built extensions. This executable is a VIO application. ! I The friends locked into C world would appreciate the fact that this executable runs under DOS, Win0.3*, Win0.95 and WinNT with an appropriate extender. See L<"Other OSes">. *************** *** 1292,1306 **** This is the same executable as F, but it is a PM application. ! B Usually STDIN, STDERR, and STDOUT of a PM ! application are redirected to C. However, it is possible to see them if you start C from a PM program which emulates a console window, like I of Emacs or EPM. Thus it I to use Perl debugger (see L) to debug your PM ! application. ! This flavor is required if you load extensions which use PM, like ! the forthcoming C. =head2 F --- 1531,1560 ---- This is the same executable as F, but it is a PM application. ! B Usually (unless explicitly redirected during the startup) ! STDIN, STDERR, and STDOUT of a PM ! application are redirected to F. However, it is possible to I them if you start C from a PM program which emulates a console window, like I of Emacs or EPM. Thus it I to use Perl debugger (see L) to debug your PM ! application (but beware of the message loop lockups - this will not ! work if you have a message queue to serve, unless you hook the serving ! into the getc() function of the debugger). ! ! Another way to see the output of a PM program is to run it as ! ! pm_prog args 2>&1 | cat - ! with a shell I from F, so that it does not create ! a link between a VIO session and the session of C. (Such a link ! closes the VIO window.) E.g., this works with F - or with Perl! ! ! open P, 'pm_prog args 2>&1 |' or die; ! print while

; ! ! The flavor F is required if you want to start your program without ! a VIO window present, but not Ced (run C for more info). ! Very useful for extensions which use PM, like C or C. =head2 F *************** *** 1326,1362 **** Well, having several executables dynamically linked to the same huge library has its advantages, but this would not substantiate the ! additional work to make it compile. The reason is stupid-but-quick ! "hard" dynamic linking used by OS/2. The address tables of DLLs are patched only once, when they are ! loaded. The addresses of entry points into DLLs are guaranteed to be ! the same for all programs which use the same DLL, which reduces the ! amount of runtime patching - once DLL is loaded, its code is ! read-only. ! ! While this allows some performance advantages, this makes life ! terrible for developers, since the above scheme makes it impossible ! for a DLL to be resolved to a symbol in the .EXE file, since this would need a DLL to have different relocations tables for the ! executables which use it. ! However, a Perl extension is forced to use some symbols from the perl ! executable, say to know how to find the arguments provided on the perl ! internal evaluation stack. The solution is that the main code of ! interpreter should be contained in a DLL, and the F<.EXE> file just loads ! this DLL into memory and supplies command-arguments. This I increases the load time for the application (as well as ! the number of problems during compilation). Since interpreter is in a DLL, ! the CRT is basically forced to reside in a DLL as well (otherwise ! extensions would not be able to use CRT). =head2 Why chimera build? Current EMX environment does not allow DLLs compiled using Unixish ! C format to export symbols for data. This forces C-style ! compile of F. Current EMX environment does not allow F<.EXE> files compiled in C format to fork(). fork() is needed for exactly three Perl --- 1580,1646 ---- Well, having several executables dynamically linked to the same huge library has its advantages, but this would not substantiate the ! additional work to make it compile. The reason is the complicated-to-developers ! but very quick and convenient-to-users "hard" dynamic linking used by OS/2. ! ! There are two distinctive features of the dyna-linking model of OS/2: ! all the references to external functions are resolved at the compile time; ! there is no runtime fixup of the DLLs after they are loaded into memory. ! The first feature is an enormous advantage over other models: it avoids ! conflicts when several DLLs used by an application export entries with ! the same name. In such cases "other" models of dyna-linking just choose ! between these two entry points using some random criterion - with predictable ! disasters as results. But it is the second feature which requires the build ! of F. The address tables of DLLs are patched only once, when they are ! loaded. The addresses of the entry points into DLLs are guaranteed to be ! the same for all the programs which use the same DLL. This removes the ! runtime fixup - once DLL is loaded, its code is read-only. ! ! While this allows some (significant?) performance advantages, this makes life ! much harder for developers, since the above scheme makes it impossible ! for a DLL to be "linked" to a symbol in the F<.EXE> file. Indeed, this would need a DLL to have different relocations tables for the ! (different) executables which use this DLL. ! However, a dynamically loaded Perl extension is forced to use some symbols ! from the perl ! executable, e.g., to know how to find the arguments to the functions: ! the arguments live on the perl ! internal evaluation stack. The solution is to put the main code of ! the interpreter into a DLL, and make the F<.EXE> file which just loads ! this DLL into memory and supplies command-arguments. The extension DLL ! cannot link to symbols in F<.EXE>, but it has no problem linking ! to symbols in the F<.DLL>. This I increases the load time for the application (as well as ! complexity of the compilation). Since interpreter is in a DLL, ! the C RTL is basically forced to reside in a DLL as well (otherwise ! extensions would not be able to use CRT). There are some advantages if ! you use different flavors of perl, such as running F and ! F simultaneously: they share the memory of F. ! ! B. There is one additional effect which makes DLLs more wasteful: ! DLLs are loaded in the shared memory region, which is a scarse resource ! given the 512M barrier of the "standard" OS/2 virtual memory. The code of ! F<.EXE> files is also shared by all the processes which use the particular ! F<.EXE>, but they are "shared in the private address space of the process"; ! this is possible because the address at which different sections ! of the F<.EXE> file are loaded is decided at compile-time, thus all the ! processes have these sections loaded at same addresses, and no fixup ! of internal links inside the F<.EXE> is needed. ! ! Since DLLs may be loaded at run time, to have the same mechanism for for DLLs ! one needs to have the address range of I DLLs in the ! system to be available I which did not load a particular ! DLL yet. This is why the DLLs are mapped to the shared memory region. =head2 Why chimera build? Current EMX environment does not allow DLLs compiled using Unixish ! C format to export symbols for data (or at least some types of ! data). This forces C-style compile of F. Current EMX environment does not allow F<.EXE> files compiled in C format to fork(). fork() is needed for exactly three Perl *************** *** 1364,1383 **** =over 4 ! =item explicit fork() ! in the script, and ! =item open FH, "|-" ! =item open FH, "-|" ! opening pipes to itself. =back ! While these operations are not questions of life and death, a lot of ! useful scripts use them. This forces C-style compile of F. --- 1648,1670 ---- =over 4 ! =item * ! explicit fork() in the script, ! =item * ! C ! =item * ! ! C, in other words, opening pipes to itself. =back ! While these operations are not questions of life and death, they are ! needed for a lot of ! useful scripts. This forces C-style compile of F. *************** *** 1401,1422 **** Should be used if the perl library is moved from the default location in preference to C, since this would not leave wrong ! entries in @INC. Say, if the compiled version of perl looks for @INC in F, and you want to install the library in F, do set PERLLIB_PREFIX=f:/perllib/lib;h:/opt/gnu =head2 C ! If 1, perl ignores setlocale() failing. May be useful with some strange Is. =head2 C ! If 1, perl would not warn of in case of unwarranted free(). May be ! useful in conjunction with the module DB_File, since Berkeley DB ! memory handling code is buggy. =head2 C --- 1688,1728 ---- Should be used if the perl library is moved from the default location in preference to C, since this would not leave wrong ! entries in @INC. For example, if the compiled version of perl looks for @INC in F, and you want to install the library in F, do set PERLLIB_PREFIX=f:/perllib/lib;h:/opt/gnu + This will cause Perl with the prebuilt @INC of + + f:/perllib/lib/5.00553/os2 + f:/perllib/lib/5.00553 + f:/perllib/lib/site_perl/5.00553/os2 + f:/perllib/lib/site_perl/5.00553 + . + + to use the following @INC: + + h:/opt/gnu/5.00553/os2 + h:/opt/gnu/5.00553 + h:/opt/gnu/site_perl/5.00553/os2 + h:/opt/gnu/site_perl/5.00553 + . + =head2 C ! If 0, perl ignores setlocale() failing. May be useful with some strange Is. =head2 C ! If 0, perl would not warn of in case of unwarranted free(). With older ! perls this might be ! useful in conjunction with the module DB_File, which was buggy when ! dynamically linked and OMF-built. ! ! Should not be set with newer Perls, since this may hide some I problems. =head2 C *************** *** 1431,1438 **** =head2 C or C ! Specific for EMX port. Used as storage place for temporary files, most ! notably C<-e> scripts. =head1 Evolution --- 1737,1743 ---- =head2 C or C ! Specific for EMX port. Used as storage place for temporary files. =head1 Evolution *************** *** 1446,1463 **** =head2 DLL name mangling With the release 5.003_01 the dynamically loadable libraries ! should be rebuilt. In particular, DLLs are now created with the names which contain a checksum, thus allowing workaround for OS/2 scheme of caching DLLs. =head2 Threading ! As of release 5.003_01 perl is linked to multithreaded CRT ! DLL. If perl itself is not compiled multithread-enabled, so will not be perl malloc(). However, extensions may use multiple thread on their own risk. ! Needed to compile C for XFree86-OS/2 out-of-the-box. =head2 Calls to external programs --- 1751,1797 ---- =head2 DLL name mangling With the release 5.003_01 the dynamically loadable libraries ! should be rebuilt when a different version of Perl is compiled. In particular, ! DLLs (including F) are now created with the names which contain a checksum, thus allowing workaround for OS/2 scheme of caching DLLs. + It may be possible to code a simple workaround which would + + =over + + =item * + + find the old DLLs looking through the old @INC; + + =item * + + mangle the names according to the scheme of new perl and copy the DLLs to + these names; + + =item * + + edit the internal C tables of DLL to reflect the change of the name + (probably not needed for Perl extension DLLs, since the internally coded names + are not used for "specific" DLLs, they used only for "global" DLLs). + + =item * + + edit the internal C tables and change the name of the "old" + F to the "new" F. + + =back + =head2 Threading ! As of release 5.003_01 perl is linked to multithreaded C RTL ! DLL. If perl itself is not compiled multithread-enabled, so will not be perl's malloc(). However, extensions may use multiple thread on their own risk. ! This was needed to compile C for XFree86-OS/2 out-of-the-box, and ! link with DLLs for other useful libraries, which typically are compiled ! with C<-Zmt -Zcrtdll>. =head2 Calls to external programs *************** *** 1467,1487 **** whatever is the override, see L<"PERL_SH_DIR">. Thus means that you need to get some copy of a F as well (I ! use one from pdksh). The drive F above is set up automatically during the build to a correct value on the builder machine, but is overridable at runtime, B a consensus on C was that perl should use one non-overridable shell per platform. The obvious choices for OS/2 are F and F. Having perl build itself would be impossible ! with F as a shell, thus I picked up C. Thus assures almost 100% compatibility with the scripts coming from *nix. As an added benefit this works as well under DOS if you use DOS-enabled port of pdksh (see L<"Prerequisites">). B currently F of pdksh calls external programs via fork()/exec(), and there is I functioning exec() on ! OS/2. exec() is emulated by EMX by asyncroneous call while the caller waits for child completion (to pretend that the C did not change). This means that 1 I copy of F is made active via fork()/exec(), which may lead to some resources taken from the system (even if we do --- 1801,1821 ---- whatever is the override, see L<"PERL_SH_DIR">. Thus means that you need to get some copy of a F as well (I ! use one from pdksh). The path F above is set up automatically during the build to a correct value on the builder machine, but is overridable at runtime, B a consensus on C was that perl should use one non-overridable shell per platform. The obvious choices for OS/2 are F and F. Having perl build itself would be impossible ! with F as a shell, thus I picked up C. This assures almost 100% compatibility with the scripts coming from *nix. As an added benefit this works as well under DOS if you use DOS-enabled port of pdksh (see L<"Prerequisites">). B currently F of pdksh calls external programs via fork()/exec(), and there is I functioning exec() on ! OS/2. exec() is emulated by EMX by an asynchronous call while the caller waits for child completion (to pretend that the C did not change). This means that 1 I copy of F is made active via fork()/exec(), which may lead to some resources taken from the system (even if we do *************** *** 1510,1523 **** cannot test it. For the details of the current situation with calling external programs, ! see L. ! =over ! =item ! External scripts may be called by name. Perl will try the same extensions ! as when processing B<-S> command-line switch. =back --- 1844,1864 ---- cannot test it. For the details of the current situation with calling external programs, ! see L. Set us mention a couple ! of features: ! =over 4 ! ! =item * ! ! External scripts may be called by their basename. Perl will try the same ! extensions as when processing B<-S> command-line switch. ! =item * ! External scripts starting with C<#!> or C will be executed directly, ! without calling the shell, by calling the program specified on the rest of ! the first line. =back *************** *** 1525,1533 **** Perl uses its own malloc() under OS/2 - interpreters are usually malloc-bound for speed, but perl is not, since its malloc is lightning-fast. ! Perl-memory-usage-tuned benchmarks show that Perl's malloc is 5 times quickier ! than EMX one. I do not have convincing data about memory footpring, but ! a (pretty random) benchmark showed that Perl one is 5% better. Combination of perl's malloc() and rigid DLL name resolution creates a special problem with library functions which expect their return value to --- 1866,1874 ---- Perl uses its own malloc() under OS/2 - interpreters are usually malloc-bound for speed, but perl is not, since its malloc is lightning-fast. ! Perl-memory-usage-tuned benchmarks show that Perl's malloc is 5 times quicker ! than EMX one. I do not have convincing data about memory footprint, but ! a (pretty random) benchmark showed that Perl's one is 5% better. Combination of perl's malloc() and rigid DLL name resolution creates a special problem with library functions which expect their return value to *************** *** 1544,1555 **** Most notable problems: ! =over =item C may have a race condition. Needs a reimplementation (in terms of chaining ! waiting threads, with linker list stored in per-thread structure?). =item F --- 1885,1896 ---- Most notable problems: ! =over 4 =item C may have a race condition. Needs a reimplementation (in terms of chaining ! waiting threads, with the linked list stored in per-thread structure?). =item F Index: README.os390 ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/README.os390 Tue Jul 20 10:17:52 1999 --- perl-5.6.1/README.os390 Sun Mar 18 19:03:33 2001 *************** *** 1,5 **** This document is written in pod format hence there are punctuation ! characters in in odd places. Do not worry, you've apparently got the ASCII->EBCDIC translation worked out correctly. You can read more about pod in pod/perlpod.pod or the short summary in the INSTALL file. --- 1,6 ---- + This document is written in pod format hence there are punctuation ! characters in odd places. Do not worry, you've apparently got the ASCII->EBCDIC translation worked out correctly. You can read more about pod in pod/perlpod.pod or the short summary in the INSTALL file. *************** *** 15,26 **** =head1 DESCRIPTION ! This is a fully ported perl for OS/390 Release 3, 5 and 6. ! It may work on other versions, but those are the ones we've ! tested it on. You may need to carry out some system configuration tasks before ! running the Configure script for perl. =head2 Unpacking --- 16,27 ---- =head1 DESCRIPTION ! This is a fully ported Perl for OS/390 Version 2 Release 3, 5, 6, 7, ! 8, and 9. It may work on other versions or releases, but those are ! the ones we've tested it on. You may need to carry out some system configuration tasks before ! running the Configure script for Perl. =head2 Unpacking *************** *** 41,52 **** This may also be a good time to ensure that your /etc/protocol file and either your /etc/resolv.conf or /etc/hosts files are in place. ! GNU make for OS/390, which may be required for the build of perl, ! is available from: http://www.mks.com/s390/gnu/index.htm =head2 Configure Once you've unpacked the distribution, run "sh Configure" (see INSTALL --- 42,92 ---- This may also be a good time to ensure that your /etc/protocol file and either your /etc/resolv.conf or /etc/hosts files are in place. + The IBM document that described such USS system setup issues was + SC28-1890-07 "OS/390 UNIX System Services Planning", in particular + Chapter 6 on customizing the OE shell. ! GNU make for OS/390, which is recommended for the build of perl (as well as ! building CPAN modules and extensions), is available from: http://www.mks.com/s390/gnu/index.htm + Some people have reported encountering "Out of memory!" errors while + trying to build Perl using GNU make binaries. If you encounter such + trouble then try to download the source code kit and build GNU make + from source to eliminate any such trouble. You might also find GNU make + (as well as Perl and Apache) in the red-piece/book "Open Source Software + for OS/390 UNIX", SG24-5944-00 from IBM. + + If instead of the recommended GNU make you would like to use the system + supplied make program then be sure to install the default rules file + properly via the shell command: + + cp /samples/startup.mk /etc + + and be sure to also set the environment variable _C89_CCMODE=1 (exporting + _C89_CCMODE=1 is also a good idea for users of GNU make). + + You might also want to have GNU groff for OS/390 installed before + running the `make install` step for Perl. + + There is a syntax error in the /usr/include/sys/socket.h header file + that IBM supplies with USS V2R7, V2R8, and possibly V2R9. The problem with + the header file is that near the definition of the SO_REUSEPORT constant + there is a spurious extra '/' character outside of a comment like so: + + #define SO_REUSEPORT 0x0200 /* allow local address & port + reuse */ / + + You could edit that header yourself to remove that last '/', or you might + note that Language Environment (LE) APAR PQ39997 describes the problem + and PTF's UQ46272 and UQ46271 are the (R8 at least) fixes and apply them. + If left unattended that syntax error will turn up as an inability for Perl + to build its "Socket" extension. + + For successful testing you may need to turn on the sticky bit for your + world readable /tmp directory if you have not already done so (see man chmod). + =head2 Configure Once you've unpacked the distribution, run "sh Configure" (see INSTALL *************** *** 58,82 **** =item * ! Some of the parser default template files in /samples are needed in /etc. ! In particular be sure that you at least copy /samples/yyparse.c to /etc ! before running perl's Configure. This step ensures successful extraction ! of EBCDIC versions of parser files such as perly.c. =item * ! This port doesn't support dynamic loading. Although ! OS/390 has support for DLLs, there are some differences ! that cause problems for perl. =item * ! You may see a "WHOA THERE!!!" message for $d_shmatprototype ! it is OK to keep the recommended "define". =item * ! Don't turn on the compiler optimization flag "-O". There's a bug in either the optimizer or perl that causes perl to not work correctly when the optimizer is on. --- 98,143 ---- =item * ! A message of the form: ! ! (I see you are using the Korn shell. Some ksh's blow up on Configure, ! mainly on older exotic systems. If yours does, try the Bourne shell instead.) ! ! is nothing to worry about at all. =item * ! Some of the parser default template files in /samples are needed in /etc. ! In particular be sure that you at least copy /samples/yyparse.c to /etc ! before running Perl's Configure. This step ensures successful extraction ! of EBCDIC versions of parser files such as perly.c, perly.h, and x2p/a2p.c. ! This has to be done before running Configure the first time. If you failed ! to do so then the easiest way to re-Configure Perl is to delete your ! misconfigured build root and re-extract the source from the tar ball. ! Then you must ensure that /etc/yyparse.c is properly in place before ! attempting to re-run Configure. =item * ! This port will support dynamic loading, but it is not selected by ! default. If you would like to experiment with dynamic loading then ! be sure to specify -Dusedl in the arguments to the Configure script. ! See the comments in hints/os390.sh for more information on dynamic loading. ! If you build with dynamic loading then you will need to add the ! $archlibexp/CORE directory to your LIBPATH environment variable in order ! for perl to work. See the config.sh file for the value of $archlibexp. ! If in trying to use Perl you see an error message similar to: ! ! CEE3501S The module libperl.dll was not found. ! From entry point __dllstaticinit at compile unit offset +00000194 at ! ! then your LIBPATH does not have the location of libperl.x and either ! libperl.dll or libperl.so in it. Add that directory to your LIBPATH and ! proceed. =item * ! Do not turn on the compiler optimization flag "-O". There is a bug in either the optimizer or perl that causes perl to not work correctly when the optimizer is on. *************** *** 85,94 **** Some of the configuration files in /etc used by the networking APIs are either missing or have the wrong names. In particular, make sure that there's either ! an /etc/resolv.conf or and /etc/hosts, so that gethostbyname() works, and make sure that the file /etc/proto has been renamed to /etc/protocol (NOT /etc/protocols, as used by other Unix systems). =back --- 146,158 ---- Some of the configuration files in /etc used by the networking APIs are either missing or have the wrong names. In particular, make sure that there's either ! an /etc/resolv.conf or an /etc/hosts, so that gethostbyname() works, and make sure that the file /etc/proto has been renamed to /etc/protocol (NOT /etc/protocols, as used by other Unix systems). + You may have to look for things like HOSTNAME and DOMAINORIGIN + in the "//'SYS1.TCPPARMS(TCPDATA)'" PDS member in order to + properly set up your /etc networking files. =back *************** *** 100,106 **** make make test ! if everything looks ok then: make install --- 164,170 ---- make make test ! if everything looks ok (see the next section for test/IVP diagnosis) then: make install *************** *** 108,158 **** on how you answered the questions that Configure asked and whether or not you have write access to the directories you specified. =head2 Usage Hints When using perl on OS/390 please keep in mind that the EBCDIC and ASCII ! character sets are different. Perl builtin functions that may behave ! differently under EBCDIC are mentioned in the perlport.pod document. ! ! OpenEdition (UNIX System Services) does not (yet) support the #! means ! of script invokation. ! See: head `whence perldoc` for an example of how to use the "eval exec" trick to ask the shell to ! have perl run your scripts for you. ! =head2 Extensions ! You can build xs based extensions to Perl for OS/390 but will need to ! follow the instructions in ExtUtils::MakeMaker for building statically ! linked perl binaries. In most cases people have reported better ! results with GNU make rather than the system's /bin/make. =head1 AUTHORS ! David Fiander and Peter Prymmer. =head1 SEE ALSO ! L, L, L. =head2 Mailing list The Perl Institute (http://www.perl.org/) maintains a perl-mvs mailing list of interest to all folks building and/or ! using perl on EBCDIC platforms. To subscibe, send a message of: subscribe perl-mvs ! to majordomo@perl.org. =head1 HISTORY This document was originally written by David Fiander for the 5.005 release of Perl. ! This document was podified for the 5.005_03 release of perl 11 March 1999. =cut --- 172,406 ---- on how you answered the questions that Configure asked and whether or not you have write access to the directories you specified. + =head2 build anomalies + + "Out of memory!" messages during the build of Perl are most often fixed + by re building the GNU make utility for OS/390 from a source code kit. + + Another memory limiting item to check is your MAXASSIZE parameter in your + 'SYS1.PARMLIB(BPXPRMxx)' data set (note too that as of V2R8 address space + limits can be set on a per user ID basis in the USS segment of a RACF + profile). People have reported successful builds of Perl with MAXASSIZE + parameters as small as 503316480 (and it may be possible to build Perl + with a MAXASSIZE smaller than that). + + Within USS your /etc/profile or $HOME/.profile may limit your ulimit + settings. Check that the following command returns reasonable values: + + ulimit -a + + To conserve memory you should have your compiler modules loaded into the + Link Pack Area (LPA/ELPA) rather than in a link list or step lib. + + If the c89 compiler complains of syntax errors during the build of the + Socket extension then be sure to fix the syntax error in the system + header /usr/include/sys/socket.h. + + =head2 testing anomalies + + The `make test` step runs a Perl Verification Procedure, usually before + installation. You might encounter STDERR messages even during a successful + run of `make test`. Here is a guide to some of the more commonly seen + anomalies: + + =over 4 + + =item * + + A message of the form: + + comp/cpp.............ERROR CBC3191 ./.301989890.c:1 The character $ is not a + valid C source character. + FSUM3065 The COMPILE step ended with return code 12. + FSUM3017 Could not compile .301989890.c. Correct the errors and try again. + ok + + indicates that the t/comp/cpp.t test of Perl's -P command line switch has + passed but that the particular invocation of c89 -E in the cpp script does + not suppress the C compiler check of source code validity. + + =item * + + A message of the form: + + io/openpid...........CEE5210S The signal SIGHUP was received. + CEE5210S The signal SIGHUP was received. + CEE5210S The signal SIGHUP was received. + ok + + indicates that the t/io/openpid.t test of Perl has passed but done so + with extraneous messages on stderr from CEE. + + =item * + + A message of the form: + + lib/ftmp-security....File::Temp::_gettemp: Parent directory (/tmp/) is not safe + (sticky bit not set when world writable?) at lib/ftmp-security.t line 100 + File::Temp::_gettemp: Parent directory (/tmp/) is not safe (sticky bit not + set when world writable?) at lib/ftmp-security.t line 100 + ok + + indicates a problem with the permissions on your /tmp directory within the HFS. + To correct that problem issue the command: + + chmod a+t /tmp + + from an account with write access to the directory entry for /tmp. + + =back + + =head2 installation anomalies + + The installman script will try to run on OS/390. There will be fewer errors + if you have a roff utility installed. You can obtain GNU groff from the + Redbook SG24-5944-00 ftp site. + =head2 Usage Hints When using perl on OS/390 please keep in mind that the EBCDIC and ASCII ! character sets are different. See perlebcdic.pod for more on such character ! set issues. Perl builtin functions that may behave differently under ! EBCDIC are also mentioned in the perlport.pod document. ! ! Open Edition (UNIX System Services) from V2R8 onward does support ! #!/path/to/perl script invocation. There is a PTF available from ! IBM for V2R7 that will allow shell/kernel support for #!. USS ! releases prior to V2R7 did not support the #! means of script invocation. ! If you are running V2R6 or earlier then see: head `whence perldoc` for an example of how to use the "eval exec" trick to ask the shell to ! have Perl run your scripts on those older releases of Unix System Services. ! ! If you are having trouble with square brackets then consider switching your ! rlogin or telnet client. Try to avoid older 3270 emulators and ISHELL for ! working with Perl on USS. ! ! =head2 Floating point anomalies ! ! There appears to be a bug in the floating point implementation on S/390 ! systems such that calling int() on the product of a number and a small ! magnitude number is not the same as calling int() on the quotient of ! that number and a large magnitude number. For example, in the following ! Perl code: ! ! my $x = 100000.0; ! my $y = int($x * 1e-5) * 1e5; # '0' ! my $z = int($x / 1e+5) * 1e5; # '100000' ! print "\$y is $y and \$z is $z\n"; # $y is 0 and $z is 100000 ! ! Although one would expect the quantities $y and $z to be the same and equal ! to 100000 they will differ and instead will be 0 and 100000 respectively. ! ! The problem can be further examined in a roughly equivalent C program: ! ! #include ! #include ! main() ! { ! double r1,r2; ! double x = 100000.0; ! double y = 0.0; ! double z = 0.0; ! x = 100000.0 * 1e-5; ! r1 = modf (x,&y); ! x = 100000.0 / 1e+5; ! r2 = modf (x,&z); ! printf("y is %e and z is %e\n",y*1e5,z*1e5); ! /* y is 0.000000e+00 and z is 1.000000e+05 (with c89) */ ! } ! ! =head2 Modules and Extensions ! ! Pure pure (that is non xs) modules may be installed via the usual: ! ! perl Makefile.PL ! make ! make test ! make install ! ! If you built perl with dynamic loading capability then that would also ! be the way to build xs based extensions. However, if you built perl with ! the default static linking you can still build xs based extensions for OS/390 ! but you will need to follow the instructions in ExtUtils::MakeMaker for ! building statically linked perl binaries. In the simplest configurations ! building a static perl + xs extension boils down to: ! ! perl Makefile.PL ! make ! make perl ! make test ! make install ! make -f Makefile.aperl inst_perl MAP_TARGET=perl ! ! In most cases people have reported better results with GNU make rather ! than the system's /bin/make program, whether for plain modules or for ! xs based extensions. ! If the make process encounters trouble with either compilation or ! linking then try setting the _C89_CCMODE to 1. Assuming sh is your ! login shell then run: ! export _C89_CCMODE=1 ! ! If tcsh is your login shell then use the setenv command. =head1 AUTHORS ! David Fiander and Peter Prymmer with thanks to Dennis Longnecker ! and William Raffloer for valuable reports, LPAR and PTF feedback. ! Thanks to Mike MacIsaac and Egon Terwedow for SG24-5944-00. ! Thanks to Ignasi Roca for pointing out the floating point problems. ! Thanks to John Goodyear for dynamic loading help. =head1 SEE ALSO ! L, L, L, L. ! ! http://www.mks.com/s390/gnu/index.htm ! ! http://www.redbooks.ibm.com/abstracts/sg245944.html ! ! http://www.s390.ibm.com/products/oe/bpxa1ty1.html#opensrc ! ! http://www.s390.ibm.com/products/oe/portbk/bpxacenv.html ! ! http://www.xray.mpe.mpg.de/mailing-lists/perl-mvs/ =head2 Mailing list The Perl Institute (http://www.perl.org/) maintains a perl-mvs mailing list of interest to all folks building and/or ! using perl on all EBCDIC platforms (not just OS/390). ! To subscribe, send a message of: subscribe perl-mvs ! to majordomo@perl.org. See also: ! ! http://lists.perl.org/showlist.cgi?name=perl-mvs ! ! There are web archives of the mailing list at: ! ! http://www.xray.mpe.mpg.de/mailing-lists/perl-mvs/ ! http://archive.develooper.com/perl-mvs@perl.org/ =head1 HISTORY This document was originally written by David Fiander for the 5.005 release of Perl. ! This document was podified for the 5.005_03 release of Perl 11 March 1999. ! ! Updated 12 November 2000 for the 5.7.1 release of Perl. ! ! Updated 15 January 2001 for the 5.7.1 release of Perl. ! ! Updated 24 January 2001 to mention dynamic loading. ! ! Updated 12 March 2001 to mention //'SYS1.TCPPARMS(TCPDATA)'. =cut + Index: README.solaris ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/README.solaris Tue May 5 13:32:27 1998 --- perl-5.6.1/README.solaris Thu Feb 22 18:57:53 2001 *************** *** 0 **** --- 1,526 ---- + If you read this file _as_is_, just ignore the funny characters you + see. It is written in the POD format (see pod/perlpod.pod) which is + specifically designed to be readable as is. + + =head1 NAME + + README.solaris - Perl version 5 on Solaris systems + + =head1 DESCRIPTION + + This document describes various features of Sun's Solaris operating system + that will affect how Perl version 5 (hereafter just perl) is + compiled and/or runs. Some issues relating to the older SunOS 4.x are + also discussed, though they may be out of date. + + For the most part, everything should just work. + + Starting with Solaris 8, perl5.00503 (or higher) is supplied with the + operating system, so you might not even need to build a newer version + of perl at all. The Sun-supplied version is installed in /usr/perl5 + with /usr/bin/perl pointing to /usr/perl5/bin/perl. Do not disturb + that installation unless you really know what you are doing. If you + remove the perl supplied with the OS, there is a good chance you will + render some bits of your system inoperable. If you wish to install a + newer version of perl, install it under a different prefix from + /usr/perl5. Common prefixes to use are /usr/local and /opt/perl. + + You may wish to put your version of perl in the PATH of all users by + changing the link /usr/bin/perl. This is OK, as all Perl scripts + shipped with Solaris use /usr/perl5/bin/perl. + + =head2 Solaris Version Numbers. + + For consistency with common usage, perl's Configure script performs + some minor manipulations on the operating system name and version + number as reported by uname. Here's a partial translation table: + + Sun: perl's Configure: + uname uname -r Name osname osvers + SunOS 4.1.3 Solaris 1.1 sunos 4.1.3 + SunOS 5.6 Solaris 2.6 solaris 2.6 + SunOS 5.8 Solaris 8 solaris 2.8 + + The complete table can be found in the Sun Managers' FAQ + L under + "9.1) Which Sun models run which versions of SunOS?". + + =head1 RESOURCES + + There are many, many source for Solaris information. A few of the + important ones for perl: + + =over 4 + + =item Solaris FAQ + + The Solaris FAQ is available at + L. + + The Sun Managers' FAQ is available at + L + + =item Precompiled Binaries + + Precompiled binaries, links to many sites, and much, much more is + available at L. + + =item Solaris Documentation + + All Solaris documentation is available on-line at L. + + =back + + =head1 SETTING UP + + =head2 File Extraction Problems. + + Be sure to use a tar program compiled under Solaris (not SunOS 4.x) + to extract the perl-5.x.x.tar.gz file. Do not use GNU tar compiled + for SunOS4 on Solaris. (GNU tar compiled for Solaris should be fine.) + When you run SunOS4 binaries on Solaris, the run-time system magically + alters pathnames matching m#lib/locale# so that when tar tries to create + lib/locale.pm, a file named lib/oldlocale.pm gets created instead. + If you found this advice it too late and used a SunOS4-compiled tar + anyway, you must find the incorrectly renamed file and move it back + to lib/locale.pm. + + =head2 Compiler and Related Tools. + + You must use an ANSI C compiler to build perl. Perl can be compiled + with either Sun's add-on C compiler or with gcc. The C compiler that + shipped with SunOS4 will not do. + + =head3 Include /usr/ccs/bin/ in your PATH. + + Several tools needed to build perl are located in /usr/ccs/bin/: ar, + as, ld, and make. Make sure that /usr/ccs/bin/ is in your PATH. + + You need to make sure the following packages are installed + (this info is extracted from the Solaris FAQ): + + for tools (sccs, lex, yacc, make, nm, truss, ld, as): SUNWbtool, + SUNWsprot, SUNWtoo + + for libraries & headers: SUNWhea, SUNWarc, SUNWlibm, SUNWlibms, SUNWdfbh, + SUNWcg6h, SUNWxwinc, SUNWolinc + + for 64 bit development: SUNWarcx, SUNWbtoox, SUNWdplx, SUNWscpux, + SUNWsprox, SUNWtoox, SUNWlmsx, SUNWlmx, SUNWlibCx + + If you are in doubt which package contains a file you are missing, + try to find an installation that has that file. Then do a + + grep /my/missing/file /var/sadm/install/contents + + This will display a line like this: + + /usr/include/sys/errno.h f none 0644 root bin 7471 37605 956241356 SUNWhea + + The last item listed (SUNWhea in this example) is the package you need. + + =head3 Avoid /usr/ucb/cc. + + You don't need to have /usr/ucb/ in your PATH to build perl. If you + want /usr/ucb/ in your PATH anyway, make sure that /usr/ucb/ is NOT + in your PATH before the directory containing the right C compiler. + + =head3 Sun's C Compiler + + If you use Sun's C compiler, make sure the correct directory + (usually /opt/SUNWspro/bin/) is in your PATH (before /usr/ucb/). + + =head3 GCC + + If you use gcc, make sure your installation is recent and + complete. As a point of reference, perl-5.6.0 built fine with + gcc-2.8.1 on both Solaris 2.6 and Solaris 8. You'll be able to + Configure perl with + + sh Configure -Dcc=gcc + + If you have updated your Solaris version, you may also have to update + your GCC. For example, if you are running Solaris 2.6 and your gcc is + installed under /usr/local, check in /usr/local/lib/gcc-lib and make + sure you have the appropriate directory, sparc-sun-solaris2.6/ or + i386-pc-solaris2.6/. If gcc's directory is for a different version of + Solaris than you are running, then you will need to rebuild gcc for + your new version of Solaris. + + You can get a precompiled version of gcc from + L. Make sure you pick up the package for + your Solaris release. + + =head3 GNU as and GNU ld + + The versions of as and ld supplied with Solaris work fine for building + perl. There is normally no need to install the GNU versions. + + If you decide to ignore this advice and use the GNU versions anyway, + then be sure that they are relatively recent. Versions newer than 2.7 + are apparently new enough. Older versions may have trouble with + dynamic loading. + + If your gcc is configured to use GNU as and ld but you want to use the + Solaris ones instead to build perl, then you'll need to add + -B/usr/ccs/bin/ to the gcc command line. One convenient way to do + that is with + + sh Configure -Dcc='gcc -B/usr/ccs/bin/' + + Note that the trailing slash is required. This will result in some + harmless warnings as Configure is run: + + gcc: file path prefix `/usr/ccs/bin/' never used + + These messages may safely be ignored. + (Note that for a SunOS4 system, you must use -B/bin/ instead.) + + Alternatively, you can use the GCC_EXEC_PREFIX environment variable to + ensure that Sun's as and ld are used. Consult your gcc documentation + for further information on the -B option and the GCC_EXEC_PREFIX variable. + + =head3 GNU make + + Sun's make works fine for building perl. + If you wish to use GNU make anyway, be sure that the set-group-id bit is not + set. If it is, then arrange your PATH so that /usr/ccs/bin/make is + before GNU make or else have the system administrator disable the + set-group-id bit on GNU make. + + =head3 Avoid libucb. + + Solaris provides some BSD-compatibility functions in /usr/ucblib/libucb.a. + Perl will not build and run correctly if linked against -lucb since it + contains routines that are incompatible with the standard Solaris libc. + Normally this is not a problem since the solaris hints file prevents + Configure from even looking in /usr/ucblib for libraries, and also + explicitly omits -lucb. + + =head2 Environment + + =head3 PATH + + Make sure your PATH includes the compiler (/opt/SUNWspro/bin/ if you're + using Sun's compiler) as well as /usr/ccs/bin/ to pick up the other + development tools (such as make, ar, as, and ld). Make sure your path + either doesn't include /usr/ucb or that it includes it after the + compiler and compiler tools and other standard Solaris directories. + You definitely don't want /usr/ucb/cc. + + =head3 LD_LIBRARY_PATH + + If you have the LD_LIBRARY_PATH environment variable set, be sure that + it does NOT include /lib or /usr/lib. If you will be building + extensions that call third-party shared libraries (e.g. Berkeley DB) + then make sure that your LD_LIBRARY_PATH environment variable includes + the directory with that library (e.g. /usr/local/lib). + + If you get an error message + + dlopen: stub interception failed + + it is probably because your LD_LIBRARY_PATH environment variable + includes a directory which is a symlink to /usr/lib (such as /lib). + The reason this causes a problem is quite subtle. The file + libdl.so.1.0 actually *only* contains functions which generate 'stub + interception failed' errors! The runtime linker intercepts links to + "/usr/lib/libdl.so.1.0" and links in internal implementations of those + functions instead. [Thanks to Tim Bunce for this explanation.] + + =head1 RUN CONFIGURE. + + See the INSTALL file for general information regarding Configure. + Only Solaris-specific issues are discussed here. Usually, the + defaults should be fine. + + =head2 64-bit Issues. + + See the INSTALL file for general information regarding 64-bit compiles. + In general, the defaults should be fine for most people. + + By default, perl-5.6.0 (or later) is compiled as a 32-bit application + with largefile and long-long support. + + =head3 General 32-bit vs. 64-bit issues. + + Solaris 7 and above will run in either 32 bit or 64 bit mode on SPARC + CPUs, via a reboot. You can build 64 bit apps whilst running 32 bit + mode and vice-versa. 32 bit apps will run under Solaris running in + either 32 or 64 bit mode. 64 bit apps require Solaris to be running + 64 bit mode. + + Existing 32 bit apps are properly known as LP32, i.e. Longs and + Pointers are 32 bit. 64-bit apps are more properly known as LP64. + The discriminating feature of a LP64 bit app is its ability to utilise a + 64-bit address space. It is perfectly possible to have a LP32 bit app + that supports both 64-bit integers (long long) and largefiles (> 2GB), + and this is the default for perl-5.6.0. + + For a more complete explanation of 64-bit issues, see the Solaris 64-bit + Developer's Guide at http://docs.sun.com:80/ab2/coll.45.13/SOL64TRANS/ + + You can detect the OS mode using "isainfo -v", e.g. + + fubar$ isainfo -v # Ultra 30 in 64 bit mode + 64-bit sparcv9 applications + 32-bit sparc applications + + By default, perl will be compiled as a 32-bit application. Unless you + want to allocate more than ~ 4GB of memory inside Perl, you probably + don't need Perl to be a 64-bit app. + + =head3 Large File Suppprt + + For Solaris 2.6 and onwards, there are two different ways for 32-bit + applications to manipulate large files (files whose size is > 2GByte). + (A 64-bit application automatically has largefile support built in + by default.) + + First is the "transitional compilation environment", described in + lfcompile64(5). According to the man page, + + The transitional compilation environment exports all the + explicit 64-bit functions (xxx64()) and types in addition to + all the regular functions (xxx()) and types. Both xxx() and + xxx64() functions are available to the program source. A + 32-bit application must use the xxx64() functions in order + to access large files. See the lf64(5) manual page for a + complete listing of the 64-bit transitional interfaces. + + The transitional compilation environment is obtained with the + following compiler and linker flags: + + getconf LFS64_CFLAGS -D_LARGEFILE64_SOURCE + getconf LFS64_LDFLAG # nothing special needed + getconf LFS64_LIBS # nothing special needed + + Second is the "large file compilation environment", described in + lfcompile(5). According to the man page, + + Each interface named xxx() that needs to access 64-bit entities + to access large files maps to a xxx64() call in the + resulting binary. All relevant data types are defined to be + of correct size (for example, off_t has a typedef definition + for a 64-bit entity). + + An application compiled in this environment is able to use + the xxx() source interfaces to access both large and small + files, rather than having to explicitly utilize the transitional + xxx64() interface calls to access large files. + + Two exceptions are fseek() and ftell(). 32-bit applications should + use fseeko(3C) and ftello(3C). These will get automatically mapped + to fseeko64() and ftello64(). + + The large file compilation environment is obtained with + + getconf LFS_CFLAGS -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + getconf LFS_LDFLAGS # nothing special needed + getconf LFS_LIBS # nothing special needed + + By default, perl uses the large file compilation environment and + relies on Solaris to do the underlying mapping of interfaces. + + =head3 Building an LP64 Perl + + To compile a 64-bit application on an UltraSparc with a recent Sun Compiler, + you need to use the flag "-xarch=v9". getconf(1) will tell you this, e.g. + + fubar$ getconf -a | grep v9 + XBS5_LP64_OFF64_CFLAGS: -xarch=v9 + XBS5_LP64_OFF64_LDFLAGS: -xarch=v9 + XBS5_LP64_OFF64_LINTFLAGS: -xarch=v9 + XBS5_LPBIG_OFFBIG_CFLAGS: -xarch=v9 + XBS5_LPBIG_OFFBIG_LDFLAGS: -xarch=v9 + XBS5_LPBIG_OFFBIG_LINTFLAGS: -xarch=v9 + _XBS5_LP64_OFF64_CFLAGS: -xarch=v9 + _XBS5_LP64_OFF64_LDFLAGS: -xarch=v9 + _XBS5_LP64_OFF64_LINTFLAGS: -xarch=v9 + _XBS5_LPBIG_OFFBIG_CFLAGS: -xarch=v9 + _XBS5_LPBIG_OFFBIG_LDFLAGS: -xarch=v9 + _XBS5_LPBIG_OFFBIG_LINTFLAGS: -xarch=v9 + + This flag is supported in Sun WorkShop Compilers 5.0 and onwards + (now marketed under the name Forte) when used on Solaris 7 or later on + UltraSparc systems. + + If you are using gcc, you would need to use -mcpu=v9 -m64 instead. This + option is not yet supported as of gcc 2.95.2; from install/SPECIFIC + in that release: + + GCC version 2.95 is not able to compile code correctly for sparc64 + targets. Users of the Linux kernel, at least, can use the sparc32 + program to start up a new shell invocation with an environment that + causes configure to recognize (via uname -a) the system as sparc-*-* + instead. + + All this should be handled automatically by the hints file, if + requested. + + If you do want to be able to allocate more than 4GB memory inside + perl, then you should use the Solaris malloc, since the perl + malloc breaks when dealing with more than 2GB of memory. You can do + this with + + sh Configure -Uusemymalloc + + Note that this will break binary compatibility with any version that + was not compiled with -Uusemymalloc. + + =head3 Long Doubles. + + As of 5.6.0, long doubles are not working. + + =head2 Threads. + + It is possible to build a threaded version of perl on Solaris. The entire + perl thread implementation is still experimental, however, so beware. + Perl uses the sched_yield(3RT) function. In versions of Solaris up + to 2.6, that function is in -lposix4. Starting with Solaris 7, it is + in -lrt. The hints file should handle adding this automatically. + + =head2 Malloc Issues. + + You should not use perl's malloc if you are building with gcc. There + are reports of core dumps, especially in the PDL module. The problem + appears to go away under -DDEBUGGING, so it has been difficult to + track down. Sun's compiler appears to be ok with or without perl's + malloc. [XXX further investigation is needed here.] + + You should also not use perl's malloc if you are building perl as + an LP64 application, since perl's malloc has trouble allocating more + than 2GB of memory. + + You can avoid perl's malloc by Configuring with + + sh Configure -Uusemymalloc + + See the note about binary compatibility above. This option will be + enabled by default beginning with 5.7.1. + + =head1 MAKE PROBLEMS. + + =over 4 + + =item Dynamic Loading Problems With GNU as and GNU ld + + If you have problems with dynamic loading using gcc on SunOS or + Solaris, and you are using GNU as and GNU ld, see the section + L<"GNU as and GNU ld"> above. + + =item ld.so.1: ./perl: fatal: relocation error: + + If you get this message on SunOS or Solaris, and you're using gcc, + it's probably the GNU as or GNU ld problem in the previous item + L<"GNU as and GNU ld">. + + =item dlopen: stub interception failed + + The primary cause of the 'dlopen: stub interception failed' message is + that the LD_LIBRARY_PATH environment variable includes a directory + which is a symlink to /usr/lib (such as /lib). See + L<"LD_LIBRARY_PATH"> above. + + =item #error "No DATAMODEL_NATIVE specified" + + This is a common error when trying to build perl on Solaris 2.6 with a + gcc installation from Solaris 2.5 or 2.5.1. The Solaris header files + changed, so you need to update your gcc installation. You can either + rerun the fixincludes script from gcc or take the opportunity to + update your gcc installation. + + =item sh: ar: not found + + This is a message from your shell telling you that the command 'ar' + was not found. You need to check your PATH environment variable to + make sure that it includes the directory with the 'ar' command. This + is a common problem on Solaris, where 'ar' is in the /usr/ccs/bin/ + directory. + + =back + + =head1 MAKE TEST + + =head2 op/stat.t test 4 + + op/stat.t test 4 may fail if you are on a tmpfs of some sort. + Building in /tmp sometimes shows this behavior. The + test suite detects if you are building in /tmp, but it may not be able + to catch all tmpfs situations. + + =head1 PREBUILT BINARIES. + + You can pick up prebuilt binaries for Solaris from + L, ActiveState L, + and L under the Binaries list at the top of the page. + There are probably other sources as well. Please note that these sites + are under the control of their respective owners, not the perl developers. + + =head1 RUNTIME ISSUES. + + =head2 Limits on Numbers of Open Files. + + The stdio(3C) manpage notes that only 255 files may be opened using + fopen(), and only file descriptors 0 through 255 can be used in a + stream. Since perl calls open() and then fdopen(3C) with the + resulting file descriptor, perl is limited to 255 simultaneous open + files. + + =head1 SOLARIS-SPECIFIC MODULES. + + See the modules under the Solaris:: namespace on CPAN, + L. + + =head1 SOLARIS-SPECIFIC PROBLEMS WITH MODULES. + + =head2 Proc::ProcessTable + + Proc::ProcessTable does not compile on Solaris with perl5.6.0 and higher + if you have LARGEFILES defined. Since largefile support is the + default in 5.6.0 and later, you have to take special steps to use this + module. + + The problem is that various structures visible via procfs use off_t, + and if you compile with largefile support these change from 32 bits to + 64 bits. Thus what you get back from procfs doesn't match up with + the structures in perl, resulting in garbage. See proc(4) for further + discussion. + + A fix for Proc::ProcessTable is to edit Makefile to + explicitly remove the largefile flags from the ones MakeMaker picks up + from Config.pm. This will result in Proc::ProcessTable being built + under the correct environment. Everything should then be OK as long as + Proc::ProcessTable doesn't try to share off_t's with the rest of perl, + or if it does they should be explicitly specified as off64_t. + + =head2 BSD::Resource + + BSD::Resource versions earlier than 1.09 do not compile on Solaris + with perl 5.6.0 and higher, for the same reasons as Proc::ProcessTable. + BSD::Resource versions starting from 1.09 have a workaround for the problem. + + =head2 Net::SSLeay + + Net::SSLeay requires a /dev/urandom to be present. This device is not + part of Solaris. You can either get the package SUNWski (packaged with + several Sun software products, for example the Sun WebServer, which is + part of the Solaris Server Intranet Extension, or the Sun Directory + Services, part of Solaris for ISPs) or download the ANDIrand package + from L. If you use SUNWski, make a + symbolic link /dev/urandom pointing to /dev/random. + + It may be possible to use the Entropy Gathering Daemon (written in + Perl!), available from L. + + =head1 AUTHOR + + The original was written by Andy Dougherty F + drawing heavily on advice from Alan Burlison, Nick Ing-Simmons, Tim Bunce, + and many other Solaris users over the years. + + Please report any errors, updates, or suggestions to F. + + =head1 LAST MODIFIED + + $Id: README.solaris,v 1.4 2000/11/11 20:29:58 doughera Exp $ Index: README.vmesa ####### perl-5.6.1/ => perl-5.6.1 *** perl-5.6.1/README.vmesa Tue Jul 20 10:17:52 1999 --- perl-5.6.1/README.vmesa Tue Mar 20 09:40:22 2001 *************** *** 1,4 **** ! README.vmesa This is a fully ported perl for VM/ESA 2.3.0. It may work on other versions, but that's the one we've tested it on. --- 1,20 ---- ! ! This document is written in pod format hence there are punctuation ! characters in odd places. Do not worry, you've apparently got ! the ASCII->EBCDIC translation worked out correctly. You can read ! more about pod in pod/perlpod.pod or the short summary in the ! INSTALL file. ! ! =head1 NAME ! ! README.vmesa - building and installing Perl for VM/ESA. ! ! =head1 SYNOPSIS ! ! This document will help you Configure, build, test and install Perl ! on VM/ESA. ! ! =head1 DESCRIPTION This is a fully ported perl for VM/ESA 2.3.0. It may work on other versions, but that's the one we've tested it on. *************** *** 10,57 **** installed by default). You may need to worry about the networking configuration files discussed in the last bullet below. To extract an ASCII tar archive on VM/ESA, try this: pax -o to=IBM-1047,from=ISO8859-1 -r < latest.tar GNU make for VM/ESA, which may be required for the build of perl, is available from: http://pucc.princeton.edu/~neale/vmoe.html Once you've unpacked the distribution, run Configure (see INSTALL for full discussion of the Configure options), and then run make, then "make test" then "make install" (this last step may require UID=0 ! privileges) There is a "hints" file for vmesa that specifies the correct values ! for most things. Some things to watch out for are ! - this port does support dynamic loading but it's not had much testing ! - Don't turn on the compiler optimization flag "-O". There's ! a bug in the compiler (APAR PQ18812) that generates some bad code ! the optimizer is on. ! ! - As VM/ESA doesn't fully support the fork() API programs relying on ! this call will not work. I've replaced fork()/exec() with spawn() ! and the standalone exec() with spawn(). This has a side effect when ! opening unnamed pipes in a shell script: there is no child process ! generated under. ! ! - At the moment the hints file for VM/ESA basically bypasses all of the ! automatic configuration process. This is because Configure relies on: ! 1. The header files living in the Byte File System (you could put the ! there if you want; ! 2. The C preprocessor including the #include statements in the ! preprocessor output (.i) file. When using perl on VM/ESA please keep in mind that the EBCDIC and ASCII character sets are different. Perl builtin functions that may behave differently under EBCDIC are mentioned in the perlport.pod document. OpenEdition (UNIX System Services) does not (yet) support the #! means ! of script invokation. See: head `whence perldoc` --- 26,102 ---- installed by default). You may need to worry about the networking configuration files discussed in the last bullet below. + =head2 Unpacking + To extract an ASCII tar archive on VM/ESA, try this: pax -o to=IBM-1047,from=ISO8859-1 -r < latest.tar + =head2 Setup and utilities + GNU make for VM/ESA, which may be required for the build of perl, is available from: http://pucc.princeton.edu/~neale/vmoe.html + =head2 Configure + Once you've unpacked the distribution, run Configure (see INSTALL for full discussion of the Configure options), and then run make, then "make test" then "make install" (this last step may require UID=0 ! privileges). There is a "hints" file for vmesa that specifies the correct values ! for most things. Some things to watch out for are: ! ! =over 4 ! ! =item * ! ! this port does support dynamic loading but it's not had much testing ! ! =item * ! ! Don't turn on the compiler optimization flag "-O". There's ! a bug in the compiler (APAR PQ18812) that generates some bad code ! the optimizer is on. ! ! =item * ! ! As VM/ESA doesn't fully support the fork() API programs relying on ! this call will not work. I've replaced fork()/exec() with spawn() ! and the standalone exec() with spawn(). This has a side effect when ! opening unnamed pipes in a shell script: there is no child process ! generated under. ! ! =item * ! ! At the moment the hints file for VM/ESA basically bypasses all of the ! automatic configuration process. This is because Configure relies on: ! 1. The header files living in the Byte File System (you could put the ! there if you want); 2. The C preprocessor including the #include ! statements in the preprocessor output (.i) file. ! ! =back ! ! =head2 testing anomalies ! The `make test` step runs a Perl Verification Procedure, usually before ! installation. As the 5.6.1 kit was was being assembled ! the following "failures" were known to appear on some machines ! during `make test` (mostly due to ASCII vs. EBCDIC conflicts), ! your results may differ: ! ! [the list of failures being compiled] ! =head2 Usage Hints When using perl on VM/ESA please keep in mind that the EBCDIC and ASCII character sets are different. Perl builtin functions that may behave differently under EBCDIC are mentioned in the perlport.pod docu