Merged revisions 76403 via svnmerge from

svn+ssh://pythondev@svn.python.org/python/trunk

........
  r76403 | ronald.oussoren | 2009-11-19 17:25:21 +0100 (Thu, 19 Nov 2009) | 14 lines

  Fix for issue #7085

  On MacOSX 10.6 the CoreFoundation framework must be initialized on the main
  thread, the constructor function in that framework will cause an SIGABRT when
  it is called on any other thread.

  Because a number of extension link (indirectly) to CoreFoundation and the
  Python core itself didn't the interpreter crashed when importing some
  extensions, such as _locale, on a secondary thread.

  This fix ensures that Python is linked to CoreFoundation on OSX, which results
  in the CoreFoundation constructor being called when Python is loaded. This
  does not require code changes.
........
This commit is contained in:
Ronald Oussoren 2009-11-19 17:15:31 +00:00
parent 26afd485ce
commit 3c1928a595
3 changed files with 27 additions and 16 deletions

View File

@ -12,6 +12,9 @@ What's New in Python 3.2 Alpha 1?
Core and Builtins Core and Builtins
----------------- -----------------
- Issue #7085: Fix crash when importing some extensions in a thread
on MacOSX 10.6.
- Issue #1757126: Fix the cyrillic-asian alias for the ptcp154 encoding. - Issue #1757126: Fix the cyrillic-asian alias for the ptcp154 encoding.
- Issue #6970: Remove redundant calls when comparing objects that don't - Issue #6970: Remove redundant calls when comparing objects that don't

36
configure vendored
View File

@ -1,5 +1,5 @@
#! /bin/sh #! /bin/sh
# From configure.in Revision: 76301 . # From configure.in Revision: 76328 .
# Guess values for system-dependent variables and create Makefiles. # Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.61 for python 3.2. # Generated by GNU Autoconf 2.61 for python 3.2.
# #
@ -3800,7 +3800,7 @@ else
{ echo "$as_me:$LINENO: result: no" >&5 { echo "$as_me:$LINENO: result: no" >&5
echo "${ECHO_T}no" >&6; } echo "${ECHO_T}no" >&6; }
fi fi
rm -f conftest* rm -f -r conftest*
@ -5338,7 +5338,7 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
else else
ac_cv_header_stdc=no ac_cv_header_stdc=no
fi fi
rm -f conftest* rm -f -r conftest*
fi fi
@ -5359,7 +5359,7 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
else else
ac_cv_header_stdc=no ac_cv_header_stdc=no
fi fi
rm -f conftest* rm -f -r conftest*
fi fi
@ -6457,7 +6457,7 @@ _ACEOF
fi fi
rm -f conftest* rm -f -r conftest*
{ echo "$as_me:$LINENO: result: $was_it_defined" >&5 { echo "$as_me:$LINENO: result: $was_it_defined" >&5
echo "${ECHO_T}$was_it_defined" >&6; } echo "${ECHO_T}$was_it_defined" >&6; }
@ -6987,7 +6987,7 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
else else
ac_cv_type_uid_t=no ac_cv_type_uid_t=no
fi fi
rm -f conftest* rm -f -r conftest*
fi fi
{ echo "$as_me:$LINENO: result: $ac_cv_type_uid_t" >&5 { echo "$as_me:$LINENO: result: $ac_cv_type_uid_t" >&5
@ -15529,7 +15529,7 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
else else
unistd_defines_pthreads=no unistd_defines_pthreads=no
fi fi
rm -f conftest* rm -f -r conftest*
{ echo "$as_me:$LINENO: result: $unistd_defines_pthreads" >&5 { echo "$as_me:$LINENO: result: $unistd_defines_pthreads" >&5
echo "${ECHO_T}$unistd_defines_pthreads" >&6; } echo "${ECHO_T}$unistd_defines_pthreads" >&6; }
@ -16827,7 +16827,7 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
$EGREP "yes" >/dev/null 2>&1; then $EGREP "yes" >/dev/null 2>&1; then
ipv6type=$i ipv6type=$i
fi fi
rm -f conftest* rm -f -r conftest*
;; ;;
kame) kame)
@ -16850,7 +16850,7 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
ipv6libdir=/usr/local/v6/lib ipv6libdir=/usr/local/v6/lib
ipv6trylibc=yes ipv6trylibc=yes
fi fi
rm -f conftest* rm -f -r conftest*
;; ;;
linux-glibc) linux-glibc)
@ -16871,7 +16871,7 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
ipv6type=$i; ipv6type=$i;
ipv6trylibc=yes ipv6trylibc=yes
fi fi
rm -f conftest* rm -f -r conftest*
;; ;;
linux-inet6) linux-inet6)
@ -16909,7 +16909,7 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
ipv6lib=inet6; ipv6lib=inet6;
ipv6libdir=/usr/local/v6/lib ipv6libdir=/usr/local/v6/lib
fi fi
rm -f conftest* rm -f -r conftest*
;; ;;
v6d) v6d)
@ -16932,7 +16932,7 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
ipv6libdir=/usr/local/v6/lib; ipv6libdir=/usr/local/v6/lib;
BASECFLAGS="-I/usr/local/v6/include $BASECFLAGS" BASECFLAGS="-I/usr/local/v6/include $BASECFLAGS"
fi fi
rm -f conftest* rm -f -r conftest*
;; ;;
zeta) zeta)
@ -16954,7 +16954,7 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
ipv6lib=inet6; ipv6lib=inet6;
ipv6libdir=/usr/local/v6/lib ipv6libdir=/usr/local/v6/lib
fi fi
rm -f conftest* rm -f -r conftest*
;; ;;
esac esac
@ -25044,7 +25044,7 @@ cat >>confdefs.h <<\_ACEOF
_ACEOF _ACEOF
fi fi
rm -f conftest* rm -f -r conftest*
cat >conftest.$ac_ext <<_ACEOF cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */ /* confdefs.h. */
@ -25063,7 +25063,7 @@ cat >>confdefs.h <<\_ACEOF
_ACEOF _ACEOF
fi fi
rm -f conftest* rm -f -r conftest*
fi fi
@ -25333,7 +25333,7 @@ cat >>confdefs.h <<\_ACEOF
_ACEOF _ACEOF
fi fi
rm -f conftest* rm -f -r conftest*
fi fi
@ -26411,6 +26411,10 @@ _ACEOF
fi fi
if test $ac_sys_system = Darwin
then
LIBS="$LIBS -framework CoreFoundation"
fi
{ echo "$as_me:$LINENO: checking for %zd printf() format support" >&5 { echo "$as_me:$LINENO: checking for %zd printf() format support" >&5
echo $ECHO_N "checking for %zd printf() format support... $ECHO_C" >&6; } echo $ECHO_N "checking for %zd printf() format support... $ECHO_C" >&6; }

View File

@ -3853,6 +3853,10 @@ then
[Define to printf format modifier for long long type]) [Define to printf format modifier for long long type])
fi fi
if test $ac_sys_system = Darwin
then
LIBS="$LIBS -framework CoreFoundation"
fi
AC_MSG_CHECKING(for %zd printf() format support) AC_MSG_CHECKING(for %zd printf() format support)
AC_CACHE_VAL(ac_cv_have_size_t_format, AC_CACHE_VAL(ac_cv_have_size_t_format,