From 32d68c27880d4ad40c3f06e5397a539a38a85a6f Mon Sep 17 00:00:00 2001 From: Jesse Noller Date: Tue, 31 Mar 2009 18:48:42 +0000 Subject: [PATCH] Merged revisions 70849,70852 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r70849 | jesse.noller | 2009-03-31 13:12:35 -0500 (Tue, 31 Mar 2009) | 1 line Apply patch for netbsd multiprocessing support ........ r70852 | jesse.noller | 2009-03-31 13:27:14 -0500 (Tue, 31 Mar 2009) | 1 line missed the news/acks for netbsd patch ........ --- Misc/ACKS | 1 + Misc/NEWS | 2 ++ Modules/mmapmodule.c | 6 +++++- Modules/socketmodule.c | 2 +- setup.py | 9 +++++++++ 5 files changed, 18 insertions(+), 2 deletions(-) diff --git a/Misc/ACKS b/Misc/ACKS index bd300de67e..7d4c1bf036 100644 --- a/Misc/ACKS +++ b/Misc/ACKS @@ -492,6 +492,7 @@ James A Morrison Sjoerd Mullender Sape Mullender Michael Muller +Piotr Meyer John Nagle Takahiro Nakayama Travers Naran diff --git a/Misc/NEWS b/Misc/NEWS index d78220e8b1..a52e37aa0e 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -53,6 +53,8 @@ Core and Builtins Library ------- +- Issue #5400: Added patch for multiprocessing on netbsd compilation/support + - Issue #5387: Fixed mmap.move crash by integer overflow. - Issue #5261: Patch multiprocessing's semaphore.c to support context diff --git a/Modules/mmapmodule.c b/Modules/mmapmodule.c index d903eca9d9..c6c8a30182 100644 --- a/Modules/mmapmodule.c +++ b/Modules/mmapmodule.c @@ -520,7 +520,11 @@ mmap_resize_method(mmap_object *self, #ifdef MREMAP_MAYMOVE newmap = mremap(self->data, self->size, new_size, MREMAP_MAYMOVE); #else - newmap = mremap(self->data, self->size, new_size, 0); + #if defined(__NetBSD__) + newmap = mremap(self->data, self->size, self->data, new_size, 0); + #else + newmap = mremap(self->data, self->size, new_size, 0); + #endif /* __NetBSD__ */ #endif if (newmap == (void *)-1) { diff --git a/Modules/socketmodule.c b/Modules/socketmodule.c index 35809ee86d..c229c07252 100644 --- a/Modules/socketmodule.c +++ b/Modules/socketmodule.c @@ -382,7 +382,7 @@ dup_socket(SOCKET handle) #define SOCKETCLOSE close #endif -#if defined(HAVE_BLUETOOTH_H) || defined(HAVE_BLUETOOTH_BLUETOOTH_H) +#if defined(HAVE_BLUETOOTH_H) || defined(HAVE_BLUETOOTH_BLUETOOTH_H) && !defined(__NetBSD__) #define USE_BLUETOOTH 1 #if defined(__FreeBSD__) #define BTPROTO_L2CAP BLUETOOTH_PROTO_L2CAP diff --git a/setup.py b/setup.py index 522eb82add..3c25172435 100644 --- a/setup.py +++ b/setup.py @@ -1023,6 +1023,15 @@ class PyBuildExt(build_ext): ) libraries = [] + elif platform.startswith('netbsd'): + macros = dict( # at least NetBSD 5 + HAVE_SEM_OPEN=1, + HAVE_SEM_TIMEDWAIT=0, + HAVE_FD_TRANSFER=1, + HAVE_BROKEN_SEM_GETVALUE=1 + ) + libraries = [] + else: # Linux and other unices macros = dict( HAVE_SEM_OPEN=1, -- 2.40.0