Skip to content

Commit 29ca2d1

Browse files
committed
Up to 3.14.7
Refresh 2 stale patches; fix BRs vs upstream (+libuuid-devel +zstd-devel, -libnsl -libtirpc -gmp, bump expat/openssl/sqlite3/tk); ship gdb auto-load script.
1 parent aa3c555 commit 29ca2d1

3 files changed

Lines changed: 22 additions & 24 deletions

File tree

‎python3-BLDLIBRARY.patch‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
--- Python-3.8.5/Makefile.pre.in.orig 2020-09-17 07:55:13.731893519 +0200
22
+++ Python-3.8.5/Makefile.pre.in 2020-09-17 10:33:36.683744945 +0200
3-
@@ -224,6 +224,7 @@
3+
@@ -280,6 +280,7 @@
44
LIBRARY= @LIBRARY@
55
LDLIBRARY= @LDLIBRARY@
66
BLDLIBRARY= @BLDLIBRARY@
77
+BLDLIBDIR= @BLDLIBDIR@
8+
MODULE_LDFLAGS_SHARED=$(if $(LIBPYTHON),$(BLDLIBRARY))
89
PY3LIBRARY= @PY3LIBRARY@
910
DLLLIBRARY= @DLLLIBRARY@
10-
LDLIBRARYDIR= @LDLIBRARYDIR@
1111
@@ -780,7 +780,7 @@ clinic: check-clean-src $(srcdir)/Module
1212

1313
# Build the interpreter

