[python3] * Wed Jan 5 2011 David Malcolm <dmalcolm at redhat.com> - 3.2-0.8.b2 - set EXTRA_CFLAGS to our CFLAGS,

dmalcolm dmalcolm at fedoraproject.org
Wed Jan 5 23:37:32 UTC 2011


commit 5659c63442be2e91eb42e60284d7a9a9ab0b80dd
Author: David Malcolm <dmalcolm at redhat.com>
Date:   Wed Jan 5 18:34:21 2011 -0500

    * Wed Jan  5 2011 David Malcolm <dmalcolm at redhat.com> - 3.2-0.8.b2
    - set EXTRA_CFLAGS to our CFLAGS, rather than overriding OPT, fixing a linker
    error with dynamic annotations (when configured using --with-valgrind)
    - fix the ppc build of the debug configuration (patch 130; rhbz#661510)

 python-3.2b2-fix-ppc-debug-build.patch |   19 +++++++++++++++++++
 python3.spec                           |   24 +++++++++++++++++++++---
 2 files changed, 40 insertions(+), 3 deletions(-)
---
diff --git a/python-3.2b2-fix-ppc-debug-build.patch b/python-3.2b2-fix-ppc-debug-build.patch
new file mode 100644
index 0000000..e9c7176
--- /dev/null
+++ b/python-3.2b2-fix-ppc-debug-build.patch
@@ -0,0 +1,19 @@
+diff -up Python-3.2b2/Python/ceval.c.fix-ppc-debug-build Python-3.2b2/Python/ceval.c
+--- Python-3.2b2/Python/ceval.c.fix-ppc-debug-build	2011-01-05 16:37:27.007598805 -0500
++++ Python-3.2b2/Python/ceval.c	2011-01-05 16:45:06.562652472 -0500
+@@ -30,10 +30,11 @@
+ 
+ typedef unsigned long long uint64;
+ 
+-#if defined(__ppc__) /* <- Don't know if this is the correct symbol; this
+-                           section should work for GCC on any PowerPC
+-                           platform, irrespective of OS.
+-                           POWER?  Who knows :-) */
++/* PowerPC suppport.
++   "__ppc__" appears to be the preprocessor definition to detect on OS X, whereas
++   "__powerpc__" appears to be the correct one for Linux with GCC
++*/
++#if defined(__ppc__) || defined (__powerpc__)
+ 
+ #define READ_TIMESTAMP(var) ppc_getcounter(&var)
+ 
diff --git a/python3.spec b/python3.spec
index 36bbe0d..56208eb 100644
--- a/python3.spec
+++ b/python3.spec
@@ -113,7 +113,7 @@
 Summary: Version 3 of the Python programming language aka Python 3000
 Name: python3
 Version: %{pybasever}
-Release: 0.7.%{alphatag}%{?dist}
+Release: 0.8.%{alphatag}%{?dist}
 License: Python
 Group: Development/Languages
 Source: http://python.org/ftp/python/%{version}/Python-%{version}%{alphatag}.tar.bz2
@@ -231,6 +231,10 @@ Patch128: python-3.2b2-test_sys-COUNT_ALLOCS.patch
 # Not yet sent upstream
 Patch129: python-3.2b2-fix-test-subprocess-with-nonreadable-path-dir.patch
 
+# Use the correct preprocessor definition to detect ppc:
+# See http://bugs.python.org/issue10655 and rhbz#661510
+Patch130: python-3.2b2-fix-ppc-debug-build.patch
+
 # This is the generated patch to "configure"; see the description of
 #   %{regenerate_autotooling_patch}
 # above:
@@ -398,6 +402,7 @@ rm -r Modules/zlib || exit 1
 %patch127 -p1
 %patch128 -p1
 %patch129 -p1
+%patch130 -p1
 
 # Currently (2010-01-15), http://docs.python.org/library is for 2.6, and there
 # are many differences between 2.6 and the Python 3 library.
@@ -484,8 +489,16 @@ BuildPython() {
   --with-computed-gotos=%{with_computed_gotos} \
   %{nil}
 
-
-make OPT="$CFLAGS" %{?_smp_mflags}
+  # Set EXTRA_CFLAGS to our CFLAGS (rather than overriding OPT, as we've done
+  # in the past).
+  # This should fix a problem with --with-valgrind where it adds
+  #   -DDYNAMIC_ANNOTATIONS_ENABLED=1
+  # to OPT which must be passed to all compilation units in the build,
+  # otherwise leading to linker errors, e.g.
+  #    missing symbol AnnotateRWLockDestroy
+  #
+  # Invoke the build:
+  make EXTRA_CFLAGS="$CFLAGS" %{?_smp_mflags}
 
   popd
   echo FINISHED: BUILD OF PYTHON FOR CONFIGURATION: $ConfDir
@@ -1166,6 +1179,11 @@ rm -fr %{buildroot}
 
 
 %changelog
+* Wed Jan  5 2011 David Malcolm <dmalcolm at redhat.com> - 3.2-0.8.b2
+- set EXTRA_CFLAGS to our CFLAGS, rather than overriding OPT, fixing a linker
+error with dynamic annotations (when configured using --with-valgrind)
+- fix the ppc build of the debug configuration (patch 130; rhbz#661510)
+
 * Tue Jan  4 2011 David Malcolm <dmalcolm at redhat.com> - 3.2-0.7.b2
 - add --with-valgrind to configuration (on architectures that support this)
 


More information about the scm-commits mailing list