and up), per Chris Marcellino. This avoids consuming O(N^2) file
descriptors to support N backends. Tests suggest it's about a wash for
small installations, but large ones would have a problem.
# (Note: on OS X before 10.2, you might need -traditional-cpp instead)
CC="$CC -no-cpp-precomp"
-# Select appropriate semaphore support
-USE_NAMED_POSIX_SEMAPHORES=1
+# Select appropriate semaphore support. Darwin 6.0 (Mac OS X 10.2) and up
+# support System V semaphores; before that we have to use POSIX semaphores,
+# which are less good for our purposes because they eat a file descriptor
+# per backend per max_connection slot.
+case $host_os in
+ darwin[015].*)
+ USE_NAMED_POSIX_SEMAPHORES=1
+ ;;
+ *)
+ USE_SYSV_SEMAPHORES=1
+ ;;
+esac