‎python3-tests.patch‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,15 +10,15 @@ diff -urNp -x '*.orig' Python-3.9.2.org/Lib/test/test_imaplib.py Python-3.9.2/Li
1010
try:
1111
s.connect(('', imaplib.IMAP4_PORT))
1212
self.skipTest(
13-
@@ -85,7 +85,7 @@ class TestImaplib(unittest.TestCase):
13+
@@ -173,7 +173,7 @@ class TestImaplib(unittest.TestCase):
1414
# This is the exception that should be raised.
1515
expected_errnos = socket_helper.get_socket_conn_refused_errs()
1616
with self.assertRaises(OSError) as cm:
1717
- imaplib.IMAP4()
1818
+ imaplib.IMAP4('0.0.0.0')
1919
self.assertIn(cm.exception.errno, expected_errnos)
2020

21-
21+
def test_astring(self):
2222
--- a/Lib/test/test_site.py 2024-10-07 07:02:14.000000000 +0200
2323
+++ b/Lib/test/test_site.py.new 2024-10-08 14:14:57.416459147 +0200
2424
@@ -326,14 +326,14 @@ class HelperFunctionsTests(unittest.Test

‎python3.spec‎

Lines changed: 18 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -49,13 +49,13 @@ Summary(ru.UTF-8): Язык программирования очень высо
4949
Summary(tr.UTF-8): X arayüzlü, yüksek düzeyli, kabuk yorumlayıcı dili
5050
Summary(uk.UTF-8): Мова програмування дуже високого рівня з X-інтерфейсом
5151
Name: python3
52-
Version: %{py_ver}.0
52+
Version: %{py_ver}.7
5353
Release: 1
5454
Epoch: 1
5555
License: PSF
5656
Group: Development/Languages/Python
5757
Source0: https://www.python.org/ftp/python/%{version}/Python-%{version}.tar.xz
58-
# Source0-md5: 41389edaf9c643263cbed9b5ed307df8
58+
# Source0-md5: a4c4c2991b4126e227073c2d9445f432
5959
Source1: pyconfig.h.in
6060
# https://peps.python.org/pep-0668/
6161
Source2: externally-managed
@@ -72,44 +72,43 @@ Patch11: %{name}-installcompile.patch
7272
Patch14: python3-profile-tests.patch
7373
Patch15: python3-tests.patch
7474
URL: https://www.python.org/
75-
BuildRequires: autoconf >= 2.65
75+
BuildRequires: autoconf >= 2.72
7676
BuildRequires: autoconf-archive
7777
BuildRequires: automake
7878
BuildRequires: bluez-libs-devel
7979
BuildRequires: bzip2-devel
8080
%{?with_bdb:BuildRequires: db-devel >= 4}
8181
%{?with_info:BuildRequires: emacs >= 21}
82-
BuildRequires: expat-devel >= 1:1.95.7
82+
BuildRequires: expat-devel >= 1:2.8.0
8383
BuildRequires: file
8484
BuildRequires: gdbm-devel >= 1.8.3
8585
%if %(locale -a | grep -q '^C\.utf8$'; echo $?)
8686
BuildRequires: glibc-localedb-all
8787
%endif
88-
BuildRequires: gmp-devel >= 4.0
8988
%ifnarch %arch_with_atomics64
9089
BuildRequires: libatomic-devel
9190
%endif
9291
BuildRequires: libffi-devel
93-
BuildRequires: libnsl-devel
9492
BuildRequires: libstdc++-devel
95-
BuildRequires: libtirpc-devel
93+
BuildRequires: libuuid-devel >= 2.20
9694
%{?with_system_mpdecimal:BuildRequires: mpdecimal-devel >= 2.5.1}
9795
BuildRequires: ncurses-ext-devel >= 5.2
98-
BuildRequires: openssl-devel >= 0.9.7
96+
BuildRequires: openssl-devel >= 1.1.1
9997
BuildRequires: pkgconfig
10098
BuildRequires: readline-devel >= 5.0
10199
BuildRequires: rpm-build >= 4.6
102100
BuildRequires: rpm-pythonprov
103101
BuildRequires: rpmbuild(macros) >= 2.025
104102
BuildRequires: sed >= 4.0
105-
BuildRequires: sqlite3-devel >= 3.3.5
103+
BuildRequires: sqlite3-devel >= 3.15.2
106104
BuildRequires: tar >= 1:1.22
107105
%{?with_info:BuildRequires: tetex-makeindex}
108106
%{?with_tkinter:BuildRequires: tix-devel >= 1:8.1.4-4}
109-
%{?with_tkinter:BuildRequires: tk-devel >= 8.4.3}
107+
%{?with_tkinter:BuildRequires: tk-devel >= 8.5.12}
110108
BuildRequires: xz
111109
BuildRequires: xz-devel
112-
BuildRequires: zlib-devel
110+
BuildRequires: zlib-devel >= 1.2.0
111+
BuildRequires: zstd-devel >= 1.4.5
113112
BuildConflicts: python3-hunter <= 3.7.0
114113
Requires: %{name}-libs = %{epoch}:%{version}-%{release}
115114
Suggests: pip
@@ -258,6 +257,7 @@ Summary: Python modules
258257
Summary(pl.UTF-8): Moduły języka Python
259258
Group: Libraries/Python
260259
Requires: %{name}-libs = %{epoch}:%{version}-%{release}
260+
# 2.4.2-2 carries the div+sqrt memory exhaustion fix
261261
%{?with_system_mpdecimal:Requires: mpdecimal >= 2.4.2-2}
262262
Obsoletes: python3-modules-sqlite < 1:3.1-2
263263
%requires_ge_to expat expat-devel
@@ -407,9 +407,9 @@ Summary(pt_BR.UTF-8): Interface GUI Tk para Phyton
407407
Summary(tr.UTF-8): Python için grafik kullanıcı arayüzü
408408
Group: Libraries/Python
409409
Requires: %{name}-modules = %{epoch}:%{version}-%{release}
410-
Requires: tcl >= 8.4.3
410+
Requires: tcl >= 8.5.12
411411
Requires: tix >= 1:8.1.4-4
412-
Requires: tk >= 8.4.3
412+
Requires: tk >= 8.5.12
413413

414414
%description tkinter
415415
Standard Python interface to the Tk GUI toolkit.
@@ -452,13 +452,9 @@ BuildArch: noarch
452452
%description examples
453453
Example programs in Python.
454454

455-
These are for Python 2.3.4, not %{version}.
456-
457455
%description examples -l pl.UTF-8
458456
Przykładowe programy w Pythonie.
459457

460-
Przykłady te są dla Pythona 2.3.4, nie %{version}.
461-
462458
%package test
463459
Summary: Test modules for Python
464460
Summary(pl.UTF-8): Moduły testowe dla Pythona
@@ -585,7 +581,7 @@ install -d $RPM_BUILD_ROOT{%{_bindir},%{_libdir},%{_pkgconfigdir}} \
585581
$RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} \
586582
$RPM_BUILD_ROOT{%{_infodir},%{_mandir}/man1} \
587583
$RPM_BUILD_ROOT/etc/shrc.d \
588-
$RPM_BUILD_ROOT%{_prefix}/lib/debug/%{_libdir}
584+
$RPM_BUILD_ROOT%{_datadir}/gdb/auto-load%{_libdir}
589585

590586
%{__make} install \
591587
DESTDIR=$RPM_BUILD_ROOT
@@ -601,9 +597,10 @@ cp -a Tools $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
601597
%{__rm} $RPM_BUILD_ROOT%{_libdir}/libpython3.so
602598
ln -s libpython%{py_abi}.so $RPM_BUILD_ROOT%{_libdir}/libpython3.so
603599

604-
# gdb helper that will end up in -debuginfo package
600+
# gdb auto-load script; find-debuginfo lists only ELF objects it processed,
601+
# so a hand-copied .py can never reach the -debuginfo package
605602
soname=$(ls -1d $RPM_BUILD_ROOT%{_libdir}/libpython%{py_abi}.so.*.* | sed -e "s#^$RPM_BUILD_ROOT##g")
606-
cp -a Tools/gdb/libpython.py "$RPM_BUILD_ROOT%{_prefix}/lib/debug/${soname}-gdb.py"
603+
cp -a Tools/gdb/libpython.py "$RPM_BUILD_ROOT%{_datadir}/gdb/auto-load${soname}-gdb.py"
607604

608605
#
609606
# create several useful aliases, such as timeit.py, profile.py, pdb.py, smtpd.py
@@ -693,6 +690,7 @@ rm -rf $RPM_BUILD_ROOT
693690
%defattr(644,root,root,755)
694691
%doc LICENSE
695692
%attr(755,root,root) %{_libdir}/libpython%{py_abi}.so.*.*
693+
%{_datadir}/gdb/auto-load%{_libdir}/libpython%{py_abi}.so.*.*-gdb.py
696694

697695
%dir %{py_incdir}
698696
%{py_incdir}/pyconfig.h

0 commit comments

Comments
 (0)