+#
+# TODO:
+# - fix tests
+# - check unpackaged files
# Conditional build:
%bcond_with info # info pages (requires emacs)
%define beta %{nil}
-%define py_ver 3.0
+%define py_ver 3.1
%define py_prefix %{_prefix}
%define py_libdir %{py_prefix}/%{_lib}/python%{py_ver}
%define py_incdir %{_includedir}/python%{py_ver}
Summary(ru.UTF-8): Язык программирования очень высокого уровня с X-интерфейсом
Summary(tr.UTF-8): X arayüzlü, yüksek düzeyli, kabuk yorumlayıcı dili
Summary(uk.UTF-8): Мова програмування дуже високого рівня з X-інтерфейсом
-Name: python30
-Version: %{py_ver}.1
-Release: 1
+Name: python3
+Version: %{py_ver}
+Release: 0.1
Epoch: 1
License: PSF
Group: Applications
Source0: http://www.python.org/ftp/python/%{version}/Python-%{version}%{beta}.tar.bz2
-# Source0-md5: 7291eac6a9a7a3642e309c78b8d744e5
+# Source0-md5: f64437a24d39f1917aa1878cc70621f6
Patch1: %{name}-pythonpath.patch
Patch2: %{name}-no_ndbm.patch
Patch3: %{name}-ac_fixes.patch
Patch4: %{name}-lib64.patch
Patch5: %{name}-noarch_to_datadir.patch
+Patch6: %{name}-cast-fix.patch
URL: http://www.python.org/
BuildRequires: autoconf
BuildRequires: bluez-libs-devel
Requires: %{name}-libs = %{epoch}:%{version}-%{release}
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+%define specflags_ppc -D__ppc__=1
+%define specflags_ppc64 -D__ppc64__=1
+
%if %{with verbose_tests}
%define test_flags -v -l -x
%else
Provides: python(abi) = %{py_ver}
# for compatibility with existing Ac packages
Provides: python(bytecode) = %{py_ver}
-%{!?with_info:Obsoletes: python30-doc-info}
+%{!?with_info:Obsoletes: python3-doc-info}
%description libs
Python shared library and very essental modules for Python binary.
%description modules-sqlite -l pl.UTF-8
Oficjalnie rozprowadzany moduł sqlite języka Python.
-%package -n pydoc30
+%package -n pydoc3
Summary: Python interactive module documentation access support
Summary(pl.UTF-8): Interaktywne korzystanie z dokumentacji modułów języka Python
Group: Applications
Requires: %{name}-modules = %{epoch}:%{version}-%{release}
-%description -n pydoc30
+%description -n pydoc3
Python interactive module documentation access support.
-%description -n pydoc30 -l pl.UTF-8
+%description -n pydoc3 -l pl.UTF-8
Interaktywne korzystanie z dokumentacji modułów języka Python.
-%package -n idle30
+%package -n idle3
Summary: IDE for Python language
Summary(pl.UTF-8): IDE dla języka Python
Group: Applications
Requires: %{name}-tkinter = %{epoch}:%{version}-%{release}
-%description -n idle30
+%description -n idle3
IDE for Python language.
-%description -n idle30 -l pl.UTF-8
+%description -n idle3 -l pl.UTF-8
IDE dla języka Python.
%package devel
%prep
%setup -q -n Python-%{version}%{beta}
%patch1 -p1
-%patch2 -p1
+#%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
+%patch6 -p1
+sed -i -e 's=@EXENAME@=%{_bindir}/python3=' Misc/python-config.in
%build
sed -i -e 's#-ltermcap#-ltinfo#g' configure*
--with-cxx-main="%{__cxx}" \
--enable-shared \
--enable-ipv6 \
+ --with-dbmliborder=gdbm:bdb \
--with-wide-unicode \
--with-signal-module \
--with-tsc \
# pygettext.py is provided for compatibility
install Tools/i18n/pygettext.py $RPM_BUILD_ROOT%{_bindir}/pygettext%{py_ver}
-# add py_ver
-for script in idle pydoc; do
- mv $RPM_BUILD_ROOT%{_bindir}/${script} $RPM_BUILD_ROOT%{_bindir}/${script}%{py_ver}
-done
-
# just to cut the noise, as they are not packaged (now)
# first tests
rm -rf $RPM_BUILD_ROOT%{py_scriptdir}/test
%files
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/python%{py_ver}
+%attr(755,root,root) %{_bindir}/python3
+%{_mandir}/man1/python*.1*
%files modules
%defattr(644,root,root,755)
/etc/shrc.d/python*-modules*
+%exclude %{py_scriptdir}/_abcoll.py[co]
+%exclude %{py_scriptdir}/_weakrefset.py[co]
+%exclude %{py_scriptdir}/abc.py[co]
%exclude %{py_scriptdir}/codecs.py[co]
%exclude %{py_scriptdir}/copyreg.py[co]
+%exclude %{py_scriptdir}/genericpath.py[co]
+%exclude %{py_scriptdir}/io.py[co]
%exclude %{py_scriptdir}/locale.py[co]
%exclude %{py_scriptdir}/posixpath.py[co]
%exclude %{py_scriptdir}/pdb.py[co]
%attr(755,root,root) %{py_dyndir}/_curses.so
%attr(755,root,root) %{py_dyndir}/datetime.so
%attr(755,root,root) %{py_dyndir}/_elementtree.so
-%attr(755,root,root) %{py_dyndir}/_functools.so
+#%attr(755,root,root) %{py_dyndir}/_functools.so
%attr(755,root,root) %{py_dyndir}/_hashlib.so
%attr(755,root,root) %{py_dyndir}/_heapq.so
%attr(755,root,root) %{py_dyndir}/_json.so
-%attr(755,root,root) %{py_dyndir}/_locale.so
+#%attr(755,root,root) %{py_dyndir}/_locale.so
%attr(755,root,root) %{py_dyndir}/_lsprof.so
%attr(755,root,root) %{py_dyndir}/_multibytecodec.so
%attr(755,root,root) %{py_dyndir}/_multiprocessing.so
%attr(755,root,root) %{py_dyndir}/_struct.so
# modules required by python library
+%{py_scriptdir}/_abcoll.py[co]
+%{py_scriptdir}/_weakrefset.py[co]
+%{py_scriptdir}/abc.py[co]
%{py_scriptdir}/codecs.py[co]
%{py_scriptdir}/copyreg.py[co]
+%{py_scriptdir}/genericpath.py[co]
%{py_scriptdir}/locale.py[co]
+%{py_scriptdir}/io.py[co]
%{py_scriptdir}/posixpath.py[co]
%{py_scriptdir}/site.py[co]
%{py_scriptdir}/stat.py[co]
%dir %{py_scriptdir}/encodings
%{py_scriptdir}/encodings/*.py[co]
-%files -n pydoc30
+%files -n pydoc3
%defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/pydoc%{py_ver}
+%attr(755,root,root) %{_bindir}/pydoc3
%{py_scriptdir}/pydoc.py[co]
-%files -n idle30
+%files -n idle3
%defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/idle%{py_ver}
+%attr(755,root,root) %{_bindir}/idle3
%dir %{py_scriptdir}/idlelib
%dir %{py_scriptdir}/idlelib/Icons
%{py_scriptdir}/idlelib/*.py[co]
%files devel
%defattr(644,root,root,755)
%doc Misc/{ACKS,NEWS,README,README.valgrind,valgrind-python.supp}
-%attr(755,root,root) %{_bindir}/python%{py_ver}-config
+%attr(755,root,root) %{_bindir}/python*-config
%attr(755,root,root) %{_libdir}/lib*.so
%dir %{py_incdir}
%{py_incdir}/*.h