--- setup.py.1 2009-03-12 04:07:36.000000000 +0000 +++ setup.py 2009-03-12 04:08:36.000000000 +0000 @@ -1265,13 +1265,21 @@ ) libraries = [] - elif platform in ('freebsd4', 'freebsd5', 'freebsd6', 'freebsd7', 'freebsd8', 'freebsd9'): + elif platform in ('freebsd4', 'freebsd5', 'freebsd6'): # FreeBSD's P1003.1b semaphore support is very experimental # and has many known problems. (as of June 2008) - macros = dict( # FreeBSD + macros = dict( # FreeBSD 4-6 HAVE_SEM_OPEN=0, HAVE_SEM_TIMEDWAIT=0, HAVE_FD_TRANSFER=1, + ) + libraries = [] + + elif platform in ('freebsd7', 'freebsd8', 'freebsd9'): + macros = dict( # FreeBSD 7+ + HAVE_SEM_OPEN=1, + HAVE_SEM_TIMEDWAIT=1, + HAVE_FD_TRANSFER=1, ) libraries = []