From 99c48a8d315fe55c8e1e8eac2e01cd930cb89686 Mon Sep 17 00:00:00 2001 From: Hye-Shik Chang Date: Sat, 28 Jun 2008 01:04:31 +0000 Subject: Give information for compililation of _multiprocessing.SemLock on FreeBSD: FreeBSD's P1003.1b semaphore support is highly experimental and it's disabled by default. Even if a user loads the experimental kernel module manually, _multiprocessing doesn't work correctly due to several known incompatibilities around sem_unlink and sem_getvalue, yet. --- setup.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/setup.py b/setup.py index 87a5594..f979a29 100644 --- a/setup.py +++ b/setup.py @@ -1258,6 +1258,17 @@ class PyBuildExt(build_ext): HAVE_BROKEN_SEM_UNLINK=1 ) libraries = [] + + elif platform in ('freebsd5', 'freebsd6', 'freebsd7', 'freebsd8'): + # FreeBSD's P1003.1b semaphore support is very experimental + # and has many known problems. (as of June 2008) + macros = dict( # FreeBSD + HAVE_SEM_OPEN=0, + HAVE_SEM_TIMEDWAIT=0, + HAVE_FD_TRANSFER=1, + ) + libraries = [] + else: # Linux and other unices macros = dict( HAVE_SEM_OPEN=1, -- cgit v0.12