X-Git-Url: http://git.pld-linux.org/?p=packages%2Fpython3.git;a=blobdiff_plain;f=python3.spec;h=2b13514846398d0a004dde4c47e39ab993d4b7f2;hp=f51df1ff1e91fe627ed41bebaf4f61b01a4f6e12;hb=edb753b;hpb=ed03fb352d2628c7a14e33c195942cf509060957 diff --git a/python3.spec b/python3.spec index f51df1f..2b13514 100644 --- a/python3.spec +++ b/python3.spec @@ -1,27 +1,31 @@ -# TODO: -# - fix lib64 and noarch/datadir patches as the 2nd one overrides some -# changes made by the first one; propose patches to python team as they -# seem to be duplicated by fedora as well +# NOTE: tests require processes limit >128 (256 is sufficient) # # Conditional build: %bcond_with info # info pages (requires emacs) %bcond_without system_mpdecimal # system libmpdec library %bcond_without tkinter # disables tkinter module building -%bcond_with tests # disables Python testing +%bcond_without tests # disables Python testing %bcond_with verbose_tests # runs tests in verbose mode +%bcond_without optimizations # expensive, stable optimizations (PGO etc.) + LTO # # tests which will not work on 64-bit platforms %define no64bit_tests test_audioop test_rgbimg test_imageop # 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 +%define nobuilder_tests test_resource test_openpty test_socket test_nis test_posix test_locale test_pty test_asyncio test_os test_readline test_normalization -# tests which fail because of some unknown/unresolved reason (this list should be empty) +# 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... # test_gdb: fails, as the gdb uses old python version -%define broken_tests test_httpservers test_distutils test_cmd_line test_pydoc test_telnetlib test_zlib test_gdb test_site +# test_time: test_AsTimeval (test.test_time.TestCPyTime), rounding error +%ifarch x32 +%define broken_tests_x32 test_time +%undefine with_optimizations +%endif +%define broken_tests test_nntplib test_gdb test_site test_distutils test_bdist_rpm test_ssl %{?broken_tests_x32} -%define py_ver 3.5 +%define py_ver 3.7 %define py_abi %{py_ver}m +%define py_platform %{py_abi}-%{_target_base_arch}-%{_target_os}%{?_gnu} %define py_prefix %{_prefix} %define py_libdir %{py_prefix}/%{_lib}/python%{py_ver} %define py_incdir %{_includedir}/python%{py_abi} @@ -37,24 +41,29 @@ 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}.0 -Release: 4 +Version: %{py_ver}.1 +Release: 2 Epoch: 1 License: PSF -Group: Applications -Source0: http://www.python.org/ftp/python/%{version}/Python-%{version}.tar.xz -# Source0-md5: d149d2812f10cbe04c042232e7964171 +Group: Development/Languages/Python +Source0: https://www.python.org/ftp/python/%{version}/Python-%{version}.tar.xz +# Source0-md5: 0a57e9022c07fad3dadb2eef58568edb +Source1: pyconfig.h.in Patch0: %{name}-pythonpath.patch Patch1: %{name}-ac_fixes.patch -Patch2: %{name}-lib64.patch -Patch3: %{name}-noarch_to_datadir.patch -Patch4: %{name}-no_cmdline_tests.patch -Patch5: %{name}-makefile-location.patch -Patch6: python3-atomic.patch -Patch7: python-distro.patch -Patch8: %{name}-db.patch -Patch9: %{name}-install_prefix.patch -URL: http://www.python.org/ +Patch2: %{name}-multilib.patch +Patch3: %{name}-no_cmdline_tests.patch +Patch4: %{name}-makefile-location.patch +Patch6: python-distro.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 +URL: https://www.python.org/ BuildRequires: autoconf >= 2.65 BuildRequires: automake BuildRequires: bluez-libs-devel @@ -64,6 +73,9 @@ BuildRequires: db-devel >= 4 BuildRequires: expat-devel >= 1:1.95.7 BuildRequires: file BuildRequires: gdbm-devel >= 1.8.3 +%if %(locale -a | grep -q '^C\.utf8$'; echo $?) +BuildRequires: glibc-localedb-all +%endif BuildRequires: gmp-devel >= 4.0 BuildRequires: libffi-devel BuildRequires: libstdc++-devel @@ -82,7 +94,7 @@ BuildRequires: tar >= 1:1.22 BuildRequires: xz-devel BuildRequires: zlib-devel Requires: %{name}-libs = %{epoch}:%{version}-%{release} -Suggests: python3-pip +Suggests: pip BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %define specflags_ppc -D__ppc__=1 @@ -91,7 +103,7 @@ BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %if %{with verbose_tests} %define test_flags -v -x %else -%define test_flags -w -x +%define test_flags -wW -x %endif %ifarch alpha ia64 ppc64 sparc64 ppc64 %{x8664} @@ -209,7 +221,9 @@ Group: Libraries/Python Provides: python(abi) = %{py_ver} # for compatibility with existing Ac packages Provides: python(bytecode) = %{py_ver} -%{!?with_info:Obsoletes: python3-doc-info} +Provides: python3-enum +Obsoletes: python3-enum +%{!?with_info:Obsoletes: python3-doc-info} %description libs Python shared library and very essental modules for Python binary. @@ -225,8 +239,7 @@ Group: Libraries/Python Requires: %{name}-libs = %{epoch}:%{version}-%{release} %{?with_system_mpdecimal:Requires: mpdecimal >= 2.4.1} Obsoletes: python3-modules-sqlite -Obsoletes: python3-enum -Provides: python3-enum +%requires_ge_to openssl openssl-devel %description modules Python officially distributed modules. @@ -350,7 +363,7 @@ debugger. %package 2to3 Summary: Automated Python 2 to 3 code translation Summary(pl.UTF-8): Automatyczne tłumaczenie kodu Pythona 2 do 3 -Group: Development/Languages/Pythona +Group: Development/Languages/Python %description 2to3 2to3 is a Python program that reads Python 2.x source code and applies @@ -473,16 +486,18 @@ Moduły testowe dla Pythona. %patch2 -p1 %patch3 -p1 %patch4 -p1 -%patch5 -p1 %patch6 -p1 %patch7 -p1 %patch8 -p1 %patch9 -p1 +%patch10 -p1 +%patch11 -p1 +%patch12 -p1 +%patch13 -p1 -%{__rm} -r Modules/zlib %{__rm} -r Modules/expat -for SUBDIR in darwin libffi libffi_arm_wince libffi_msvc libffi_osx; do +for SUBDIR in darwin libffi_msvc libffi_osx; do %{__rm} -r Modules/_ctypes/$SUBDIR/* done @@ -515,39 +530,34 @@ fi --enable-ipv6 \ --enable-shared \ --with-computed-gotos \ - --with-dbmliborder=gdbm:bdb \ + --with-dbmliborder=gdbm:ndbm:bdb \ --with-doc-strings \ --without-ensurepip \ - --with-fpectl \ %{?with_debug:--with-pydebug} \ - --with-signal-module \ --with-system-expat \ --with-system-ffi \ %{?with_system_mpdecimal:--with-system-libmpdec} \ - --with-threads \ -%ifarch %{ix86} %{x8664} ppc ppc64 - --with-tsc +%if %{with optimizations} + --enable-optimizations \ + --with-lto %endif %{__make} 2>&1 | awk ' BEGIN { fail = 0; logmsg = ""; } { - if ($0 ~ /\*\*\* WARNING:/) { - fail = 1; - logmsg = logmsg $0; - } - print $0; + if ($0 ~ /\*\*\* WARNING:/) { + fail = 1; + logmsg = logmsg $0; + } + print $0; } END { if (fail) { print "\nPROBLEMS FOUND:"; print logmsg; exit(1); } }' -LC_ALL=C +LC_ALL=C.UTF-8 export LC_ALL %if %{with tests} -binlibdir=`echo build/lib.*` -# -l and -j don't go together! and -j is brought up by Tools/scripts/run_tests.py -%{__make} test \ - TESTOPTS="%{test_flags} %{test_list}" \ - TESTPYTHON="LD_LIBRARY_PATH=`pwd` PYTHONHOME=`pwd` PYTHONPATH=`pwd`/Lib:`pwd`/$binlibdir ./python -tt" +WITHIN_PYTHON_RPM_BUILD=1 %{__make} -j1 test \ + TESTOPTS="%{test_flags} %{test_list}" %endif %install @@ -556,7 +566,8 @@ install -d $RPM_BUILD_ROOT{%{_bindir},%{_libdir},%{_pkgconfigdir}} \ $RPM_BUILD_ROOT{%{py_sitedir},%{py_sitescriptdir}}/__pycache__ \ $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} \ $RPM_BUILD_ROOT{%{_infodir},%{_mandir}/man1} \ - $RPM_BUILD_ROOT/etc/shrc.d + $RPM_BUILD_ROOT/etc/shrc.d \ + $RPM_BUILD_ROOT%{_prefix}/lib/debug/%{_libdir} %{__make} install \ DESTDIR=$RPM_BUILD_ROOT @@ -573,16 +584,20 @@ cp -a Tools $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} %{__rm} $RPM_BUILD_ROOT%{_libdir}/libpython3.so ln -s libpython%{py_abi}.so $RPM_BUILD_ROOT%{_libdir}/libpython3.so +# gdb helper that will end up in -debuginfo package +soname=$(ls -1d $RPM_BUILD_ROOT%{_libdir}/libpython%{py_abi}.so.*.* | sed -e "s#^$RPM_BUILD_ROOT##g") +cp -a Tools/gdb/libpython.py "$RPM_BUILD_ROOT%{_prefix}/lib/debug/$soname-gdb.py" + # # create several useful aliases, such as timeit.py, profile.py, pdb.py, smtpd.py # # for python devel tools for script in timeit profile pdb pstats; do - echo "alias ${script}%{py_ver}.py='python%{py_ver} -m ${script}'" + echo "#alias ${script}%{py_ver}.py='python%{py_ver} -m ${script}'" done > $RPM_BUILD_ROOT/etc/shrc.d/python%{py_ver}-devel.sh -echo "alias pygettext%{py_ver}.py='pygettext%{py_ver}'" \ +echo "#alias pygettext%{py_ver}.py='pygettext%{py_ver}'" \ >> $RPM_BUILD_ROOT/etc/shrc.d/python%{py_ver}-devel.sh sed 's/=/ /' \ @@ -591,7 +606,7 @@ sed 's/=/ /' \ # for python modules for script in smtpd webbrowser; do - echo "alias ${script}%{py_ver}.py='python%{py_ver} -m ${script}'" + echo "#alias ${script}%{py_ver}.py='python%{py_ver} -m ${script}'" done > $RPM_BUILD_ROOT/etc/shrc.d/python%{py_ver}-modules.sh sed 's/=/ /' \ @@ -609,12 +624,12 @@ install -p Tools/i18n/pygettext.py $RPM_BUILD_ROOT%{_bindir}/pygettext%{py_ver} install -p Tools/scripts/reindent.py $RPM_BUILD_ROOT%{_bindir}/pyreindent%{py_ver} # just to cut the noise, as they are not packaged (now) -%{__rm} $RPM_BUILD_ROOT%{py_scriptdir}/plat-*/regen -%{__rm} $RPM_BUILD_ROOT%{py_scriptdir}/ctypes/macholib/fetch_macholib* -%{__rm} $RPM_BUILD_ROOT%{py_scriptdir}/site-packages/README -%{__rm} $RPM_BUILD_ROOT%{py_scriptdir}/distutils/command/wininst*.exe -%{__rm} $RPM_BUILD_ROOT%{py_scriptdir}/idlelib/*.bat -%{__rm} $RPM_BUILD_ROOT%{py_scriptdir}/idlelib/*.pyw +%{__rm} $RPM_BUILD_ROOT%{py_libdir}/ctypes/macholib/fetch_macholib* +%{__rm} $RPM_BUILD_ROOT%{py_libdir}/distutils/command/wininst*.exe +%{__rm} $RPM_BUILD_ROOT%{py_libdir}/idlelib/*.bat +%{__rm} $RPM_BUILD_ROOT%{py_libdir}/idlelib/*.pyw +%{__rm} $RPM_BUILD_ROOT%{py_libdir}/idlelib/help.html +%{__rm} $RPM_BUILD_ROOT%{py_libdir}/site-packages/README.txt # currently provided by python-2to3, consider switching to this one %{__rm} $RPM_BUILD_ROOT%{_bindir}/2to3 @@ -624,7 +639,10 @@ install -p Tools/scripts/reindent.py $RPM_BUILD_ROOT%{_bindir}/pyreindent%{py_ve %{__rm} -f $RPM_BUILD_ROOT%{py_dyndir}/xxlimited.*.so # already in %%doc -%{__rm} $RPM_BUILD_ROOT%{py_scriptdir}/LICENSE.txt +%{__rm} $RPM_BUILD_ROOT%{py_libdir}/LICENSE.txt + +%{__mv} $RPM_BUILD_ROOT%{py_incdir}/pyconfig.h $RPM_BUILD_ROOT%{py_libdir}/config-%{py_platform}/pyconfig.h +%{__sed} -e's#@PREFIX@#%{_prefix}#g;s#@PY_VER@#%{py_ver}#g;s#@PY_ABI@#%{py_platform}#g' %{SOURCE1} > $RPM_BUILD_ROOT%{py_incdir}/pyconfig.h %clean rm -rf $RPM_BUILD_ROOT @@ -658,8 +676,8 @@ rm -rf $RPM_BUILD_ROOT %dir %{py_dyndir} %dir %{py_sitedir} %dir %{py_sitedir}/__pycache__ +%dir %{py_libdir}/__pycache__ %dir %{py_scriptdir} -%dir %{py_scriptdir}/__pycache__ %dir %{py_sitescriptdir} %dir %{py_sitescriptdir}/__pycache__ @@ -667,356 +685,364 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{py_dyndir}/_struct.cpython-*.so # modules required by python library -%{py_scriptdir}/_collections_abc.py -%{py_scriptdir}/_sitebuiltins.py -%{py_scriptdir}/_sysconfigdata.py -%{py_scriptdir}/_weakrefset.py -%{py_scriptdir}/abc.py -%{py_scriptdir}/bisect.py -%{py_scriptdir}/codecs.py -%{py_scriptdir}/copyreg.py -%{py_scriptdir}/functools.py -%{py_scriptdir}/genericpath.py -%{py_scriptdir}/heapq.py -%{py_scriptdir}/keyword.py -%{py_scriptdir}/linecache.py -%{py_scriptdir}/locale.py -%{py_scriptdir}/io.py -%{py_scriptdir}/posixpath.py -%{py_scriptdir}/re.py -%{py_scriptdir}/reprlib.py -%{py_scriptdir}/site.py -%{py_scriptdir}/sre_*.py -%{py_scriptdir}/stat.py -%{py_scriptdir}/sysconfig.py -%{py_scriptdir}/token.py -%{py_scriptdir}/tokenize.py -%{py_scriptdir}/traceback.py -%{py_scriptdir}/weakref.py -%{py_scriptdir}/os.py +%{py_libdir}/_collections_abc.py +%{py_libdir}/_sitebuiltins.py +%{py_libdir}/_sysconfigdata_*.py +%{py_libdir}/_weakrefset.py +%{py_libdir}/abc.py +%{py_libdir}/bisect.py +%{py_libdir}/codecs.py +%{py_libdir}/copyreg.py +%{py_libdir}/enum.py +%{py_libdir}/functools.py +%{py_libdir}/genericpath.py +%{py_libdir}/heapq.py +%{py_libdir}/keyword.py +%{py_libdir}/linecache.py +%{py_libdir}/locale.py +%{py_libdir}/io.py +%{py_libdir}/operator.py +%{py_libdir}/posixpath.py +%{py_libdir}/re.py +%{py_libdir}/reprlib.py +%{py_libdir}/site.py +%{py_libdir}/sre_*.py +%{py_libdir}/stat.py +%{py_libdir}/sysconfig.py +%{py_libdir}/token.py +%{py_libdir}/tokenize.py +%{py_libdir}/traceback.py +%{py_libdir}/weakref.py +%{py_libdir}/os.py # needed by the dynamic sys.lib patch -%{py_scriptdir}/types.py -%{py_scriptdir}/__pycache__/_sitebuiltins.cpython-*.py[co] -%{py_scriptdir}/__pycache__/_sysconfigdata.cpython-*.py[co] -%{py_scriptdir}/__pycache__/_weakrefset.cpython-*.py[co] -%{py_scriptdir}/__pycache__/abc.cpython-*.py[co] -%{py_scriptdir}/__pycache__/bisect.cpython-*.py[co] -%{py_scriptdir}/__pycache__/codecs.cpython-*.py[co] -%{py_scriptdir}/__pycache__/_collections_abc.cpython-*.py[co] -%{py_scriptdir}/__pycache__/copyreg.cpython-*.py[co] -%{py_scriptdir}/__pycache__/functools.cpython-*.py[co] -%{py_scriptdir}/__pycache__/genericpath.cpython-*.py[co] -%{py_scriptdir}/__pycache__/heapq.cpython-*.py[co] -%{py_scriptdir}/__pycache__/keyword.cpython-*.py[co] -%{py_scriptdir}/__pycache__/linecache.cpython-*.py[co] -%{py_scriptdir}/__pycache__/locale.cpython-*.py[co] -%{py_scriptdir}/__pycache__/io.cpython-*.py[co] -%{py_scriptdir}/__pycache__/posixpath.cpython-*.py[co] -%{py_scriptdir}/__pycache__/re.cpython-*.py[co] -%{py_scriptdir}/__pycache__/reprlib.cpython-*.py[co] -%{py_scriptdir}/__pycache__/site.cpython-*.py[co] -%{py_scriptdir}/__pycache__/sre_*.cpython-*.py[co] -%{py_scriptdir}/__pycache__/stat.cpython-*.py[co] -%{py_scriptdir}/__pycache__/sysconfig.cpython-*.py[co] -%{py_scriptdir}/__pycache__/token.cpython-*.py[co] -%{py_scriptdir}/__pycache__/tokenize.cpython-*.py[co] -%{py_scriptdir}/__pycache__/traceback.cpython-*.py[co] -%{py_scriptdir}/__pycache__/weakref.cpython-*.py[co] -%{py_scriptdir}/__pycache__/os.cpython-*.py[co] -%{py_scriptdir}/__pycache__/types.cpython-*.py[co] - -%{py_scriptdir}/collections +%{py_libdir}/types.py +%{py_libdir}/__pycache__/_sitebuiltins.cpython-*.py[co] +%{py_libdir}/__pycache__/_sysconfigdata_*.cpython-*.py[co] +%{py_libdir}/__pycache__/_weakrefset.cpython-*.py[co] +%{py_libdir}/__pycache__/abc.cpython-*.py[co] +%{py_libdir}/__pycache__/bisect.cpython-*.py[co] +%{py_libdir}/__pycache__/codecs.cpython-*.py[co] +%{py_libdir}/__pycache__/_collections_abc.cpython-*.py[co] +%{py_libdir}/__pycache__/copyreg.cpython-*.py[co] +%{py_libdir}/__pycache__/enum.cpython-*.py[co] +%{py_libdir}/__pycache__/functools.cpython-*.py[co] +%{py_libdir}/__pycache__/genericpath.cpython-*.py[co] +%{py_libdir}/__pycache__/heapq.cpython-*.py[co] +%{py_libdir}/__pycache__/keyword.cpython-*.py[co] +%{py_libdir}/__pycache__/linecache.cpython-*.py[co] +%{py_libdir}/__pycache__/locale.cpython-*.py[co] +%{py_libdir}/__pycache__/io.cpython-*.py[co] +%{py_libdir}/__pycache__/operator.cpython-*.py[co] +%{py_libdir}/__pycache__/posixpath.cpython-*.py[co] +%{py_libdir}/__pycache__/re.cpython-*.py[co] +%{py_libdir}/__pycache__/reprlib.cpython-*.py[co] +%{py_libdir}/__pycache__/site.cpython-*.py[co] +%{py_libdir}/__pycache__/sre_*.cpython-*.py[co] +%{py_libdir}/__pycache__/stat.cpython-*.py[co] +%{py_libdir}/__pycache__/sysconfig.cpython-*.py[co] +%{py_libdir}/__pycache__/token.cpython-*.py[co] +%{py_libdir}/__pycache__/tokenize.cpython-*.py[co] +%{py_libdir}/__pycache__/traceback.cpython-*.py[co] +%{py_libdir}/__pycache__/weakref.cpython-*.py[co] +%{py_libdir}/__pycache__/os.cpython-*.py[co] +%{py_libdir}/__pycache__/types.cpython-*.py[co] + +%{py_libdir}/collections # encodings required by python library -%dir %{py_scriptdir}/encodings -%{py_scriptdir}/encodings/__pycache__ -%{py_scriptdir}/encodings/*.py +%dir %{py_libdir}/encodings +%{py_libdir}/encodings/__pycache__ +%{py_libdir}/encodings/*.py -%dir %{py_libdir}/config-%{py_abi} -%{py_libdir}/config-%{py_abi}/Makefile -%{py_libdir}/config-%{py_abi}/Setup -%{py_libdir}/config-%{py_abi}/Setup.config -%{py_libdir}/config-%{py_abi}/Setup.local +%dir %{py_libdir}/config-%{py_platform} +%{py_libdir}/config-%{py_platform}/Makefile +%{py_libdir}/config-%{py_platform}/Setup +%{py_libdir}/config-%{py_platform}/Setup.local +%{py_libdir}/config-%{py_platform}/pyconfig.h %files modules %defattr(644,root,root,755) -/etc/shrc.d/python*-modules* +%config(noreplace) %verify(not md5 mtime size) /etc/shrc.d/python*-modules* %attr(755,root,root) %{_bindir}/pyvenv %attr(755,root,root) %{_bindir}/pyvenv-%{py_ver} -%{py_scriptdir}/__future__.py -%{py_scriptdir}/__phello__.foo.py -%{py_scriptdir}/_bootlocale.py -%{py_scriptdir}/_compat_pickle.py -%{py_scriptdir}/_compression.py -%{py_scriptdir}/_dummy_thread.py -%{py_scriptdir}/_markupbase.py -%{py_scriptdir}/_osx_support.py -%{py_scriptdir}/_pydecimal.py -%{py_scriptdir}/_pyio.py -%{py_scriptdir}/_strptime.py -%{py_scriptdir}/_threading_local.py -%{py_scriptdir}/aifc.py -%{py_scriptdir}/antigravity.py -%{py_scriptdir}/argparse.py -%{py_scriptdir}/ast.py -%{py_scriptdir}/asynchat.py -%{py_scriptdir}/asyncore.py -%{py_scriptdir}/base64.py -%{py_scriptdir}/bdb.py -%{py_scriptdir}/binhex.py -%{py_scriptdir}/bz2.py -%{py_scriptdir}/cProfile.py -%{py_scriptdir}/calendar.py -%{py_scriptdir}/cgi.py -%{py_scriptdir}/cgitb.py -%{py_scriptdir}/chunk.py -%{py_scriptdir}/cmd.py -%{py_scriptdir}/code.py -%{py_scriptdir}/codeop.py -%{py_scriptdir}/colorsys.py -%{py_scriptdir}/compileall.py -%{py_scriptdir}/configparser.py -%{py_scriptdir}/contextlib.py -%{py_scriptdir}/copy.py -%{py_scriptdir}/crypt.py -%{py_scriptdir}/csv.py -%{py_scriptdir}/datetime.py -%{py_scriptdir}/decimal.py -%{py_scriptdir}/difflib.py -%{py_scriptdir}/dis.py -%{py_scriptdir}/doctest.py -%{py_scriptdir}/dummy_threading.py -%{py_scriptdir}/enum.py -%{py_scriptdir}/filecmp.py -%{py_scriptdir}/fileinput.py -%{py_scriptdir}/fnmatch.py -%{py_scriptdir}/formatter.py -%{py_scriptdir}/fractions.py -%{py_scriptdir}/ftplib.py -%{py_scriptdir}/getopt.py -%{py_scriptdir}/getpass.py -%{py_scriptdir}/gettext.py -%{py_scriptdir}/glob.py -%{py_scriptdir}/gzip.py -%{py_scriptdir}/hashlib.py -%{py_scriptdir}/hmac.py -%{py_scriptdir}/imaplib.py -%{py_scriptdir}/imghdr.py -%{py_scriptdir}/imp.py -%{py_scriptdir}/inspect.py -%{py_scriptdir}/ipaddress.py -%{py_scriptdir}/lzma.py -%{py_scriptdir}/macpath.py -%{py_scriptdir}/macurl2path.py -%{py_scriptdir}/mailbox.py -%{py_scriptdir}/mailcap.py -%{py_scriptdir}/mimetypes.py -%{py_scriptdir}/modulefinder.py -%{py_scriptdir}/netrc.py -%{py_scriptdir}/nntplib.py -%{py_scriptdir}/ntpath.py -%{py_scriptdir}/nturl2path.py -%{py_scriptdir}/numbers.py -%{py_scriptdir}/opcode.py -%{py_scriptdir}/operator.py -%{py_scriptdir}/optparse.py -%{py_scriptdir}/pathlib.py -%{py_scriptdir}/pickle.py -%{py_scriptdir}/pickletools.py -%{py_scriptdir}/pipes.py -%{py_scriptdir}/pkgutil.py -%{py_scriptdir}/platform.py -%{py_scriptdir}/plistlib.py -%{py_scriptdir}/poplib.py -%{py_scriptdir}/pprint.py -%{py_scriptdir}/pty.py -%{py_scriptdir}/py_compile.py -%{py_scriptdir}/pyclbr.py -%{py_scriptdir}/queue.py -%{py_scriptdir}/quopri.py -%{py_scriptdir}/random.py -%{py_scriptdir}/rlcompleter.py -%{py_scriptdir}/runpy.py -%{py_scriptdir}/signal.py -%{py_scriptdir}/sched.py -%{py_scriptdir}/selectors.py -%{py_scriptdir}/shelve.py -%{py_scriptdir}/shlex.py -%{py_scriptdir}/shutil.py -%{py_scriptdir}/smtpd.py -%{py_scriptdir}/smtplib.py -%{py_scriptdir}/sndhdr.py -%{py_scriptdir}/socket.py -%{py_scriptdir}/socketserver.py -%{py_scriptdir}/ssl.py -%{py_scriptdir}/statistics.py -%{py_scriptdir}/string.py -%{py_scriptdir}/stringprep.py -%{py_scriptdir}/struct.py -%{py_scriptdir}/subprocess.py -%{py_scriptdir}/sunau.py -%{py_scriptdir}/symbol.py -%{py_scriptdir}/symtable.py -%{py_scriptdir}/tabnanny.py -%{py_scriptdir}/tarfile.py -%{py_scriptdir}/telnetlib.py -%{py_scriptdir}/tempfile.py -%{py_scriptdir}/textwrap.py -%{py_scriptdir}/this.py -%{py_scriptdir}/threading.py -%{py_scriptdir}/trace.py -%{py_scriptdir}/tracemalloc.py -%{py_scriptdir}/tty.py -%{py_scriptdir}/turtle.py -%{py_scriptdir}/typing.py -%{py_scriptdir}/uu.py -%{py_scriptdir}/uuid.py -%{py_scriptdir}/warnings.py -%{py_scriptdir}/wave.py -%{py_scriptdir}/webbrowser.py -%{py_scriptdir}/xdrlib.py -%{py_scriptdir}/zipapp.py -%{py_scriptdir}/zipfile.py -%{py_scriptdir}/__pycache__/__future__.cpython-*.py[co] -%{py_scriptdir}/__pycache__/__phello__.foo.cpython-*.py[co] -%{py_scriptdir}/__pycache__/_bootlocale.cpython-*.py[co] -%{py_scriptdir}/__pycache__/_compat_pickle.cpython-*.py[co] -%{py_scriptdir}/__pycache__/_compression.cpython-*.py[co] -%{py_scriptdir}/__pycache__/_dummy_thread.cpython-*.py[co] -%{py_scriptdir}/__pycache__/_markupbase.cpython-*.py[co] -%{py_scriptdir}/__pycache__/_osx_support.cpython-*.py[co] -%{py_scriptdir}/__pycache__/_pydecimal.cpython-*.py[co] -%{py_scriptdir}/__pycache__/_pyio.cpython-*.py[co] -%{py_scriptdir}/__pycache__/_strptime.cpython-*.py[co] -%{py_scriptdir}/__pycache__/_threading_local.cpython-*.py[co] -%{py_scriptdir}/__pycache__/aifc.cpython-*.py[co] -%{py_scriptdir}/__pycache__/antigravity.cpython-*.py[co] -%{py_scriptdir}/__pycache__/argparse.cpython-*.py[co] -%{py_scriptdir}/__pycache__/ast.cpython-*.py[co] -%{py_scriptdir}/__pycache__/asynchat.cpython-*.py[co] -%{py_scriptdir}/__pycache__/asyncore.cpython-*.py[co] -%{py_scriptdir}/__pycache__/base64.cpython-*.py[co] -%{py_scriptdir}/__pycache__/bdb.cpython-*.py[co] -%{py_scriptdir}/__pycache__/binhex.cpython-*.py[co] -%{py_scriptdir}/__pycache__/bz2.cpython-*.py[co] -%{py_scriptdir}/__pycache__/cProfile.cpython-*.py[co] -%{py_scriptdir}/__pycache__/calendar.cpython-*.py[co] -%{py_scriptdir}/__pycache__/cgi.cpython-*.py[co] -%{py_scriptdir}/__pycache__/cgitb.cpython-*.py[co] -%{py_scriptdir}/__pycache__/chunk.cpython-*.py[co] -%{py_scriptdir}/__pycache__/cmd.cpython-*.py[co] -%{py_scriptdir}/__pycache__/code.cpython-*.py[co] -%{py_scriptdir}/__pycache__/codeop.cpython-*.py[co] -%{py_scriptdir}/__pycache__/colorsys.cpython-*.py[co] -%{py_scriptdir}/__pycache__/compileall.cpython-*.py[co] -%{py_scriptdir}/__pycache__/configparser.cpython-*.py[co] -%{py_scriptdir}/__pycache__/contextlib.cpython-*.py[co] -%{py_scriptdir}/__pycache__/copy.cpython-*.py[co] -%{py_scriptdir}/__pycache__/crypt.cpython-*.py[co] -%{py_scriptdir}/__pycache__/csv.cpython-*.py[co] -%{py_scriptdir}/__pycache__/datetime.cpython-*.py[co] -%{py_scriptdir}/__pycache__/decimal.cpython-*.py[co] -%{py_scriptdir}/__pycache__/difflib.cpython-*.py[co] -%{py_scriptdir}/__pycache__/dis.cpython-*.py[co] -%{py_scriptdir}/__pycache__/doctest.cpython-*.py[co] -%{py_scriptdir}/__pycache__/dummy_threading.cpython-*.py[co] -%{py_scriptdir}/__pycache__/enum.cpython-*.py[co] -%{py_scriptdir}/__pycache__/filecmp.cpython-*.py[co] -%{py_scriptdir}/__pycache__/fileinput.cpython-*.py[co] -%{py_scriptdir}/__pycache__/fnmatch.cpython-*.py[co] -%{py_scriptdir}/__pycache__/formatter.cpython-*.py[co] -%{py_scriptdir}/__pycache__/fractions.cpython-*.py[co] -%{py_scriptdir}/__pycache__/ftplib.cpython-*.py[co] -%{py_scriptdir}/__pycache__/getopt.cpython-*.py[co] -%{py_scriptdir}/__pycache__/getpass.cpython-*.py[co] -%{py_scriptdir}/__pycache__/gettext.cpython-*.py[co] -%{py_scriptdir}/__pycache__/glob.cpython-*.py[co] -%{py_scriptdir}/__pycache__/gzip.cpython-*.py[co] -%{py_scriptdir}/__pycache__/hashlib.cpython-*.py[co] -%{py_scriptdir}/__pycache__/hmac.cpython-*.py[co] -%{py_scriptdir}/__pycache__/imaplib.cpython-*.py[co] -%{py_scriptdir}/__pycache__/imghdr.cpython-*.py[co] -%{py_scriptdir}/__pycache__/imp.cpython-*.py[co] -%{py_scriptdir}/__pycache__/inspect.cpython-*.py[co] -%{py_scriptdir}/__pycache__/ipaddress.cpython-*.py[co] -%{py_scriptdir}/__pycache__/lzma.cpython-*.py[co] -%{py_scriptdir}/__pycache__/macpath.cpython-*.py[co] -%{py_scriptdir}/__pycache__/macurl2path.cpython-*.py[co] -%{py_scriptdir}/__pycache__/mailbox.cpython-*.py[co] -%{py_scriptdir}/__pycache__/mailcap.cpython-*.py[co] -%{py_scriptdir}/__pycache__/mimetypes.cpython-*.py[co] -%{py_scriptdir}/__pycache__/modulefinder.cpython-*.py[co] -%{py_scriptdir}/__pycache__/netrc.cpython-*.py[co] -%{py_scriptdir}/__pycache__/nntplib.cpython-*.py[co] -%{py_scriptdir}/__pycache__/ntpath.cpython-*.py[co] -%{py_scriptdir}/__pycache__/nturl2path.cpython-*.py[co] -%{py_scriptdir}/__pycache__/numbers.cpython-*.py[co] -%{py_scriptdir}/__pycache__/opcode.cpython-*.py[co] -%{py_scriptdir}/__pycache__/operator.cpython-*.py[co] -%{py_scriptdir}/__pycache__/optparse.cpython-*.py[co] -%{py_scriptdir}/__pycache__/pathlib.cpython-*.py[co] -%{py_scriptdir}/__pycache__/pickle.cpython-*.py[co] -%{py_scriptdir}/__pycache__/pickletools.cpython-*.py[co] -%{py_scriptdir}/__pycache__/pipes.cpython-*.py[co] -%{py_scriptdir}/__pycache__/pkgutil.cpython-*.py[co] -%{py_scriptdir}/__pycache__/platform.cpython-*.py[co] -%{py_scriptdir}/__pycache__/plistlib.cpython-*.py[co] -%{py_scriptdir}/__pycache__/poplib.cpython-*.py[co] -%{py_scriptdir}/__pycache__/pprint.cpython-*.py[co] -%{py_scriptdir}/__pycache__/pty.cpython-*.py[co] -%{py_scriptdir}/__pycache__/py_compile.cpython-*.py[co] -%{py_scriptdir}/__pycache__/pyclbr.cpython-*.py[co] -%{py_scriptdir}/__pycache__/queue.cpython-*.py[co] -%{py_scriptdir}/__pycache__/quopri.cpython-*.py[co] -%{py_scriptdir}/__pycache__/random.cpython-*.py[co] -%{py_scriptdir}/__pycache__/rlcompleter.cpython-*.py[co] -%{py_scriptdir}/__pycache__/runpy.cpython-*.py[co] -%{py_scriptdir}/__pycache__/sched.cpython-*.py[co] -%{py_scriptdir}/__pycache__/selectors.cpython-*.py[co] -%{py_scriptdir}/__pycache__/shelve.cpython-*.py[co] -%{py_scriptdir}/__pycache__/shlex.cpython-*.py[co] -%{py_scriptdir}/__pycache__/shutil.cpython-*.py[co] -%{py_scriptdir}/__pycache__/signal.cpython-*.py[co] -%{py_scriptdir}/__pycache__/smtpd.cpython-*.py[co] -%{py_scriptdir}/__pycache__/smtplib.cpython-*.py[co] -%{py_scriptdir}/__pycache__/sndhdr.cpython-*.py[co] -%{py_scriptdir}/__pycache__/socket.cpython-*.py[co] -%{py_scriptdir}/__pycache__/socketserver.cpython-*.py[co] -%{py_scriptdir}/__pycache__/ssl.cpython-*.py[co] -%{py_scriptdir}/__pycache__/statistics.cpython-*.py[co] -%{py_scriptdir}/__pycache__/string.cpython-*.py[co] -%{py_scriptdir}/__pycache__/stringprep.cpython-*.py[co] -%{py_scriptdir}/__pycache__/struct.cpython-*.py[co] -%{py_scriptdir}/__pycache__/subprocess.cpython-*.py[co] -%{py_scriptdir}/__pycache__/sunau.cpython-*.py[co] -%{py_scriptdir}/__pycache__/symbol.cpython-*.py[co] -%{py_scriptdir}/__pycache__/symtable.cpython-*.py[co] -%{py_scriptdir}/__pycache__/tabnanny.cpython-*.py[co] -%{py_scriptdir}/__pycache__/tarfile.cpython-*.py[co] -%{py_scriptdir}/__pycache__/telnetlib.cpython-*.py[co] -%{py_scriptdir}/__pycache__/tempfile.cpython-*.py[co] -%{py_scriptdir}/__pycache__/textwrap.cpython-*.py[co] -%{py_scriptdir}/__pycache__/this.cpython-*.py[co] -%{py_scriptdir}/__pycache__/threading.cpython-*.py[co] -%{py_scriptdir}/__pycache__/trace.cpython-*.py[co] -%{py_scriptdir}/__pycache__/tracemalloc.cpython-*.py[co] -%{py_scriptdir}/__pycache__/tty.cpython-*.py[co] -%{py_scriptdir}/__pycache__/turtle.cpython-*.py[co] -%{py_scriptdir}/__pycache__/typing.cpython-*.py[co] -%{py_scriptdir}/__pycache__/uu.cpython-*.py[co] -%{py_scriptdir}/__pycache__/uuid.cpython-*.py[co] -%{py_scriptdir}/__pycache__/warnings.cpython-*.py[co] -%{py_scriptdir}/__pycache__/wave.cpython-*.py[co] -%{py_scriptdir}/__pycache__/webbrowser.cpython-*.py[co] -%{py_scriptdir}/__pycache__/xdrlib.cpython-*.py[co] -%{py_scriptdir}/__pycache__/zipapp.cpython-*.py[co] -%{py_scriptdir}/__pycache__/zipfile.cpython-*.py[co] +%{py_libdir}/__future__.py +%{py_libdir}/__phello__.foo.py +%{py_libdir}/_bootlocale.py +%{py_libdir}/_compat_pickle.py +%{py_libdir}/_compression.py +%{py_libdir}/_dummy_thread.py +%{py_libdir}/_markupbase.py +%{py_libdir}/_osx_support.py +%{py_libdir}/_pydecimal.py +%{py_libdir}/_py_abc.py +%{py_libdir}/_pyio.py +%{py_libdir}/_strptime.py +%{py_libdir}/_threading_local.py +%{py_libdir}/aifc.py +%{py_libdir}/antigravity.py +%{py_libdir}/argparse.py +%{py_libdir}/ast.py +%{py_libdir}/asynchat.py +%{py_libdir}/asyncore.py +%{py_libdir}/base64.py +%{py_libdir}/bdb.py +%{py_libdir}/binhex.py +%{py_libdir}/bz2.py +%{py_libdir}/cProfile.py +%{py_libdir}/calendar.py +%{py_libdir}/cgi.py +%{py_libdir}/cgitb.py +%{py_libdir}/chunk.py +%{py_libdir}/cmd.py +%{py_libdir}/code.py +%{py_libdir}/codeop.py +%{py_libdir}/colorsys.py +%{py_libdir}/compileall.py +%{py_libdir}/configparser.py +%{py_libdir}/contextlib.py +%{py_libdir}/contextvars.py +%{py_libdir}/copy.py +%{py_libdir}/crypt.py +%{py_libdir}/csv.py +%{py_libdir}/dataclasses.py +%{py_libdir}/datetime.py +%{py_libdir}/decimal.py +%{py_libdir}/difflib.py +%{py_libdir}/dis.py +%{py_libdir}/doctest.py +%{py_libdir}/dummy_threading.py +%{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 +%{py_libdir}/getpass.py +%{py_libdir}/gettext.py +%{py_libdir}/glob.py +%{py_libdir}/gzip.py +%{py_libdir}/hashlib.py +%{py_libdir}/hmac.py +%{py_libdir}/imaplib.py +%{py_libdir}/imghdr.py +%{py_libdir}/imp.py +%{py_libdir}/inspect.py +%{py_libdir}/ipaddress.py +%{py_libdir}/lzma.py +%{py_libdir}/macpath.py +%{py_libdir}/mailbox.py +%{py_libdir}/mailcap.py +%{py_libdir}/mimetypes.py +%{py_libdir}/modulefinder.py +%{py_libdir}/netrc.py +%{py_libdir}/nntplib.py +%{py_libdir}/ntpath.py +%{py_libdir}/nturl2path.py +%{py_libdir}/numbers.py +%{py_libdir}/opcode.py +%{py_libdir}/optparse.py +%{py_libdir}/pathlib.py +%{py_libdir}/pickle.py +%{py_libdir}/pickletools.py +%{py_libdir}/pipes.py +%{py_libdir}/pkgutil.py +%{py_libdir}/platform.py +%{py_libdir}/plistlib.py +%{py_libdir}/poplib.py +%{py_libdir}/pprint.py +%{py_libdir}/pty.py +%{py_libdir}/py_compile.py +%{py_libdir}/pyclbr.py +%{py_libdir}/queue.py +%{py_libdir}/quopri.py +%{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}/selectors.py +%{py_libdir}/shelve.py +%{py_libdir}/shlex.py +%{py_libdir}/shutil.py +%{py_libdir}/smtpd.py +%{py_libdir}/smtplib.py +%{py_libdir}/sndhdr.py +%{py_libdir}/socket.py +%{py_libdir}/socketserver.py +%{py_libdir}/ssl.py +%{py_libdir}/statistics.py +%{py_libdir}/string.py +%{py_libdir}/stringprep.py +%{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 +%{py_libdir}/telnetlib.py +%{py_libdir}/tempfile.py +%{py_libdir}/textwrap.py +%{py_libdir}/this.py +%{py_libdir}/threading.py +%{py_libdir}/trace.py +%{py_libdir}/tracemalloc.py +%{py_libdir}/tty.py +%{py_libdir}/turtle.py +%{py_libdir}/typing.py +%{py_libdir}/uu.py +%{py_libdir}/uuid.py +%{py_libdir}/warnings.py +%{py_libdir}/wave.py +%{py_libdir}/webbrowser.py +%{py_libdir}/xdrlib.py +%{py_libdir}/zipapp.py +%{py_libdir}/zipfile.py +%{py_libdir}/__pycache__/__future__.cpython-*.py[co] +%{py_libdir}/__pycache__/__phello__.foo.cpython-*.py[co] +%{py_libdir}/__pycache__/_bootlocale.cpython-*.py[co] +%{py_libdir}/__pycache__/_compat_pickle.cpython-*.py[co] +%{py_libdir}/__pycache__/_compression.cpython-*.py[co] +%{py_libdir}/__pycache__/_dummy_thread.cpython-*.py[co] +%{py_libdir}/__pycache__/_markupbase.cpython-*.py[co] +%{py_libdir}/__pycache__/_osx_support.cpython-*.py[co] +%{py_libdir}/__pycache__/_pydecimal.cpython-*.py[co] +%{py_libdir}/__pycache__/_py_abc.cpython-*.py[co] +%{py_libdir}/__pycache__/_pyio.cpython-*.py[co] +%{py_libdir}/__pycache__/_strptime.cpython-*.py[co] +%{py_libdir}/__pycache__/_threading_local.cpython-*.py[co] +%{py_libdir}/__pycache__/aifc.cpython-*.py[co] +%{py_libdir}/__pycache__/antigravity.cpython-*.py[co] +%{py_libdir}/__pycache__/argparse.cpython-*.py[co] +%{py_libdir}/__pycache__/ast.cpython-*.py[co] +%{py_libdir}/__pycache__/asynchat.cpython-*.py[co] +%{py_libdir}/__pycache__/asyncore.cpython-*.py[co] +%{py_libdir}/__pycache__/base64.cpython-*.py[co] +%{py_libdir}/__pycache__/bdb.cpython-*.py[co] +%{py_libdir}/__pycache__/binhex.cpython-*.py[co] +%{py_libdir}/__pycache__/bz2.cpython-*.py[co] +%{py_libdir}/__pycache__/cProfile.cpython-*.py[co] +%{py_libdir}/__pycache__/calendar.cpython-*.py[co] +%{py_libdir}/__pycache__/cgi.cpython-*.py[co] +%{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__/copy.cpython-*.py[co] +%{py_libdir}/__pycache__/crypt.cpython-*.py[co] +%{py_libdir}/__pycache__/csv.cpython-*.py[co] +%{py_libdir}/__pycache__/dataclasses.cpython-*.py[co] +%{py_libdir}/__pycache__/datetime.cpython-*.py[co] +%{py_libdir}/__pycache__/decimal.cpython-*.py[co] +%{py_libdir}/__pycache__/difflib.cpython-*.py[co] +%{py_libdir}/__pycache__/dis.cpython-*.py[co] +%{py_libdir}/__pycache__/doctest.cpython-*.py[co] +%{py_libdir}/__pycache__/dummy_threading.cpython-*.py[co] +%{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] +%{py_libdir}/__pycache__/getpass.cpython-*.py[co] +%{py_libdir}/__pycache__/gettext.cpython-*.py[co] +%{py_libdir}/__pycache__/glob.cpython-*.py[co] +%{py_libdir}/__pycache__/gzip.cpython-*.py[co] +%{py_libdir}/__pycache__/hashlib.cpython-*.py[co] +%{py_libdir}/__pycache__/hmac.cpython-*.py[co] +%{py_libdir}/__pycache__/imaplib.cpython-*.py[co] +%{py_libdir}/__pycache__/imghdr.cpython-*.py[co] +%{py_libdir}/__pycache__/imp.cpython-*.py[co] +%{py_libdir}/__pycache__/inspect.cpython-*.py[co] +%{py_libdir}/__pycache__/ipaddress.cpython-*.py[co] +%{py_libdir}/__pycache__/lzma.cpython-*.py[co] +%{py_libdir}/__pycache__/macpath.cpython-*.py[co] +%{py_libdir}/__pycache__/mailbox.cpython-*.py[co] +%{py_libdir}/__pycache__/mailcap.cpython-*.py[co] +%{py_libdir}/__pycache__/mimetypes.cpython-*.py[co] +%{py_libdir}/__pycache__/modulefinder.cpython-*.py[co] +%{py_libdir}/__pycache__/netrc.cpython-*.py[co] +%{py_libdir}/__pycache__/nntplib.cpython-*.py[co] +%{py_libdir}/__pycache__/ntpath.cpython-*.py[co] +%{py_libdir}/__pycache__/nturl2path.cpython-*.py[co] +%{py_libdir}/__pycache__/numbers.cpython-*.py[co] +%{py_libdir}/__pycache__/opcode.cpython-*.py[co] +%{py_libdir}/__pycache__/optparse.cpython-*.py[co] +%{py_libdir}/__pycache__/pathlib.cpython-*.py[co] +%{py_libdir}/__pycache__/pickle.cpython-*.py[co] +%{py_libdir}/__pycache__/pickletools.cpython-*.py[co] +%{py_libdir}/__pycache__/pipes.cpython-*.py[co] +%{py_libdir}/__pycache__/pkgutil.cpython-*.py[co] +%{py_libdir}/__pycache__/platform.cpython-*.py[co] +%{py_libdir}/__pycache__/plistlib.cpython-*.py[co] +%{py_libdir}/__pycache__/poplib.cpython-*.py[co] +%{py_libdir}/__pycache__/pprint.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] +%{py_libdir}/__pycache__/queue.cpython-*.py[co] +%{py_libdir}/__pycache__/quopri.cpython-*.py[co] +%{py_libdir}/__pycache__/random.cpython-*.py[co] +%{py_libdir}/__pycache__/rlcompleter.cpython-*.py[co] +%{py_libdir}/__pycache__/runpy.cpython-*.py[co] +%{py_libdir}/__pycache__/sched.cpython-*.py[co] +%{py_libdir}/__pycache__/secrets.cpython-*.py[co] +%{py_libdir}/__pycache__/selectors.cpython-*.py[co] +%{py_libdir}/__pycache__/shelve.cpython-*.py[co] +%{py_libdir}/__pycache__/shlex.cpython-*.py[co] +%{py_libdir}/__pycache__/shutil.cpython-*.py[co] +%{py_libdir}/__pycache__/signal.cpython-*.py[co] +%{py_libdir}/__pycache__/smtpd.cpython-*.py[co] +%{py_libdir}/__pycache__/smtplib.cpython-*.py[co] +%{py_libdir}/__pycache__/sndhdr.cpython-*.py[co] +%{py_libdir}/__pycache__/socket.cpython-*.py[co] +%{py_libdir}/__pycache__/socketserver.cpython-*.py[co] +%{py_libdir}/__pycache__/ssl.cpython-*.py[co] +%{py_libdir}/__pycache__/statistics.cpython-*.py[co] +%{py_libdir}/__pycache__/string.cpython-*.py[co] +%{py_libdir}/__pycache__/stringprep.cpython-*.py[co] +%{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] +%{py_libdir}/__pycache__/telnetlib.cpython-*.py[co] +%{py_libdir}/__pycache__/tempfile.cpython-*.py[co] +%{py_libdir}/__pycache__/textwrap.cpython-*.py[co] +%{py_libdir}/__pycache__/this.cpython-*.py[co] +%{py_libdir}/__pycache__/threading.cpython-*.py[co] +%{py_libdir}/__pycache__/trace.cpython-*.py[co] +%{py_libdir}/__pycache__/tracemalloc.cpython-*.py[co] +%{py_libdir}/__pycache__/tty.cpython-*.py[co] +%{py_libdir}/__pycache__/turtle.cpython-*.py[co] +%{py_libdir}/__pycache__/typing.cpython-*.py[co] +%{py_libdir}/__pycache__/uu.cpython-*.py[co] +%{py_libdir}/__pycache__/uuid.cpython-*.py[co] +%{py_libdir}/__pycache__/warnings.cpython-*.py[co] +%{py_libdir}/__pycache__/wave.cpython-*.py[co] +%{py_libdir}/__pycache__/webbrowser.cpython-*.py[co] +%{py_libdir}/__pycache__/xdrlib.cpython-*.py[co] +%{py_libdir}/__pycache__/zipapp.cpython-*.py[co] +%{py_libdir}/__pycache__/zipfile.cpython-*.py[co] # # list .so modules to be sure that all of them are built # +%attr(755,root,root) %{py_dyndir}/_asyncio.cpython-*.so %attr(755,root,root) %{py_dyndir}/_bisect.cpython-*.so +%attr(755,root,root) %{py_dyndir}/_blake2.cpython-*.so %attr(755,root,root) %{py_dyndir}/_bz2.cpython-*.so %attr(755,root,root) %{py_dyndir}/_codecs_cn.cpython-*.so %attr(755,root,root) %{py_dyndir}/_codecs_hk.cpython-*.so @@ -1024,6 +1050,7 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{py_dyndir}/_codecs_jp.cpython-*.so %attr(755,root,root) %{py_dyndir}/_codecs_kr.cpython-*.so %attr(755,root,root) %{py_dyndir}/_codecs_tw.cpython-*.so +%attr(755,root,root) %{py_dyndir}/_contextvars.cpython-*.so %attr(755,root,root) %{py_dyndir}/_crypt.cpython-*.so %attr(755,root,root) %{py_dyndir}/_csv.cpython-*.so %attr(755,root,root) %{py_dyndir}/_ctypes*.cpython-*.so @@ -1047,14 +1074,18 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{py_dyndir}/_opcode.cpython-*.so %attr(755,root,root) %{py_dyndir}/_pickle.cpython-*.so %attr(755,root,root) %{py_dyndir}/_posixsubprocess.cpython-*.so +%attr(755,root,root) %{py_dyndir}/_queue.cpython-*.so %attr(755,root,root) %{py_dyndir}/_random.cpython-*.so %attr(755,root,root) %{py_dyndir}/_sha1.cpython-*.so +%attr(755,root,root) %{py_dyndir}/_sha3.cpython-*.so %attr(755,root,root) %{py_dyndir}/_socket.cpython-*.so %attr(755,root,root) %{py_dyndir}/_ssl.cpython-*.so %attr(755,root,root) %{py_dyndir}/_testbuffer.cpython-*.so %attr(755,root,root) %{py_dyndir}/_testcapi.cpython-*.so %attr(755,root,root) %{py_dyndir}/_testimportmultiple.cpython-*.so %attr(755,root,root) %{py_dyndir}/_testmultiphase.cpython-*.so +%attr(755,root,root) %{py_dyndir}/_uuid.cpython-*.so +%attr(755,root,root) %{py_dyndir}/_xxtestfuzz.cpython-*.so # for openssl < 0.9.8 package sha256 and sha512 modules %if "%{pld_release}" != "ac" @@ -1083,154 +1114,151 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{py_dyndir}/unicodedata.cpython-*.so %attr(755,root,root) %{py_dyndir}/zlib.cpython-*.so -%dir %{py_scriptdir}/plat-* -%{py_scriptdir}/plat-*/__pycache__ -%{py_scriptdir}/plat-*/*.py - -%dir %{py_scriptdir}/asyncio -%{py_scriptdir}/asyncio/__pycache__ -%{py_scriptdir}/asyncio/*.py - -%{py_scriptdir}/concurrent - -%dir %{py_scriptdir}/ctypes -%dir %{py_scriptdir}/ctypes/macholib -%{py_scriptdir}/ctypes/__pycache__ -%{py_scriptdir}/ctypes/macholib/__pycache__ - -%{py_scriptdir}/ctypes/*.py -%{py_scriptdir}/ctypes/macholib/*.py -%doc %{py_scriptdir}/ctypes/macholib/README.ctypes - -%dir %{py_scriptdir}/curses -%{py_scriptdir}/curses/__pycache__ -%{py_scriptdir}/curses/*.py - -%dir %{py_scriptdir}/dbm -%{py_scriptdir}/dbm/__pycache__ -%{py_scriptdir}/dbm/*.py - -%dir %{py_scriptdir}/distutils -%dir %{py_scriptdir}/distutils/command -%doc %{py_scriptdir}/distutils/README -%{py_scriptdir}/distutils/__pycache__ -%{py_scriptdir}/distutils/command/__pycache__ -%{py_scriptdir}/distutils/*.py -%{py_scriptdir}/distutils/command/*.py -%{py_scriptdir}/distutils/command/command_template - -%dir %{py_scriptdir}/email -%dir %{py_scriptdir}/email/mime -%{py_scriptdir}/email/__pycache__ -%{py_scriptdir}/email/mime/__pycache__ -%{py_scriptdir}/email/architecture.rst -%{py_scriptdir}/email/*.py -%{py_scriptdir}/email/mime/*.py - -%dir %{py_scriptdir}/ensurepip -%{py_scriptdir}/ensurepip/__pycache__ -%{py_scriptdir}/ensurepip/*.py -%{py_scriptdir}/ensurepip/_bundled - -%dir %{py_scriptdir}/html -%{py_scriptdir}/html/*.py -%{py_scriptdir}/html/__pycache__ - -%dir %{py_scriptdir}/http -%{py_scriptdir}/http/__pycache__ -%{py_scriptdir}/http/*.py - -%dir %{py_scriptdir}/idlelib - -%dir %{py_scriptdir}/importlib -%{py_scriptdir}/importlib/__pycache__ -%{py_scriptdir}/importlib/*.py - -%dir %{py_scriptdir}/json -%{py_scriptdir}/json/__pycache__ -%{py_scriptdir}/json/*.py - -%dir %{py_scriptdir}/logging -%{py_scriptdir}/logging/__pycache__ -%{py_scriptdir}/logging/*.py - -%dir %{py_scriptdir}/multiprocessing -%{py_scriptdir}/multiprocessing/__pycache__ -%{py_scriptdir}/multiprocessing/*.py -%dir %{py_scriptdir}/multiprocessing/dummy -%{py_scriptdir}/multiprocessing/dummy/__pycache__ -%{py_scriptdir}/multiprocessing/dummy/*.py - -%{py_scriptdir}/turtledemo - -%dir %{py_scriptdir}/unittest -%{py_scriptdir}/unittest/__pycache__ -%{py_scriptdir}/unittest/*.py - -%dir %{py_scriptdir}/urllib -%{py_scriptdir}/urllib/__pycache__ -%{py_scriptdir}/urllib/*.py - -%dir %{py_scriptdir}/venv -%{py_scriptdir}/venv/__pycache__ -%{py_scriptdir}/venv/*.py -%dir %{py_scriptdir}/venv/scripts -%dir %{py_scriptdir}/venv/scripts/posix -%{py_scriptdir}/venv/scripts/posix/activate -%{py_scriptdir}/venv/scripts/posix/activate.csh -%{py_scriptdir}/venv/scripts/posix/activate.fish - -%dir %{py_scriptdir}/wsgiref -%{py_scriptdir}/wsgiref/__pycache__ -%{py_scriptdir}/wsgiref/*.py - -%dir %{py_scriptdir}/xml -%dir %{py_scriptdir}/xml/dom -%dir %{py_scriptdir}/xml/etree -%dir %{py_scriptdir}/xml/parsers -%dir %{py_scriptdir}/xml/sax -%{py_scriptdir}/xml/__pycache__ -%{py_scriptdir}/xml/dom/__pycache__ -%{py_scriptdir}/xml/etree/__pycache__ -%{py_scriptdir}/xml/parsers/__pycache__ -%{py_scriptdir}/xml/sax/__pycache__ -%{py_scriptdir}/xml/*.py -%{py_scriptdir}/xml/dom/*.py -%{py_scriptdir}/xml/etree/*.py -%{py_scriptdir}/xml/parsers/*.py -%{py_scriptdir}/xml/sax/*.py - -%dir %{py_scriptdir}/xmlrpc -%{py_scriptdir}/xmlrpc/__pycache__ -%{py_scriptdir}/xmlrpc/*.py +%dir %{py_libdir}/asyncio +%{py_libdir}/asyncio/__pycache__ +%{py_libdir}/asyncio/*.py + +%{py_libdir}/concurrent + +%dir %{py_libdir}/ctypes +%dir %{py_libdir}/ctypes/macholib +%{py_libdir}/ctypes/__pycache__ +%{py_libdir}/ctypes/macholib/__pycache__ + +%{py_libdir}/ctypes/*.py +%{py_libdir}/ctypes/macholib/*.py +%doc %{py_libdir}/ctypes/macholib/README.ctypes + +%dir %{py_libdir}/curses +%{py_libdir}/curses/__pycache__ +%{py_libdir}/curses/*.py + +%dir %{py_libdir}/dbm +%{py_libdir}/dbm/__pycache__ +%{py_libdir}/dbm/*.py + +%dir %{py_libdir}/distutils +%dir %{py_libdir}/distutils/command +%doc %{py_libdir}/distutils/README +%{py_libdir}/distutils/__pycache__ +%{py_libdir}/distutils/command/__pycache__ +%{py_libdir}/distutils/*.py +%{py_libdir}/distutils/command/*.py +%{py_libdir}/distutils/command/command_template + +%dir %{py_libdir}/email +%dir %{py_libdir}/email/mime +%{py_libdir}/email/__pycache__ +%{py_libdir}/email/mime/__pycache__ +%{py_libdir}/email/architecture.rst +%{py_libdir}/email/*.py +%{py_libdir}/email/mime/*.py + +%dir %{py_libdir}/ensurepip +%{py_libdir}/ensurepip/__pycache__ +%{py_libdir}/ensurepip/*.py +%{py_libdir}/ensurepip/_bundled + +%dir %{py_libdir}/html +%{py_libdir}/html/*.py +%{py_libdir}/html/__pycache__ + +%dir %{py_libdir}/http +%{py_libdir}/http/__pycache__ +%{py_libdir}/http/*.py + +%dir %{py_libdir}/idlelib + +%dir %{py_libdir}/importlib +%{py_libdir}/importlib/__pycache__ +%{py_libdir}/importlib/*.py + +%dir %{py_libdir}/json +%{py_libdir}/json/__pycache__ +%{py_libdir}/json/*.py + +%dir %{py_libdir}/logging +%{py_libdir}/logging/__pycache__ +%{py_libdir}/logging/*.py + +%dir %{py_libdir}/multiprocessing +%{py_libdir}/multiprocessing/__pycache__ +%{py_libdir}/multiprocessing/*.py +%dir %{py_libdir}/multiprocessing/dummy +%{py_libdir}/multiprocessing/dummy/__pycache__ +%{py_libdir}/multiprocessing/dummy/*.py + +%{py_libdir}/turtledemo + +%dir %{py_libdir}/unittest +%{py_libdir}/unittest/__pycache__ +%{py_libdir}/unittest/*.py + +%dir %{py_libdir}/urllib +%{py_libdir}/urllib/__pycache__ +%{py_libdir}/urllib/*.py + +%dir %{py_libdir}/venv +%{py_libdir}/venv/__pycache__ +%{py_libdir}/venv/*.py +%dir %{py_libdir}/venv/scripts +%dir %{py_libdir}/venv/scripts/common +%{py_libdir}/venv/scripts/common/activate +%dir %{py_libdir}/venv/scripts/posix +%{py_libdir}/venv/scripts/posix/activate.csh +%{py_libdir}/venv/scripts/posix/activate.fish + +%dir %{py_libdir}/wsgiref +%{py_libdir}/wsgiref/__pycache__ +%{py_libdir}/wsgiref/*.py + +%dir %{py_libdir}/xml +%dir %{py_libdir}/xml/dom +%dir %{py_libdir}/xml/etree +%dir %{py_libdir}/xml/parsers +%dir %{py_libdir}/xml/sax +%{py_libdir}/xml/__pycache__ +%{py_libdir}/xml/dom/__pycache__ +%{py_libdir}/xml/etree/__pycache__ +%{py_libdir}/xml/parsers/__pycache__ +%{py_libdir}/xml/sax/__pycache__ +%{py_libdir}/xml/*.py +%{py_libdir}/xml/dom/*.py +%{py_libdir}/xml/etree/*.py +%{py_libdir}/xml/parsers/*.py +%{py_libdir}/xml/sax/*.py + +%dir %{py_libdir}/xmlrpc +%{py_libdir}/xmlrpc/__pycache__ +%{py_libdir}/xmlrpc/*.py %attr(755,root,root) %{py_dyndir}/_sqlite3.cpython-*.so -%dir %{py_scriptdir}/sqlite3 -%{py_scriptdir}/sqlite3/__pycache__ -%{py_scriptdir}/sqlite3/*.py +%dir %{py_libdir}/sqlite3 +%{py_libdir}/sqlite3/__pycache__ +%{py_libdir}/sqlite3/*.py %files -n pydoc3 %defattr(644,root,root,755) %attr(755,root,root) %{_bindir}/pydoc3 -%attr(755,root,root) %{_bindir}/pydoc3.5 -%{py_scriptdir}/pydoc.py -%{py_scriptdir}/__pycache__/pydoc.cpython-*.py[co] -%dir %{py_scriptdir}/pydoc_data -%{py_scriptdir}/pydoc_data/__pycache__ -%{py_scriptdir}/pydoc_data/*.py -%{py_scriptdir}/pydoc_data/*.css +%attr(755,root,root) %{_bindir}/pydoc%{py_ver} +%{py_libdir}/pydoc.py +%{py_libdir}/__pycache__/pydoc.cpython-*.py[co] +%dir %{py_libdir}/pydoc_data +%{py_libdir}/pydoc_data/__pycache__ +%{py_libdir}/pydoc_data/*.py +%{py_libdir}/pydoc_data/*.css %files -n idle3 %defattr(644,root,root,755) %attr(755,root,root) %{_bindir}/idle3 -%attr(755,root,root) %{_bindir}/idle3.5 -%dir %{py_scriptdir}/idlelib/Icons -%{py_scriptdir}/idlelib/__pycache__ -%{py_scriptdir}/idlelib/*.py -%doc %{py_scriptdir}/idlelib/*.txt -%doc %{py_scriptdir}/idlelib/ChangeLog -%{py_scriptdir}/idlelib/Icons/* -%{py_scriptdir}/idlelib/*.def +%attr(755,root,root) %{_bindir}/idle%{py_ver} +%dir %{py_libdir}/idlelib/Icons +%{py_libdir}/idlelib/__pycache__ +%{py_libdir}/idlelib/*.py +%doc %{py_libdir}/idlelib/*.txt +%doc %{py_libdir}/idlelib/ChangeLog +%{py_libdir}/idlelib/Icons/* +%{py_libdir}/idlelib/*.def %files devel %defattr(644,root,root,755) @@ -1242,43 +1270,46 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{_libdir}/libpython3.so %{py_incdir}/*.h %exclude %{py_incdir}/pyconfig.h -%attr(755,root,root) %{py_libdir}/config-%{py_abi}/makesetup -%attr(755,root,root) %{py_libdir}/config-%{py_abi}/install-sh -%{py_libdir}/config-%{py_abi}/config.c -%{py_libdir}/config-%{py_abi}/config.c.in -%{py_libdir}/config-%{py_abi}/python.o -%{py_libdir}/config-%{py_abi}/python-config.py +%attr(755,root,root) %{py_libdir}/config-%{py_platform}/makesetup +%attr(755,root,root) %{py_libdir}/config-%{py_platform}/install-sh +%{py_libdir}/config-%{py_platform}/config.c +%{py_libdir}/config-%{py_platform}/config.c.in +%{py_libdir}/config-%{py_platform}/python.o +%{py_libdir}/config-%{py_platform}/python-config.py +%dir %{py_libdir}/config-%{py_platform}/__pycache__ +%{py_libdir}/config-%{py_platform}/__pycache__/python-config.* %{_pkgconfigdir}/python-%{py_ver}.pc %{_pkgconfigdir}/python-%{py_abi}.pc %{_pkgconfigdir}/python3.pc %files devel-tools %defattr(644,root,root,755) -/etc/shrc.d/python*-devel* +%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_scriptdir}/pdb.py -%{py_scriptdir}/profile.py -%{py_scriptdir}/pstats.py -%{py_scriptdir}/timeit.py -%{py_scriptdir}/__pycache__/pdb.cpython-*.py[co] -%{py_scriptdir}/__pycache__/profile.cpython-*.py[co] -%{py_scriptdir}/__pycache__/pstats.cpython-*.py[co] -%{py_scriptdir}/__pycache__/timeit.cpython-*.py[co] +%{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 +%defattr(644,root,root,755) %attr(755,root,root) %{_bindir}/2to3-%{py_ver} -%dir %{py_scriptdir}/lib2to3 -%{py_scriptdir}/lib2to3/__pycache__ -%{py_scriptdir}/lib2to3/*.txt -%{py_scriptdir}/lib2to3/*.pickle -%{py_scriptdir}/lib2to3/*.py -%dir %{py_scriptdir}/lib2to3/fixes -%{py_scriptdir}/lib2to3/fixes/__pycache__ -%{py_scriptdir}/lib2to3/fixes/*.py -%dir %{py_scriptdir}/lib2to3/pgen2 -%{py_scriptdir}/lib2to3/pgen2/__pycache__ -%{py_scriptdir}/lib2to3/pgen2/*.py +%dir %{py_libdir}/lib2to3 +%{py_libdir}/lib2to3/__pycache__ +%{py_libdir}/lib2to3/*.txt +%{py_libdir}/lib2to3/*.pickle +%{py_libdir}/lib2to3/*.py +%dir %{py_libdir}/lib2to3/fixes +%{py_libdir}/lib2to3/fixes/__pycache__ +%{py_libdir}/lib2to3/fixes/*.py +%dir %{py_libdir}/lib2to3/pgen2 +%{py_libdir}/lib2to3/pgen2/__pycache__ +%{py_libdir}/lib2to3/pgen2/*.py %files static %defattr(644,root,root,755) @@ -1289,14 +1320,15 @@ rm -rf $RPM_BUILD_ROOT %{_examplesdir}/%{name}-%{version} %files test -%{py_scriptdir}/idlelib/idle_test -%{py_scriptdir}/test -%{py_scriptdir}/ctypes/test -%{py_scriptdir}/distutils/tests -%{py_scriptdir}/lib2to3/tests -%{py_scriptdir}/sqlite3/test -%{py_scriptdir}/tkinter/test -%{py_scriptdir}/unittest/test +%defattr(644,root,root,755) +%{py_libdir}/idlelib/idle_test +%{py_libdir}/test +%{py_libdir}/ctypes/test +%{py_libdir}/distutils/tests +%{py_libdir}/lib2to3/tests +%{py_libdir}/sqlite3/test +%{py_libdir}/tkinter/test +%{py_libdir}/unittest/test %if %{with info} %files doc-info @@ -1307,8 +1339,8 @@ rm -rf $RPM_BUILD_ROOT %if %{with tkinter} %files tkinter %defattr(644,root,root,755) -%dir %{py_scriptdir}/tkinter -%{py_scriptdir}/tkinter/__pycache__ -%{py_scriptdir}/tkinter/*.py +%dir %{py_libdir}/tkinter +%{py_libdir}/tkinter/__pycache__ +%{py_libdir}/tkinter/*.py %attr(755,root,root) %{py_dyndir}/_tkinter.cpython-*.so %endif