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