X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=python3.spec;h=162c3eb88b38eb6b88d933e6657667f49608463c;hb=7a3d8fdd029a36ede122bc9fc1fb22be46cb5e90;hp=864a084947085b0f06c6d0e95535c7b550556524;hpb=520f15b4893f431b4c64ea7c8ad347bb1a64f44a;p=packages%2Fpython3.git diff --git a/python3.spec b/python3.spec index 864a084..162c3eb 100644 --- a/python3.spec +++ b/python3.spec @@ -11,7 +11,7 @@ # tests which will not work on 64-bit platforms %define no64bit_tests -x test_audioop -x test_rgbimg -x test_imageop # tests which may fail because of builder environment limitations (no /proc or /dev/pts) -%define nobuilder_tests -x test_resource -x test_openpty -x test_socket -x test_nis -x test_posix -x test_locale -x test_pty -x test_asyncio -x test_os -x test_readline -x test_normalization +%define nobuilder_tests -u-network -x test_resource -x test_openpty -x test_socket -x test_nis -x test_posix -x test_locale -x test_pty -x test_asyncio -x test_os -x test_readline -x test_normalization # tests which fail because of some unknown/unresolved reason (this list should be %{nil}) # test_site: fails because our site.py is patched to include both /usr/share/... and /usr/lib... @@ -29,7 +29,7 @@ %define _python_target_abi %{?_gnu} %endif -%define py_ver 3.9 +%define py_ver 3.10 %define py_abi %{py_ver} %define py_platform %{py_abi}-%{_target_base_arch}-%{_target_os}%{?_python_target_abi} %define py_prefix %{_prefix} @@ -47,33 +47,31 @@ Summary(ru.UTF-8): Язык программирования очень высо Summary(tr.UTF-8): X arayüzlü, yüksek düzeyli, kabuk yorumlayıcı dili Summary(uk.UTF-8): Мова програмування дуже високого рівня з X-інтерфейсом Name: python3 -Version: %{py_ver}.1 -Release: 0.1 +Version: %{py_ver}.8 +Release: 2 Epoch: 1 License: PSF Group: Development/Languages/Python Source0: https://www.python.org/ftp/python/%{version}/Python-%{version}.tar.xz -# Source0-md5: 61981498e75ac8f00adcb908281fadb6 +# Source0-md5: e92356b012ed4d0e09675131d39b1bde Source1: pyconfig.h.in Patch0: %{name}-pythonpath.patch Patch1: %{name}-ac_fixes.patch Patch2: %{name}-multilib.patch Patch3: %{name}-no_cmdline_tests.patch -Patch4: %{name}-makefile-location.patch +Patch4: %{name}-BLDLIBRARY.patch Patch5: %{name}-config.patch -Patch6: %{name}-BLDLIBRARY.patch Patch7: %{name}-db.patch -Patch8: %{name}-install_prefix.patch Patch9: %{name}-tests_with_pythonpath.patch Patch10: %{name}-bdist_rpm.patch Patch11: %{name}-installcompile.patch -# https://bugs.python.org/file21896/nonexistent_user.patch -Patch12: nonexistent_user.patch + Patch13: %{name}-no-randomize-tests.patch Patch14: python3-profile-tests.patch Patch15: python3-tests.patch URL: https://www.python.org/ BuildRequires: autoconf >= 2.65 +BuildRequires: autoconf-archive BuildRequires: automake BuildRequires: bluez-libs-devel BuildRequires: bzip2-devel @@ -233,8 +231,8 @@ Provides: python(abi) = %{py_ver} # for compatibility with existing Ac packages Provides: python(bytecode) = %{py_ver} Provides: python3-enum -Obsoletes: python3-enum -%{!?with_info:Obsoletes: python3-doc-info} +Obsoletes: python3-enum < 0.5 +%{!?with_info:Obsoletes: python3-doc-info < %{epoch}:%{version}-%{release}} %description libs Python shared library and very essental modules for Python binary. @@ -249,7 +247,7 @@ Summary(pl.UTF-8): Moduły języka Python Group: Libraries/Python Requires: %{name}-libs = %{epoch}:%{version}-%{release} %{?with_system_mpdecimal:Requires: mpdecimal >= 2.4.2-2} -Obsoletes: python3-modules-sqlite +Obsoletes: python3-modules-sqlite < 1:3.1-2 %requires_ge_to openssl openssl-devel %description modules @@ -294,6 +292,7 @@ Summary(tr.UTF-8): Python ile geliştirme yapmak için gerekli dosyalar Summary(uk.UTF-8): Бібліотеки та хедери для програмування на мові Python Group: Development/Languages/Python Requires: %{name}-libs = %{epoch}:%{version}-%{release} +Obsoletes: python3-devel-src < 1:3.2-1 %description devel The Python interpreter is relatively easy to extend with dynamically @@ -346,18 +345,6 @@ dosyalarını ve kitaplıkları içerir. розширень з динамічною загрузкою та вбудовується в інші програми. Цей пакет містить хедери та бібліотеки, необхідні для обох цих задач. -%package devel-src -Summary: Python module sources -Summary(pl.UTF-8): Pliki źródłowe modułów Pythona -Group: Development/Languages/Python -Requires: %{name}-modules = %{epoch}:%{version}-%{release} - -%description devel-src -Python module sources. - -%description devel-src -l pl.UTF-8 -Pliki źródłowe modułów Pythona. - %package devel-tools Summary: Python development tools Summary(pl.UTF-8): Narzędzia programistyczne języka Python @@ -468,6 +455,7 @@ kullanılan grafik bir arayüzdür. Summary: Example programs in Python Summary(pl.UTF-8): Przykładowe programy w Pythonie Group: Development/Languages/Python +BuildArch: noarch %description examples Example programs in Python. @@ -498,13 +486,11 @@ Moduły testowe dla Pythona. %patch3 -p1 %patch4 -p1 %patch5 -p1 -%patch6 -p1 %patch7 -p1 -%patch8 -p1 %patch9 -p1 %patch10 -p1 %patch11 -p1 -%patch12 -p1 + %patch13 -p1 %patch14 -p1 %patch15 -p1 @@ -535,6 +521,9 @@ sed -E -i -e '1s,#!\s*/usr/bin/env\s+python3(\s|$),#!%{__python3}\1,' \ find . -name '*.py' | xargs -r grep -El '^#! */usr/bin/env python3?' | xargs %{__sed} -i -e '1s,^#! */usr/bin/env python3\?,#!/usr/bin/python3,' +sed -E -i -e '1s,#!\s*/usr/bin/env\s+bash(\s|$),#!/bin/bash\1,' \ + Tools/c-analyzer/must-resolve.sh + %build if ! grep -q "tmpfs" /proc/self/mounts; then echo "You need to have /dev/shm mounted in order to build this package!" >&2 @@ -542,6 +531,8 @@ if ! grep -q "tmpfs" /proc/self/mounts; then exit 1 fi +export SETUPTOOLS_USE_DISTUTILS=stdlib + %{__aclocal} %{__autoconf} %configure \ @@ -549,6 +540,7 @@ fi OPT="%{rpmcflags}" \ CPPFLAGS="%{rpmcppflags}" \ LDFLAGS="%{rpmldflags}" \ + LDFLAGS_NODIST="%{debuginfocflags}" \ ac_cv_posix_semaphores_enabled=yes \ ac_cv_broken_sem_getvalue=no \ --enable-ipv6 \ @@ -568,6 +560,11 @@ fi --with-lto %endif +if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then + echo "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777." >&2 + exit 1 +fi + %{__make} \ TESTOPTS="%{_smp_mflags} %{test_list}" \ 2>&1 | awk ' @@ -588,6 +585,11 @@ WITHIN_PYTHON_RPM_BUILD=1 %{__make} test \ TESTOPTS="%{test_flags} %{test_list}" %endif +%if %{with info} +%{__make} -C Doc texinfo +%{__make} -C Doc/build/texinfo info +%endif + %install rm -rf $RPM_BUILD_ROOT install -d $RPM_BUILD_ROOT{%{_bindir},%{_libdir},%{_pkgconfigdir}} \ @@ -601,8 +603,7 @@ install -d $RPM_BUILD_ROOT{%{_bindir},%{_libdir},%{_pkgconfigdir}} \ DESTDIR=$RPM_BUILD_ROOT %if %{with info} -%{__make} -C Doc/info -cp -p Doc/info/python*info* $RPM_BUILD_ROOT%{_infodir} +cp -p Doc/build/texinfo/python*info* $RPM_BUILD_ROOT%{_infodir} %endif install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} @@ -663,7 +664,7 @@ install -p Tools/scripts/reindent.py $RPM_BUILD_ROOT%{_bindir}/pyreindent%{py_ve # that seems to be only an empty extension template, # which seems to be built only {with tests} -%{__rm} -f $RPM_BUILD_ROOT%{py_dyndir}/xxlimited.*.so +%{__rm} $RPM_BUILD_ROOT%{py_dyndir}/xxlimited*.*.so # already in %%doc %{__rm} $RPM_BUILD_ROOT%{py_libdir}/LICENSE.txt @@ -690,8 +691,7 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{_bindir}/python%{py_abi} %endif %attr(755,root,root) %{_bindir}/python3 -%{_mandir}/man1/python%{py_ver}.1* -%{_mandir}/man1/python3.1* +%{_mandir}/man1/python3*.1* %files libs %defattr(644,root,root,755) @@ -795,7 +795,6 @@ rm -rf $RPM_BUILD_ROOT %{py_libdir}/__future__.py %{py_libdir}/__phello__.foo.py %{py_libdir}/_aix_support.py -%{py_libdir}/_bootlocale.py %{py_libdir}/_bootsubprocess.py %{py_libdir}/_compat_pickle.py %{py_libdir}/_compression.py @@ -841,7 +840,6 @@ rm -rf $RPM_BUILD_ROOT %{py_libdir}/filecmp.py %{py_libdir}/fileinput.py %{py_libdir}/fnmatch.py -%{py_libdir}/formatter.py %{py_libdir}/fractions.py %{py_libdir}/ftplib.py %{py_libdir}/getopt.py @@ -870,6 +868,7 @@ rm -rf $RPM_BUILD_ROOT %{py_libdir}/opcode.py %{py_libdir}/optparse.py %{py_libdir}/pathlib.py +%{py_libdir}/pdb.py %{py_libdir}/pickle.py %{py_libdir}/pickletools.py %{py_libdir}/pipes.py @@ -878,6 +877,8 @@ rm -rf $RPM_BUILD_ROOT %{py_libdir}/plistlib.py %{py_libdir}/poplib.py %{py_libdir}/pprint.py +%{py_libdir}/profile.py +%{py_libdir}/pstats.py %{py_libdir}/pty.py %{py_libdir}/py_compile.py %{py_libdir}/pyclbr.py @@ -886,13 +887,13 @@ rm -rf $RPM_BUILD_ROOT %{py_libdir}/random.py %{py_libdir}/rlcompleter.py %{py_libdir}/runpy.py -%{py_libdir}/secrets.py -%{py_libdir}/signal.py %{py_libdir}/sched.py +%{py_libdir}/secrets.py %{py_libdir}/selectors.py %{py_libdir}/shelve.py %{py_libdir}/shlex.py %{py_libdir}/shutil.py +%{py_libdir}/signal.py %{py_libdir}/smtpd.py %{py_libdir}/smtplib.py %{py_libdir}/sndhdr.py @@ -905,7 +906,6 @@ rm -rf $RPM_BUILD_ROOT %{py_libdir}/struct.py %{py_libdir}/subprocess.py %{py_libdir}/sunau.py -%{py_libdir}/symbol.py %{py_libdir}/symtable.py %{py_libdir}/tabnanny.py %{py_libdir}/tarfile.py @@ -931,7 +931,6 @@ rm -rf $RPM_BUILD_ROOT %{py_libdir}/__pycache__/__future__.cpython-*.py[co] %{py_libdir}/__pycache__/__phello__.foo.cpython-*.py[co] %{py_libdir}/__pycache__/_aix_support.cpython-*.py[co] -%{py_libdir}/__pycache__/_bootlocale.cpython-*.py[co] %{py_libdir}/__pycache__/_bootsubprocess.cpython-*.py[co] %{py_libdir}/__pycache__/_compat_pickle.cpython-*.py[co] %{py_libdir}/__pycache__/_compression.cpython-*.py[co] @@ -958,13 +957,13 @@ rm -rf $RPM_BUILD_ROOT %{py_libdir}/__pycache__/cgitb.cpython-*.py[co] %{py_libdir}/__pycache__/chunk.cpython-*.py[co] %{py_libdir}/__pycache__/cmd.cpython-*.py[co] -%{py_libdir}/__pycache__/contextvars.cpython-*.py[co] %{py_libdir}/__pycache__/code.cpython-*.py[co] %{py_libdir}/__pycache__/codeop.cpython-*.py[co] %{py_libdir}/__pycache__/colorsys.cpython-*.py[co] %{py_libdir}/__pycache__/compileall.cpython-*.py[co] %{py_libdir}/__pycache__/configparser.cpython-*.py[co] %{py_libdir}/__pycache__/contextlib.cpython-*.py[co] +%{py_libdir}/__pycache__/contextvars.cpython-*.py[co] %{py_libdir}/__pycache__/copy.cpython-*.py[co] %{py_libdir}/__pycache__/crypt.cpython-*.py[co] %{py_libdir}/__pycache__/csv.cpython-*.py[co] @@ -977,7 +976,6 @@ rm -rf $RPM_BUILD_ROOT %{py_libdir}/__pycache__/filecmp.cpython-*.py[co] %{py_libdir}/__pycache__/fileinput.cpython-*.py[co] %{py_libdir}/__pycache__/fnmatch.cpython-*.py[co] -%{py_libdir}/__pycache__/formatter.cpython-*.py[co] %{py_libdir}/__pycache__/fractions.cpython-*.py[co] %{py_libdir}/__pycache__/ftplib.cpython-*.py[co] %{py_libdir}/__pycache__/getopt.cpython-*.py[co] @@ -1006,6 +1004,7 @@ rm -rf $RPM_BUILD_ROOT %{py_libdir}/__pycache__/opcode.cpython-*.py[co] %{py_libdir}/__pycache__/optparse.cpython-*.py[co] %{py_libdir}/__pycache__/pathlib.cpython-*.py[co] +%{py_libdir}/__pycache__/pdb.cpython-*.py[co] %{py_libdir}/__pycache__/pickle.cpython-*.py[co] %{py_libdir}/__pycache__/pickletools.cpython-*.py[co] %{py_libdir}/__pycache__/pipes.cpython-*.py[co] @@ -1014,6 +1013,8 @@ rm -rf $RPM_BUILD_ROOT %{py_libdir}/__pycache__/plistlib.cpython-*.py[co] %{py_libdir}/__pycache__/poplib.cpython-*.py[co] %{py_libdir}/__pycache__/pprint.cpython-*.py[co] +%{py_libdir}/__pycache__/profile.cpython-*.py[co] +%{py_libdir}/__pycache__/pstats.cpython-*.py[co] %{py_libdir}/__pycache__/pty.cpython-*.py[co] %{py_libdir}/__pycache__/py_compile.cpython-*.py[co] %{py_libdir}/__pycache__/pyclbr.cpython-*.py[co] @@ -1041,7 +1042,6 @@ rm -rf $RPM_BUILD_ROOT %{py_libdir}/__pycache__/struct.cpython-*.py[co] %{py_libdir}/__pycache__/subprocess.cpython-*.py[co] %{py_libdir}/__pycache__/sunau.cpython-*.py[co] -%{py_libdir}/__pycache__/symbol.cpython-*.py[co] %{py_libdir}/__pycache__/symtable.cpython-*.py[co] %{py_libdir}/__pycache__/tabnanny.cpython-*.py[co] %{py_libdir}/__pycache__/tarfile.cpython-*.py[co] @@ -1136,7 +1136,6 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{py_dyndir}/mmap.cpython-*.so %attr(755,root,root) %{py_dyndir}/nis.cpython-*.so %attr(755,root,root) %{py_dyndir}/ossaudiodev.cpython-*.so -%attr(755,root,root) %{py_dyndir}/parser.cpython-*.so %attr(755,root,root) %{py_dyndir}/pyexpat.cpython-*.so %attr(755,root,root) %{py_dyndir}/readline.cpython-*.so %attr(755,root,root) %{py_dyndir}/resource.cpython-*.so @@ -1205,6 +1204,9 @@ rm -rf $RPM_BUILD_ROOT %dir %{py_libdir}/importlib %{py_libdir}/importlib/__pycache__ %{py_libdir}/importlib/*.py +%dir %{py_libdir}/importlib/metadata +%{py_libdir}/importlib/metadata/__pycache__ +%{py_libdir}/importlib/metadata/*.py %dir %{py_libdir}/json %{py_libdir}/json/__pycache__ @@ -1334,13 +1336,7 @@ rm -rf $RPM_BUILD_ROOT %config(noreplace) %verify(not md5 mtime size) /etc/shrc.d/python*-devel* %attr(755,root,root) %{_bindir}/pygettext%{py_ver} %attr(755,root,root) %{_bindir}/pyreindent%{py_ver} -%{py_libdir}/pdb.py -%{py_libdir}/profile.py -%{py_libdir}/pstats.py %{py_libdir}/timeit.py -%{py_libdir}/__pycache__/pdb.cpython-*.py[co] -%{py_libdir}/__pycache__/profile.cpython-*.py[co] -%{py_libdir}/__pycache__/pstats.cpython-*.py[co] %{py_libdir}/__pycache__/timeit.cpython-*.py[co] %files 2to3 @@ -1380,7 +1376,7 @@ rm -rf $RPM_BUILD_ROOT %if %{with info} %files doc-info %defattr(644,root,root,755) -%{_infodir}/*.info* +%{_infodir}/python.info* %endif %if %{with tkinter}