FreeBSD 5.x has moved some library routines and typedefs outside the
scope of the _XOPEN_SOURCE and _POSIX_C_SOURCE symbols, including:
- getloadavg()
- typedefs for u_int, u_long, u_char, u_short, ushort & uint

These are now all defined under the control of a __BSD_VISIBLE symbol.

The lack of the typedefs causes several extension modules to build
incorrectly or not at all, and is the cause of failures reported for
test_socket and test_tempfile on this platform
(see python-dev: 29/6/03, pieterb@gewis.nl, "Running tests on freebsd5")

This change does not appear to be needed in the 2.2 branch.
diff --git a/configure.in b/configure.in
index bfe1e38..b80086c 100644
--- a/configure.in
+++ b/configure.in
@@ -45,6 +45,11 @@
 # them.
 AC_DEFINE(_NETBSD_SOURCE, 1, [Define on NetBSD to activate all library features])
 
+# The later defininition of _XOPEN_SOURCE and _POSIX_C_SOURCE disables
+# certain features on FreeBSD, so we need __BSD_VISIBLE to re-enable
+# them.
+AC_DEFINE(__BSD_VISIBLE, 1, [Define on FreeBSD to activate all library features])
+
 define_xopen_source=yes
 
 # Arguments passed to configure.