Skip to content

Commit 99c48a8

Browse files
committed
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.
1 parent 910c2ab commit 99c48a8

1 file changed

Lines changed: 11 additions & 0 deletions

File tree

‎setup.py‎

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1258,6 +1258,17 @@ class db_found(Exception): pass
12581258
HAVE_BROKEN_SEM_UNLINK=1
12591259
)
12601260
libraries = []
1261+
1262+
elif platform in ('freebsd5', 'freebsd6', 'freebsd7', 'freebsd8'):
1263+
# FreeBSD's P1003.1b semaphore support is very experimental
1264+
# and has many known problems. (as of June 2008)
1265+
macros = dict( # FreeBSD
1266+
HAVE_SEM_OPEN=0,
1267+
HAVE_SEM_TIMEDWAIT=0,
1268+
HAVE_FD_TRANSFER=1,
1269+
)
1270+
libraries = []
1271+
12611272
else: # Linux and other unices
12621273
macros = dict(
12631274
HAVE_SEM_OPEN=1,

0 commit comments

Comments
 (0)