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