diff -Naur Python-2.6/Modules/_multiprocessing/multiprocessing.c Python-2.6-clean-patch/Modules/_multiprocessing/multiprocessing.c --- Python-2.6/Modules/_multiprocessing/multiprocessing.c 2008-06-14 00:38:33.000000000 +0200 +++ Python-2.6-clean-patch/Modules/_multiprocessing/multiprocessing.c 2008-10-07 12:23:55.000000000 +0200 @@ -8,6 +8,13 @@ #include "multiprocessing.h" +#ifndef CMSG_SPACE +#define CMSG_SPACE(len) (_CMSG_ALIGN(sizeof(struct cmsghdr)) + _CMSG_ALIGN(len)) +#endif +#ifndef CMSG_LEN +#define CMSG_LEN(len) (_CMSG_ALIGN(sizeof(struct cmsghdr)) + (len)) +#endif + PyObject *create_win32_namespace(void); PyObject *pickle_dumps, *pickle_loads, *pickle_protocol; diff -Naur Python-2.6/setup.py Python-2.6-clean-patch/setup.py --- Python-2.6/setup.py 2008-09-30 02:15:45.000000000 +0200 +++ Python-2.6-clean-patch/setup.py 2008-10-07 12:23:34.000000000 +0200 @@ -1277,6 +1277,14 @@ ) libraries = [] + elif platform.startswith('aix'): + macros = dict( + HAVE_SEM_OPEN=1, + HAVE_SEM_TIMEDWAIT=0, + HAVE_FD_TRANSFER=1 + ) + libraries = ['rt'] + else: # Linux and other unices macros = dict( HAVE_SEM_OPEN=1,