some large number. C<$offset> can then be added to a Unix time value
to get what should be the proper value on any system.
-On Windows (at least), you shouldn't pass a negative value to C<gmtime> or
-C<localtime>.
-
=head2 Character sets and character encoding
Assume very little about character sets.
dgux dgux AViiON-dgux
DYNIX/ptx dynixptx i386-dynixptx
FreeBSD freebsd freebsd-i386
+ Haiku haiku BePC-haiku
Linux linux arm-linux
Linux linux i386-linux
Linux linux i586-linux
HP-UX hpux PA-RISC1.1
IRIX irix irix
Mac OS X darwin darwin
- MachTen PPC machten powerpc-machten
NeXT 3 next next-fat
NeXT 4 next OPENSTEP-Mach
openbsd openbsd i386-openbsd
=item *
The EMX environment for DOS, OS/2, etc. emx@iaehv.nl,
-http://www.leo.org/pub/comp/os/os2/leo/gnu/emx+gcc/index.html or
ftp://hobbes.nmsu.edu/pub/os2/dev/emx/ Also L<perlos2>.
=item *
=item *
-The MacPerl Pages, http://www.macperl.com/ .
-
-=item *
-
The MacPerl mailing lists, http://lists.perl.org/ .
=item *
(installed as L<perlvos>). Perl on VOS can accept either VOS- or
Unix-style file specifications as in either of the following:
- C<< $ perl -ne "print if /perl_setup/i" >system>notices >>
- C<< $ perl -ne "print if /perl_setup/i" /system/notices >>
+ $ perl -ne "print if /perl_setup/i" >system>notices
+ $ perl -ne "print if /perl_setup/i" /system/notices
or even a mixture of both as in:
- C<< $ perl -ne "print if /perl_setup/i" >system/notices >>
+ $ perl -ne "print if /perl_setup/i" >system/notices
Even though VOS allows the slash character to appear in object
names, because the VOS port of Perl interprets it as a pathname
=head2 Other perls
Perl has been ported to many platforms that do not fit into any of
-the categories listed above. Some, such as AmigaOS, Atari MiNT,
-BeOS, HP MPE/iX, QNX, Plan 9, and VOS, have been well-integrated
-into the standard Perl source code kit. You may need to see the
-F<ports/> directory on CPAN for information, and possibly binaries,
-for the likes of: aos, Atari ST, lynxos, riscos, Novell Netware,
-Tandem Guardian, I<etc.> (Yes, we know that some of these OSes may
-fall under the Unix category, but we are not a standards body.)
+the categories listed above. Some, such as AmigaOS, BeOS, HP MPE/iX,
+QNX, Plan 9, and VOS, have been well-integrated into the standard
+Perl source code kit. You may need to see the F<ports/> directory
+on CPAN for information, and possibly binaries, for the likes of:
+aos, Atari ST, lynxos, riscos, Novell Netware, Tandem Guardian,
+I<etc.> (Yes, we know that some of these OSes may fall under the
+Unix category, but we are not a standards body.)
Some approximate operating system names and their C<$^O> values
in the "OTHER" category include:
=item *
-Atari, F<README.mint> and Guido Flohr's web page
-http://stud.uni-sb.de/~gufl0000/
-
-=item *
-
Be OS, F<README.beos>
=item *
HP 300 MPE/iX, F<README.mpeix> and Mark Bixby's web page
-http://www.bixby.org/mark/perlix.html
+http://www.bixby.org/mark/porting.html
=item *
C<-b>, C<-c>, C<-k>, C<-g>, C<-p>, C<-u>, C<-A> are not implemented.
(S<Mac OS>)
-C<-g>, C<-k>, C<-l>, C<-p>, C<-u>, C<-A> are not particularly meaningful.
+C<-g>, C<-k>, C<-l>, C<-u>, C<-A> are not particularly meaningful.
(Win32, VMS, S<RISC OS>)
+C<-p> is not particularly meaningful. (VMS, S<RISC OS>)
+
C<-d> is true if passed a device spec without an explicit directory.
(VMS)
=item gmtime
-Same portability caveats as L<localtime>.
+In theory, gmtime() is reliable from -2**63 to 2**63-1. However,
+because work arounds in the implementation use floating point numbers,
+it will become inaccurate as the time gets larger. This is a bug and
+will be fixed in the future.
=item ioctl FILEHANDLE,FUNCTION,SCALAR
=item localtime
-Because Perl currently relies on the native standard C localtime()
-function, it is only safe to use times between 0 and (2**31)-1. Times
-outside this range may result in unexpected behavior depending on your
-operating system's implementation of localtime().
+localtime() has the same range as L<gmtime>, but because time zone
+rules change its accuracy for historical and future times may degrade
+but usually by no more than an hour.
=item lstat
Opening a process does not automatically flush output handles on some
platforms. (SunOS, Solaris, HP-UX)
-=item pipe
-
-Very limited functionality. (MiNT)
-
=item readlink
Not implemented. (Win32, VMS, S<RISC OS>)
I<scalar> will call the native command line direct and no such emulation
of a child Unix program will exists. Mileage B<will> vary. (S<RISC OS>)
-Far from being POSIX compliant. Because there may be no underlying
-/bin/sh tries to work around the problem by forking and execing the
-first token in its argument string. Handles basic redirection
-("<" or ">") on its own behalf. (MiNT)
-
Does not automatically flush output handles on some platforms.
(SunOS, Solaris, HP-UX)
As of July 2002 (the Perl release 5.8.0), the following platforms are
able to build Perl from the standard source code distribution
-available at http://www.cpan.org/src/index.html
+available at http://www.cpan.org/src/
AIX
BeOS
Greenhills
ISC
MachTen 68k
- MiNT
MPC
NEWS-OS
NextSTEP
L<perlaix>, L<perlamiga>, L<perlapollo>, L<perlbeos>, L<perlbs2000>,
L<perlce>, L<perlcygwin>, L<perldgux>, L<perldos>, L<perlepoc>,
L<perlebcdic>, L<perlfreebsd>, L<perlhurd>, L<perlhpux>, L<perlirix>,
-L<perlmachten>, L<perlmacos>, L<perlmacosx>, L<perlmint>, L<perlmpeix>,
+L<perlmacos>, L<perlmacosx>, L<perlmpeix>,
L<perlnetware>, L<perlos2>, L<perlos390>, L<perlos400>,
L<perlplan9>, L<perlqnx>, L<perlsolaris>, L<perltru64>,
L<perlunicode>, L<perlvmesa>, L<perlvms>, L<perlvos>,