Skip to content

Commit 16d20bd

Browse files
author
Andy Dougherty
committed
This is my patch patch.1i for perl5.001.
To apply, change to your perl directory, run the commands above, then apply with patch -p1 -N < thispatch. After you apply this patch, I would recommend: rm config.sh sh Configure [whatever options you use] make depend make make test Here are the highlights: All pod documentation now installed, along with corresponding man pages, if possible (Configure allows you to change this). cppstdin no longer points back to the build directory. This necessitated two changes to the test suite: comp/cpp.t is now a front end that punts if cppstdin is not yet available (the old perl4 trick doesn't work for perl5). The op/misc.t test ./perl -P -e 'use POSIX;' has been dropped since I couldn't think of an elegant way to bypass it for systems that need the cppstdin wrapper. Grand autoload patch included (minus the installperl, lib/, and ext/ changes). The lib/ changes are in patch.1g, and the ext/ changes are in patch.1h. Better detection and use of stdio variants, especially on SVR4. Sarathy's consolidated patches (for ties) included. New filter stuff included. Three patches from Larry (gv.c, toke.c, pp_ctl.c) Patch and enjoy, Andy Dougherty [email protected] Dept. of Physics Lafayette College Easton, PA 18042 Here's the file-by-file breakdown of what's included: Changes.Conf Document changes in the Configure & build process. Configure Upgrade to metaconfig PL55. Add /opt hierarchy to paths searched for programs. Tye McQueen's updated std stdio testing. Prompting for installation info for perl module pages. Add possible SITELIB to include site-specific include directories. By default this is disabled, but it seemed a neat idea now that the standard perl library is getting so big. Check that the compiler chosen exists and actually supports the options the user specified. Correctly sort multiple shared library version numbers. Use a compile & link test for gconvert(), dlopen(), and dlerror(). Do not include build directory name in cppstdin wrapper. MANIFEST Updated. Makefile.SH Reorganized a bit to support separate install.perl and install.man targets to use the new installman script and to accomodate those who don't want to install the man pages. Organize cleanup of .SH files a little better. No longer automatically make the pod/*.man files. This is done by installman only if requested. Include additional error messages and info for regenerating the automatically maintained header files. Add 'minitest' target. README Updated. README.vms Fix perl5-porters subscription info. config_H Updated. config_h.SH Updated. configpm Embedded pod. configure GNU configure-like front end to metaconfig's Configure. Only supports a few options. doio.c Updated to use new std stdio testing. embed.h Add new symbols for filtering. global.sym see embed.h. gv.c C<sub method;> patch from lwall. hints/README.hints Updated. hints/aux.sh Updated. hints/cxux.sh Updated. hints/epix.sh New file. hints/freebsd.sh Updated. hints/irix_4.sh Updated. hints/irix_5.sh Updated. hints/irix_6.sh Updated. hints/linux.sh Updated. hints/powerunix.sh Updated. installman New file to install pod/*.pod and lib/*.p(m|od) man pages. installperl Move installation of man pages over to installman script. Install pod/*.pod files in $privlib/pod/. Preserve timestamps on .a files. makedepend.SH Now includes . and .. in PATH to explicitly find cppstdin wrapper. opcode.h opcode.pl shmwrite fix. perl.c Changed unofficial patchlevel message. Included optional SITELIB directory. perl.h #include <memory.h> cryptswitch gone/filters added. EUNICE replaced by UNLINK_ALL_VERSIONS. Only matters for VMS. perldoc.SH New file. pod/perl.pod Describe where modpods are. pp_ctl.c sort bug fix from lwall. pp_hot.c csh glob bug fix from tchrist. Sarathy's consolidated "tie" patch for NETaa13753 N 2 trey pp_sys.c Emulate flock with lockf, if possible. Use new std stdio unit. proto.h Filters stuff. prototype for unlnk() is only needed #if UNLINK_ALL_VERSIONS sv.c Sarathy's consolidated "tie" patch for NETaa13753 N 2 trey Sarathy's consolidated patch for nested ties. Use new std stdio unit. t/comp/cpp.aux New file. This only gets called if cppstdin is avaiable. t/comp/cpp.t Calls cpp.aux test only if cppstdin is available. t/op/misc.t Drop perl -P -e 'use POSIX;' test. it couldn't work on systems without the cppstdin wrapper installed, and is usually misleading when it fails anyway. toke.c filter stuff. fix for NETaa13798 from lwall. unixish.h undef UNLINK_ALL_VERSIONS since it's irrelevant for unix. util.c s/EUNICE/UNLINK_ALL_VERSIONS/ for the unlnk() function. vms/config.vms VMS updates from Charles Bailey. std stdio updates to match changes in perl sources. add UNLINK_ALL_VERSIONS constant, but leave it #undef. vms/ext/MM_VMS.pm vms/ext/VMS/stdio/stdio.xs vms/perlvms.pod vms/vms.c VMS updates from Charles Bailey. x2p/Makefile.SH Updated to match man page Configure questions. Slight clean-up on .SH targets. x2p/str.c Use new std stdio unit.
1 parent 3b35bae commit 16d20bd

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

54 files changed

+1979
-750
lines changed

Changes.Conf

Lines changed: 131 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,131 @@
1+
-------------
2+
Version 5.002
3+
-------------
4+
5+
Summary of user-visible Configure and build changes since 5.001:
6+
7+
Yet more enhancements and fixes have been made to the Configure and
8+
build process for perl. Most of these will not be visible to the
9+
ordinary user--they just make the process more robust and likely to
10+
work on a wider range of platforms.
11+
12+
This is a brief summary of the most important changes:
13+
14+
Include 5.000 - 5.001 upgrage notes :-) (see below). You might
15+
want to read through them as well as these notes.
16+
17+
Install documentation for perl modules and pod2* translators. You can
18+
now view perl module documentation with either your system's man(1)
19+
program or with the supplied perldoc script.
20+
21+
Support Linux ELF dynamic loading.
22+
23+
Many hint file updates.
24+
25+
26+
-------------
27+
Version 5.001
28+
-------------
29+
30+
Summary of user-visible Configure and build changes since 5.000:
31+
32+
A large number of enhancements and fixes have been made to the
33+
Configure and build process for perl. Most of these will not be
34+
visible to the ordinary user--they just make the process more robust
35+
and likely to work on a wider range of platforms.
36+
37+
This is a brief summary of the most important changes.
38+
39+
Configure changes:
40+
New and improved Configure command line options. -O now overrides
41+
config.sh settings. -D options can now include spaces, if
42+
protected in quotes (e.g. -Dcc='gcc -posix'). Type Configure -h
43+
for a full listing of options.
44+
45+
Users can now turn on the defaults for the rest of Configure by
46+
typing &-d at any Configure prompt. This is useful if you just
47+
want to change one or two answers.
48+
49+
Support on (non-Sun) SVR4 systems for dynamic loading and shared
50+
libperl.so
51+
52+
Numerous new or updated hints files: PowerUnix, aix 3.x and 4.x,
53+
bsd386, convexos, cxux, DEC OSF, Esix, FreeBSD, HP-UX (especially if
54+
you're using the bundled compiler), irix 4.x, 5.x, and 6.x, Linux,
55+
MPE/IX, NeXT 3.0 and 3.2, Solaris, SVR4, Ultrix (especially 4.3),
56+
and Unicos.
57+
58+
Improved generation of a suitable name for architecture-dependent
59+
library files. NOTE: This may differ from the name you had from
60+
your 5.000 installation.
61+
62+
Many many portability enhancements and fixes.
63+
64+
Build process:
65+
66+
The process for building extensions has been extensively revised. See
67+
lib/ExtUtils/MakeMaker.pm for complete documentation. Basically, with
68+
just a simple Makefile.PL (such as the one generated by h2xs), you can
69+
now build an extension from anywhere on your system, even if you've
70+
deleted the perl source.
71+
72+
Improved build/install documentation in README. A little.
73+
74+
Improved dynamic loading on HP-UX. Support dynamic loading on SVR4.
75+
76+
Installperl now gets the version correct :-)
77+
78+
Installperl now saves the perl *.h files and the libperl.a library
79+
in your architecture-dependent library directory so that you can
80+
later build extensions without having to re-install the perl
81+
source.
82+
83+
Include x2p/a2p.c generated by byacc from x2p/a2p.y.
84+
85+
Many many portability fixes.
86+
87+
Upgrade Traps and Pitfalls:
88+
89+
Since a lot has changed in the build process, you are probably best
90+
off starting with a fresh copy of the perl5.000 sources. In particular,
91+
your 5.000 config.sh will contain several variables that are no longer
92+
needed. Further, improvements in the Configure tests may mean that some
93+
of the answers will be different than they were in 5.000, and which answer
94+
to keep can be difficult to sort out. Therefore, you are probably
95+
better off ignoring your old config.sh.
96+
97+
One big change is that architecture-dependent library files may well
98+
be stored in a different location in 5.001. This is because the default
99+
name used in the 5.000 release was not sufficiently specific to
100+
distinguish incompatible architectures. The relevant variable is $archlib
101+
in config.sh. Before you run ``make install'' you should rename your old
102+
$archlib. Thus if your $archlib for version 5.000 was
103+
/usr/local/lib/perl5/foo, and your new value for 5.001 is
104+
/usr/local/lib/perl5/foo-bar, then you should
105+
mv /usr/local/lib/perl5/foo /usr/local/lib/perl5/foo-bar
106+
before running ``make install''.
107+
108+
Alternatively, you could override Configure's default guess for $archlib
109+
either by sh Configure -Darchname='foo', or by answering 'foo' when
110+
prompted by Configure for the architecture name.
111+
112+
The following is the sequence of steps to upgrade to 5.001:
113+
cd perl5.000
114+
make realclean
115+
rm config.sh
116+
<apply 5.001 patch>
117+
sh Configure
118+
make depend
119+
make
120+
make test
121+
<mv old architecture-dependent library to new location, if needed>
122+
make install
123+
124+
125+
126+
127+
128+
129+
130+
131+

0 commit comments

Comments
 (0)