Update to Python 3.13.0b4

The freethreading packages are now located in /usr/lib64/python3.13t
See https://github.com/python/cpython/issues/121103

Co-Authored-By: Karolina Surma <ksurma@redhat.com>
This commit is contained in:
Miro Hrončok 2024-07-18 22:01:33 +02:00
commit 6740145ba8
6 changed files with 256 additions and 225 deletions

View file

@ -14,10 +14,10 @@ URL: https://www.python.org/
# WARNING When rebasing to a new Python version,
# remember to update the python3-docs package as well
%global general_version %{pybasever}.0
%global prerel b3
%global prerel b4
%global upstream_version %{general_version}%{?prerel}
Version: %{general_version}%{?prerel:~%{prerel}}
Release: 3%{?dist}
Release: 1%{?dist}
License: Python-2.0.1
@ -176,9 +176,6 @@ Provides: bundled(python3dist(packaging)) = 24
%global exename python%{pybasever}
%endif
%global pylibdir %{_libdir}/python%{pybasever}
%global dynload_dir %{pylibdir}/lib-dynload
# ABIFLAGS, LDVERSION and SOABI are in the upstream configure.ac
# See PEP 3149 for some background: http://www.python.org/dev/peps/pep-3149/
%global ABIFLAGS_optimized %{nil}
@ -191,6 +188,13 @@ Provides: bundled(python3dist(packaging)) = 24
%global LDVERSION_freethreading %{pybasever}%{ABIFLAGS_freethreading}
%global LDVERSION_freethreading_debug %{pybasever}%{ABIFLAGS_freethreading_debug}
%global pylibdir %{_libdir}/python%{pybasever}
%global dynload_dir %{pylibdir}/lib-dynload
# freethreading libraries are located in e.g. /usr/lib64/python3.13t/
# https://github.com/python/cpython/issues/121103
%global pylibdir_freethreading %{pylibdir}%{ABIFLAGS_freethreading}
%global dynload_dir_freethreading %{pylibdir_freethreading}/lib-dynload
# We use the upstream arch triplets, we convert them from %%{_arch}-linux%%{_gnu}
%global platform_triplet %{expand:%(echo %{_arch}-linux%{_gnu} | sed -E \\
-e 's/^arm(eb)?-linux-gnueabi$/arm\\1-linux-gnueabihf/' \\
@ -395,9 +399,11 @@ Patch251: 00251-change-user-install-location.patch
# Another process might have already moved jit_stencils.h.new
Patch429: 00429-gh-118943-fix-another-race-condition-when-generating-jit_stencils-h.patch
# 00430 # e6851cbe4b1043e8d99e3f3dfa9c9f286fe0d511
# gh-121245: Amend d611c4c8e9 (correct import) (#121255)
Patch430: 00430-gh-121245-amend-d611c4c8e9-correct-import.patch
# 00432 # 74b8ebb01dac2390dea7d76a8040ad54198c73c4
# Account with abi_thread in test_sysconfig.test_user_similar
#
# From https://github.com/python/cpython/pull/122017
Patch432: 00432-account-with-abi_thread-in-test_sysconfig-test_user_similar.patch
# (New patches go here ^^^)
#
@ -722,17 +728,30 @@ The debug runtime additionally supports debug builds of C-API extensions
# At least until the PEP 703 build remains provisional.
%package -n python%{pybasever}-freethreading
Summary: Free Threading (PEP 703) version of the Python runtime
License: %{libs_license}
# The freethreading build is an all-in-one package version of the regular build, and
# shares the same .py/.pyc files and directories as the regular build. Hence
# we depend on all of the subpackages of the regular build:
Requires: %{pkgname}%{?_isa} = %{version}-%{release}
Requires: %{pkgname}-libs%{?_isa} = %{version}-%{release}
Requires: %{pkgname}-devel%{?_isa} = %{version}-%{release}
Requires: %{pkgname}-test%{?_isa} = %{version}-%{release}
Requires: %{pkgname}-tkinter%{?_isa} = %{version}-%{release}
Requires: %{pkgname}-idle%{?_isa} = %{version}-%{release}
%if %{with rpmwheels}
Requires: %{python_wheel_pkg_prefix}-pip-wheel >= 23.1.2
Requires: %{python_wheel_pkg_prefix}-setuptools-wheel
Requires: %{python_wheel_pkg_prefix}-wheel-wheel
License: %{libs_license}
%else
Provides: bundled(python3dist(pip)) = %{pip_version}
%pip_bundled_provides
Provides: bundled(python3dist(setuptools)) = %{setuptools_version}
%setuptools_bundled_provides
Provides: bundled(python3dist(wheel)) = %{wheel_version}
%wheel_bundled_provides
# License combined from Python libs + pip + setuptools + wheel
License: %{libs_license} AND Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND ISC AND LGPL-2.1-only AND MPL-2.0 AND (Apache-2.0 OR BSD-2-Clause)
%endif
# This package doesn't depend on python3-libs, so we need to explicitly
# define the same Provides and Requires.
# See the comments in the definition of -libs subpackage for detailed explanations
Provides: bundled(libb2) = 0.98.1
Provides: bundled(mimalloc) = 2.12
Requires: tzdata
Requires: expat >= 2.6
%description -n python%{pybasever}-freethreading
The provisional Free Threading (PEP 703) build of Python.
@ -752,15 +771,8 @@ and with the necessary changes needed to make the interpreter thread-safe.
Summary: Free Threading (PEP 703) version of the Python runtime (debug build)
License: %{libs_license}
# The debug build is an all-in-one package version of the regular build, and
# shares the same .py/.pyc files and directories as the regular build. Hence
# we depend on all of the subpackages of the regular build:
Requires: %{pkgname}%{?_isa} = %{version}-%{release}
Requires: %{pkgname}-libs%{?_isa} = %{version}-%{release}
Requires: %{pkgname}-devel%{?_isa} = %{version}-%{release}
Requires: %{pkgname}-test%{?_isa} = %{version}-%{release}
Requires: %{pkgname}-tkinter%{?_isa} = %{version}-%{release}
Requires: %{pkgname}-idle%{?_isa} = %{version}-%{release}
# This uses the pure Python modules from the freethreading package
Requires: python%{pybasever}-freethreading%{?_isa} = %{version}-%{release}
%description -n python%{pybasever}-freethreading-debug
The provisional Free Threading (PEP 703) build of Python. Debug build.
@ -1090,6 +1102,9 @@ install -d -m 0755 %{buildroot}%{pylibdir}/site-packages/__pycache__
# Note that rpmlint will complain about hardcoded library path;
# this is intentional.
install -d -m 0755 %{buildroot}%{_prefix}/lib/python%{pybasever}/site-packages/__pycache__
%if %{with freethreading_build}
install -d -m 0755 %{buildroot}%{_prefix}/lib/python%{pybasever}%{ABIFLAGS_freethreading}/site-packages/__pycache__
%endif # with freethreading_build
%endif
%if %{with main_python}
@ -1156,7 +1171,7 @@ find . -name "*~" -exec rm -f {} \;
%if 0%{?clamp_mtime_to_source_date_epoch}
LD_LIBRARY_PATH="%{buildroot}%{dynload_dir}/:%{buildroot}%{_libdir}" \
PYTHONPATH="%{_rpmconfigdir}/redhat" \
%{buildroot}%{_bindir}/python%{pybasever} -s -B -m clamp_source_mtime %{buildroot}%{pylibdir}
%{buildroot}%{_bindir}/python%{pybasever} -s -B -m clamp_source_mtime %{buildroot}%{pylibdir} %{?with_freethreading_build:%{buildroot}%{pylibdir_freethreading}}
%endif
# compileall CMD line options:
# -f - force rebuild even if timestamps are up to date
@ -1354,59 +1369,61 @@ CheckPython freethreading
%license %{pylibdir}/LICENSE.txt
# Pure Python modules
%{pylibdir}/*.py
%dir %{pylibdir}/__pycache__/
%{pylibdir}/__pycache__/*%{bytecode_suffixes}
%{pylibdir}/_pyrepl/
%{pylibdir}/asyncio/
%{pylibdir}/collections/
%{pylibdir}/concurrent/
%{pylibdir}/ctypes/
%{pylibdir}/curses/
%{pylibdir}/dbm/
%{pylibdir}/encodings/
%{pylibdir}/html/
%{pylibdir}/http/
%{pylibdir}/importlib/
%{pylibdir}/json/
%{pylibdir}/logging/
%{pylibdir}/multiprocessing/
%{pylibdir}/pathlib/
%{pylibdir}/pydoc_data/
%{pylibdir}/re/
%{pylibdir}/sqlite3/
%{pylibdir}/sysconfig/
%{pylibdir}/tomllib/
%{pylibdir}/unittest/
%{pylibdir}/urllib/
%{pylibdir}/venv/
%{pylibdir}/wsgiref/
%{pylibdir}/xml/
%{pylibdir}/xmlrpc/
%{pylibdir}/zipfile/
%{pylibdir}/zoneinfo/
# Handle the email module in detail to mark architecture.rst as %%doc
%dir %{pylibdir}/email/
%dir %{pylibdir}/email/__pycache__/
%{pylibdir}/email/*.py
%{pylibdir}/email/__pycache__/*%{bytecode_suffixes}
%{pylibdir}/email/mime/
%doc %{pylibdir}/email/architecture.rst
# Handle the ensurepip module in detail to not accidentally ship wheels
%dir %{pylibdir}/ensurepip/
%dir %{pylibdir}/ensurepip/__pycache__/
%{pylibdir}/ensurepip/*.py
%{pylibdir}/ensurepip/__pycache__/*%{bytecode_suffixes}
%if %{with rpmwheels}
%exclude %{pylibdir}/ensurepip/_bundled
%else
%dir %{pylibdir}/ensurepip/_bundled
%{pylibdir}/ensurepip/_bundled/pip-%{pip_version}-py3-none-any.whl
# This is macronized for reuse in the -freethreading package
%define pure_python_modules() \
%{1}/*.py\
%dir %{1}/__pycache__/\
%{1}/__pycache__/*%{bytecode_suffixes}\
\
%{1}/_pyrepl/\
%{1}/asyncio/\
%{1}/collections/\
%{1}/concurrent/\
%{1}/ctypes/\
%{1}/curses/\
%{1}/dbm/\
%{1}/encodings/\
%{1}/html/\
%{1}/http/\
%{1}/importlib/\
%{1}/json/\
%{1}/logging/\
%{1}/multiprocessing/\
%{1}/pathlib/\
%{1}/pydoc_data/\
%{1}/re/\
%{1}/sqlite3/\
%{1}/sysconfig/\
%{1}/tomllib/\
%{1}/unittest/\
%{1}/urllib/\
%{1}/venv/\
%{1}/wsgiref/\
%{1}/xml/\
%{1}/xmlrpc/\
%{1}/zipfile/\
%{1}/zoneinfo/\
# Handle the email module in detail to mark architecture.rst as %%doc\
%dir %{1}/email/\
%dir %{1}/email/__pycache__/\
%{1}/email/*.py\
%{1}/email/__pycache__/*%{bytecode_suffixes}\
%{1}/email/mime/\
%doc %{1}/email/architecture.rst\
# Handle the ensurepip module in detail to not accidentally ship wheels\
%dir %{1}/ensurepip/\
%dir %{1}/ensurepip/__pycache__/\
%{1}/ensurepip/*.py\
%{1}/ensurepip/__pycache__/*%{bytecode_suffixes}\
%if %{with rpmwheels}\
%exclude %{1}/ensurepip/_bundled\
%else\
%dir %{1}/ensurepip/_bundled\
%{1}/ensurepip/_bundled/pip-%{pip_version}-py3-none-any.whl\
%endif
%pure_python_modules %{pylibdir}
# This will be in the tkinter package
%exclude %{pylibdir}/turtle.py
%exclude %{pylibdir}/__pycache__/turtle*%{bytecode_suffixes}
@ -1420,72 +1437,72 @@ CheckPython freethreading
# Extension modules
# This is macronized for reuse in the -debug package
%define extension_modules() \
%{dynload_dir}/_asyncio.%{1}.so\
%{dynload_dir}/_bisect.%{1}.so\
%{dynload_dir}/_blake2.%{1}.so\
%{dynload_dir}/_bz2.%{1}.so\
%{dynload_dir}/_codecs_cn.%{1}.so\
%{dynload_dir}/_codecs_hk.%{1}.so\
%{dynload_dir}/_codecs_iso2022.%{1}.so\
%{dynload_dir}/_codecs_jp.%{1}.so\
%{dynload_dir}/_codecs_kr.%{1}.so\
%{dynload_dir}/_codecs_tw.%{1}.so\
%{dynload_dir}/_contextvars.%{1}.so\
%{dynload_dir}/_csv.%{1}.so\
%{dynload_dir}/_ctypes.%{1}.so\
%{dynload_dir}/_curses.%{1}.so\
%{dynload_dir}/_curses_panel.%{1}.so\
%{dynload_dir}/_datetime.%{1}.so\
%{dynload_dir}/_dbm.%{1}.so\
%{1}/_asyncio.%{2}.so\
%{1}/_bisect.%{2}.so\
%{1}/_blake2.%{2}.so\
%{1}/_bz2.%{2}.so\
%{1}/_codecs_cn.%{2}.so\
%{1}/_codecs_hk.%{2}.so\
%{1}/_codecs_iso2022.%{2}.so\
%{1}/_codecs_jp.%{2}.so\
%{1}/_codecs_kr.%{2}.so\
%{1}/_codecs_tw.%{2}.so\
%{1}/_contextvars.%{2}.so\
%{1}/_csv.%{2}.so\
%{1}/_ctypes.%{2}.so\
%{1}/_curses.%{2}.so\
%{1}/_curses_panel.%{2}.so\
%{1}/_datetime.%{2}.so\
%{1}/_dbm.%{2}.so\
%if %{with gdbm}\
%{dynload_dir}/_gdbm.%{1}.so\
%{1}/_gdbm.%{2}.so\
%endif\
%{dynload_dir}/_decimal.%{1}.so\
%{dynload_dir}/_elementtree.%{1}.so\
%{dynload_dir}/_hashlib.%{1}.so\
%{dynload_dir}/_heapq.%{1}.so\
%{dynload_dir}/_interpchannels.%{1}.so\
%{dynload_dir}/_interpqueues.%{1}.so\
%{dynload_dir}/_interpreters.%{1}.so\
%{dynload_dir}/_json.%{1}.so\
%{dynload_dir}/_lsprof.%{1}.so\
%{dynload_dir}/_lzma.%{1}.so\
%{dynload_dir}/_md5.%{1}.so\
%{dynload_dir}/_multibytecodec.%{1}.so\
%{dynload_dir}/_multiprocessing.%{1}.so\
%{dynload_dir}/_opcode.%{1}.so\
%{dynload_dir}/_pickle.%{1}.so\
%{dynload_dir}/_posixshmem.%{1}.so\
%{dynload_dir}/_posixsubprocess.%{1}.so\
%{dynload_dir}/_queue.%{1}.so\
%{dynload_dir}/_random.%{1}.so\
%{dynload_dir}/_sha1.%{1}.so\
%{dynload_dir}/_sha2.%{1}.so\
%{dynload_dir}/_sha3.%{1}.so\
%{dynload_dir}/_socket.%{1}.so\
%{dynload_dir}/_sqlite3.%{1}.so\
%{dynload_dir}/_ssl.%{1}.so\
%{dynload_dir}/_statistics.%{1}.so\
%{dynload_dir}/_struct.%{1}.so\
%{dynload_dir}/_uuid.%{1}.so\
%{dynload_dir}/_zoneinfo.%{1}.so\
%{dynload_dir}/array.%{1}.so\
%{dynload_dir}/binascii.%{1}.so\
%{dynload_dir}/cmath.%{1}.so\
%{dynload_dir}/fcntl.%{1}.so\
%{dynload_dir}/grp.%{1}.so\
%{dynload_dir}/math.%{1}.so\
%{dynload_dir}/mmap.%{1}.so\
%{dynload_dir}/pyexpat.%{1}.so\
%{dynload_dir}/readline.%{1}.so\
%{dynload_dir}/resource.%{1}.so\
%{dynload_dir}/select.%{1}.so\
%{dynload_dir}/syslog.%{1}.so\
%{dynload_dir}/termios.%{1}.so\
%{dynload_dir}/unicodedata.%{1}.so\
%{dynload_dir}/zlib.%{1}.so
%{1}/_decimal.%{2}.so\
%{1}/_elementtree.%{2}.so\
%{1}/_hashlib.%{2}.so\
%{1}/_heapq.%{2}.so\
%{1}/_interpchannels.%{2}.so\
%{1}/_interpqueues.%{2}.so\
%{1}/_interpreters.%{2}.so\
%{1}/_json.%{2}.so\
%{1}/_lsprof.%{2}.so\
%{1}/_lzma.%{2}.so\
%{1}/_md5.%{2}.so\
%{1}/_multibytecodec.%{2}.so\
%{1}/_multiprocessing.%{2}.so\
%{1}/_opcode.%{2}.so\
%{1}/_pickle.%{2}.so\
%{1}/_posixshmem.%{2}.so\
%{1}/_posixsubprocess.%{2}.so\
%{1}/_queue.%{2}.so\
%{1}/_random.%{2}.so\
%{1}/_sha1.%{2}.so\
%{1}/_sha2.%{2}.so\
%{1}/_sha3.%{2}.so\
%{1}/_socket.%{2}.so\
%{1}/_sqlite3.%{2}.so\
%{1}/_ssl.%{2}.so\
%{1}/_statistics.%{2}.so\
%{1}/_struct.%{2}.so\
%{1}/_uuid.%{2}.so\
%{1}/_zoneinfo.%{2}.so\
%{1}/array.%{2}.so\
%{1}/binascii.%{2}.so\
%{1}/cmath.%{2}.so\
%{1}/fcntl.%{2}.so\
%{1}/grp.%{2}.so\
%{1}/math.%{2}.so\
%{1}/mmap.%{2}.so\
%{1}/pyexpat.%{2}.so\
%{1}/readline.%{2}.so\
%{1}/resource.%{2}.so\
%{1}/select.%{2}.so\
%{1}/syslog.%{2}.so\
%{1}/termios.%{2}.so\
%{1}/unicodedata.%{2}.so\
%{1}/zlib.%{2}.so
%extension_modules %{SOABI_optimized}
%extension_modules %{dynload_dir} %{SOABI_optimized}
%dir %{pylibdir}/site-packages/
%dir %{pylibdir}/site-packages/__pycache__/
@ -1582,23 +1599,23 @@ CheckPython freethreading
# Extension modules
# This is macronized for reuse in the -debug package
%define extension_modules_test() \
%{dynload_dir}/_ctypes_test.%{1}.so\
%{dynload_dir}/_testbuffer.%{1}.so\
%{dynload_dir}/_testcapi.%{1}.so\
%{dynload_dir}/_testclinic.%{1}.so\
%{dynload_dir}/_testclinic_limited.%{1}.so\
%{dynload_dir}/_testexternalinspection.%{1}.so\
%{dynload_dir}/_testimportmultiple.%{1}.so\
%{dynload_dir}/_testinternalcapi.%{1}.so\
%{dynload_dir}/_testlimitedcapi.%{1}.so\
%{dynload_dir}/_testmultiphase.%{1}.so\
%{dynload_dir}/_testsinglephase.%{1}.so\
%{dynload_dir}/_xxtestfuzz.%{1}.so\
%{dynload_dir}/xxlimited.%{1}.so\
%{dynload_dir}/xxlimited_35.%{1}.so\
%{dynload_dir}/xxsubtype.%{1}.so
%{1}/_ctypes_test.%{2}.so\
%{1}/_testbuffer.%{2}.so\
%{1}/_testcapi.%{2}.so\
%{1}/_testclinic.%{2}.so\
%{1}/_testclinic_limited.%{2}.so\
%{1}/_testexternalinspection.%{2}.so\
%{1}/_testimportmultiple.%{2}.so\
%{1}/_testinternalcapi.%{2}.so\
%{1}/_testlimitedcapi.%{2}.so\
%{1}/_testmultiphase.%{2}.so\
%{1}/_testsinglephase.%{2}.so\
%{1}/_xxtestfuzz.%{2}.so\
%{1}/xxlimited.%{2}.so\
%{1}/xxlimited_35.%{2}.so\
%{1}/xxsubtype.%{2}.so
%extension_modules_test %{SOABI_optimized}
%extension_modules_test %{dynload_dir} %{SOABI_optimized}
# We don't bother splitting the debug build out into further subpackages:
@ -1620,8 +1637,8 @@ CheckPython freethreading
%{_libdir}/%{py_INSTSONAME_debug}
# Analog of the libs, test, and tkinter extension modules:
%extension_modules %{SOABI_debug}
%extension_modules_test %{SOABI_debug}
%extension_modules %{dynload_dir} %{SOABI_debug}
%extension_modules_test %{dynload_dir} %{SOABI_debug}
%{dynload_dir}/_tkinter.%{SOABI_debug}.so
# Analog of the -devel subpackage's files:
@ -1640,19 +1657,40 @@ CheckPython freethreading
%if %{with freethreading_build}
%files -n python%{pybasever}-freethreading
%dir %{pylibdir_freethreading}
%dir %{dynload_dir_freethreading}
%license %{pylibdir_freethreading}/LICENSE.txt
%doc %{pylibdir_freethreading}/site-packages/README.txt
# Pure Python modules
%pure_python_modules %{pylibdir_freethreading}
# Modules that we separate from python3-libs, but want to ship in -freethreading
%{pylibdir_freethreading}/__phello__/
%{pylibdir_freethreading}/idlelib/
%{pylibdir_freethreading}/test/
%{pylibdir_freethreading}/tkinter/
%{pylibdir_freethreading}/turtledemo/
# This will be in the -freethreading-debug package
%if %{with debug_build}
%exclude %{pylibdir_freethreading}/_sysconfigdata_%{ABIFLAGS_freethreading_debug}_linux_%{platform_triplet}.py
%exclude %{pylibdir_freethreading}/__pycache__/_sysconfigdata_%{ABIFLAGS_freethreading_debug}_linux_%{platform_triplet}%{bytecode_suffixes}
%endif
# Analog of the core subpackage's files:
%{_bindir}/python%{LDVERSION_freethreading}
# Analog to the -libs subpackage's files:
%{_libdir}/%{py_INSTSONAME_freethreading}
# Analog of the libs, test, and tkinter extension modules:
%extension_modules %{SOABI_freethreading}
%extension_modules_test %{SOABI_freethreading}
%{dynload_dir}/_tkinter.%{SOABI_freethreading}.so
%extension_modules %{dynload_dir_freethreading} %{SOABI_freethreading}
%extension_modules_test %{dynload_dir_freethreading} %{SOABI_freethreading}
%{dynload_dir_freethreading}/_tkinter.%{SOABI_freethreading}.so
# Analog of the -devel subpackage's files:
%{pylibdir}/config-%{LDVERSION_freethreading}-%{platform_triplet}/
%{pylibdir_freethreading}/config-%{LDVERSION_freethreading}-%{platform_triplet}/
%{_includedir}/python%{LDVERSION_freethreading}/
%{_bindir}/python%{LDVERSION_freethreading}-config
%{_bindir}/python%{LDVERSION_freethreading}-*-config
@ -1660,9 +1698,6 @@ CheckPython freethreading
%{_libdir}/pkgconfig/python-%{LDVERSION_freethreading}.pc
%{_libdir}/pkgconfig/python-%{LDVERSION_freethreading}-embed.pc
%{pylibdir}/_sysconfigdata_%{ABIFLAGS_freethreading}_linux_%{platform_triplet}.py
%{pylibdir}/__pycache__/_sysconfigdata_%{ABIFLAGS_freethreading}_linux_%{platform_triplet}%{bytecode_suffixes}
%endif # with freethreading_build
%if %{with freethreading_build} && %{with debug_build}
@ -1674,12 +1709,12 @@ CheckPython freethreading
%{_libdir}/%{py_INSTSONAME_freethreading_debug}
# Analog of the libs, test, and tkinter extension modules:
%extension_modules %{SOABI_freethreading_debug}
%extension_modules_test %{SOABI_freethreading_debug}
%{dynload_dir}/_tkinter.%{SOABI_freethreading_debug}.so
%extension_modules %{dynload_dir_freethreading} %{SOABI_freethreading_debug}
%extension_modules_test %{dynload_dir_freethreading} %{SOABI_freethreading_debug}
%{dynload_dir_freethreading}/_tkinter.%{SOABI_freethreading_debug}.so
# Analog of the -devel subpackage's files:
%{pylibdir}/config-%{LDVERSION_freethreading_debug}-%{platform_triplet}/
%{pylibdir_freethreading}/config-%{LDVERSION_freethreading_debug}-%{platform_triplet}/
%{_includedir}/python%{LDVERSION_freethreading_debug}/
%{_bindir}/python%{LDVERSION_freethreading_debug}-config
%{_bindir}/python%{LDVERSION_freethreading_debug}-*-config
@ -1687,8 +1722,8 @@ CheckPython freethreading
%{_libdir}/pkgconfig/python-%{LDVERSION_freethreading_debug}.pc
%{_libdir}/pkgconfig/python-%{LDVERSION_freethreading_debug}-embed.pc
%{pylibdir}/_sysconfigdata_%{ABIFLAGS_freethreading_debug}_linux_%{platform_triplet}.py
%{pylibdir}/__pycache__/_sysconfigdata_%{ABIFLAGS_freethreading_debug}_linux_%{platform_triplet}%{bytecode_suffixes}
%{pylibdir_freethreading}/_sysconfigdata_%{ABIFLAGS_freethreading_debug}_linux_%{platform_triplet}.py
%{pylibdir_freethreading}/__pycache__/_sysconfigdata_%{ABIFLAGS_freethreading_debug}_linux_%{platform_triplet}%{bytecode_suffixes}
%endif # with freethreading_build && debug_build
@ -1713,6 +1748,9 @@ CheckPython freethreading
# ======================================================
%changelog
* Fri Jul 19 2024 Miro Hrončok <mhroncok@redhat.com> - 3.13.0~b4-1
- Update to Python 3.13.0b4
* Fri Jul 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 3.13.0~b3-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild