diff options
author | Andy Dougherty <doughera@lafcol.lafayette.edu> | 1995-05-30 22:59:41 +0000 |
---|---|---|
committer | Andy Dougherty <doughera@lafcol.lafayette.edu> | 1995-05-30 22:59:41 +0000 |
commit | 16d20bd98cd29be76029ebf04027a7edd34d817b (patch) | |
tree | 9ff5dd75c8b63cfd0da63bc9e4d59f464986bc0e /README | |
parent | 3b35bae3d5913952e779006fe378c78297e23080 (diff) | |
download | perl-16d20bd98cd29be76029ebf04027a7edd34d817b.tar.gz |
This is my patch patch.1i for perl5.001.
To apply, change to your perl directory, run the commands above, then
apply with
patch -p1 -N < thispatch.
After you apply this patch, I would recommend:
rm config.sh
sh Configure [whatever options you use]
make depend
make
make test
Here are the highlights:
All pod documentation now installed, along with corresponding man
pages, if possible (Configure allows you to change this).
cppstdin no longer points back to the build directory. This
necessitated two changes to the test suite: comp/cpp.t is now a
front end that punts if cppstdin is not yet available (the old
perl4 trick doesn't work for perl5). The op/misc.t test
./perl -P -e 'use POSIX;' has been dropped since I couldn't think
of an elegant way to bypass it for systems that need the cppstdin
wrapper.
Grand autoload patch included (minus the installperl, lib/, and
ext/ changes). The lib/ changes are in patch.1g, and the
ext/ changes are in patch.1h.
Better detection and use of stdio variants, especially on SVR4.
Sarathy's consolidated patches (for ties) included.
New filter stuff included.
Three patches from Larry (gv.c, toke.c, pp_ctl.c)
Patch and enjoy,
Andy Dougherty doughera@lafcol.lafayette.edu
Dept. of Physics
Lafayette College Easton, PA 18042
Here's the file-by-file breakdown of what's included:
Changes.Conf
Document changes in the Configure & build process.
Configure
Upgrade to metaconfig PL55.
Add /opt hierarchy to paths searched for programs.
Tye McQueen's updated std stdio testing.
Prompting for installation info for perl module pages.
Add possible SITELIB to include site-specific include directories.
By default this is disabled, but it seemed a neat idea now that
the standard perl library is getting so big.
Check that the compiler chosen exists and actually supports the
options the user specified.
Correctly sort multiple shared library version numbers.
Use a compile & link test for gconvert(), dlopen(), and dlerror().
Do not include build directory name in cppstdin wrapper.
MANIFEST
Updated.
Makefile.SH
Reorganized a bit to support separate install.perl and install.man
targets to use the new installman script and to accomodate those who
don't want to install the man pages.
Organize cleanup of .SH files a little better.
No longer automatically make the pod/*.man files. This is done by
installman only if requested.
Include additional error messages and info for regenerating the
automatically maintained header files.
Add 'minitest' target.
README
Updated.
README.vms
Fix perl5-porters subscription info.
config_H
Updated.
config_h.SH
Updated.
configpm
Embedded pod.
configure
GNU configure-like front end to metaconfig's Configure.
Only supports a few options.
doio.c
Updated to use new std stdio testing.
embed.h
Add new symbols for filtering.
global.sym
see embed.h.
gv.c
C<sub method;> patch from lwall.
hints/README.hints
Updated.
hints/aux.sh
Updated.
hints/cxux.sh
Updated.
hints/epix.sh
New file.
hints/freebsd.sh
Updated.
hints/irix_4.sh
Updated.
hints/irix_5.sh
Updated.
hints/irix_6.sh
Updated.
hints/linux.sh
Updated.
hints/powerunix.sh
Updated.
installman
New file to install pod/*.pod and lib/*.p(m|od) man pages.
installperl
Move installation of man pages over to installman script.
Install pod/*.pod files in $privlib/pod/.
Preserve timestamps on .a files.
makedepend.SH
Now includes . and .. in PATH to explicitly find cppstdin wrapper.
opcode.h
opcode.pl
shmwrite fix.
perl.c
Changed unofficial patchlevel message.
Included optional SITELIB directory.
perl.h
#include <memory.h>
cryptswitch gone/filters added.
EUNICE replaced by UNLINK_ALL_VERSIONS. Only matters for VMS.
perldoc.SH
New file.
pod/perl.pod
Describe where modpods are.
pp_ctl.c
sort bug fix from lwall.
pp_hot.c
csh glob bug fix from tchrist.
Sarathy's consolidated "tie" patch for NETaa13753 N 2 trey
pp_sys.c
Emulate flock with lockf, if possible.
Use new std stdio unit.
proto.h
Filters stuff.
prototype for unlnk() is only needed #if UNLINK_ALL_VERSIONS
sv.c
Sarathy's consolidated "tie" patch for NETaa13753 N 2 trey
Sarathy's consolidated patch for nested ties.
Use new std stdio unit.
t/comp/cpp.aux
New file. This only gets called if cppstdin is avaiable.
t/comp/cpp.t
Calls cpp.aux test only if cppstdin is available.
t/op/misc.t
Drop
perl -P -e 'use POSIX;' test.
it couldn't work on systems without the cppstdin wrapper
installed, and is usually misleading when it fails anyway.
toke.c
filter stuff.
fix for NETaa13798 from lwall.
unixish.h
undef UNLINK_ALL_VERSIONS since it's irrelevant for unix.
util.c
s/EUNICE/UNLINK_ALL_VERSIONS/ for the unlnk() function.
vms/config.vms
VMS updates from Charles Bailey.
std stdio updates to match changes in perl sources.
add UNLINK_ALL_VERSIONS constant, but leave it #undef.
vms/ext/MM_VMS.pm
vms/ext/VMS/stdio/stdio.xs
vms/perlvms.pod
vms/vms.c
VMS updates from Charles Bailey.
x2p/Makefile.SH
Updated to match man page Configure questions.
Slight clean-up on .SH targets.
x2p/str.c
Use new std stdio unit.
Diffstat (limited to 'README')
-rw-r--r-- | README | 76 |
1 files changed, 49 insertions, 27 deletions
@@ -68,14 +68,16 @@ Installation run ok, the defaults will usually be right. It will then proceed to make config.h, config.sh, and Makefile. You may have to explicitly say sh Configure to ensure that Configure is run under sh. - If you're a hotshot, run Configure -d to take all the defaults and - then edit config.sh to patch up any flaws and run Configure -S. + If you're a hotshot, run Configure -d to take all the defaults, + edit config.sh to patch up any flaws, and then run Configure -S. Configure supports a number of useful options. Run Configure -h to get a listing. To compile with gcc, for example, you can run - Configure -Dcc=gcc, or answer 'gcc' at the cc prompt. This is the - preferred way to invoke an alternate compiler, since the hints - files can then set appropriate defaults. + Configure -Dcc=gcc, or answer 'gcc' at the cc prompt. + + If you wish to use gcc (or another alternative compiler)) + you should use Configure -Dcc=gcc. That way, the the hints + files can set appropriate defaults. If you change compilers or make other significant changes, you should probably _not_ re-use your old config.sh. Simply remove it or @@ -94,7 +96,7 @@ Installation if your sh doesn't handle them, but all other # comments will be taken care of. - (If you don't have sh, you'll have to copy the sample file config.H to + (If you don't have sh, you'll have to copy the sample file config_H to config.h and edit the config.h to reflect your system's peculiarities.) 2) Glance through config.h to make sure system dependencies are correct. @@ -130,37 +132,50 @@ Installation Makefile.SH, since a default rule only takes effect in the absence of a specific rule. - Many of the following hints are now done automatically by Configure. - Some of the hints here were for Perl 4, and are probably obsolete. - They're left here for the moment just to give you some ideas for - what to try if you're having trouble. + If you used a hint file, try reading the comments in the hint file + for further tips and information. + + If you can successfully build miniperl, but the process crashes + during the building of extensions, you should run + make minitest + to test your version of miniperl. + + Some additional things that have been reported for either perl4 or + perl5: - AIX/RT may need a -a switch and -DCRIPPLED_CC. - Ultrix 3.[01] on MIPS needs to undefine WAITPID--the system call is busted. - MIPS machines may need to undef d_volatile. - MIPS machines may need to turn off -O on some files. - Some MIPS machines may need to undefine CASTNEGFLOAT. Genix may need to use libc rather than libc_s, or #undef VARARGS. + NCR Tower 32 (OS 2.01.01) may need -W2,-Sl,2000 and #undef MKDIR. - A/UX may appear to work with -O -B/usr/lib/big/ optimizer flags. - A/UX may need -lposix to find rewinddir. - A/UX may need -ZP -DPOSIX, and -g if big cc is used. + UTS may need one or more of -DCRIPPLED_CC, -K or -g, and undef LSTAT. + If you get syntax errors on '(', try -DCRIPPLED_CC. + Machines with half-implemented dbm routines will need to #undef I_ODBM + SCO prior to 3.2.4 may be missing dbmclose(). An upgrade to 3.2.4 that includes libdbm.nfs (which includes dbmclose()) may be available. + If you get duplicates upon linking for malloc et al, say -DHIDEMYMALLOC. + If you get duplicate function definitions (a perl function has the same name as another function on your system) try -DEMBED. + If you get varags problems with gcc, be sure that gcc is installed correctly. When using gcc, you should probably have i_stdarg='define' - and i_varags='undef' in config.sh. + and i_varags='undef' in config.sh. The problem is usually solved + by running fixincludes correctly. + If you wish to use dynamic loading on SunOS or Solaris, and you have GNU as and GNU ld installed, you may need to add -B/bin/ to your $ccflags and $ldflags so that the system's versions of as and ld are used. + If you run into dynamic loading problems, check your setting of + the LD_LIBRARY_PATH environment variable. Perl should build + fine with LD_LIBRARY_PATH unset, though that may depend on details + of your local set-up. + 5) make test This will run the regression tests on the perl you just made. @@ -173,13 +188,14 @@ Installation 6) make install - This will put perl into a public directory (such as /usr/local/bin). - It will also try to put the man pages in a reasonable place. It will not - nroff the man page, however. You may need to be root to do this. If - you are not root, you must own the directories in question and you should - ignore any messages about chown not working. + This will put perl into a public directory (such as + /usr/local/bin). It will also try to put the man pages in a + reasonable place. It will not nroff the man page, however. You + may need to be root to run make install. If you are not root, you + must own the directories in question and you should ignore any + messages about chown not working. - make install will also install the following: + make install will install the following: perl, perl5.nnn where nnn is the current release number. This will be a link to perl. @@ -192,6 +208,7 @@ Installation s2p sed-to-perl translator find2perl find-to-perl translator h2xs Converts C .h header files to Perl extensions. + perldoc Tool to read perl's pod documentation. pod2html, Converters from perl's pod documentation format pod2latex, and to other useful formats. pod2man @@ -200,6 +217,9 @@ Installation Configure, usually under /usr/local/lib/perl5/. man pages in the location specified to Configure, usually something like /usr/local/man/man1. + module in the location specified to Configure, usually + man pages under /usr/local/lib/perl5/man/man3. + pod/*.pod in $privlib/pod/. Perl's *.h header files and the libperl.a library are also installed under $archlib so that you may later build new @@ -208,9 +228,11 @@ Installation make install may also offer to install perl in a "standard" location. Most of the documentation in the pod/ directory is also available - in HTML format. Type + in HTML and LaTeX format. Type cd pod; make html; cd .. - to generate the html versions. + to generate the html versions, and + cd pod; make tex; cd .. + to generate the LaTeX versions. 7) Read the manual entries before running perl. |