This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Unmatched parentheses (thanks to Steve Peters)
[perl5.git] / README.freebsd
1 If you read this file _as_is_, just ignore the funny characters you
2 see.  It is written in the POD format (see pod/perlpod.pod) which is
3 specifically designed to be readable as is.
4
5 =head1 NAME
6
7 README.freebsd - Perl version 5 on FreeBSD systems
8
9 =head1 DESCRIPTION
10
11 This document describes various features of FreeBSD that will affect how Perl
12 version 5 (hereafter just Perl) is compiled and/or runs.
13
14 =head2 FreeBSD core dumps from readdir_r with ithreads
15
16 When perl is configured to use ithreads, it will use re-entrant library calls
17 in preference to non-re-entrant versions.  There is a bug in FreeBSD's
18 C<readdir_r> function in versions 4.5 and earlier that can cause a SEGV when
19 reading large directories. A patch for FreeBSD libc is available
20 (see http://www.freebsd.org/cgi/query-pr.cgi?pr=misc/30631 )
21 which has been integrated into FreeBSD 4.6.
22
23 =head2 $^X doesn't always contain a full path in FreeBSD
24
25 perl 5.8.0 sets C<$^X> where possible to a full path by asking the operating
26 system. On FreeBSD the full path of the perl interpreter is found by reading
27 the symlink F</proc/curproc/file>. There is a bug on FreeBSD, where the
28 result of reading this symlink is can be wrong in certain circumstances
29 (see http://www.freebsd.org/cgi/query-pr.cgi?pr=35703 ).
30 In these cases perl will fall back to the old behaviour of using C's
31 argv[0] value for C<$^X>.
32
33 =head2 Perl will no longer be part of "base FreeBSD"
34
35 Not as bad as it sounds--what this means is that Perl will no longer be
36 part of the B<kernel build system> of FreeBSD.  Perl will still very
37 probably be part of the "default install", and in any case the latest
38 version will be in the ports system.  The first FreeBSD version this
39 change will affect is 5.0, all 4.n versions will keep the status quo.
40
41 =head1 AUTHOR
42
43 Nicholas Clark <nick@ccl4.org>, collating wisdom supplied by Slaven Rezic
44 and Tim Bunce.
45
46 Please report any errors, updates, or suggestions to F<perlbug@perl.org>.
47