From 7b4659b81fc59697f6c9a0de8dd4405c40c33922 Mon Sep 17 00:00:00 2001 From: dmalcolm Date: Jan 18 2010 18:51:20 +0000 Subject: - patch Makefile.pre.in to avoid building static library (patch111, bug 556092) - split up the "configure" invocation flags onto individual lines --- diff --git a/python-2.6.4-no-static-lib.patch b/python-2.6.4-no-static-lib.patch new file mode 100644 index 0000000..57caafc --- /dev/null +++ b/python-2.6.4-no-static-lib.patch @@ -0,0 +1,50 @@ +diff -up Python-2.6.4/Makefile.pre.in.no-static-lib Python-2.6.4/Makefile.pre.in +--- Python-2.6.4/Makefile.pre.in.no-static-lib 2010-01-18 13:11:10.975859689 -0500 ++++ Python-2.6.4/Makefile.pre.in 2010-01-18 13:14:27.524859334 -0500 +@@ -382,7 +382,7 @@ coverage: + + + # Build the interpreter +-$(BUILDPYTHON): Modules/python.o $(LIBRARY) $(LDLIBRARY) ++$(BUILDPYTHON): Modules/python.o $(LDLIBRARY) + $(LINKCC) $(CFLAGS) $(LDFLAGS) $(LINKFORSHARED) -o $@ \ + Modules/python.o \ + $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST) +@@ -398,18 +398,6 @@ sharedmods: $(BUILDPYTHON) + *) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py build;; \ + esac + +-# Build static library +-# avoid long command lines, same as LIBRARY_OBJS +-$(LIBRARY): $(LIBRARY_OBJS) +- -rm -f $@ +- $(AR) cr $@ Modules/getbuildinfo.o +- $(AR) cr $@ $(PARSER_OBJS) +- $(AR) cr $@ $(OBJECT_OBJS) +- $(AR) cr $@ $(PYTHON_OBJS) +- $(AR) cr $@ $(MODULE_OBJS) $(SIGNAL_OBJS) +- $(AR) cr $@ $(MODOBJS) +- $(RANLIB) $@ +- + libpython$(VERSION).so: $(LIBRARY_OBJS) + if test $(INSTSONAME) != $(LDLIBRARY); then \ + $(LDSHARED) $(LDFLAGS) -Wl,-h$(INSTSONAME) -o $(INSTSONAME) $(LIBRARY_OBJS) $(MODLIBS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST); \ +@@ -945,18 +933,6 @@ libainstall: all + else true; \ + fi; \ + done +- @if test -d $(LIBRARY); then :; else \ +- if test "$(PYTHONFRAMEWORKDIR)" = no-framework; then \ +- if test "$(SO)" = .dll; then \ +- $(INSTALL_DATA) $(LDLIBRARY) $(DESTDIR)$(LIBPL) ; \ +- else \ +- $(INSTALL_DATA) $(LIBRARY) $(DESTDIR)$(LIBPL)/$(LIBRARY) ; \ +- $(RANLIB) $(DESTDIR)$(LIBPL)/$(LIBRARY) ; \ +- fi; \ +- else \ +- echo Skip install of $(LIBRARY) - use make frameworkinstall; \ +- fi; \ +- fi + $(INSTALL_DATA) Modules/config.c $(DESTDIR)$(LIBPL)/config.c + $(INSTALL_DATA) Modules/python.o $(DESTDIR)$(LIBPL)/python.o + $(INSTALL_DATA) $(srcdir)/Modules/config.c.in $(DESTDIR)$(LIBPL)/config.c.in diff --git a/python.spec b/python.spec index 98d0f4e..891b9ee 100644 --- a/python.spec +++ b/python.spec @@ -22,7 +22,7 @@ Summary: An interpreted, interactive, object-oriented programming language Name: %{python} Version: 2.6.4 -Release: 5%{?dist} +Release: 6%{?dist} License: Python Group: Development/Languages Provides: python-abi = %{pybasever} @@ -74,6 +74,10 @@ Patch102: python-2.6-lib64.patch # SELinux patches Patch110: python-2.6-ctypes-noexecmem.patch +# Patch the Makefile.pre.in so that the generated Makefile doesn't try to build +# a libpythonMAJOR.MINOR.a (bug 550692): +Patch111: python-2.6.4-no-static-lib.patch + # New API from 2.6 #Patch260: python-2.5.2-set_wakeup_fd4.patch @@ -255,6 +259,8 @@ done %patch110 -p1 -b .selinux +%patch111 -p1 -b .no-static-lib + #%%patch260 -p1 -b .set_wakeup_fd #%%patch999 -p1 -b .cve2007-4965 @@ -278,7 +284,12 @@ fi export CC=gcc # For patches 4 and 52, need to get a newer configure generated out of configure.in autoconf -%configure --enable-ipv6 --enable-unicode=%{unicode} --enable-shared --with-system-ffi --with-valgrind +%configure \ + --enable-ipv6 \ + --enable-unicode=%{unicode} \ + --enable-shared \ + --with-system-ffi \ + --with-valgrind make OPT="$CFLAGS" %{?_smp_mflags} LD_LIBRARY_PATH=$topdir $topdir/python Tools/scripts/pathfix.py -i "%{_bindir}/env python%{pybasever}" . @@ -570,6 +581,10 @@ rm -fr $RPM_BUILD_ROOT %{_libdir}/python%{pybasever}/lib-dynload/_testcapimodule.so %changelog +* Mon Jan 18 2010 David Malcolm - 2.6.4-6 +- patch Makefile.pre.in to avoid building static library (patch111, bug 556092) +- split up the "configure" invocation flags onto individual lines + * Fri Jan 15 2010 David Malcolm - 2.6.4-5 - replace usage of %%define with %%global - use the %%{_isa} macro to ensure that the python-devel dependency on python