From: R. David Murray Date: Sat, 16 Oct 2010 00:43:13 +0000 (+0000) Subject: Merged revisions 85554 via svnmerge from X-Git-Tag: v2.7.1rc1~150 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=1d9d16e82729821197af6e240995a344e8e7e0ba;p=python Merged revisions 85554 via svnmerge from svn+ssh://pythondev@svn.python.org/python/branches/py3k ........ r85554 | r.david.murray | 2010-10-15 19:12:57 -0400 (Fri, 15 Oct 2010) | 4 lines #9862: On AIX PIPE_BUF is broken. Make it 512. Patch by Sébastien Sablé. ........ --- diff --git a/Misc/NEWS b/Misc/NEWS index d7f6d1f5bd..d8f2f1b3d6 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -10,6 +10,9 @@ What's New in Python 2.7.1? Core and Builtins ----------------- +- Issue #9862: Compensate for broken PIPE_BUF in AIX by hard coding + its value as the default 512 when compiling on AIX. + - Issue #10068: Global objects which have reference cycles with their module's dict are now cleared again. This causes issue #7140 to appear again. diff --git a/Modules/selectmodule.c b/Modules/selectmodule.c index 1b88c987c6..086a6476ee 100644 --- a/Modules/selectmodule.c +++ b/Modules/selectmodule.c @@ -1768,6 +1768,10 @@ initselect(void) PyModule_AddObject(m, "error", SelectError); #ifdef PIPE_BUF +#ifdef HAVE_BROKEN_PIPE_BUF +#undef PIPE_BUF +#define PIPE_BUF 512 +#endif PyModule_AddIntConstant(m, "PIPE_BUF", PIPE_BUF); #endif diff --git a/configure.in b/configure.in index bfa5ba5127..3a87ff1137 100644 --- a/configure.in +++ b/configure.in @@ -4261,6 +4261,12 @@ AC_CHECK_TYPE(socklen_t,, #endif ]) +case $ac_sys_system in +AIX*) + AC_DEFINE(HAVE_BROKEN_PIPE_BUF, 1, [Define if the system reports an invalid PIPE_BUF value.]) ;; +esac + + AC_SUBST(THREADHEADERS) for h in `(cd $srcdir;echo Python/thread_*.h)`