This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Use POSIX locale functions if setlocale not available
[perl5.git] / README.freebsd
index 6894e4c..8e62903 100644 (file)
@@ -4,7 +4,7 @@ specifically designed to be readable as is.
 
 =head1 NAME
 
-README.freebsd - Perl version 5 on FreeBSD systems
+perlfreebsd - Perl version 5 on FreeBSD systems
 
 =head1 DESCRIPTION
 
@@ -15,33 +15,26 @@ version 5 (hereafter just Perl) is compiled and/or runs.
 
 When perl is configured to use ithreads, it will use re-entrant library calls
 in preference to non-re-entrant versions.  There is a bug in FreeBSD's
-C<readdir_r> function that can cause a SEGV when reading large directories.
-A patch is available
-(see http://www.freebsd.org/cgi/query-pr.cgi?pr=misc/30631 )
-and will hopefully be integrated into FreeBSD 4.6.
-
-=head2 $^X doesn't always contain a full path in FreeBSD
-
-perl 5.8.0 sets C<$^X> where possible to a full path by asking the operating
-system. On FreeBSD the full path of the perl interpreter is found by reading
-the symlink F</proc/curproc/file>. There is a bug on FreeBSD, where the
-result of reading this symlink is can be wrong in certain circumstances
-(see http://www.freebsd.org/cgi/query-pr.cgi?pr=35703 ).
+C<readdir_r> function in versions 4.5 and earlier that can cause a SEGV when
+reading large directories. A patch for FreeBSD libc is available
+(see L<http://www.freebsd.org/cgi/query-pr.cgi?pr=misc/30631> )
+which has been integrated into FreeBSD 4.6.
+
+=head2 C<$^X> doesn't always contain a full path in FreeBSD
+
+perl sets C<$^X> where possible to a full path by asking the operating
+system. On FreeBSD the full path of the perl interpreter is found by using
+C<sysctl> with C<KERN_PROC_PATHNAME> if that is supported, else by reading
+the symlink F</proc/curproc/file>. FreeBSD 7 and earlier has a bug where
+either approach sometimes returns an incorrect value
+(see L<http://www.freebsd.org/cgi/query-pr.cgi?pr=35703> ).
 In these cases perl will fall back to the old behaviour of using C's
-argv[0] value for C<$^X>.
-
-=head2 Perl will no more be part of "base FreeBSD"
-
-Not as bad as it sounds--what is means is that Perl will no more be
-part of the B<kernel build system> of FreeBSD.  Perl will still very
-probably be part of the "default install", and in any case the latest
-version will be in the ports system.  The first FreeBSD version this
-change will affect is 5.0, all 4.n versions will keep the status quo.
+C<argv[0]> value for C<$^X>.
 
 =head1 AUTHOR
 
 Nicholas Clark <nick@ccl4.org>, collating wisdom supplied by Slaven Rezic
 and Tim Bunce.
 
-Please report any errors, updates, or suggestions to F<perlbug@perl.org>.
+Please report any errors, updates, or suggestions to L<mailto:perlbug@perl.org>.