rpms/python/F-12 python.spec,1.156,1.157
dmalcolm
dmalcolm at fedoraproject.org
Fri Mar 12 23:54:36 UTC 2010
Author: dmalcolm
Update of /cvs/pkgs/rpms/python/F-12
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv22659
Modified Files:
python.spec
Log Message:
big specfile cleanup; merging in the safe-looking fixes from the F-13 specfile so that I can see the "real" diff
Index: python.spec
===================================================================
RCS file: /cvs/pkgs/rpms/python/F-12/python.spec,v
retrieving revision 1.156
retrieving revision 1.157
diff -u -p -r1.156 -r1.157
--- python.spec 26 Jan 2010 03:24:03 -0000 1.156
+++ python.spec 12 Mar 2010 23:54:35 -0000 1.157
@@ -25,63 +25,185 @@
Summary: An interpreted, interactive, object-oriented programming language
Name: %{python}
Version: 2.6.2
-Release: 6%{?dist}
+Release: 7%{?dist}
License: Python
Group: Development/Languages
Provides: python-abi = %{pybasever}
Provides: python(abi) = %{pybasever}
Source: http://www.python.org/ftp/python/%{version}/Python-%{version}.tar.bz2
+# Modules/Setup.dist is ultimately used by the "makesetup" script to construct
+# the Makefile and config.c
+#
+# Upstream leaves many things disabled by default, to try to make it easy as
+# possible to build the code on as many platforms as possible.
+#
+# TODO: many modules can also now be built by setup.py after the python binary
+# has been built; need to assess if we should instead build things there
+#
+# We patch it downstream as follows:
+# - various modules are built by default by upstream as static libraries;
+# we built them as shared libraries
+# - build the "readline" module (appears to also be handled by setup.py now)
+# - enable the build of the following modules:
+# - array arraymodule.c # array objects
+# - cmath cmathmodule.c # -lm # complex math library functions
+# - math mathmodule.c # -lm # math library functions, e.g. sin()
+# - _struct _struct.c # binary structure packing/unpacking
+# - time timemodule.c # -lm # time operations and variables
+# - operator operator.c # operator.add() and similar goodies
+# - _weakref _weakref.c # basic weak reference support
+# - _testcapi _testcapimodule.c # Python C API test module
+# - _random _randommodule.c # Random number generator
+# - _collections _collectionsmodule.c # Container types
+# - itertools itertoolsmodule.c
+# - strop stropmodule.c
+# - _functools _functoolsmodule.c
+# - _bisect _bisectmodule.c # Bisection algorithms
+# - unicodedata unicodedata.c # static Unicode character database
+# - _locale _localemodule.c
+# - fcntl fcntlmodule.c # fcntl(2) and ioctl(2)
+# - spwd spwdmodule.c # spwd(3)
+# - grp grpmodule.c # grp(3)
+# - select selectmodule.c # select(2); not on ancient System V
+# - mmap mmapmodule.c # Memory-mapped files
+# - _csv _csv.c # CSV file helper
+# - _socket socketmodule.c # Socket module helper for socket(2)
+# - _ssl _ssl.c
+# - crypt cryptmodule.c -lcrypt # crypt(3)
+# - nis nismodule.c -lnsl # Sun yellow pages -- not everywhere
+# - termios termios.c # Steen Lumholt's termios module
+# - resource resource.c # Jeremy Hylton's rlimit interface
+# - audioop audioop.c # Operations on audio samples
+# - imageop imageop.c # Operations on images
+# - _md5 md5module.c md5.c
+# - _sha shamodule.c
+# - _sha256 sha256module.c
+# - _sha512 sha512module.c
+# - linuxaudiodev linuxaudiodev.c
+# - timing timingmodule.c
+# - _tkinter _tkinter.c tkappinit.c
+# - dl dlmodule.c
+# - gdbm gdbmmodule.c
+# - _bsddb _bsddb.c
+# - binascii binascii.c
+# - parser parsermodule.c
+# - cStringIO cStringIO.c
+# - cPickle cPickle.c
+# - zlib zlibmodule.c
+# - _multibytecodec cjkcodecs/multibytecodec.c
+# - _codecs_cn cjkcodecs/_codecs_cn.c
+# - _codecs_hk cjkcodecs/_codecs_hk.c
+# - _codecs_iso2022 cjkcodecs/_codecs_iso2022.c
+# - _codecs_jp cjkcodecs/_codecs_jp.c
+# - _codecs_kr cjkcodecs/_codecs_kr.c
+# - _codecs_tw cjkcodecs/_codecs_tw.c
Patch0: python-2.6.2-config.patch
+
+# Removes the "-g" option from "pydoc", for some reason; I believe
+# (dmalcolm 2010-01-29) that this was introduced in this change:
+# - fix pydoc (#68082)
+# in 2.2.1-12 as a response to the -g option needing TkInter installed
+# (Red Hat Linux 8)
+# Not upstream
Patch1: Python-2.2.1-pydocnogui.patch
-#Patch2: python-2.3.4-pydocnodoc.patch
# Fixup configure.in and setup.py to build against system expat library.
# Adapted from http://svn.python.org/view?view=rev&revision=77169
Patch3: python-2.6.2-with-system-expat.patch
+# Add $(CFLAGS) to the linker arguments when linking the "python" binary
+# since some architectures (sparc64) need this (rhbz:199373).
+# Not yet filed upstream
Patch4: python-2.5-cflags.patch
-#Patch5: python-2.5.1-ctypes-exec-stack.patch
+
+# Work around a bug in Python' gettext module relating to the "Plural-Forms"
+# header (rhbz:252136)
+# Related to upstream issues:
+# http://bugs.python.org/issue1448060 and http://bugs.python.org/issue1475523
+# though the proposed upstream patches are, alas, different
Patch6: python-2.5.1-plural-fix.patch
+
+# This patch was listed in the changelog as:
+# * Fri Sep 14 2007 Jeremy Katz <katzj at redhat.com> - 2.5.1-11
+# - fix encoding of sqlite .py files to work around weird encoding problem
+# in Turkish (#283331)
+# A traceback attached to rhbz 244016 shows the problem most clearly: a
+# traceback on attempting to import the sqlite module, with:
+# "SyntaxError: encoding problem: with BOM (__init__.py, line 1)"
+# This seems to come from Parser/tokenizer.c:check_coding_spec
+# Our patch changes two source files within sqlite3, removing the
+# "coding: ISO-8859-1" specs and character E4 = U+00E4 =
+# LATIN SMALL LETTER A WITH DIAERESIS from in ghaering's surname.
+#
+# It may be that the conversion of "ISO-8859-1" to "iso-8859-1" is thwarted
+# by the implementation of "tolower" in the Turkish locale; see:
+# https://bugzilla.redhat.com/show_bug.cgi?id=191096#c9
+#
+# TODO: Not yet sent upstream, and appears to me (dmalcolm 2010-01-29) that
+# it may be papering over a symptom
Patch7: python-2.5.1-sqlite-encoding.patch
-#Patch8: python-2.5-xmlrpclib-marshal-objects.patch
-#Patch9: python-2.5-tkinter.patch
+
+# FIXME: Lib/ctypes/util.py posix implementation defines a function
+# _get_soname(f). Upstreams's implementation of this uses objdump to read the
+# SONAME from a library; we avoid this, apparently to minimize space
+# requirements on the live CD:
+# (rhbz:307221)
Patch10: python-2.6.2-binutils-no-dep.patch
+
+# FIXME: appears to relate to:
+#* Tue Oct 30 2007 James Antill <jantill at redhat.com> - 2.5.1-15
+#- Do codec lowercase in C Locale.
+#- Resolves: 207134 191096
Patch11: python-2.5.1-codec-ascii-tolower.patch
-#Patch12: python-2.5.1-pysqlite.patch
+
+# Add various constants to the socketmodule (rhbz#436560):
+# TODO: these patches were added in 2.5.1-22 and 2.5.1-24 but appear not to
+# have been sent upstream yet:
Patch13: python-2.5.1-socketmodule-constants.patch
Patch14: python-2.5.1-socketmodule-constants2.patch
-#Patch15: python-2.5.1-listdir.patch
+
+# Remove an "-rpath $(LIBDIR)" argument from the linkage args in configure.in:
+# FIXME: is this for OSF, not Linux?
Patch16: python-2.6-rpath.patch
# Fix distutils to follow the Fedora/RHEL/CentOS policies of having .pyo files
Patch51: python-2.6-distutils_rpm.patch
-# upstreamed
-
# Patch Lib/SocketServer.py to avoid trying to use non-existant keyword args
# for os.waitpid. Upstream issue http://bugs.python.org/issue5814
# patch taken from there. RH bug 552504
Patch52: python-2.6.2-fix-SocketServer.py-r73887.patch
-#Patch50: python-2.5-disable-egginfo.patch
-
-# new db version
-#Patch60: python-2.5.2-db47.patch
-
-# lib64 patches
+# "lib64 patches"
+# This patch seems to be associated with bug 122304, which was
+# http://sourceforge.net/tracker/?func=detail&atid=105470&aid=931848&group_id=5470
+# and is now
+# http://bugs.python.org/issue931848
+# However, as it stands this patch is merely a copy of:
+# http://svn.python.org/view/python/trunk/Lib/test/test_re.py?r1=35825&r2=35824&pathrev=35825
+# which is already upstream
Patch101: python-2.3.4-lib64-regex.patch
+
+# Only used when "%{_lib}" == "lib64"
+# Fixup various paths throughout the build and in distutils from "lib" to "lib64",
+# and add the /usr/lib64/pythonMAJOR.MINOR/site-packages to sitedirs, in front of
+# /usr/lib/pythonMAJOR.MINOR/site-packages
+# Not upstream
Patch102: python-2.6-lib64.patch
-# SELinux patches
+# rhbz#488396: rework the ctypes module to use ffi_closure_alloc and
+# ffi_closure_free, rather than malloc_closure.c, since the latter tries to
+# mmap pages with PROT_READ | PROT_WRITE | PROT_EXEC, which SELinux frowns upon.
+#
+# Patch sent upstream as http://bugs.python.org/issue5504 which also contains
+# a rebasing of the upstream copy of libffi to one containing the
+# memory-management hooks.
+#
+# This appears to be the same as that patch, but without the rebasing of libffi
+# (since we use the system copy of libffi):
Patch110: python-2.6-ctypes-noexecmem.patch
-# New API from 2.6
-#Patch260: python-2.5.2-set_wakeup_fd4.patch
-
-#Patch999: python-2.5.CVE-2007-4965-int-overflow.patch
-#Patch998: python-2.5-CVE-2008-2316.patch
-
%if %{main_python}
Obsoletes: Distutils
@@ -103,7 +225,7 @@ BuildRoot: %{_tmppath}/%{name}-%{version
BuildRequires: readline-devel, openssl-devel, gmp-devel
BuildRequires: ncurses-devel, gdbm-devel, zlib-devel, expat-devel
BuildRequires: libGL-devel tk tix gcc-c++ libX11-devel glibc-devel
-BuildRequires: bzip2 tar /usr/bin/find pkgconfig tcl-devel tk-devel
+BuildRequires: bzip2 tar findutils pkgconfig tcl-devel tk-devel
BuildRequires: tix-devel bzip2-devel sqlite-devel
BuildRequires: autoconf
BuildRequires: db4-devel >= 4.7
@@ -131,7 +253,7 @@ package.
%package libs
Summary: The libraries for python runtime
Group: Applications/System
-Requires: %{python} = %{version}-%{release}
+Requires: %{name} = %{version}-%{release}
# Needed for ctypes, to load libraries, worked around for Live CDs size
# Requires: binutils
@@ -141,7 +263,7 @@ use python as an embedded scripting lang
provides the libraries needed for this.
%package devel
-Summary: The libraries and header files needed for Python development.
+Summary: The libraries and header files needed for Python development
Group: Development/Libraries
Requires: %{python} = %{version}-%{release}
# Needed here because of the migration of Makefile from -devel to the main
@@ -179,7 +301,7 @@ programs, including IDLE (an IDE with ed
color editor (pynche), and a python gettext program (pygettext.py).
%package -n %{tkinter}
-Summary: A graphical user interface for the Python scripting language.
+Summary: A graphical user interface for the Python scripting language
Group: Development/Languages
BuildRequires: tcl, tk
Requires: %{name} = %{version}-%{release}
@@ -203,7 +325,7 @@ Requires: %{name} = %{version}-%{release
%description test
-The test modules from the main python pacakge: %{name}
+The test modules from the main python package: %{name}
These have been removed to save space, as they are never or almost
never used in production.
@@ -232,16 +354,12 @@ rm -r Modules/zlib || exit 1
%patch0 -p1 -b .rhconfig
%patch3 -p1 -b .expat
%patch1 -p1 -b .no_gui
-#%%patch2 -p1 -b .no-doc
%patch4 -p1 -b .cflags
-#%%patch5 -p1 -b .ctypesexec
%patch6 -p1 -b .plural
%patch7 -p1
-#%%patch8 -p1 -b .xmlrpc
# Try not disabling egg-infos, bz#414711
#patch50 -p1 -b .egginfo
-#%%patch60 -p1 -b .db47
%if "%{_lib}" == "lib64"
%patch101 -p1 -b .lib64-regex
@@ -250,10 +368,8 @@ rm -r Modules/zlib || exit 1
%patch10 -p1 -b .binutils-no-dep
%patch11 -p1 -b .ascii-tolower
-#%%patch12 -p1 -b .pysqlite-2.3.3-minimal
%patch13 -p1 -b .socketmodule
%patch14 -p1 -b .socketmodule2
-#%%patch15 -p1 -b .listdir
%patch16 -p1 -b .rpath
%patch51 -p1 -b .brprpm
@@ -266,24 +382,19 @@ rm -r Modules/zlib || exit 1
%patch110 -p1 -b .selinux
-#%%patch260 -p1 -b .set_wakeup_fd
-
-#%%patch999 -p1 -b .cve2007-4965
-#%%patch998 -p0 -b .cve2008-2316
-
# This shouldn't be necesarry, but is right now (2.2a3)
find -name "*~" |xargs rm -f
%build
-topdir=`pwd`
+topdir=$(pwd)
export CFLAGS="$RPM_OPT_FLAGS -D_GNU_SOURCE -fPIC"
export CXXFLAGS="$RPM_OPT_FLAGS -D_GNU_SOURCE -fPIC"
-export CPPFLAGS="`pkg-config --cflags-only-I libffi`"
+export CPPFLAGS="$(pkg-config --cflags-only-I libffi)"
export OPT="$RPM_OPT_FLAGS -D_GNU_SOURCE -fPIC"
export LINKCC="gcc"
if pkg-config openssl ; then
- export CFLAGS="$CFLAGS `pkg-config --cflags openssl`"
- export LDFLAGS="$LDFLAGS `pkg-config --libs-only-L openssl`"
+ export CFLAGS="$CFLAGS $(pkg-config --cflags openssl)"
+ export LDFLAGS="$LDFLAGS $(pkg-config --libs-only-L openssl)"
fi
# Force CC
export CC=gcc
@@ -292,34 +403,34 @@ autoconf
%configure --enable-ipv6 --enable-unicode=%{unicode} --enable-shared --with-system-ffi --with-system-expat
make OPT="$CFLAGS" %{?_smp_mflags}
-LD_LIBRARY_PATH=$topdir $topdir/python Tools/scripts/pathfix.py -i "%{_bindir}/env python%{pybasever}" .
+LD_LIBRARY_PATH="$topdir" $topdir/python Tools/scripts/pathfix.py -i "%{_bindir}/env python%{pybasever}" .
# Rebuild with new python
# We need a link to a versioned python in the build directory
ln -s python python%{pybasever}
-LD_LIBRARY_PATH=$topdir PATH=$PATH:$topdir make -s OPT="$CFLAGS" %{?_smp_mflags}
+LD_LIBRARY_PATH="$topdir" PATH=$PATH:$topdir make -s OPT="$CFLAGS" %{?_smp_mflags}
%install
-[ -d $RPM_BUILD_ROOT ] && rm -fr $RPM_BUILD_ROOT
-mkdir -p $RPM_BUILD_ROOT/usr $RPM_BUILD_ROOT%{_mandir}
+[ -d %{buildroot} ] && rm -fr %{buildroot}
+mkdir -p %{buildroot}/usr %{buildroot}%{_mandir}
# Clean up patched .py files that are saved as .lib64
for f in distutils/command/install distutils/sysconfig; do
rm -f Lib/$f.py.lib64
done
-make install DESTDIR=$RPM_BUILD_ROOT
+make install DESTDIR=%{buildroot}
# Fix the interpreter path in binaries installed by distutils
# (which changes them by itself)
# Make sure we preserve the file permissions
-for fixed in $RPM_BUILD_ROOT%{_bindir}/pydoc; do
+for fixed in %{buildroot}%{_bindir}/pydoc; do
sed 's,#!.*/python$,#!%{_bindir}/env python%{pybasever},' $fixed > $fixed- \
&& cat $fixed- > $fixed && rm -f $fixed-
done
# Junk, no point in putting in -test sub-pkg
-rm -f $RPM_BUILD_ROOT/%{pylibdir}/idlelib/testcode.py*
+rm -f %{buildroot}/%{pylibdir}/idlelib/testcode.py*
# don't include tests that are run at build time in the package
# This is documented, and used: rhbz#387401
@@ -327,18 +438,18 @@ if /bin/false; then
# Move this to -test subpackage.
mkdir save_bits_of_test
for i in test_support.py __init__.py; do
- cp -a $RPM_BUILD_ROOT/%{pylibdir}/test/$i save_bits_of_test
+ cp -a %{buildroot}/%{pylibdir}/test/$i save_bits_of_test
done
-rm -rf $RPM_BUILD_ROOT/%{pylibdir}/test
-mkdir $RPM_BUILD_ROOT/%{pylibdir}/test
-cp -a save_bits_of_test/* $RPM_BUILD_ROOT/%{pylibdir}/test
+rm -rf %{buildroot}/%{pylibdir}/test
+mkdir %{buildroot}/%{pylibdir}/test
+cp -a save_bits_of_test/* %{buildroot}/%{pylibdir}/test
fi
%if %{main_python}
-ln -s python $RPM_BUILD_ROOT%{_bindir}/python2
+ln -s python %{buildroot}%{_bindir}/python2
%else
-mv $RPM_BUILD_ROOT%{_bindir}/python $RPM_BUILD_ROOT%{_bindir}/%{python}
-mv $RPM_BUILD_ROOT/%{_mandir}/man1/python.1 $RPM_BUILD_ROOT/%{_mandir}/man1/python%{pybasever}.1
+mv %{buildroot}%{_bindir}/python %{buildroot}%{_bindir}/%{python}
+mv %{buildroot}/%{_mandir}/man1/python.1 %{buildroot}/%{_mandir}/man1/python%{pybasever}.1
%endif
# tools
@@ -368,36 +479,36 @@ mv Tools/modulator/README Tools/modulato
mv Tools/pynche/README Tools/pynche/README.pynche
#gettext
-install -m755 Tools/i18n/pygettext.py $RPM_BUILD_ROOT%{_bindir}/
-install -m755 Tools/i18n/msgfmt.py $RPM_BUILD_ROOT%{_bindir}/
+install -m755 Tools/i18n/pygettext.py %{buildroot}%{_bindir}/
+install -m755 Tools/i18n/msgfmt.py %{buildroot}%{_bindir}/
# Useful development tools
-install -m755 -d $RPM_BUILD_ROOT%{tools_dir}/scripts
-install Tools/README $RPM_BUILD_ROOT%{tools_dir}/
-install Tools/scripts/*py $RPM_BUILD_ROOT%{tools_dir}/scripts/
+install -m755 -d %{buildroot}%{tools_dir}/scripts
+install Tools/README %{buildroot}%{tools_dir}/
+install Tools/scripts/*py %{buildroot}%{tools_dir}/scripts/
# Documentation tools
-install -m755 -d $RPM_BUILD_ROOT%{doc_tools_dir}
-#install -m755 Doc/tools/mkhowto $RPM_BUILD_ROOT%{doc_tools_dir}
+install -m755 -d %{buildroot}%{doc_tools_dir}
+#install -m755 Doc/tools/mkhowto %{buildroot}%{doc_tools_dir}
# Useful demo scripts
-install -m755 -d $RPM_BUILD_ROOT%{demo_dir}
-cp -ar Demo/* $RPM_BUILD_ROOT%{demo_dir}
+install -m755 -d %{buildroot}%{demo_dir}
+cp -ar Demo/* %{buildroot}%{demo_dir}
# Get rid of crap
-find $RPM_BUILD_ROOT/ -name "*~"|xargs rm -f
-find $RPM_BUILD_ROOT/ -name ".cvsignore"|xargs rm -f
+find %{buildroot}/ -name "*~"|xargs rm -f
+find %{buildroot}/ -name ".cvsignore"|xargs rm -f
find . -name "*~"|xargs rm -f
find . -name ".cvsignore"|xargs rm -f
#zero length
-rm -f $RPM_BUILD_ROOT%{site_packages}/modulator/Templates/copyright
+rm -f %{buildroot}%{site_packages}/modulator/Templates/copyright
-rm -f $RPM_BUILD_ROOT%{pylibdir}/LICENSE.txt
+rm -f %{buildroot}%{pylibdir}/LICENSE.txt
#make the binaries install side by side with the main python
%if !%{main_python}
-pushd $RPM_BUILD_ROOT%{_bindir}
+pushd %{buildroot}%{_bindir}
mv idle idle%{__python_ver}
mv modulator modulator%{__python_ver}
mv pynche pynche%{__python_ver}
@@ -409,11 +520,11 @@ popd
%endif
# Fix for bug #136654
-rm -f $RPM_BUILD_ROOT%{pylibdir}/email/test/data/audiotest.au $RPM_BUILD_ROOT%{pylibdir}/test/audiotest.au
+rm -f %{buildroot}%{pylibdir}/email/test/data/audiotest.au %{buildroot}%{pylibdir}/test/audiotest.au
# Fix bug #143667: python should own /usr/lib/python2.x on 64-bit machines
%if "%{_lib}" == "lib64"
-install -d $RPM_BUILD_ROOT/usr/lib/python%{pybasever}/site-packages
+install -d %{buildroot}/usr/lib/python%{pybasever}/site-packages
%endif
# Make python-devel multilib-ready (bug #192747, #139911)
@@ -425,9 +536,9 @@ install -d $RPM_BUILD_ROOT/usr/lib/pytho
%else
%global _pyconfig_h %{_pyconfig32_h}
%endif
-mv $RPM_BUILD_ROOT%{_includedir}/python%{pybasever}/pyconfig.h \
- $RPM_BUILD_ROOT%{_includedir}/python%{pybasever}/%{_pyconfig_h}
-cat > $RPM_BUILD_ROOT%{_includedir}/python%{pybasever}/pyconfig.h << EOF
+mv %{buildroot}%{_includedir}/python%{pybasever}/pyconfig.h \
+ %{buildroot}%{_includedir}/python%{pybasever}/%{_pyconfig_h}
+cat > %{buildroot}%{_includedir}/python%{pybasever}/pyconfig.h << EOF
#include <bits/wordsize.h>
#if __WORDSIZE == 32
@@ -438,22 +549,22 @@ cat > $RPM_BUILD_ROOT%{_includedir}/pyth
#error "Unknown word size"
#endif
EOF
-ln -s ../../libpython%{pybasever}.so $RPM_BUILD_ROOT%{pylibdir}/config/libpython%{pybasever}.so
+ln -s ../../libpython%{pybasever}.so %{buildroot}%{pylibdir}/config/libpython%{pybasever}.so
# Fix for bug 201434: make sure distutils looks at the right pyconfig.h file
-sed -i -e "s/'pyconfig.h'/'%{_pyconfig_h}'/" $RPM_BUILD_ROOT%{pylibdir}/distutils/sysconfig.py
+sed -i -e "s/'pyconfig.h'/'%{_pyconfig_h}'/" %{buildroot}%{pylibdir}/distutils/sysconfig.py
# Get rid of egg-info files (core python modules are installed through rpms)
-rm $RPM_BUILD_ROOT%{pylibdir}/*.egg-info
+rm %{buildroot}%{pylibdir}/*.egg-info
# Ensure that the curses module was linked against libncursesw.so, rather than
# libncurses.so (bug 539917)
-ldd $RPM_BUILD_ROOT/%{dynload_dir}/_curses*.so \
+ldd %{buildroot}/%{dynload_dir}/_curses*.so \
| grep curses \
| grep libncurses.so && (echo "_curses.so linked against libncurses.so" ; exit 1)
%clean
-rm -fr $RPM_BUILD_ROOT
+rm -fr %{buildroot}
%post libs -p /sbin/ldconfig
@@ -461,12 +572,14 @@ rm -fr $RPM_BUILD_ROOT
%files
-%defattr(-, root, root)
+%defattr(-, root, root, -)
%doc LICENSE README
%{_bindir}/pydoc*
-%{_bindir}/python
+%{_bindir}/%{python}
+%if %{main_python}
%{_bindir}/python2
-%{_bindir}/python2.6
+%endif
+%{_bindir}/python%{pybasever}
%{_mandir}/*/*
%dir %{pylibdir}
@@ -579,18 +692,18 @@ rm -fr $RPM_BUILD_ROOT
%{pylibdir}/wsgiref
%{pylibdir}/xml
%if "%{_lib}" == "lib64"
-%attr(0755,root,root) %dir /usr/lib/python%{pybasever}
-%attr(0755,root,root) %dir /usr/lib/python%{pybasever}/site-packages
+%attr(0755,root,root) %dir %{_prefix}/lib/python%{pybasever}
+%attr(0755,root,root) %dir %{_prefix}/lib/python%{pybasever}/site-packages
%endif
%files libs
-%defattr(-,root,root)
+%defattr(-,root,root,-)
%doc LICENSE README
%{_libdir}/libpython%{pybasever}.so.*
%files devel
-%defattr(-,root,root)
-/usr/include/*
+%defattr(-,root,root,-)
+%{_includedir}/*
%doc Misc/README.valgrind Misc/valgrind-python.supp Misc/gdbinit
%dir %{pylibdir}/config
%{_bindir}/python-config
@@ -622,7 +735,7 @@ rm -fr $RPM_BUILD_ROOT
%{dynload_dir}/_tkinter.so
%files test
-%defattr(-, root, root)
+%defattr(-, root, root, -)
%{pylibdir}/bsddb/test
%{pylibdir}/ctypes/test
%{pylibdir}/distutils/tests
@@ -634,6 +747,24 @@ rm -fr $RPM_BUILD_ROOT
%{dynload_dir}/_testcapimodule.so
%changelog
+* Fri Mar 12 2010 David Malcolm <dmalcolm at redhat.com> - 2.6.2-7
+- document all patches, and remove the commented-out ones
+- Address some of the issues identified in package review (bug 226342):
+ - update libs requirement on base package to use %%{name} for consistency's
+sake
+ - convert from backticks to $() syntax throughout
+ - wrap value of LD_LIBRARY_PATH in quotes
+ - convert "/usr/bin/find" requirement to "findutils"
+ - remove trailing periods from summaries of subpackages
+ - fix spelling mistake in description of -test subpackage
+ - convert usage of $$RPM_BUILD_ROOT to %%{buildroot} throughout, for
+stylistic consistency
+ - supply dirmode arguments to defattr directives
+- replace references to /usr with %%{_prefix}; replace references to
+/usr/include with %%{_includedir}
+- fixup the build when __python_ver is set (Zach Sadecki; bug 533989); use
+pybasever in the files section
+
* Mon Jan 25 2010 David Malcolm <dmalcolm at redhat.com> - 2.6.2-6
- update python-2.6.2-config.patch to remove downstream customization of build
of pyexpat and elementtree modules
More information about the scm-commits
mailing list