]> granicus.if.org Git - python/commitdiff
Merged revisions 76403 via svnmerge from
authorRonald Oussoren <ronaldoussoren@mac.com>
Thu, 19 Nov 2009 17:15:31 +0000 (17:15 +0000)
committerRonald Oussoren <ronaldoussoren@mac.com>
Thu, 19 Nov 2009 17:15:31 +0000 (17:15 +0000)
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.
........

Misc/NEWS
configure
configure.in

index a455a76cfc8236522cf4018ae404a3d3dae09775..4310f6a7c8660e990f3a2379780da6a13cc4580a 100644 (file)
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -12,6 +12,9 @@ What's New in Python 3.2 Alpha 1?
 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 #6970: Remove redundant calls when comparing objects that don't
index d0b086905d02d2dfa0b0494ca74a097d028efa5c..c42b514c04e587868c12493c24953186bd56ae32 100755 (executable)
--- a/configure
+++ b/configure
@@ -1,5 +1,5 @@
 #! /bin/sh
-# From configure.in Revision: 76301 .
+# From configure.in Revision: 76328 .
 # Guess values for system-dependent variables and create Makefiles.
 # Generated by GNU Autoconf 2.61 for python 3.2.
 #
@@ -3800,7 +3800,7 @@ else
   { echo "$as_me:$LINENO: result: no" >&5
 echo "${ECHO_T}no" >&6; }
 fi
-rm -f conftest*
+rm -f -r conftest*
 
 
 
@@ -5338,7 +5338,7 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
 else
   ac_cv_header_stdc=no
 fi
-rm -f conftest*
+rm -f -r conftest*
 
 fi
 
@@ -5359,7 +5359,7 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
 else
   ac_cv_header_stdc=no
 fi
-rm -f conftest*
+rm -f -r conftest*
 
 fi
 
@@ -6457,7 +6457,7 @@ _ACEOF
 
 
 fi
-rm -f conftest*
+rm -f -r conftest*
 
 { echo "$as_me:$LINENO: result: $was_it_defined" >&5
 echo "${ECHO_T}$was_it_defined" >&6; }
@@ -6987,7 +6987,7 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
 else
   ac_cv_type_uid_t=no
 fi
-rm -f conftest*
+rm -f -r conftest*
 
 fi
 { 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
   unistd_defines_pthreads=no
 fi
-rm -f conftest*
+rm -f -r conftest*
 
     { echo "$as_me:$LINENO: result: $unistd_defines_pthreads" >&5
 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
   ipv6type=$i
 fi
-rm -f conftest*
+rm -f -r conftest*
 
                        ;;
                kame)
@@ -16850,7 +16850,7 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
                                ipv6libdir=/usr/local/v6/lib
                                ipv6trylibc=yes
 fi
-rm -f conftest*
+rm -f -r conftest*
 
                        ;;
                linux-glibc)
@@ -16871,7 +16871,7 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
   ipv6type=$i;
                                ipv6trylibc=yes
 fi
-rm -f conftest*
+rm -f -r conftest*
 
                        ;;
                linux-inet6)
@@ -16909,7 +16909,7 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
                                ipv6lib=inet6;
                                ipv6libdir=/usr/local/v6/lib
 fi
-rm -f conftest*
+rm -f -r conftest*
 
                        ;;
                v6d)
@@ -16932,7 +16932,7 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
                                ipv6libdir=/usr/local/v6/lib;
                                BASECFLAGS="-I/usr/local/v6/include $BASECFLAGS"
 fi
-rm -f conftest*
+rm -f -r conftest*
 
                        ;;
                zeta)
@@ -16954,7 +16954,7 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
                                ipv6lib=inet6;
                                ipv6libdir=/usr/local/v6/lib
 fi
-rm -f conftest*
+rm -f -r conftest*
 
                        ;;
                esac
@@ -25044,7 +25044,7 @@ cat >>confdefs.h <<\_ACEOF
 _ACEOF
 
 fi
-rm -f conftest*
+rm -f -r conftest*
 
   cat >conftest.$ac_ext <<_ACEOF
 /* confdefs.h.  */
@@ -25063,7 +25063,7 @@ cat >>confdefs.h <<\_ACEOF
 _ACEOF
 
 fi
-rm -f conftest*
+rm -f -r conftest*
 
 fi
 
@@ -25333,7 +25333,7 @@ cat >>confdefs.h <<\_ACEOF
 _ACEOF
 
 fi
-rm -f conftest*
+rm -f -r conftest*
 
 fi
 
@@ -26411,6 +26411,10 @@ _ACEOF
 
 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 $ECHO_N "checking for %zd printf() format support... $ECHO_C" >&6; }
index 2a0745f2323a17b3dd624d9faf412259591dee6b..ac636672883c41d66159ccb82952dd3a4c4b0d3e 100644 (file)
@@ -3853,6 +3853,10 @@ then
   [Define to printf format modifier for long long type])
 fi
 
+if test $ac_sys_system = Darwin
+then
+       LIBS="$LIBS -framework CoreFoundation"
+fi
 
 AC_MSG_CHECKING(for %zd printf() format support)
 AC_CACHE_VAL(ac_cv_have_size_t_format,