Porting - 6. Preparing for 10.4

6.1 Perl

/usr/bin/perl is now perl 5.8.6; the architecture string is still "darwin-thread-multi-2level".

6.2 New symbol definitions

Mac OS X 10.4 has changed the types of many symbols. If you previously set a type explicitly, for example, defining socklen_t as int, that definition may no longer be correct.

6.3 New builtin system libraries

The poll() function in Mac OS X 10.3 was actually an emulation implemented using select(). In Mac OS X 10.4, poll() is a real function implemented in the kernel, however it is broken when used with sockets. Consider ignoring the system's poll() completely. Fink's glib2 package has been patched to use a fully functional emulation, so it is safe to use that library's implementation of poll-like functions.