]>
Commit | Line | Data |
---|---|---|
16d2c1b7 | 1 | # NOTE: tests require processes limit >128 (256 is sufficient) |
19221b23 | 2 | # |
9416f74d AM |
3 | # Conditional build: |
4 | %bcond_with info # info pages (requires emacs) | |
cab985ca | 5 | %bcond_without system_mpdecimal # system libmpdec library |
9416f74d | 6 | %bcond_without tkinter # disables tkinter module building |
7fbb63b9 | 7 | %bcond_without tests # disables Python testing |
9416f74d | 8 | %bcond_with verbose_tests # runs tests in verbose mode |
16d2c1b7 | 9 | %bcond_without optimizations # expensive, stable optimizations (PGO etc.) + LTO |
9416f74d AM |
10 | # |
11 | # tests which will not work on 64-bit platforms | |
bebf9cf2 | 12 | %define no64bit_tests -x test_audioop -x test_rgbimg -x test_imageop |
9416f74d | 13 | # tests which may fail because of builder environment limitations (no /proc or /dev/pts) |
81d56a2b | 14 | %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 |
48e785bb | 15 | |
7fbb63b9 | 16 | # tests which fail because of some unknown/unresolved reason (this list should be %{nil}) |
48e785bb JK |
17 | # test_site: fails because our site.py is patched to include both /usr/share/... and /usr/lib... |
18 | # test_gdb: fails, as the gdb uses old python version | |
59a34e48 | 19 | # test_time: test_AsTimeval (test.test_time.TestCPyTime), rounding error |
59a34e48 | 20 | %ifarch x32 |
bebf9cf2 | 21 | %define broken_tests_x32 -x test_time |
ae91e2fb | 22 | %undefine with_optimizations |
59a34e48 | 23 | %endif |
3e35963a | 24 | %define broken_tests -x test_embed -x test_nntplib -x test_gdb -x test_site -x test_distutils -x test_bdist_rpm -x test_ssl %{?broken_tests_x32} |
9416f74d | 25 | |
08df40de JP |
26 | %ifarch armv6hl armv7hl armv7hnl |
27 | %define _python_target_abi %{?_gnu}hf | |
28 | %else | |
29 | %define _python_target_abi %{?_gnu} | |
30 | %endif | |
31 | ||
8d01f992 | 32 | %define py_ver 3.10 |
3e35963a | 33 | %define py_abi %{py_ver} |
08df40de | 34 | %define py_platform %{py_abi}-%{_target_base_arch}-%{_target_os}%{?_python_target_abi} |
9416f74d AM |
35 | %define py_prefix %{_prefix} |
36 | %define py_libdir %{py_prefix}/%{_lib}/python%{py_ver} | |
c7fdbe10 | 37 | %define py_incdir %{_includedir}/python%{py_abi} |
9416f74d AM |
38 | %define py_sitedir %{py_libdir}/site-packages |
39 | %define py_dyndir %{py_libdir}/lib-dynload | |
40 | ||
41 | Summary: Very high level scripting language with X interface | |
42 | Summary(es.UTF-8): Lenguaje script de alto nivel con interfaz X | |
43 | Summary(fr.UTF-8): Langage de script de très haut niveau avec interface X | |
44 | Summary(pl.UTF-8): Python - język obiektowy wysokiego poziomu | |
45 | Summary(pt_BR.UTF-8): Linguagem de programação interpretada de alto nível | |
46 | Summary(ru.UTF-8): Язык программирования очень высокого уровня с X-интерфейсом | |
47 | Summary(tr.UTF-8): X arayüzlü, yüksek düzeyli, kabuk yorumlayıcı dili | |
48 | Summary(uk.UTF-8): Мова програмування дуже високого рівня з X-інтерфейсом | |
2072c60e | 49 | Name: python3 |
7ff5f06e | 50 | Version: %{py_ver}.4 |
4b802a49 | 51 | Release: 4 |
9416f74d AM |
52 | Epoch: 1 |
53 | License: PSF | |
4f91790c JB |
54 | Group: Development/Languages/Python |
55 | Source0: https://www.python.org/ftp/python/%{version}/Python-%{version}.tar.xz | |
7ff5f06e | 56 | # Source0-md5: 21f2e113e087083a1e8cf10553d93599 |
a033b415 | 57 | Source1: pyconfig.h.in |
a20e3138 AG |
58 | Patch0: %{name}-pythonpath.patch |
59 | Patch1: %{name}-ac_fixes.patch | |
ea93f05f JK |
60 | Patch2: %{name}-multilib.patch |
61 | Patch3: %{name}-no_cmdline_tests.patch | |
8d01f992 | 62 | |
12fdf48e | 63 | Patch5: %{name}-config.patch |
ea93f05f | 64 | Patch7: %{name}-db.patch |
3efd6e92 | 65 | Patch9: %{name}-tests_with_pythonpath.patch |
572e2465 | 66 | Patch10: %{name}-bdist_rpm.patch |
da213b19 | 67 | Patch11: %{name}-installcompile.patch |
689d42a2 | 68 | |
0c593ec9 | 69 | Patch13: %{name}-no-randomize-tests.patch |
bebf9cf2 | 70 | Patch14: python3-profile-tests.patch |
1b1a21d4 | 71 | Patch15: python3-tests.patch |
4f91790c | 72 | URL: https://www.python.org/ |
7daf2f83 | 73 | BuildRequires: autoconf >= 2.65 |
51826d16 | 74 | BuildRequires: autoconf-archive |
6c32bfd4 | 75 | BuildRequires: automake |
9416f74d AM |
76 | BuildRequires: bluez-libs-devel |
77 | BuildRequires: bzip2-devel | |
78 | BuildRequires: db-devel >= 4 | |
79 | %{?with_info:BuildRequires: emacs >= 21} | |
80 | BuildRequires: expat-devel >= 1:1.95.7 | |
81 | BuildRequires: file | |
82 | BuildRequires: gdbm-devel >= 1.8.3 | |
16d2c1b7 JB |
83 | %if %(locale -a | grep -q '^C\.utf8$'; echo $?) |
84 | BuildRequires: glibc-localedb-all | |
85 | %endif | |
9416f74d | 86 | BuildRequires: gmp-devel >= 4.0 |
3ba70ac2 | 87 | BuildRequires: libffi-devel |
0d7215c9 | 88 | BuildRequires: libnsl-devel |
9416f74d | 89 | BuildRequires: libstdc++-devel |
0d7215c9 | 90 | BuildRequires: libtirpc-devel |
f31061ec | 91 | %{?with_system_mpdecimal:BuildRequires: mpdecimal-devel >= 2.5.0} |
9416f74d | 92 | BuildRequires: ncurses-ext-devel >= 5.2 |
1254741f | 93 | BuildRequires: openssl-devel >= 0.9.7 |
6c32bfd4 | 94 | BuildRequires: pkgconfig |
9416f74d AM |
95 | BuildRequires: readline-devel >= 5.0 |
96 | BuildRequires: rpm-pythonprov | |
97 | BuildRequires: sed >= 4.0 | |
98 | BuildRequires: sqlite3-devel >= 3.3.5 | |
91e93ac7 | 99 | BuildRequires: tar >= 1:1.22 |
9416f74d AM |
100 | %{?with_info:BuildRequires: tetex-makeindex} |
101 | %{?with_tkinter:BuildRequires: tix-devel >= 1:8.1.4-4} | |
102 | %{?with_tkinter:BuildRequires: tk-devel >= 8.4.3} | |
58274b36 | 103 | BuildRequires: xz-devel |
9416f74d AM |
104 | BuildRequires: zlib-devel |
105 | Requires: %{name}-libs = %{epoch}:%{version}-%{release} | |
2a80ebbf | 106 | Suggests: pip |
9416f74d | 107 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
34dfde61 | 108 | |
8d0b0882 | 109 | %define specflags_ppc -D__ppc__=1 |
34dfde61 | 110 | %define specflags_ppc64 -D__ppc64__=1 |
9416f74d AM |
111 | |
112 | %if %{with verbose_tests} | |
bebf9cf2 | 113 | %define test_flags -v |
9416f74d | 114 | %else |
bebf9cf2 | 115 | %define test_flags -wW |
9416f74d AM |
116 | %endif |
117 | ||
118 | %ifarch alpha ia64 ppc64 sparc64 ppc64 %{x8664} | |
119 | %define test_list %{nobuilder_tests} %{broken_tests} %{no64bit_tests} | |
120 | %else | |
121 | %define test_list %{nobuilder_tests} %{broken_tests} | |
122 | %endif | |
123 | ||
124 | %ifarch sparc | |
bebf9cf2 | 125 | %define test_list %{nobuilder_tests} %{broken_tests} -x test_fcntl -x test_ioctl |
9416f74d AM |
126 | %endif |
127 | ||
128 | %description | |
129 | Python is an interpreted, interactive, object-oriented programming | |
130 | language. It incorporates modules, exceptions, dynamic typing, very | |
131 | high level dynamic data types, and classes. Python combines remarkable | |
132 | power with very clear syntax. It has interfaces to many system calls | |
133 | and libraries, as well as to various window systems, and is extensible | |
134 | in C or C++. It is also usable as an extension language for | |
135 | applications that need a programmable interface. Finally, Python is | |
136 | portable: it runs on many brands of UNIX, on the Mac, and on PCs under | |
137 | MS-DOS, Windows, Windows NT, and OS/2. | |
138 | ||
139 | This package contains the Python binary. | |
140 | ||
141 | %description -l de.UTF-8 | |
142 | Python ist eine interpretierte, interaktive, objektorientierte | |
143 | Programmiersprache, vergleichbar zu Tcl, Perl, Scheme oder Java. | |
144 | Python enthält Module, Klassen, Exceptions, High-Level dynamische | |
145 | Datentypen und dynamisches Typisieren. Python unterstützt Interfaces | |
146 | zu vielen Systemaufrufen und Libraries, sowie verschiedene | |
147 | Fenstersysteme (X11, Motif, Tk, Mac und MFC) | |
148 | ||
149 | Programmierer können neue built-in-Module für Python in C oder C++ | |
150 | schreiben. Python kann auch als Erweiterungssprache für Applikationen | |
151 | benutzt werden, die ein programmierbares Interface brauchen. Dieses | |
152 | Paket enthält die meisten Standard-Python-Module, und Module zum | |
153 | Ansprechen von Tix (Tk-widget set) und RPM. | |
154 | ||
155 | %description -l es.UTF-8 | |
156 | Python es un lenguaje de scripts interpretado orientado a objetos. | |
157 | Contiene soporte para carga dinámica de objetos, clases, módulos y | |
158 | excepciones. | |
159 | ||
160 | Es sencillo adicionar interfaces para nuevos sistemas de biblioteca a | |
161 | través de código C, tornando Python fácil de usar en ambientes | |
162 | particulares/personalizados. Este paquete Python incluye la mayoría de | |
163 | los módulos padrón Python, junto con módulos para crear interfaces | |
164 | para el conjunto de componentes Tix para Tk y RPM. | |
165 | ||
166 | %description -l fr.UTF-8 | |
167 | Python est un langage de script interprété et orienté objet. Il gère | |
168 | le chargement dynamique des objets, les classes, les modules et les | |
169 | exceptions. L'ajout d'interfaces aux nouvelles bibliothèques systèmes | |
170 | avec du code C est simple, ce qui rend Python facile à utiliser dans | |
171 | des configs personnalisées. | |
172 | ||
173 | Ce paquetage Python contient la plupart des modules Python standards, | |
174 | ainsi que ceux permettant l'interfaçage avec les widgets Tix pour Tk | |
175 | et RPM. | |
176 | ||
177 | %description -l pl.UTF-8 | |
178 | Python jest interpretowanym, interaktywnym i zorientowanym obiektowo | |
179 | językiem programowania. Jest modularny, obsługuje wyjątki, dynamiczne | |
180 | typy, zaawansowane dynamiczne struktury danych i klasy. Python łączy w | |
181 | sobie duże możliwości i przejrzystą składnię. Posiada interfejsy do | |
182 | wielu wywołań systemowych i bibliotek, w tym również do różnych | |
183 | bibliotek okienkowych. Możliwości jego można jeszcze rozszerzać | |
184 | poprzez odpowiednie moduły pisane w C lub C++. Python może być również | |
185 | użyty jako element aplikacji, którym potrzebny jest interpreter do | |
186 | skryptów. I wreszcie, Python jest wieloplatformowy, działa na wielu | |
187 | odmianach UNIX-a, Macu oraz PC pod DOS-em, Windows, WindowsNT oraz | |
188 | OS/2. | |
189 | ||
190 | Ten pakiet zawiera binarkę Pythona. | |
191 | ||
192 | %description -l pt_BR.UTF-8 | |
193 | Python é uma linguagem de scripts interpretada orientada a objetos. | |
194 | Contém suporte para carga dinâmica de objetos, classes, módulos e | |
195 | exceções. Adicionar interfaces para novos sistemas de biblioteca | |
196 | através de código C é simples, tornando Python fácil de usar em | |
197 | ambientes particulares/personalizados. | |
198 | ||
199 | Este pacote Python inclui a maioria do módulos padrão Python, junto | |
200 | com módulos para interfaceamento para o conjunto de componentes Tix | |
201 | para Tk e RPM. | |
202 | ||
203 | %description -l ru.UTF-8 | |
204 | Python - это интерпретируемый, объектно-ориентированный язык | |
205 | программирования. Он поддерживает динамическую загрузку объектов, | |
206 | классы, модули и обработку исключительных ситуаций (exceptions). | |
207 | Простота добавления интерфейсов к новым системным библиотекам через | |
208 | код на языке C делает Python хорошим выбором для использования в | |
209 | специальных конфигурациях. | |
210 | ||
211 | %description -l tr.UTF-8 | |
212 | Python, nesneye yönelik bir kabuk yorumlayıcıdır. Nesnelerin, | |
213 | sınıfların, modüllerin ve aykırı durumların dinamik yüklenmelerine | |
214 | destek verir. C koduyla birlikte kullanımı son derece kolaydır. Bu | |
215 | paket, standart Python birimlerinin çoğunun yanısıra Tk ve RPM için | |
216 | arayüz birimlerini de içerir. | |
217 | ||
218 | %description -l uk.UTF-8 | |
219 | Python - це інтерпретована, об'єктно-орієнтована мова програмування. | |
220 | Він підтримує динамічну загрузку об'єктів, класи, модулі та обробку | |
221 | виключних ситуацій (exceptions). Простота додавання інтерфейсів для | |
222 | нових системних бібліотек через код на мові C робить Python добрим | |
223 | вибором для використання в спеціальних конфігураціях. | |
224 | ||
225 | %package libs | |
226 | Summary: Python library | |
227 | Summary(pl.UTF-8): Biblioteka języka Python | |
228 | Group: Libraries/Python | |
229 | # broken detection in rpm/pythondeps.sh | |
230 | Provides: python(abi) = %{py_ver} | |
231 | # for compatibility with existing Ac packages | |
232 | Provides: python(bytecode) = %{py_ver} | |
f3feeafe | 233 | Provides: python3-enum |
703efa4d JB |
234 | Obsoletes: python3-enum < 0.5 |
235 | %{!?with_info:Obsoletes: python3-doc-info < %{epoch}:%{version}-%{release}} | |
9416f74d AM |
236 | |
237 | %description libs | |
238 | Python shared library and very essental modules for Python binary. | |
239 | ||
240 | %description libs -l pl.UTF-8 | |
241 | Biblioteka współdzielona języka Python oraz bardzo podstawowe moduły | |
242 | dla Pythona. | |
243 | ||
244 | %package modules | |
245 | Summary: Python modules | |
246 | Summary(pl.UTF-8): Moduły języka Python | |
247 | Group: Libraries/Python | |
248 | Requires: %{name}-libs = %{epoch}:%{version}-%{release} | |
e0400659 | 249 | %{?with_system_mpdecimal:Requires: mpdecimal >= 2.4.2-2} |
703efa4d | 250 | Obsoletes: python3-modules-sqlite < 1:3.1-2 |
7e9f7d57 | 251 | %requires_ge_to openssl openssl-devel |
9416f74d AM |
252 | |
253 | %description modules | |
254 | Python officially distributed modules. | |
255 | ||
256 | %description modules -l pl.UTF-8 | |
257 | Oficjalnie rozprowadzane moduły języka Python. | |
258 | ||
2072c60e | 259 | %package -n pydoc3 |
9416f74d AM |
260 | Summary: Python interactive module documentation access support |
261 | Summary(pl.UTF-8): Interaktywne korzystanie z dokumentacji modułów języka Python | |
262 | Group: Applications | |
263 | Requires: %{name}-modules = %{epoch}:%{version}-%{release} | |
264 | ||
2072c60e | 265 | %description -n pydoc3 |
9416f74d AM |
266 | Python interactive module documentation access support. |
267 | ||
2072c60e | 268 | %description -n pydoc3 -l pl.UTF-8 |
9416f74d AM |
269 | Interaktywne korzystanie z dokumentacji modułów języka Python. |
270 | ||
2072c60e | 271 | %package -n idle3 |
9416f74d AM |
272 | Summary: IDE for Python language |
273 | Summary(pl.UTF-8): IDE dla języka Python | |
274 | Group: Applications | |
275 | Requires: %{name}-tkinter = %{epoch}:%{version}-%{release} | |
276 | ||
2072c60e | 277 | %description -n idle3 |
9416f74d AM |
278 | IDE for Python language. |
279 | ||
2072c60e | 280 | %description -n idle3 -l pl.UTF-8 |
9416f74d AM |
281 | IDE dla języka Python. |
282 | ||
283 | %package devel | |
284 | Summary: Libraries and header files for building python code | |
285 | Summary(de.UTF-8): Libraries und Header-Dateien zum Erstellen von Python-Code | |
286 | Summary(es.UTF-8): Bibliotecas y archivos de inclusión para construir programas en python | |
287 | Summary(fr.UTF-8): Bibliothèques et en-têtes pour construire du code python | |
288 | Summary(pl.UTF-8): Pliki nagłówkowe i biblioteki Pythona | |
289 | Summary(pt_BR.UTF-8): Bibliotecas e arquivos de inclusão para o Python | |
290 | Summary(ru.UTF-8): Библиотеки и хедеры для построения кода на языке Python | |
291 | Summary(tr.UTF-8): Python ile geliştirme yapmak için gerekli dosyalar | |
292 | Summary(uk.UTF-8): Бібліотеки та хедери для програмування на мові Python | |
293 | Group: Development/Languages/Python | |
294 | Requires: %{name}-libs = %{epoch}:%{version}-%{release} | |
703efa4d | 295 | Obsoletes: python3-devel-src < 1:3.2-1 |
9416f74d AM |
296 | |
297 | %description devel | |
298 | The Python interpreter is relatively easy to extend with dynamically | |
299 | loaded extensions and to embed in other programs. This package | |
300 | contains the header files and libraries which are needed to do both of | |
301 | these tasks. | |
302 | ||
303 | %description devel -l de.UTF-8 | |
304 | Der Python-Interpretierer ist relativ einfach anhand von dynamisch | |
305 | ladbaren Erweiterungen auszubauen und läßt sich in andere Programme | |
306 | integrieren. Dieses Paket enthält die Header-Dateien und Libraries, | |
307 | die für beide Aufgaben erforderlich sind. | |
308 | ||
309 | %description devel -l es.UTF-8 | |
310 | El interpretador Python permite incluir con facilidad extensiones | |
311 | cargadas dinámicamente. Python es también fácil de ser empotrado en | |
312 | otros programas. Este paquete contiene los archivos de inclusión y | |
313 | bibliotecas necesarios para estas dos tareas. | |
314 | ||
315 | %description devel -l fr.UTF-8 | |
316 | L'interpréteur Python est relativement facile à étendre avec des | |
317 | extensions chargées dynamiquement et à insérer dans d'autres | |
318 | programmes. Ce paquetage contient les en-têtes et les bibliothèques | |
319 | nécessaires à ces deux tâches. | |
320 | ||
321 | %description devel -l pl.UTF-8 | |
322 | Interpreter Pythona jest w miarę łatwy do rozszerzania przy pomocy | |
323 | dynamicznie ładowanych rozszerzeń napisanych w C lub C++ oraz | |
324 | osadzania w innych programach. Ten pakiet zawiera pliki nagłówkowe i | |
325 | wszystko inne co potrzebne do tych celów. | |
326 | ||
327 | %description devel -l pt_BR.UTF-8 | |
328 | O interpretador Python permite incluir com facilidade extensões | |
329 | carregadas dinamicamente. Python é também fácil de ser embutido em | |
330 | outros programas. Este pacote contém os arquivos de inclusão e | |
331 | bibliotecas necessários para estas duas tarefas. | |
332 | ||
333 | %description devel -l ru.UTF-8 | |
334 | Интерпретатор Python относительно легко расширяется при помощи | |
335 | динамически загружаемых расширений и встраивается в другие программы. | |
336 | Этот пакет содержит хедеры и библиотеки, необходимые для обеих этих | |
337 | задач. | |
338 | ||
339 | %description devel -l tr.UTF-8 | |
340 | Bu paket, Python ile geliştirme yapılabilmesi için gerekli başlık | |
341 | dosyalarını ve kitaplıkları içerir. | |
342 | ||
343 | %description devel -l uk.UTF-8 | |
344 | Інтерпретатор Python відносно легко розширюється за допомогою | |
345 | розширень з динамічною загрузкою та вбудовується в інші програми. Цей | |
346 | пакет містить хедери та бібліотеки, необхідні для обох цих задач. | |
347 | ||
9416f74d AM |
348 | %package devel-tools |
349 | Summary: Python development tools | |
350 | Summary(pl.UTF-8): Narzędzia programistyczne języka Python | |
351 | Group: Development/Languages/Python | |
352 | Requires: %{name}-modules = %{epoch}:%{version}-%{release} | |
353 | ||
354 | %description devel-tools | |
355 | Python development tools such as profilers and debugger. | |
356 | ||
357 | %description devel-tools -l pl.UTF-8 | |
358 | Narzędzia programistyczne języka Python takie jak profiler oraz | |
359 | debugger. | |
360 | ||
30b0ff7b AF |
361 | %package 2to3 |
362 | Summary: Automated Python 2 to 3 code translation | |
0cf503a8 | 363 | Summary(pl.UTF-8): Automatyczne tłumaczenie kodu Pythona 2 do 3 |
76c5116a | 364 | Group: Development/Languages/Python |
30b0ff7b AF |
365 | |
366 | %description 2to3 | |
0cf503a8 JB |
367 | 2to3 is a Python program that reads Python 2.x source code and applies |
368 | a series of fixers to transform it into valid Python 3.x code. The | |
369 | standard library contains a rich set of fixers that will handle almost | |
370 | all code. 2to3 supporting library lib2to3 is, however, a flexible and | |
371 | generic library, so it is possible to write your own fixers for 2to3. | |
372 | lib2to3 could also be adapted to custom applications in which Python | |
373 | code needs to be edited automatically. | |
374 | ||
375 | %description 2to3 -l pl.UTF-8 | |
376 | 2to3 to program w Pythonie czytający od źródłowy w Pythonie 2.x i | |
377 | aplikujący serię poprawek przekształcających go w poprawny kod w | |
378 | Pythonie 3.x. Biblioteka standardowa zawiera duży zbiór poprawek | |
379 | obsługujących większość kodu. Biblioteka wspierająca 2to3 (lib2to3) | |
380 | jest jednak elastyczną i ogólną biblioteką, więc można pisać własne | |
381 | poprawki dla 2to3. lib2to3 można także zaadaptować na potrzeby | |
382 | własnych zastosowań, w których kod w Pythonie musi być modyfikowany | |
383 | automatycznie. | |
30b0ff7b | 384 | |
9416f74d AM |
385 | %package static |
386 | Summary: Static python library | |
387 | Summary(pl.UTF-8): Statyczna biblioteka Pythona | |
388 | Group: Development/Languages/Python | |
389 | Requires: %{name}-devel = %{epoch}:%{version}-%{release} | |
390 | ||
391 | %description static | |
392 | Static python library. | |
393 | ||
394 | %description static -l pl.UTF-8 | |
395 | Statyczna biblioteka Pythona. | |
396 | ||
9416f74d AM |
397 | %package doc-info |
398 | Summary: Documentation on Python in texinfo format | |
399 | Summary(pl.UTF-8): Dokumentacja do Pythona w formacie texinfo | |
400 | Group: Documentation | |
401 | ||
402 | %description doc-info | |
403 | Documentation on Python in texinfo format. | |
404 | ||
405 | %description doc-info -l pl.UTF-8 | |
406 | Dokumentacja do Pythona w formacie texinfo. | |
407 | ||
408 | %package tkinter | |
409 | Summary: Standard Python interface to the Tk GUI toolkit | |
410 | Summary(de.UTF-8): Grafische Tk-Schnittstelle für Python | |
411 | Summary(es.UTF-8): Interfaz de GUI Tk para Python | |
412 | Summary(fr.UTF-8): Interface graphique Tk pour Python | |
413 | Summary(pl.UTF-8): Standardowy interfejs Pythona do biblioteki Tk | |
414 | Summary(pt_BR.UTF-8): Interface GUI Tk para Phyton | |
415 | Summary(tr.UTF-8): Python için grafik kullanıcı arayüzü | |
416 | Group: Libraries/Python | |
417 | Requires: %{name}-modules = %{epoch}:%{version}-%{release} | |
418 | Requires: tcl >= 8.4.3 | |
419 | Requires: tix >= 1:8.1.4-4 | |
420 | Requires: tk >= 8.4.3 | |
421 | ||
422 | %description tkinter | |
423 | Standard Python interface to the Tk GUI toolkit. | |
424 | ||
425 | %description tkinter -l de.UTF-8 | |
426 | Eine grafische Schnittstelle für Python, basierend auf Tcl/Tk, und von | |
427 | vielen Konfigurations-Tools genutzt. | |
428 | ||
429 | %description tkinter -l es.UTF-8 | |
430 | Una interfaz gráfica para Python, basada en Tcl/Tk, y usada por muchas | |
431 | herramientas de configuración. | |
432 | ||
433 | %description tkinter -l fr.UTF-8 | |
434 | Interface graphique pour Python, basée sur Tcl/Tk et utilisée par | |
435 | beaucoup des outils de configuration. | |
436 | ||
437 | %description tkinter -l pl.UTF-8 | |
438 | Standardowy interfejs Pythona do biblioteki Tk. | |
439 | ||
440 | %description tkinter -l pt_BR.UTF-8 | |
441 | Uma interface gráfica para Python, baseada em Tcl/Tk, e usada por | |
442 | muitas ferramentas de configuração. | |
443 | ||
444 | %description tkinter -l ru.UTF-8 | |
445 | Графический интерфейс (GUI) для Python, построенный на Tcl/Tk. | |
446 | ||
447 | %description tkinter -l tr.UTF-8 | |
448 | Python için Tcl/Tk'ye dayalı ve pek çok ayarlama aracı tarafından | |
449 | kullanılan grafik bir arayüzdür. | |
450 | ||
451 | %description tkinter -l uk.UTF-8 | |
452 | Графічний інтерфейс (GUI) для Python, побудований на Tcl/Tk. | |
453 | ||
454 | %package examples | |
455 | Summary: Example programs in Python | |
456 | Summary(pl.UTF-8): Przykładowe programy w Pythonie | |
457 | Group: Development/Languages/Python | |
385ad89c | 458 | BuildArch: noarch |
9416f74d AM |
459 | |
460 | %description examples | |
461 | Example programs in Python. | |
462 | ||
463 | These are for Python 2.3.4, not %{version}. | |
464 | ||
465 | %description examples -l pl.UTF-8 | |
466 | Przykładowe programy w Pythonie. | |
467 | ||
468 | Przykłady te są dla Pythona 2.3.4, nie %{version}. | |
469 | ||
9a22bc7d JK |
470 | %package test |
471 | Summary: Test modules for Python | |
472 | Summary(pl.UTF-8): Moduły testowe dla Pythona | |
473 | Group: Development/Languages/Python | |
474 | ||
475 | %description test | |
476 | Test modules for Python. | |
477 | ||
478 | %description test -l pl.UTF-8 | |
479 | Moduły testowe dla Pythona. | |
480 | ||
9416f74d | 481 | %prep |
0cf503a8 | 482 | %setup -q -n Python-%{version} |
a20e3138 | 483 | %patch0 -p1 |
30b0ff7b | 484 | %patch1 -p1 |
e3852288 JB |
485 | %patch2 -p1 |
486 | %patch3 -p1 | |
8d01f992 | 487 | |
12fdf48e | 488 | %patch5 -p1 |
af6f018f | 489 | %patch7 -p1 |
3efd6e92 | 490 | %patch9 -p1 |
572e2465 | 491 | %patch10 -p1 |
da213b19 | 492 | %patch11 -p1 |
689d42a2 | 493 | |
a2b17ec1 | 494 | %patch13 -p1 |
bebf9cf2 | 495 | %patch14 -p1 |
1b1a21d4 | 496 | %patch15 -p1 |
9416f74d | 497 | |
91f8e48f | 498 | %{__rm} -r Modules/expat |
f4282245 | 499 | |
3e35963a | 500 | for SUBDIR in darwin libffi_osx; do |
34c3e9e3 | 501 | %{__rm} -r Modules/_ctypes/$SUBDIR/* |
f4282245 ER |
502 | done |
503 | ||
38874ce8 | 504 | %if "%{pld_release}" == "ac" |
f4282245 | 505 | files="md5module.c sha1module.c" |
f4282245 | 506 | files="$files sha256module.c sha512module.c" |
f4282245 ER |
507 | for f in $files; do |
508 | %{__rm} Modules/$f | |
509 | done | |
38874ce8 | 510 | %endif |
f4282245 | 511 | |
50df40d5 AM |
512 | sed -E -i -e '1s,#!\s*/usr/bin/env\s+python2(\s|$),#!%{__python}\1,' -e '1s,#!\s*/usr/bin/env\s+python(\s|$),#!%{__python}\1,' -e '1s,#!\s*/usr/bin/python(\s|$),#!%{__python}\1,' \ |
513 | Tools/gdb/libpython.py \ | |
514 | Tools/pynche/pynche \ | |
515 | Tools/pynche/pynche.pyw \ | |
516 | Tools/scripts/2to3 | |
517 | ||
518 | sed -E -i -e '1s,#!\s*/usr/bin/env\s+python3(\s|$),#!%{__python3}\1,' \ | |
519 | Tools/scripts/idle3 \ | |
520 | Tools/scripts/pydoc3 | |
59758f4d | 521 | |
6e059f2e JB |
522 | find . -name '*.py' | xargs -r grep -El '^#! */usr/bin/env python3?' | xargs %{__sed} -i -e '1s,^#! */usr/bin/env python3\?,#!/usr/bin/python3,' |
523 | ||
91530447 JR |
524 | sed -E -i -e '1s,#!\s*/usr/bin/env\s+bash(\s|$),#!/bin/bash\1,' \ |
525 | Tools/c-analyzer/must-resolve.sh | |
526 | ||
1254741f | 527 | %build |
2906feef AM |
528 | if ! grep -q "tmpfs" /proc/self/mounts; then |
529 | echo "You need to have /dev/shm mounted in order to build this package!" >&2 | |
530 | echo "(Or any other tmpfs mounted and accessible to the rpmbuild process)" >&2 | |
531 | exit 1 | |
532 | fi | |
533 | ||
6c32bfd4 | 534 | %{__aclocal} |
9416f74d | 535 | %{__autoconf} |
9416f74d | 536 | %configure \ |
58274b36 | 537 | CC="%{__cc}" \ |
520f15b4 | 538 | OPT="%{rpmcflags}" \ |
04b427b2 AM |
539 | CPPFLAGS="%{rpmcppflags}" \ |
540 | LDFLAGS="%{rpmldflags}" \ | |
6e46332d | 541 | LDFLAGS_NODIST="%{debuginfocflags}" \ |
1254741f ER |
542 | ac_cv_posix_semaphores_enabled=yes \ |
543 | ac_cv_broken_sem_getvalue=no \ | |
9416f74d | 544 | --enable-ipv6 \ |
cab985ca JB |
545 | --enable-shared \ |
546 | --with-computed-gotos \ | |
d1a550a0 | 547 | --with-dbmliborder=gdbm:ndbm:bdb \ |
9416f74d | 548 | --with-doc-strings \ |
4f87a49d | 549 | --without-ensurepip \ |
f31061ec | 550 | --with-platlibdir="%{_lib}" \ |
cab985ca | 551 | %{?with_debug:--with-pydebug} \ |
520f15b4 | 552 | --with-ssl-default-suites=openssl \ |
91f8e48f | 553 | --with-system-expat \ |
3ba70ac2 | 554 | --with-system-ffi \ |
b592c0a2 AM |
555 | %{?with_system_mpdecimal:--with-system-libmpdec} \ |
556 | %if %{with optimizations} | |
557 | --enable-optimizations \ | |
558 | --with-lto | |
559 | %endif | |
9416f74d | 560 | |
81d56a2b AM |
561 | if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then |
562 | echo "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777." >&2 | |
563 | exit 1 | |
564 | fi | |
565 | ||
bebf9cf2 | 566 | %{__make} \ |
520f15b4 | 567 | TESTOPTS="%{_smp_mflags} %{test_list}" \ |
bebf9cf2 | 568 | 2>&1 | awk ' |
9416f74d AM |
569 | BEGIN { fail = 0; logmsg = ""; } |
570 | { | |
76c5116a JK |
571 | if ($0 ~ /\*\*\* WARNING:/) { |
572 | fail = 1; | |
573 | logmsg = logmsg $0; | |
574 | } | |
575 | print $0; | |
9416f74d AM |
576 | } |
577 | END { if (fail) { print "\nPROBLEMS FOUND:"; print logmsg; exit(1); } }' | |
578 | ||
d47b1d9a | 579 | LC_ALL=C.UTF-8 |
9416f74d AM |
580 | export LC_ALL |
581 | %if %{with tests} | |
520f15b4 | 582 | WITHIN_PYTHON_RPM_BUILD=1 %{__make} test \ |
a2b17ec1 | 583 | TESTOPTS="%{test_flags} %{test_list}" |
9416f74d AM |
584 | %endif |
585 | ||
703efa4d JB |
586 | %if %{with info} |
587 | %{__make} -C Doc texinfo | |
588 | %{__make} -C Doc/build/texinfo info | |
589 | %endif | |
590 | ||
9416f74d AM |
591 | %install |
592 | rm -rf $RPM_BUILD_ROOT | |
9adbfa17 | 593 | install -d $RPM_BUILD_ROOT{%{_bindir},%{_libdir},%{_pkgconfigdir}} \ |
12ba957c | 594 | $RPM_BUILD_ROOT{%{py_sitedir},%{py_sitescriptdir}}/__pycache__ \ |
9416f74d | 595 | $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} \ |
12ba957c | 596 | $RPM_BUILD_ROOT{%{_infodir},%{_mandir}/man1} \ |
edb753bc AM |
597 | $RPM_BUILD_ROOT/etc/shrc.d \ |
598 | $RPM_BUILD_ROOT%{_prefix}/lib/debug/%{_libdir} | |
9416f74d AM |
599 | |
600 | %{__make} install \ | |
601 | DESTDIR=$RPM_BUILD_ROOT | |
602 | ||
603 | %if %{with info} | |
703efa4d | 604 | cp -p Doc/build/texinfo/python*info* $RPM_BUILD_ROOT%{_infodir} |
9416f74d AM |
605 | %endif |
606 | ||
9416f74d | 607 | install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} |
4449431f | 608 | cp -a Tools $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} |
9416f74d | 609 | |
ac600e00 AF |
610 | # make libpython3.so simply symlink to real lib |
611 | %{__rm} $RPM_BUILD_ROOT%{_libdir}/libpython3.so | |
612 | ln -s libpython%{py_abi}.so $RPM_BUILD_ROOT%{_libdir}/libpython3.so | |
613 | ||
edb753bc AM |
614 | # gdb helper that will end up in -debuginfo package |
615 | soname=$(ls -1d $RPM_BUILD_ROOT%{_libdir}/libpython%{py_abi}.so.*.* | sed -e "s#^$RPM_BUILD_ROOT##g") | |
616 | cp -a Tools/gdb/libpython.py "$RPM_BUILD_ROOT%{_prefix}/lib/debug/$soname-gdb.py" | |
617 | ||
9416f74d AM |
618 | # |
619 | # create several useful aliases, such as timeit.py, profile.py, pdb.py, smtpd.py | |
620 | # | |
621 | ||
622 | # for python devel tools | |
623 | for script in timeit profile pdb pstats; do | |
31f22d7c | 624 | echo "#alias ${script}%{py_ver}.py='python%{py_ver} -m ${script}'" |
24586eb0 | 625 | done > $RPM_BUILD_ROOT/etc/shrc.d/python%{py_ver}-devel.sh |
9416f74d | 626 | |
31f22d7c | 627 | echo "#alias pygettext%{py_ver}.py='pygettext%{py_ver}'" \ |
24586eb0 | 628 | >> $RPM_BUILD_ROOT/etc/shrc.d/python%{py_ver}-devel.sh |
9416f74d AM |
629 | |
630 | sed 's/=/ /' \ | |
24586eb0 AM |
631 | < $RPM_BUILD_ROOT/etc/shrc.d/python%{py_ver}-devel.sh \ |
632 | > $RPM_BUILD_ROOT/etc/shrc.d/python%{py_ver}-devel.csh | |
9416f74d AM |
633 | |
634 | # for python modules | |
635 | for script in smtpd webbrowser; do | |
31f22d7c | 636 | echo "#alias ${script}%{py_ver}.py='python%{py_ver} -m ${script}'" |
24586eb0 | 637 | done > $RPM_BUILD_ROOT/etc/shrc.d/python%{py_ver}-modules.sh |
9416f74d AM |
638 | |
639 | sed 's/=/ /' \ | |
24586eb0 AM |
640 | < $RPM_BUILD_ROOT/etc/shrc.d/python%{py_ver}-modules.sh \ |
641 | > $RPM_BUILD_ROOT/etc/shrc.d/python%{py_ver}-modules.csh | |
9416f74d AM |
642 | |
643 | # xgettext specific for Python code | |
644 | # | |
645 | # we will have two commands: pygettext.py (an alias) and pygettext; | |
646 | # this way there are no import (which is impossible now) conflicts and | |
647 | # pygettext.py is provided for compatibility | |
1254741f | 648 | install -p Tools/i18n/pygettext.py $RPM_BUILD_ROOT%{_bindir}/pygettext%{py_ver} |
24586eb0 | 649 | |
25e3a83c AM |
650 | # reindent python code |
651 | install -p Tools/scripts/reindent.py $RPM_BUILD_ROOT%{_bindir}/pyreindent%{py_ver} | |
652 | ||
9416f74d | 653 | # just to cut the noise, as they are not packaged (now) |
902c69ef | 654 | %{__rm} $RPM_BUILD_ROOT%{py_libdir}/ctypes/macholib/fetch_macholib* |
902c69ef JK |
655 | %{__rm} $RPM_BUILD_ROOT%{py_libdir}/idlelib/*.bat |
656 | %{__rm} $RPM_BUILD_ROOT%{py_libdir}/idlelib/*.pyw | |
4f91790c | 657 | %{__rm} $RPM_BUILD_ROOT%{py_libdir}/idlelib/help.html |
69cd33fe | 658 | %{__rm} $RPM_BUILD_ROOT%{py_libdir}/site-packages/README.txt |
1843c435 JK |
659 | |
660 | # currently provided by python-2to3, consider switching to this one | |
661 | %{__rm} $RPM_BUILD_ROOT%{_bindir}/2to3 | |
662 | ||
5d1aec43 | 663 | # that seems to be only an empty extension template, |
664 | # which seems to be built only {with tests} | |
91530447 | 665 | %{__rm} $RPM_BUILD_ROOT%{py_dyndir}/xxlimited*.*.so |
1843c435 | 666 | |
acd14a9e | 667 | # already in %%doc |
902c69ef | 668 | %{__rm} $RPM_BUILD_ROOT%{py_libdir}/LICENSE.txt |
9416f74d | 669 | |
80febf2a AM |
670 | %{__mv} $RPM_BUILD_ROOT%{py_incdir}/pyconfig.h $RPM_BUILD_ROOT%{py_libdir}/config-%{py_platform}/pyconfig.h |
671 | %{__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 | |
a033b415 | 672 | |
9416f74d AM |
673 | %clean |
674 | rm -rf $RPM_BUILD_ROOT | |
675 | ||
676 | %post libs -p /sbin/ldconfig | |
677 | %postun libs -p /sbin/ldconfig | |
678 | ||
e3852288 | 679 | %post doc-info -p /sbin/postshell |
a20bb9dc | 680 | -/usr/sbin/fix-info-dir -c %{_infodir} |
9416f74d | 681 | |
e3852288 | 682 | %postun doc-info -p /sbin/postshell |
a20bb9dc | 683 | -/usr/sbin/fix-info-dir -c %{_infodir} |
9416f74d AM |
684 | |
685 | %files | |
686 | %defattr(644,root,root,755) | |
24586eb0 | 687 | %attr(755,root,root) %{_bindir}/python%{py_ver} |
3e35963a | 688 | %if "%{py_ver}" != "%{py_abi}" |
c7fdbe10 | 689 | %attr(755,root,root) %{_bindir}/python%{py_abi} |
3e35963a | 690 | %endif |
306c0f2d | 691 | %attr(755,root,root) %{_bindir}/python3 |
91530447 | 692 | %{_mandir}/man1/python3*.1* |
c7fdbe10 JB |
693 | |
694 | %files libs | |
695 | %defattr(644,root,root,755) | |
696 | %doc LICENSE | |
697 | %attr(755,root,root) %{_libdir}/libpython%{py_abi}.so.*.* | |
698 | ||
002ac285 AM |
699 | %dir %{py_incdir} |
700 | %{py_incdir}/pyconfig.h | |
701 | ||
c7fdbe10 JB |
702 | %dir %{py_libdir} |
703 | %dir %{py_dyndir} | |
704 | %dir %{py_sitedir} | |
12ba957c | 705 | %dir %{py_sitedir}/__pycache__ |
902c69ef | 706 | %dir %{py_libdir}/__pycache__ |
c7fdbe10 JB |
707 | %dir %{py_scriptdir} |
708 | %dir %{py_sitescriptdir} | |
12ba957c | 709 | %dir %{py_sitescriptdir}/__pycache__ |
c7fdbe10 JB |
710 | |
711 | # shared modules required by python library | |
712 | %attr(755,root,root) %{py_dyndir}/_struct.cpython-*.so | |
713 | ||
714 | # modules required by python library | |
902c69ef JK |
715 | %{py_libdir}/_collections_abc.py |
716 | %{py_libdir}/_sitebuiltins.py | |
80febf2a | 717 | %{py_libdir}/_sysconfigdata_*.py |
902c69ef JK |
718 | %{py_libdir}/_weakrefset.py |
719 | %{py_libdir}/abc.py | |
720 | %{py_libdir}/bisect.py | |
721 | %{py_libdir}/codecs.py | |
722 | %{py_libdir}/copyreg.py | |
f3feeafe | 723 | %{py_libdir}/enum.py |
902c69ef JK |
724 | %{py_libdir}/functools.py |
725 | %{py_libdir}/genericpath.py | |
726 | %{py_libdir}/heapq.py | |
727 | %{py_libdir}/keyword.py | |
728 | %{py_libdir}/linecache.py | |
729 | %{py_libdir}/locale.py | |
730 | %{py_libdir}/io.py | |
32d9814d | 731 | %{py_libdir}/operator.py |
902c69ef JK |
732 | %{py_libdir}/posixpath.py |
733 | %{py_libdir}/re.py | |
734 | %{py_libdir}/reprlib.py | |
735 | %{py_libdir}/site.py | |
736 | %{py_libdir}/sre_*.py | |
737 | %{py_libdir}/stat.py | |
738 | %{py_libdir}/sysconfig.py | |
739 | %{py_libdir}/token.py | |
740 | %{py_libdir}/tokenize.py | |
741 | %{py_libdir}/traceback.py | |
742 | %{py_libdir}/weakref.py | |
743 | %{py_libdir}/os.py | |
c7fdbe10 | 744 | # needed by the dynamic sys.lib patch |
902c69ef JK |
745 | %{py_libdir}/types.py |
746 | %{py_libdir}/__pycache__/_sitebuiltins.cpython-*.py[co] | |
80febf2a | 747 | %{py_libdir}/__pycache__/_sysconfigdata_*.cpython-*.py[co] |
902c69ef JK |
748 | %{py_libdir}/__pycache__/_weakrefset.cpython-*.py[co] |
749 | %{py_libdir}/__pycache__/abc.cpython-*.py[co] | |
750 | %{py_libdir}/__pycache__/bisect.cpython-*.py[co] | |
751 | %{py_libdir}/__pycache__/codecs.cpython-*.py[co] | |
752 | %{py_libdir}/__pycache__/_collections_abc.cpython-*.py[co] | |
753 | %{py_libdir}/__pycache__/copyreg.cpython-*.py[co] | |
f3feeafe | 754 | %{py_libdir}/__pycache__/enum.cpython-*.py[co] |
902c69ef JK |
755 | %{py_libdir}/__pycache__/functools.cpython-*.py[co] |
756 | %{py_libdir}/__pycache__/genericpath.cpython-*.py[co] | |
757 | %{py_libdir}/__pycache__/heapq.cpython-*.py[co] | |
758 | %{py_libdir}/__pycache__/keyword.cpython-*.py[co] | |
759 | %{py_libdir}/__pycache__/linecache.cpython-*.py[co] | |
760 | %{py_libdir}/__pycache__/locale.cpython-*.py[co] | |
761 | %{py_libdir}/__pycache__/io.cpython-*.py[co] | |
32d9814d | 762 | %{py_libdir}/__pycache__/operator.cpython-*.py[co] |
902c69ef JK |
763 | %{py_libdir}/__pycache__/posixpath.cpython-*.py[co] |
764 | %{py_libdir}/__pycache__/re.cpython-*.py[co] | |
765 | %{py_libdir}/__pycache__/reprlib.cpython-*.py[co] | |
766 | %{py_libdir}/__pycache__/site.cpython-*.py[co] | |
767 | %{py_libdir}/__pycache__/sre_*.cpython-*.py[co] | |
768 | %{py_libdir}/__pycache__/stat.cpython-*.py[co] | |
769 | %{py_libdir}/__pycache__/sysconfig.cpython-*.py[co] | |
770 | %{py_libdir}/__pycache__/token.cpython-*.py[co] | |
771 | %{py_libdir}/__pycache__/tokenize.cpython-*.py[co] | |
772 | %{py_libdir}/__pycache__/traceback.cpython-*.py[co] | |
773 | %{py_libdir}/__pycache__/weakref.cpython-*.py[co] | |
774 | %{py_libdir}/__pycache__/os.cpython-*.py[co] | |
775 | %{py_libdir}/__pycache__/types.cpython-*.py[co] | |
776 | ||
777 | %{py_libdir}/collections | |
dfcf7c51 | 778 | |
c7fdbe10 | 779 | # encodings required by python library |
902c69ef JK |
780 | %dir %{py_libdir}/encodings |
781 | %{py_libdir}/encodings/__pycache__ | |
782 | %{py_libdir}/encodings/*.py | |
9416f74d | 783 | |
80febf2a AM |
784 | %dir %{py_libdir}/config-%{py_platform} |
785 | %{py_libdir}/config-%{py_platform}/Makefile | |
786 | %{py_libdir}/config-%{py_platform}/Setup | |
80febf2a AM |
787 | %{py_libdir}/config-%{py_platform}/Setup.local |
788 | %{py_libdir}/config-%{py_platform}/pyconfig.h | |
d91cfa38 | 789 | |
9416f74d AM |
790 | %files modules |
791 | %defattr(644,root,root,755) | |
40197233 | 792 | %config(noreplace) %verify(not md5 mtime size) /etc/shrc.d/python*-modules* |
902c69ef JK |
793 | %{py_libdir}/__future__.py |
794 | %{py_libdir}/__phello__.foo.py | |
f31061ec | 795 | %{py_libdir}/_aix_support.py |
f31061ec | 796 | %{py_libdir}/_bootsubprocess.py |
902c69ef JK |
797 | %{py_libdir}/_compat_pickle.py |
798 | %{py_libdir}/_compression.py | |
902c69ef JK |
799 | %{py_libdir}/_markupbase.py |
800 | %{py_libdir}/_osx_support.py | |
801 | %{py_libdir}/_pydecimal.py | |
b592c0a2 | 802 | %{py_libdir}/_py_abc.py |
902c69ef JK |
803 | %{py_libdir}/_pyio.py |
804 | %{py_libdir}/_strptime.py | |
805 | %{py_libdir}/_threading_local.py | |
806 | %{py_libdir}/aifc.py | |
807 | %{py_libdir}/antigravity.py | |
808 | %{py_libdir}/argparse.py | |
809 | %{py_libdir}/ast.py | |
810 | %{py_libdir}/asynchat.py | |
811 | %{py_libdir}/asyncore.py | |
812 | %{py_libdir}/base64.py | |
813 | %{py_libdir}/bdb.py | |
814 | %{py_libdir}/binhex.py | |
815 | %{py_libdir}/bz2.py | |
816 | %{py_libdir}/cProfile.py | |
817 | %{py_libdir}/calendar.py | |
818 | %{py_libdir}/cgi.py | |
819 | %{py_libdir}/cgitb.py | |
820 | %{py_libdir}/chunk.py | |
821 | %{py_libdir}/cmd.py | |
822 | %{py_libdir}/code.py | |
823 | %{py_libdir}/codeop.py | |
824 | %{py_libdir}/colorsys.py | |
825 | %{py_libdir}/compileall.py | |
826 | %{py_libdir}/configparser.py | |
827 | %{py_libdir}/contextlib.py | |
b592c0a2 | 828 | %{py_libdir}/contextvars.py |
902c69ef JK |
829 | %{py_libdir}/copy.py |
830 | %{py_libdir}/crypt.py | |
831 | %{py_libdir}/csv.py | |
b592c0a2 | 832 | %{py_libdir}/dataclasses.py |
902c69ef JK |
833 | %{py_libdir}/datetime.py |
834 | %{py_libdir}/decimal.py | |
835 | %{py_libdir}/difflib.py | |
836 | %{py_libdir}/dis.py | |
837 | %{py_libdir}/doctest.py | |
902c69ef JK |
838 | %{py_libdir}/filecmp.py |
839 | %{py_libdir}/fileinput.py | |
840 | %{py_libdir}/fnmatch.py | |
902c69ef JK |
841 | %{py_libdir}/fractions.py |
842 | %{py_libdir}/ftplib.py | |
843 | %{py_libdir}/getopt.py | |
844 | %{py_libdir}/getpass.py | |
845 | %{py_libdir}/gettext.py | |
846 | %{py_libdir}/glob.py | |
f31061ec | 847 | %{py_libdir}/graphlib.py |
902c69ef JK |
848 | %{py_libdir}/gzip.py |
849 | %{py_libdir}/hashlib.py | |
850 | %{py_libdir}/hmac.py | |
851 | %{py_libdir}/imaplib.py | |
852 | %{py_libdir}/imghdr.py | |
853 | %{py_libdir}/imp.py | |
854 | %{py_libdir}/inspect.py | |
855 | %{py_libdir}/ipaddress.py | |
856 | %{py_libdir}/lzma.py | |
902c69ef JK |
857 | %{py_libdir}/mailbox.py |
858 | %{py_libdir}/mailcap.py | |
859 | %{py_libdir}/mimetypes.py | |
860 | %{py_libdir}/modulefinder.py | |
861 | %{py_libdir}/netrc.py | |
862 | %{py_libdir}/nntplib.py | |
863 | %{py_libdir}/ntpath.py | |
864 | %{py_libdir}/nturl2path.py | |
865 | %{py_libdir}/numbers.py | |
866 | %{py_libdir}/opcode.py | |
902c69ef JK |
867 | %{py_libdir}/optparse.py |
868 | %{py_libdir}/pathlib.py | |
869 | %{py_libdir}/pickle.py | |
870 | %{py_libdir}/pickletools.py | |
871 | %{py_libdir}/pipes.py | |
872 | %{py_libdir}/pkgutil.py | |
873 | %{py_libdir}/platform.py | |
874 | %{py_libdir}/plistlib.py | |
875 | %{py_libdir}/poplib.py | |
876 | %{py_libdir}/pprint.py | |
877 | %{py_libdir}/pty.py | |
878 | %{py_libdir}/py_compile.py | |
879 | %{py_libdir}/pyclbr.py | |
880 | %{py_libdir}/queue.py | |
881 | %{py_libdir}/quopri.py | |
882 | %{py_libdir}/random.py | |
883 | %{py_libdir}/rlcompleter.py | |
884 | %{py_libdir}/runpy.py | |
80febf2a | 885 | %{py_libdir}/secrets.py |
902c69ef JK |
886 | %{py_libdir}/signal.py |
887 | %{py_libdir}/sched.py | |
888 | %{py_libdir}/selectors.py | |
889 | %{py_libdir}/shelve.py | |
890 | %{py_libdir}/shlex.py | |
891 | %{py_libdir}/shutil.py | |
892 | %{py_libdir}/smtpd.py | |
893 | %{py_libdir}/smtplib.py | |
894 | %{py_libdir}/sndhdr.py | |
895 | %{py_libdir}/socket.py | |
896 | %{py_libdir}/socketserver.py | |
897 | %{py_libdir}/ssl.py | |
898 | %{py_libdir}/statistics.py | |
899 | %{py_libdir}/string.py | |
900 | %{py_libdir}/stringprep.py | |
901 | %{py_libdir}/struct.py | |
902 | %{py_libdir}/subprocess.py | |
903 | %{py_libdir}/sunau.py | |
902c69ef JK |
904 | %{py_libdir}/symtable.py |
905 | %{py_libdir}/tabnanny.py | |
906 | %{py_libdir}/tarfile.py | |
907 | %{py_libdir}/telnetlib.py | |
908 | %{py_libdir}/tempfile.py | |
909 | %{py_libdir}/textwrap.py | |
910 | %{py_libdir}/this.py | |
911 | %{py_libdir}/threading.py | |
912 | %{py_libdir}/trace.py | |
913 | %{py_libdir}/tracemalloc.py | |
914 | %{py_libdir}/tty.py | |
915 | %{py_libdir}/turtle.py | |
916 | %{py_libdir}/typing.py | |
917 | %{py_libdir}/uu.py | |
918 | %{py_libdir}/uuid.py | |
919 | %{py_libdir}/warnings.py | |
920 | %{py_libdir}/wave.py | |
921 | %{py_libdir}/webbrowser.py | |
922 | %{py_libdir}/xdrlib.py | |
923 | %{py_libdir}/zipapp.py | |
924 | %{py_libdir}/zipfile.py | |
3e35963a | 925 | %{py_libdir}/zipimport.py |
902c69ef JK |
926 | %{py_libdir}/__pycache__/__future__.cpython-*.py[co] |
927 | %{py_libdir}/__pycache__/__phello__.foo.cpython-*.py[co] | |
f31061ec | 928 | %{py_libdir}/__pycache__/_aix_support.cpython-*.py[co] |
f31061ec | 929 | %{py_libdir}/__pycache__/_bootsubprocess.cpython-*.py[co] |
902c69ef JK |
930 | %{py_libdir}/__pycache__/_compat_pickle.cpython-*.py[co] |
931 | %{py_libdir}/__pycache__/_compression.cpython-*.py[co] | |
902c69ef JK |
932 | %{py_libdir}/__pycache__/_markupbase.cpython-*.py[co] |
933 | %{py_libdir}/__pycache__/_osx_support.cpython-*.py[co] | |
934 | %{py_libdir}/__pycache__/_pydecimal.cpython-*.py[co] | |
b592c0a2 | 935 | %{py_libdir}/__pycache__/_py_abc.cpython-*.py[co] |
902c69ef JK |
936 | %{py_libdir}/__pycache__/_pyio.cpython-*.py[co] |
937 | %{py_libdir}/__pycache__/_strptime.cpython-*.py[co] | |
938 | %{py_libdir}/__pycache__/_threading_local.cpython-*.py[co] | |
939 | %{py_libdir}/__pycache__/aifc.cpython-*.py[co] | |
940 | %{py_libdir}/__pycache__/antigravity.cpython-*.py[co] | |
941 | %{py_libdir}/__pycache__/argparse.cpython-*.py[co] | |
942 | %{py_libdir}/__pycache__/ast.cpython-*.py[co] | |
943 | %{py_libdir}/__pycache__/asynchat.cpython-*.py[co] | |
944 | %{py_libdir}/__pycache__/asyncore.cpython-*.py[co] | |
945 | %{py_libdir}/__pycache__/base64.cpython-*.py[co] | |
946 | %{py_libdir}/__pycache__/bdb.cpython-*.py[co] | |
947 | %{py_libdir}/__pycache__/binhex.cpython-*.py[co] | |
948 | %{py_libdir}/__pycache__/bz2.cpython-*.py[co] | |
949 | %{py_libdir}/__pycache__/cProfile.cpython-*.py[co] | |
950 | %{py_libdir}/__pycache__/calendar.cpython-*.py[co] | |
951 | %{py_libdir}/__pycache__/cgi.cpython-*.py[co] | |
952 | %{py_libdir}/__pycache__/cgitb.cpython-*.py[co] | |
953 | %{py_libdir}/__pycache__/chunk.cpython-*.py[co] | |
954 | %{py_libdir}/__pycache__/cmd.cpython-*.py[co] | |
b592c0a2 | 955 | %{py_libdir}/__pycache__/contextvars.cpython-*.py[co] |
902c69ef JK |
956 | %{py_libdir}/__pycache__/code.cpython-*.py[co] |
957 | %{py_libdir}/__pycache__/codeop.cpython-*.py[co] | |
958 | %{py_libdir}/__pycache__/colorsys.cpython-*.py[co] | |
959 | %{py_libdir}/__pycache__/compileall.cpython-*.py[co] | |
960 | %{py_libdir}/__pycache__/configparser.cpython-*.py[co] | |
961 | %{py_libdir}/__pycache__/contextlib.cpython-*.py[co] | |
962 | %{py_libdir}/__pycache__/copy.cpython-*.py[co] | |
963 | %{py_libdir}/__pycache__/crypt.cpython-*.py[co] | |
964 | %{py_libdir}/__pycache__/csv.cpython-*.py[co] | |
b592c0a2 | 965 | %{py_libdir}/__pycache__/dataclasses.cpython-*.py[co] |
902c69ef JK |
966 | %{py_libdir}/__pycache__/datetime.cpython-*.py[co] |
967 | %{py_libdir}/__pycache__/decimal.cpython-*.py[co] | |
968 | %{py_libdir}/__pycache__/difflib.cpython-*.py[co] | |
969 | %{py_libdir}/__pycache__/dis.cpython-*.py[co] | |
970 | %{py_libdir}/__pycache__/doctest.cpython-*.py[co] | |
902c69ef JK |
971 | %{py_libdir}/__pycache__/filecmp.cpython-*.py[co] |
972 | %{py_libdir}/__pycache__/fileinput.cpython-*.py[co] | |
973 | %{py_libdir}/__pycache__/fnmatch.cpython-*.py[co] | |
902c69ef JK |
974 | %{py_libdir}/__pycache__/fractions.cpython-*.py[co] |
975 | %{py_libdir}/__pycache__/ftplib.cpython-*.py[co] | |
976 | %{py_libdir}/__pycache__/getopt.cpython-*.py[co] | |
977 | %{py_libdir}/__pycache__/getpass.cpython-*.py[co] | |
978 | %{py_libdir}/__pycache__/gettext.cpython-*.py[co] | |
979 | %{py_libdir}/__pycache__/glob.cpython-*.py[co] | |
f31061ec | 980 | %{py_libdir}/__pycache__/graphlib.cpython-*.py[co] |
902c69ef JK |
981 | %{py_libdir}/__pycache__/gzip.cpython-*.py[co] |
982 | %{py_libdir}/__pycache__/hashlib.cpython-*.py[co] | |
983 | %{py_libdir}/__pycache__/hmac.cpython-*.py[co] | |
984 | %{py_libdir}/__pycache__/imaplib.cpython-*.py[co] | |
985 | %{py_libdir}/__pycache__/imghdr.cpython-*.py[co] | |
986 | %{py_libdir}/__pycache__/imp.cpython-*.py[co] | |
987 | %{py_libdir}/__pycache__/inspect.cpython-*.py[co] | |
988 | %{py_libdir}/__pycache__/ipaddress.cpython-*.py[co] | |
989 | %{py_libdir}/__pycache__/lzma.cpython-*.py[co] | |
902c69ef JK |
990 | %{py_libdir}/__pycache__/mailbox.cpython-*.py[co] |
991 | %{py_libdir}/__pycache__/mailcap.cpython-*.py[co] | |
992 | %{py_libdir}/__pycache__/mimetypes.cpython-*.py[co] | |
993 | %{py_libdir}/__pycache__/modulefinder.cpython-*.py[co] | |
994 | %{py_libdir}/__pycache__/netrc.cpython-*.py[co] | |
995 | %{py_libdir}/__pycache__/nntplib.cpython-*.py[co] | |
996 | %{py_libdir}/__pycache__/ntpath.cpython-*.py[co] | |
997 | %{py_libdir}/__pycache__/nturl2path.cpython-*.py[co] | |
998 | %{py_libdir}/__pycache__/numbers.cpython-*.py[co] | |
999 | %{py_libdir}/__pycache__/opcode.cpython-*.py[co] | |
902c69ef JK |
1000 | %{py_libdir}/__pycache__/optparse.cpython-*.py[co] |
1001 | %{py_libdir}/__pycache__/pathlib.cpython-*.py[co] | |
1002 | %{py_libdir}/__pycache__/pickle.cpython-*.py[co] | |
1003 | %{py_libdir}/__pycache__/pickletools.cpython-*.py[co] | |
1004 | %{py_libdir}/__pycache__/pipes.cpython-*.py[co] | |
1005 | %{py_libdir}/__pycache__/pkgutil.cpython-*.py[co] | |
1006 | %{py_libdir}/__pycache__/platform.cpython-*.py[co] | |
1007 | %{py_libdir}/__pycache__/plistlib.cpython-*.py[co] | |
1008 | %{py_libdir}/__pycache__/poplib.cpython-*.py[co] | |
1009 | %{py_libdir}/__pycache__/pprint.cpython-*.py[co] | |
1010 | %{py_libdir}/__pycache__/pty.cpython-*.py[co] | |
1011 | %{py_libdir}/__pycache__/py_compile.cpython-*.py[co] | |
1012 | %{py_libdir}/__pycache__/pyclbr.cpython-*.py[co] | |
1013 | %{py_libdir}/__pycache__/queue.cpython-*.py[co] | |
1014 | %{py_libdir}/__pycache__/quopri.cpython-*.py[co] | |
1015 | %{py_libdir}/__pycache__/random.cpython-*.py[co] | |
1016 | %{py_libdir}/__pycache__/rlcompleter.cpython-*.py[co] | |
1017 | %{py_libdir}/__pycache__/runpy.cpython-*.py[co] | |
1018 | %{py_libdir}/__pycache__/sched.cpython-*.py[co] | |
80febf2a | 1019 | %{py_libdir}/__pycache__/secrets.cpython-*.py[co] |
902c69ef JK |
1020 | %{py_libdir}/__pycache__/selectors.cpython-*.py[co] |
1021 | %{py_libdir}/__pycache__/shelve.cpython-*.py[co] | |
1022 | %{py_libdir}/__pycache__/shlex.cpython-*.py[co] | |
1023 | %{py_libdir}/__pycache__/shutil.cpython-*.py[co] | |
1024 | %{py_libdir}/__pycache__/signal.cpython-*.py[co] | |
1025 | %{py_libdir}/__pycache__/smtpd.cpython-*.py[co] | |
1026 | %{py_libdir}/__pycache__/smtplib.cpython-*.py[co] | |
1027 | %{py_libdir}/__pycache__/sndhdr.cpython-*.py[co] | |
1028 | %{py_libdir}/__pycache__/socket.cpython-*.py[co] | |
1029 | %{py_libdir}/__pycache__/socketserver.cpython-*.py[co] | |
1030 | %{py_libdir}/__pycache__/ssl.cpython-*.py[co] | |
1031 | %{py_libdir}/__pycache__/statistics.cpython-*.py[co] | |
1032 | %{py_libdir}/__pycache__/string.cpython-*.py[co] | |
1033 | %{py_libdir}/__pycache__/stringprep.cpython-*.py[co] | |
1034 | %{py_libdir}/__pycache__/struct.cpython-*.py[co] | |
1035 | %{py_libdir}/__pycache__/subprocess.cpython-*.py[co] | |
1036 | %{py_libdir}/__pycache__/sunau.cpython-*.py[co] | |
902c69ef JK |
1037 | %{py_libdir}/__pycache__/symtable.cpython-*.py[co] |
1038 | %{py_libdir}/__pycache__/tabnanny.cpython-*.py[co] | |
1039 | %{py_libdir}/__pycache__/tarfile.cpython-*.py[co] | |
1040 | %{py_libdir}/__pycache__/telnetlib.cpython-*.py[co] | |
1041 | %{py_libdir}/__pycache__/tempfile.cpython-*.py[co] | |
1042 | %{py_libdir}/__pycache__/textwrap.cpython-*.py[co] | |
1043 | %{py_libdir}/__pycache__/this.cpython-*.py[co] | |
1044 | %{py_libdir}/__pycache__/threading.cpython-*.py[co] | |
1045 | %{py_libdir}/__pycache__/trace.cpython-*.py[co] | |
1046 | %{py_libdir}/__pycache__/tracemalloc.cpython-*.py[co] | |
1047 | %{py_libdir}/__pycache__/tty.cpython-*.py[co] | |
1048 | %{py_libdir}/__pycache__/turtle.cpython-*.py[co] | |
1049 | %{py_libdir}/__pycache__/typing.cpython-*.py[co] | |
1050 | %{py_libdir}/__pycache__/uu.cpython-*.py[co] | |
1051 | %{py_libdir}/__pycache__/uuid.cpython-*.py[co] | |
1052 | %{py_libdir}/__pycache__/warnings.cpython-*.py[co] | |
1053 | %{py_libdir}/__pycache__/wave.cpython-*.py[co] | |
1054 | %{py_libdir}/__pycache__/webbrowser.cpython-*.py[co] | |
1055 | %{py_libdir}/__pycache__/xdrlib.cpython-*.py[co] | |
1056 | %{py_libdir}/__pycache__/zipapp.cpython-*.py[co] | |
1057 | %{py_libdir}/__pycache__/zipfile.cpython-*.py[co] | |
3e35963a | 1058 | %{py_libdir}/__pycache__/zipimport.cpython-*.py[co] |
9416f74d AM |
1059 | |
1060 | # | |
1061 | # list .so modules to be sure that all of them are built | |
1062 | # | |
1063 | ||
80febf2a | 1064 | %attr(755,root,root) %{py_dyndir}/_asyncio.cpython-*.so |
c7fdbe10 | 1065 | %attr(755,root,root) %{py_dyndir}/_bisect.cpython-*.so |
80febf2a | 1066 | %attr(755,root,root) %{py_dyndir}/_blake2.cpython-*.so |
dfcf7c51 | 1067 | %attr(755,root,root) %{py_dyndir}/_bz2.cpython-*.so |
c7fdbe10 JB |
1068 | %attr(755,root,root) %{py_dyndir}/_codecs_cn.cpython-*.so |
1069 | %attr(755,root,root) %{py_dyndir}/_codecs_hk.cpython-*.so | |
1070 | %attr(755,root,root) %{py_dyndir}/_codecs_iso2022.cpython-*.so | |
1071 | %attr(755,root,root) %{py_dyndir}/_codecs_jp.cpython-*.so | |
1072 | %attr(755,root,root) %{py_dyndir}/_codecs_kr.cpython-*.so | |
1073 | %attr(755,root,root) %{py_dyndir}/_codecs_tw.cpython-*.so | |
b592c0a2 | 1074 | %attr(755,root,root) %{py_dyndir}/_contextvars.cpython-*.so |
dfcf7c51 | 1075 | %attr(755,root,root) %{py_dyndir}/_crypt.cpython-*.so |
c7fdbe10 JB |
1076 | %attr(755,root,root) %{py_dyndir}/_csv.cpython-*.so |
1077 | %attr(755,root,root) %{py_dyndir}/_ctypes*.cpython-*.so | |
1078 | %attr(755,root,root) %{py_dyndir}/_curses_panel.cpython-*.so | |
1079 | %attr(755,root,root) %{py_dyndir}/_curses.cpython-*.so | |
1080 | %attr(755,root,root) %{py_dyndir}/_datetime.cpython-*.so | |
9416f74d | 1081 | %ifnarch sparc64 |
c7fdbe10 | 1082 | %attr(755,root,root) %{py_dyndir}/_dbm.cpython-*.so |
9416f74d | 1083 | %endif |
dfcf7c51 | 1084 | %attr(755,root,root) %{py_dyndir}/_decimal.cpython-*.so |
c7fdbe10 JB |
1085 | %attr(755,root,root) %{py_dyndir}/_elementtree.cpython-*.so |
1086 | %attr(755,root,root) %{py_dyndir}/_gdbm.cpython-*.so | |
1087 | %attr(755,root,root) %{py_dyndir}/_hashlib.cpython-*.so | |
1088 | %attr(755,root,root) %{py_dyndir}/_heapq.cpython-*.so | |
1089 | %attr(755,root,root) %{py_dyndir}/_json.cpython-*.so | |
1090 | %attr(755,root,root) %{py_dyndir}/_lsprof.cpython-*.so | |
dfcf7c51 | 1091 | %attr(755,root,root) %{py_dyndir}/_lzma.cpython-*.so |
38874ce8 | 1092 | %attr(755,root,root) %{py_dyndir}/_md5.cpython-*.so |
c7fdbe10 JB |
1093 | %attr(755,root,root) %{py_dyndir}/_multibytecodec.cpython-*.so |
1094 | %attr(755,root,root) %{py_dyndir}/_multiprocessing.cpython-*.so | |
38874ce8 | 1095 | %attr(755,root,root) %{py_dyndir}/_opcode.cpython-*.so |
c7fdbe10 | 1096 | %attr(755,root,root) %{py_dyndir}/_pickle.cpython-*.so |
3e35963a | 1097 | %attr(755,root,root) %{py_dyndir}/_posixshmem.cpython-*.so |
dceb7408 | 1098 | %attr(755,root,root) %{py_dyndir}/_posixsubprocess.cpython-*.so |
b592c0a2 | 1099 | %attr(755,root,root) %{py_dyndir}/_queue.cpython-*.so |
c7fdbe10 | 1100 | %attr(755,root,root) %{py_dyndir}/_random.cpython-*.so |
38874ce8 | 1101 | %attr(755,root,root) %{py_dyndir}/_sha1.cpython-*.so |
80febf2a | 1102 | %attr(755,root,root) %{py_dyndir}/_sha3.cpython-*.so |
c7fdbe10 JB |
1103 | %attr(755,root,root) %{py_dyndir}/_socket.cpython-*.so |
1104 | %attr(755,root,root) %{py_dyndir}/_ssl.cpython-*.so | |
3e35963a | 1105 | %attr(755,root,root) %{py_dyndir}/_statistics.cpython-*.so |
dfcf7c51 | 1106 | %attr(755,root,root) %{py_dyndir}/_testbuffer.cpython-*.so |
c7fdbe10 | 1107 | %attr(755,root,root) %{py_dyndir}/_testcapi.cpython-*.so |
3e35963a | 1108 | %attr(755,root,root) %{py_dyndir}/_testinternalcapi.cpython-*.so |
38874ce8 | 1109 | %attr(755,root,root) %{py_dyndir}/_testimportmultiple.cpython-*.so |
ac674191 | 1110 | %attr(755,root,root) %{py_dyndir}/_testmultiphase.cpython-*.so |
b592c0a2 | 1111 | %attr(755,root,root) %{py_dyndir}/_uuid.cpython-*.so |
3e35963a | 1112 | %attr(755,root,root) %{py_dyndir}/_xxsubinterpreters.cpython-*.so |
b592c0a2 | 1113 | %attr(755,root,root) %{py_dyndir}/_xxtestfuzz.cpython-*.so |
b6994eba ER |
1114 | |
1115 | # for openssl < 0.9.8 package sha256 and sha512 modules | |
38874ce8 | 1116 | %if "%{pld_release}" != "ac" |
b6994eba ER |
1117 | %attr(755,root,root) %{py_dyndir}/_sha256.cpython-*.so |
1118 | %attr(755,root,root) %{py_dyndir}/_sha512.cpython-*.so | |
1119 | %endif | |
1120 | ||
c7fdbe10 | 1121 | %attr(755,root,root) %{py_dyndir}/array.cpython-*.so |
dceb7408 | 1122 | %attr(755,root,root) %{py_dyndir}/audioop.cpython-*.so |
c7fdbe10 | 1123 | %attr(755,root,root) %{py_dyndir}/binascii.cpython-*.so |
c7fdbe10 | 1124 | %attr(755,root,root) %{py_dyndir}/cmath.cpython-*.so |
c7fdbe10 JB |
1125 | %attr(755,root,root) %{py_dyndir}/fcntl.cpython-*.so |
1126 | %attr(755,root,root) %{py_dyndir}/grp.cpython-*.so | |
1127 | %attr(755,root,root) %{py_dyndir}/math.cpython-*.so | |
1128 | %attr(755,root,root) %{py_dyndir}/mmap.cpython-*.so | |
1129 | %attr(755,root,root) %{py_dyndir}/nis.cpython-*.so | |
1130 | %attr(755,root,root) %{py_dyndir}/ossaudiodev.cpython-*.so | |
c7fdbe10 JB |
1131 | %attr(755,root,root) %{py_dyndir}/pyexpat.cpython-*.so |
1132 | %attr(755,root,root) %{py_dyndir}/readline.cpython-*.so | |
1133 | %attr(755,root,root) %{py_dyndir}/resource.cpython-*.so | |
1134 | %attr(755,root,root) %{py_dyndir}/select.cpython-*.so | |
1135 | %attr(755,root,root) %{py_dyndir}/syslog.cpython-*.so | |
1136 | %attr(755,root,root) %{py_dyndir}/termios.cpython-*.so | |
c7fdbe10 JB |
1137 | %attr(755,root,root) %{py_dyndir}/spwd.cpython-*.so |
1138 | %attr(755,root,root) %{py_dyndir}/unicodedata.cpython-*.so | |
1139 | %attr(755,root,root) %{py_dyndir}/zlib.cpython-*.so | |
9416f74d | 1140 | |
902c69ef JK |
1141 | %dir %{py_libdir}/asyncio |
1142 | %{py_libdir}/asyncio/__pycache__ | |
1143 | %{py_libdir}/asyncio/*.py | |
1144 | ||
1145 | %{py_libdir}/concurrent | |
1146 | ||
1147 | %dir %{py_libdir}/ctypes | |
1148 | %dir %{py_libdir}/ctypes/macholib | |
1149 | %{py_libdir}/ctypes/__pycache__ | |
1150 | %{py_libdir}/ctypes/macholib/__pycache__ | |
1151 | ||
1152 | %{py_libdir}/ctypes/*.py | |
1153 | %{py_libdir}/ctypes/macholib/*.py | |
1154 | %doc %{py_libdir}/ctypes/macholib/README.ctypes | |
1155 | ||
1156 | %dir %{py_libdir}/curses | |
1157 | %{py_libdir}/curses/__pycache__ | |
1158 | %{py_libdir}/curses/*.py | |
1159 | ||
1160 | %dir %{py_libdir}/dbm | |
1161 | %{py_libdir}/dbm/__pycache__ | |
1162 | %{py_libdir}/dbm/*.py | |
1163 | ||
1164 | %dir %{py_libdir}/distutils | |
1165 | %dir %{py_libdir}/distutils/command | |
1166 | %doc %{py_libdir}/distutils/README | |
1167 | %{py_libdir}/distutils/__pycache__ | |
1168 | %{py_libdir}/distutils/command/__pycache__ | |
1169 | %{py_libdir}/distutils/*.py | |
1170 | %{py_libdir}/distutils/command/*.py | |
1171 | %{py_libdir}/distutils/command/command_template | |
1172 | ||
1173 | %dir %{py_libdir}/email | |
1174 | %dir %{py_libdir}/email/mime | |
1175 | %{py_libdir}/email/__pycache__ | |
1176 | %{py_libdir}/email/mime/__pycache__ | |
1177 | %{py_libdir}/email/architecture.rst | |
1178 | %{py_libdir}/email/*.py | |
1179 | %{py_libdir}/email/mime/*.py | |
1180 | ||
1181 | %dir %{py_libdir}/ensurepip | |
1182 | %{py_libdir}/ensurepip/__pycache__ | |
1183 | %{py_libdir}/ensurepip/*.py | |
1184 | %{py_libdir}/ensurepip/_bundled | |
1185 | ||
1186 | %dir %{py_libdir}/html | |
1187 | %{py_libdir}/html/*.py | |
1188 | %{py_libdir}/html/__pycache__ | |
1189 | ||
1190 | %dir %{py_libdir}/http | |
1191 | %{py_libdir}/http/__pycache__ | |
1192 | %{py_libdir}/http/*.py | |
1193 | ||
1194 | %dir %{py_libdir}/idlelib | |
1195 | ||
1196 | %dir %{py_libdir}/importlib | |
1197 | %{py_libdir}/importlib/__pycache__ | |
1198 | %{py_libdir}/importlib/*.py | |
91530447 JR |
1199 | %dir %{py_libdir}/importlib/metadata |
1200 | %{py_libdir}/importlib/metadata/__pycache__ | |
1201 | %{py_libdir}/importlib/metadata/*.py | |
902c69ef JK |
1202 | |
1203 | %dir %{py_libdir}/json | |
1204 | %{py_libdir}/json/__pycache__ | |
1205 | %{py_libdir}/json/*.py | |
1206 | ||
1207 | %dir %{py_libdir}/logging | |
1208 | %{py_libdir}/logging/__pycache__ | |
1209 | %{py_libdir}/logging/*.py | |
1210 | ||
1211 | %dir %{py_libdir}/multiprocessing | |
1212 | %{py_libdir}/multiprocessing/__pycache__ | |
1213 | %{py_libdir}/multiprocessing/*.py | |
1214 | %dir %{py_libdir}/multiprocessing/dummy | |
1215 | %{py_libdir}/multiprocessing/dummy/__pycache__ | |
1216 | %{py_libdir}/multiprocessing/dummy/*.py | |
1217 | ||
1218 | %{py_libdir}/turtledemo | |
1219 | ||
1220 | %dir %{py_libdir}/unittest | |
1221 | %{py_libdir}/unittest/__pycache__ | |
1222 | %{py_libdir}/unittest/*.py | |
1223 | ||
1224 | %dir %{py_libdir}/urllib | |
1225 | %{py_libdir}/urllib/__pycache__ | |
1226 | %{py_libdir}/urllib/*.py | |
1227 | ||
1228 | %dir %{py_libdir}/venv | |
1229 | %{py_libdir}/venv/__pycache__ | |
1230 | %{py_libdir}/venv/*.py | |
1231 | %dir %{py_libdir}/venv/scripts | |
69cd33fe | 1232 | %dir %{py_libdir}/venv/scripts/common |
3e35963a | 1233 | %{py_libdir}/venv/scripts/common/Activate.ps1 |
69cd33fe | 1234 | %{py_libdir}/venv/scripts/common/activate |
902c69ef | 1235 | %dir %{py_libdir}/venv/scripts/posix |
902c69ef JK |
1236 | %{py_libdir}/venv/scripts/posix/activate.csh |
1237 | %{py_libdir}/venv/scripts/posix/activate.fish | |
1238 | ||
1239 | %dir %{py_libdir}/wsgiref | |
1240 | %{py_libdir}/wsgiref/__pycache__ | |
1241 | %{py_libdir}/wsgiref/*.py | |
1242 | ||
1243 | %dir %{py_libdir}/xml | |
1244 | %dir %{py_libdir}/xml/dom | |
1245 | %dir %{py_libdir}/xml/etree | |
1246 | %dir %{py_libdir}/xml/parsers | |
1247 | %dir %{py_libdir}/xml/sax | |
1248 | %{py_libdir}/xml/__pycache__ | |
1249 | %{py_libdir}/xml/dom/__pycache__ | |
1250 | %{py_libdir}/xml/etree/__pycache__ | |
1251 | %{py_libdir}/xml/parsers/__pycache__ | |
1252 | %{py_libdir}/xml/sax/__pycache__ | |
1253 | %{py_libdir}/xml/*.py | |
1254 | %{py_libdir}/xml/dom/*.py | |
1255 | %{py_libdir}/xml/etree/*.py | |
1256 | %{py_libdir}/xml/parsers/*.py | |
1257 | %{py_libdir}/xml/sax/*.py | |
1258 | ||
1259 | %dir %{py_libdir}/xmlrpc | |
1260 | %{py_libdir}/xmlrpc/__pycache__ | |
1261 | %{py_libdir}/xmlrpc/*.py | |
acd14a9e | 1262 | |
c7fdbe10 | 1263 | %attr(755,root,root) %{py_dyndir}/_sqlite3.cpython-*.so |
902c69ef JK |
1264 | %dir %{py_libdir}/sqlite3 |
1265 | %{py_libdir}/sqlite3/__pycache__ | |
1266 | %{py_libdir}/sqlite3/*.py | |
9416f74d | 1267 | |
f31061ec AM |
1268 | %attr(755,root,root) %{py_dyndir}/_zoneinfo.cpython-*.so |
1269 | %dir %{py_libdir}/zoneinfo | |
1270 | %{py_libdir}/zoneinfo/__pycache__ | |
1271 | %{py_libdir}/zoneinfo/*.py | |
1272 | ||
2072c60e | 1273 | %files -n pydoc3 |
9416f74d | 1274 | %defattr(644,root,root,755) |
19221b23 | 1275 | %attr(755,root,root) %{_bindir}/pydoc3 |
80febf2a | 1276 | %attr(755,root,root) %{_bindir}/pydoc%{py_ver} |
902c69ef JK |
1277 | %{py_libdir}/pydoc.py |
1278 | %{py_libdir}/__pycache__/pydoc.cpython-*.py[co] | |
1279 | %dir %{py_libdir}/pydoc_data | |
1280 | %{py_libdir}/pydoc_data/__pycache__ | |
1281 | %{py_libdir}/pydoc_data/*.py | |
1282 | %{py_libdir}/pydoc_data/*.css | |
9416f74d | 1283 | |
2072c60e | 1284 | %files -n idle3 |
9416f74d | 1285 | %defattr(644,root,root,755) |
19221b23 | 1286 | %attr(755,root,root) %{_bindir}/idle3 |
80febf2a | 1287 | %attr(755,root,root) %{_bindir}/idle%{py_ver} |
902c69ef JK |
1288 | %dir %{py_libdir}/idlelib/Icons |
1289 | %{py_libdir}/idlelib/__pycache__ | |
1290 | %{py_libdir}/idlelib/*.py | |
1291 | %doc %{py_libdir}/idlelib/*.txt | |
1292 | %doc %{py_libdir}/idlelib/ChangeLog | |
1293 | %{py_libdir}/idlelib/Icons/* | |
1294 | %{py_libdir}/idlelib/*.def | |
9416f74d AM |
1295 | |
1296 | %files devel | |
1297 | %defattr(644,root,root,755) | |
1298 | %doc Misc/{ACKS,NEWS,README,README.valgrind,valgrind-python.supp} | |
c7fdbe10 | 1299 | %attr(755,root,root) %{_bindir}/python%{py_ver}-config |
3e35963a | 1300 | %if "%{py_ver}" != "%{py_abi}" |
c7fdbe10 | 1301 | %attr(755,root,root) %{_bindir}/python%{py_abi}-config |
3e35963a | 1302 | %endif |
c7fdbe10 JB |
1303 | %attr(755,root,root) %{_bindir}/python3-config |
1304 | %attr(755,root,root) %{_libdir}/libpython%{py_abi}.so | |
1305 | %attr(755,root,root) %{_libdir}/libpython3.so | |
9416f74d | 1306 | %{py_incdir}/*.h |
002ac285 | 1307 | %exclude %{py_incdir}/pyconfig.h |
3e35963a | 1308 | %{py_incdir}/cpython |
9b97d583 | 1309 | %{py_incdir}/internal |
80febf2a AM |
1310 | %attr(755,root,root) %{py_libdir}/config-%{py_platform}/makesetup |
1311 | %attr(755,root,root) %{py_libdir}/config-%{py_platform}/install-sh | |
1312 | %{py_libdir}/config-%{py_platform}/config.c | |
1313 | %{py_libdir}/config-%{py_platform}/config.c.in | |
1314 | %{py_libdir}/config-%{py_platform}/python.o | |
1315 | %{py_libdir}/config-%{py_platform}/python-config.py | |
1316 | %dir %{py_libdir}/config-%{py_platform}/__pycache__ | |
1317 | %{py_libdir}/config-%{py_platform}/__pycache__/python-config.* | |
c7fdbe10 | 1318 | %{_pkgconfigdir}/python-%{py_ver}.pc |
3e35963a AM |
1319 | %{_pkgconfigdir}/python-%{py_ver}-embed.pc |
1320 | %{_pkgconfigdir}/python3-embed.pc | |
1321 | %if "%{py_ver}" != "%{py_abi}" | |
d0324804 | 1322 | %{_pkgconfigdir}/python-%{py_abi}.pc |
3e35963a | 1323 | %endif |
d0324804 | 1324 | %{_pkgconfigdir}/python3.pc |
c7fdbe10 | 1325 | |
9416f74d AM |
1326 | %files devel-tools |
1327 | %defattr(644,root,root,755) | |
40197233 | 1328 | %config(noreplace) %verify(not md5 mtime size) /etc/shrc.d/python*-devel* |
24586eb0 | 1329 | %attr(755,root,root) %{_bindir}/pygettext%{py_ver} |
25e3a83c | 1330 | %attr(755,root,root) %{_bindir}/pyreindent%{py_ver} |
902c69ef JK |
1331 | %{py_libdir}/pdb.py |
1332 | %{py_libdir}/profile.py | |
1333 | %{py_libdir}/pstats.py | |
1334 | %{py_libdir}/timeit.py | |
1335 | %{py_libdir}/__pycache__/pdb.cpython-*.py[co] | |
1336 | %{py_libdir}/__pycache__/profile.cpython-*.py[co] | |
1337 | %{py_libdir}/__pycache__/pstats.cpython-*.py[co] | |
1338 | %{py_libdir}/__pycache__/timeit.cpython-*.py[co] | |
9416f74d | 1339 | |
30b0ff7b | 1340 | %files 2to3 |
76c5116a | 1341 | %defattr(644,root,root,755) |
eb7b678c | 1342 | %attr(755,root,root) %{_bindir}/2to3-%{py_ver} |
902c69ef JK |
1343 | %dir %{py_libdir}/lib2to3 |
1344 | %{py_libdir}/lib2to3/__pycache__ | |
1345 | %{py_libdir}/lib2to3/*.txt | |
1346 | %{py_libdir}/lib2to3/*.pickle | |
1347 | %{py_libdir}/lib2to3/*.py | |
1348 | %dir %{py_libdir}/lib2to3/fixes | |
1349 | %{py_libdir}/lib2to3/fixes/__pycache__ | |
1350 | %{py_libdir}/lib2to3/fixes/*.py | |
1351 | %dir %{py_libdir}/lib2to3/pgen2 | |
1352 | %{py_libdir}/lib2to3/pgen2/__pycache__ | |
1353 | %{py_libdir}/lib2to3/pgen2/*.py | |
30b0ff7b | 1354 | |
9416f74d AM |
1355 | %files static |
1356 | %defattr(644,root,root,755) | |
520f15b4 | 1357 | %{_libdir}/libpython%{py_abi}.a |
9416f74d AM |
1358 | |
1359 | %files examples | |
1360 | %defattr(644,root,root,755) | |
1361 | %{_examplesdir}/%{name}-%{version} | |
1362 | ||
9a22bc7d | 1363 | %files test |
76c5116a | 1364 | %defattr(644,root,root,755) |
902c69ef JK |
1365 | %{py_libdir}/idlelib/idle_test |
1366 | %{py_libdir}/test | |
1367 | %{py_libdir}/ctypes/test | |
1368 | %{py_libdir}/distutils/tests | |
1369 | %{py_libdir}/lib2to3/tests | |
1370 | %{py_libdir}/sqlite3/test | |
1371 | %{py_libdir}/tkinter/test | |
1372 | %{py_libdir}/unittest/test | |
9a22bc7d | 1373 | |
9416f74d AM |
1374 | %if %{with info} |
1375 | %files doc-info | |
1376 | %defattr(644,root,root,755) | |
703efa4d | 1377 | %{_infodir}/python.info* |
9416f74d AM |
1378 | %endif |
1379 | ||
1380 | %if %{with tkinter} | |
1381 | %files tkinter | |
1382 | %defattr(644,root,root,755) | |
902c69ef JK |
1383 | %dir %{py_libdir}/tkinter |
1384 | %{py_libdir}/tkinter/__pycache__ | |
1385 | %{py_libdir}/tkinter/*.py | |
c7fdbe10 | 1386 | %attr(755,root,root) %{py_dyndir}/_tkinter.cpython-*.so |
9416f74d | 1387 | %endif |