X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=python3.spec;h=ee5fc2d12528e4e74a715d4354ef02333a9b7b46;hb=a0694bb89f8f5f904a1368c7d69607b5593146c2;hp=e9e328957dfb7afa76722c3da091213c9f880757;hpb=929a5a935722c28411d093bb4f0253492ed4316d;p=packages%2Fpython3.git diff --git a/python3.spec b/python3.spec index e9e3289..ee5fc2d 100644 --- a/python3.spec +++ b/python3.spec @@ -1,3 +1,7 @@ +# +# TODO: +# - fix tests +# - check unpackaged files # Conditional build: %bcond_with info # info pages (requires emacs) @@ -10,11 +14,11 @@ # tests which may fail because of builder environment limitations (no /proc or /dev/pts) %define nobuilder_tests test_resource test_openpty test_socket test_nis test_posix test_locale test_pty # tests which fail because of some unknown/unresolved reason (this list should be empty) -%define broken_tests test_httpservers +%define broken_tests test_httpservers test_distutils test_cmd_line test_pydoc test_telnetlib test_zlib -%define beta %{nil} +%define beta b1 -%define py_ver 3.0 +%define py_ver 3.2 %define py_prefix %{_prefix} %define py_libdir %{py_prefix}/%{_lib}/python%{py_ver} %define py_incdir %{_includedir}/python%{py_ver} @@ -29,19 +33,19 @@ Summary(pt_BR.UTF-8): Linguagem de programação interpretada de alto nível 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.%{beta}.1 Epoch: 1 License: PSF Group: Applications Source0: http://www.python.org/ftp/python/%{version}/Python-%{version}%{beta}.tar.bz2 -# Source0-md5: 7291eac6a9a7a3642e309c78b8d744e5 -Patch1: %{name}-pythonpath.patch -Patch2: %{name}-no_ndbm.patch -Patch3: %{name}-ac_fixes.patch -Patch4: %{name}-lib64.patch -Patch5: %{name}-noarch_to_datadir.patch +# Source0-md5: 3ad06a5b080d7b32958b4af2e44b64d3 +Patch0: %{name}-pythonpath.patch +Patch1: %{name}-ac_fixes.patch +Patch2: %{name}-lib64.patch +Patch3: %{name}-noarch_to_datadir.patch +Patch4: %{name}-cast-fix.patch URL: http://www.python.org/ BuildRequires: autoconf BuildRequires: bluez-libs-devel @@ -67,10 +71,13 @@ BuildRequires: zlib-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 -%define test_flags -l -x +%define test_flags -w -l -x %endif %ifarch alpha ia64 ppc64 sparc64 ppc64 %{x8664} @@ -188,7 +195,7 @@ Group: Libraries/Python 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. @@ -202,6 +209,7 @@ Summary: Python modules Summary(pl.UTF-8): Moduły języka Python Group: Libraries/Python Requires: %{name}-libs = %{epoch}:%{version}-%{release} +Obsoletes: python3-modules-sqlite %description modules Python officially distributed modules. @@ -209,40 +217,28 @@ Python officially distributed modules. %description modules -l pl.UTF-8 Oficjalnie rozprowadzane moduły języka Python. -%package modules-sqlite -Summary: Python SQLite modules -Summary(pl.UTF-8): Moduły SQLite języka Python -Group: Libraries/Python -Requires: %{name}-modules = %{epoch}:%{version}-%{release} - -%description modules-sqlite -Python officially distributed sqlite module. - -%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 @@ -359,59 +355,6 @@ Static python library. %description static -l pl.UTF-8 Statyczna biblioteka Pythona. -%package doc -Summary: Documentation on Python -Summary(de.UTF-8): Dokumentation zu Python -Summary(es.UTF-8): Documentación para Python -Summary(fr.UTF-8): Documentation sur Python -Summary(pl.UTF-8): Dokumentacja do Pythona -Summary(pt_BR.UTF-8): Documentação para a linguagem de programação Python -Summary(ru.UTF-8): Документация по языку Python -Summary(tr.UTF-8): Python belgeleri -Summary(uk.UTF-8): Документація по мові Python -Group: Documentation - -%description doc -This package contains documentation on the Python language and -interpretor as a mix of plain ASCII files and LaTeX sources. - -%description doc -l de.UTF-8 -Dieses Paket enthält Dokumentationen zu Python (Sprache und -Interpreter) in Form von einfachen ASCII-Dateien und LaTeX-Quellen. - -%description doc -l es.UTF-8 -Documentación para Python. Contiene archivos en texto y PostScript. - -%description doc -l fr.UTF-8 -Ce paquetage contient la documentation sur le langage python et sur -son interpréteur sous forme de fichiers ASCII et LaTeX. - -%description doc -l pl.UTF-8 -Oficjalna dokumentacja do Pythona. Zawiera przykładowe programy, -narzędzia i dokumentację. Strony podręcznika man znajdują się w -głównym pakiecie. Ten pakiet nie zawiera źródeł dokumentacji -napisanych w LaTeXu, tylko gotowe do wykorzystania pliki postscriptowe -i HTML. - -%description doc -l pt_BR.UTF-8 -O pacote python-doc contém documentação para a linguagem de -programação e para o interpretador Python. Fornecida em arquivos texto -e Postcript. - -%description doc -l ru.UTF-8 -Этот пакет содержит документацию по собственно языку Python и по -исполняющему его интерпретатору в виде набора текстовых файлов и -исходных текстов в формате LaTeX. - -%description doc -l tr.UTF-8 -Bu paket, Python dili ile ilgili belgeleri ve düz ASCII dosyaları ve -LaTeX kaynaklarının bir karışımı olan yorumlayıcıyı içerir. - -%description doc -l uk.UTF-8 -Цей пакет містить документацію по власне мові Python та по виконуючому -її інтерпретатору у вигляді набора текстових файлів та вихідних -текстів у форматі LaTeX. - %package doc-info Summary: Documentation on Python in texinfo format Summary(pl.UTF-8): Dokumentacja do Pythona w formacie texinfo @@ -486,20 +429,21 @@ Przykłady te są dla Pythona 2.3.4, nie %{version}. %prep %setup -q -n Python-%{version}%{beta} +%patch0 -p1 %patch1 -p1 -%patch2 -p1 -%patch3 -p1 -%patch4 -p1 -%patch5 -p1 +#%patch2 -p1 +#%patch3 -p1 +#%patch4 -p1 %build sed -i -e 's#-ltermcap#-ltinfo#g' configure* %{__autoconf} -CPPFLAGS="-I/usr/include/ncursesw"; export CPPFLAGS +CPPFLAGS="-I/usr/include/ncursesw %{rpmcppflags}"; export CPPFLAGS %configure \ --with-cxx-main="%{__cxx}" \ --enable-shared \ --enable-ipv6 \ + --with-dbmliborder=gdbm:bdb \ --with-wide-unicode \ --with-signal-module \ --with-tsc \ @@ -507,13 +451,14 @@ CPPFLAGS="-I/usr/include/ncursesw"; export CPPFLAGS --with-doc-strings \ --with-fpectl \ --with-system-ffi \ + --with-computed-gotos \ LINKCC='$(PURIFY) $(CXX)' \ LDSHARED='$(CC) $(CFLAGS) -shared' \ BLDSHARED='$(CC) $(CFLAGS) -shared' \ LDFLAGS="%{rpmcflags} %{rpmldflags}" %{__make} \ - OPT="%{rpmcflags}" 2>&1 | awk ' + OPT="%{rpmcflags} -fno-caller-saves" 2>&1 | awk ' BEGIN { fail = 0; logmsg = ""; } { if ($0 ~ /\*\*\* WARNING:/) { @@ -549,12 +494,6 @@ install -d $RPM_BUILD_ROOT{%{_bindir},%{_libdir}} \ install Doc/info/python*info* $RPM_BUILD_ROOT%{_infodir} %endif -install Makefile.pre.in $RPM_BUILD_ROOT%{py_libdir}/config - -mv $RPM_BUILD_ROOT{%{py_libdir}/config,%{_libdir}}/libpython%{py_ver}.a -ln -sf libpython%{py_ver}.a $RPM_BUILD_ROOT%{_libdir}/libpython.a -ln -sf libpython%{py_ver}.so.1.0 $RPM_BUILD_ROOT%{_libdir}/libpython%{py_ver}.so - install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} cp -a Tools Demo $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} @@ -590,10 +529,8 @@ sed 's/=/ /' \ # 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 +# rename file conflicting with python 2.* +mv $RPM_BUILD_ROOT%{_bindir}/2to3{,-%{py_ver}} # just to cut the noise, as they are not packaged (now) # first tests @@ -605,6 +542,8 @@ rm -rf $RPM_BUILD_ROOT%{py_scriptdir}/email/test rm -rf $RPM_BUILD_ROOT%{py_scriptdir}/sqlite3/test rm -rf $RPM_BUILD_ROOT%{py_scriptdir}/json/tests rm -rf $RPM_BUILD_ROOT%{py_scriptdir}/lib2to3/tests +rm -rf $RPM_BUILD_ROOT%{py_scriptdir}/importlib/test +rm -rf $RPM_BUILD_ROOT%{py_scriptdir}/tkinter/test # other files rm -rf $RPM_BUILD_ROOT%{py_scriptdir}/plat-*/regen @@ -633,12 +572,19 @@ rm -rf $RPM_BUILD_ROOT %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] @@ -687,11 +633,11 @@ rm -rf $RPM_BUILD_ROOT %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 @@ -758,6 +704,9 @@ rm -rf $RPM_BUILD_ROOT %dir %{py_scriptdir}/http %{py_scriptdir}/http/*.py[co] +%dir %{py_scriptdir}/importlib +%{py_scriptdir}/importlib/*.py[co] + %dir %{py_scriptdir}/json %{py_scriptdir}/json/*.py[co] @@ -790,8 +739,6 @@ rm -rf $RPM_BUILD_ROOT %dir %{py_scriptdir}/xmlrpc %{py_scriptdir}/xmlrpc/*.py[co] -%files modules-sqlite -%defattr(644,root,root,755) %attr(755,root,root) %{py_dyndir}/_sqlite3.so %dir %{py_scriptdir}/sqlite3 %{py_scriptdir}/sqlite3/*.py[co] @@ -811,9 +758,14 @@ rm -rf $RPM_BUILD_ROOT %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] @@ -825,14 +777,16 @@ rm -rf $RPM_BUILD_ROOT %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] +%dir %{py_scriptdir}/pydoc_data +%{py_scriptdir}/pydoc_data/*.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] @@ -844,10 +798,11 @@ rm -rf $RPM_BUILD_ROOT %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 +%{_pkgconfigdir}/python*.pc %dir %{py_libdir}/config %attr(755,root,root) %{py_libdir}/config/makesetup @@ -873,27 +828,28 @@ rm -rf $RPM_BUILD_ROOT %{py_scriptdir}/distutils/command/*.py %{py_scriptdir}/email/*.py %{py_scriptdir}/email/mime/*.py +%{py_scriptdir}/encodings/*.py %{py_scriptdir}/html/*.py %{py_scriptdir}/http/*.py +%{py_scriptdir}/idlelib/*.py +%{py_scriptdir}/importlib/*.py %{py_scriptdir}/json/*.py %{py_scriptdir}/lib2to3/*.py -%{py_scriptdir}/lib2to3/fixes/*.py %{py_scriptdir}/lib2to3/pgen2/*.py %{py_scriptdir}/logging/*.py %{py_scriptdir}/multiprocessing/*.py %{py_scriptdir}/multiprocessing/dummy/*.py +%{py_scriptdir}/pydoc_data/*.py %{py_scriptdir}/sqlite3/*.py +%{py_scriptdir}/tkinter/*.py %{py_scriptdir}/urllib/*.py %{py_scriptdir}/wsgiref/*.py -%{py_scriptdir}/tkinter/*.py %{py_scriptdir}/xml/*.py %{py_scriptdir}/xml/dom/*.py %{py_scriptdir}/xml/etree/*.py %{py_scriptdir}/xml/parsers/*.py %{py_scriptdir}/xml/sax/*.py %{py_scriptdir}/xmlrpc/*.py -%{py_scriptdir}/encodings/*.py -%{py_scriptdir}/idlelib/*.py %files devel-tools %defattr(644,root,root,755) @@ -908,12 +864,13 @@ rm -rf $RPM_BUILD_ROOT %{py_scriptdir}/timeit.py[co] %files 2to3 -%attr(755,root,root) %{_bindir}/2to3 +%attr(755,root,root) %{_bindir}/2to3-%{py_ver} %dir %{py_scriptdir}/lib2to3 %{py_scriptdir}/lib2to3/*.txt %{py_scriptdir}/lib2to3/*.pickle %{py_scriptdir}/lib2to3/*.py[co] %dir %{py_scriptdir}/lib2to3/fixes +%{py_scriptdir}/lib2to3/fixes/*.py %{py_scriptdir}/lib2to3/fixes/*.py[co] %dir %{py_scriptdir}/lib2to3/pgen2 %{py_scriptdir}/lib2to3/pgen2/*.py[co]