]>
Commit | Line | Data |
---|---|---|
30baa9fb | 1 | # |
55c63f85 | 2 | # TODO |
32e8c81f | 3 | # - test_pydoc fails because of PYTHONPATH override |
55c63f85 ER |
4 | # - change searchpath order so /usr/lib* is before /usr/share |
5 | # - kill lib-tk from searchpath | |
6 | # - kill BR: file requirement from lib64 patch | |
2cbe1097 PG |
7 | # - security(CVE-2008-4108) |
8 | # http://securitytracker.com/alerts/2008/Sep/1020904.html | |
390a4bf0 | 9 | # |
9ef7b464 | 10 | # Conditional build: |
a6385cd7 | 11 | %bcond_with info # build info pages (requires emacs, fails in python-2.5.0) |
d6b7073f | 12 | %bcond_without tkinter # disables tkinter module building |
13 | %bcond_without tests # disables Python testing | |
26f84c7d | 14 | %bcond_with verbose_tests # runs tests in verbose mode |
c87d7700 | 15 | %bcond_with openssl097 # build for openssl < 0.9.8 |
390a4bf0 | 16 | # |
ca0308fd JK |
17 | # tests which will not work on 64-bit platforms |
18 | %define no64bit_tests test_audioop test_rgbimg test_imageop | |
19 | # tests which may fail because of builder environment limitations (no /proc or /dev/pts) | |
a51ef957 | 20 | %define nobuilder_tests test_resource test_openpty test_socket test_nis test_posix test_locale test_pty test_urllib2 |
8d4a0118 | 21 | # tests which fail because of some unknown/unresolved reason (this list should be ideally just %{nil}) |
c87d7700 | 22 | %define broken_tests test_doctest test_pydoc test_distutils test_gdb |
72dcf1e0 | 23 | |
21748cff | 24 | %define py_ver 2.7 |
72dcf1e0 | 25 | %define py_prefix %{_prefix} |
26 | %define py_libdir %{py_prefix}/%{_lib}/python%{py_ver} | |
27 | %define py_incdir %{_includedir}/python%{py_ver} | |
28 | %define py_sitedir %{py_libdir}/site-packages | |
dbafd771 | 29 | %define py_sitescriptdir %{_datadir}/python%{py_ver}/site-packages |
72dcf1e0 | 30 | %define py_dyndir %{py_libdir}/lib-dynload |
a9ce5112 | 31 | |
5b13880d | 32 | Summary: Very high level scripting language with X interface |
0b27afdb ER |
33 | Summary(es.UTF-8): Lenguaje script de alto nivel con interfaz X |
34 | Summary(fr.UTF-8): Langage de script de très haut niveau avec interface X | |
35 | Summary(pl.UTF-8): Python - język obiektowy wysokiego poziomu | |
36 | Summary(pt_BR.UTF-8): Linguagem de programação interpretada de alto nível | |
37 | Summary(ru.UTF-8): Язык программирования очень высокого уровня с X-интерфейсом | |
38 | Summary(tr.UTF-8): X arayüzlü, yüksek düzeyli, kabuk yorumlayıcı dili | |
39 | Summary(uk.UTF-8): Мова програмування дуже високого рівня з X-інтерфейсом | |
5b13880d | 40 | Name: python |
49cd78f9 | 41 | Version: %{py_ver}.18 |
e25b75d7 | 42 | Release: 7 |
a95139f4 | 43 | Epoch: 1 |
fc17d518 | 44 | License: PSF |
3f6b8c4d | 45 | Group: Development/Languages/Python |
c0f19ca3 | 46 | Source0: https://www.python.org/ftp/python/%{version}/Python-%{version}.tar.xz |
49cd78f9 | 47 | # Source0-md5: fd6cc8ec0a78c44036f825e739f36e5a |
c0f19ca3 | 48 | Source1: https://www.python.org/ftp/python/doc/%{version}/%{name}-%{version}-docs-html.tar.bz2 |
49cd78f9 | 49 | # Source1-md5: de2e764e4fda62e61af49df3e640fcba |
59012690 | 50 | Source2: pyconfig.h.in |
fbd4bf4a | 51 | Patch0: %{name}-db.patch |
e4f3f657 | 52 | Patch1: %{name}-pythonpath.patch |
21748cff | 53 | Patch2: %{name}-ac_fixes.patch |
5a2b75ad JK |
54 | Patch3: %{name}-multilib.patch |
55 | Patch4: %{name}-verbose.patch | |
56 | Patch5: %{name}-distro.patch | |
57 | Patch6: %{name}-DNStests.patch | |
58 | Patch7: %{name}-install_prefix.patch | |
aa4fd056 | 59 | Patch8: %{name}-bdist_rpm.patch |
e4f2beca AM |
60 | # https://bugs.python.org/issue10496 |
61 | Patch9: https://bugs.python.org/file21896/nonexistent_user.patch | |
05607efb | 62 | Patch10: %{name}-BLDLIBRARY.patch |
375e7fe7 | 63 | Patch11: openssl3.patch |
e4f2beca | 64 | # Patch9-md5: db706fbe6de467c6e4c97c675eddf29a |
c87d7700 | 65 | URL: https://www.python.org/ |
3f629a49 | 66 | BuildRequires: autoconf >= 2.65 |
ea46ca64 | 67 | BuildRequires: automake |
c9c8df30 | 68 | BuildRequires: bluez-libs-devel |
30002d3f | 69 | BuildRequires: bzip2-devel |
c3e778ad | 70 | BuildRequires: db-devel >= 4 |
d008fe98 | 71 | %{?with_info:BuildRequires: emacs >= 21} |
b95df7c5 | 72 | BuildRequires: expat-devel >= 1:1.95.7 |
55c63f85 | 73 | BuildRequires: file |
26f84c7d | 74 | BuildRequires: gdbm-devel >= 1.8.3 |
390a4bf0 | 75 | BuildRequires: gmp-devel >= 4.0 |
c0f19ca3 | 76 | BuildRequires: libnsl-devel |
00ab6f33 | 77 | BuildRequires: libstdc++-devel |
c0f19ca3 | 78 | BuildRequires: libtirpc-devel |
6888c01c | 79 | BuildRequires: ncurses-ext-devel >= 5.2 |
3846ac63 AM |
80 | %if %{with openssl097} |
81 | BuildRequires: openssl-devel < 0.9.8 | |
82 | %else | |
fe2e1b2f | 83 | BuildRequires: openssl-devel >= 0.9.8 |
3846ac63 | 84 | %endif |
c0f19ca3 | 85 | BuildRequires: pkgconfig |
1b348424 | 86 | BuildRequires: readline-devel >= 5.0 |
f9585a25 | 87 | BuildRequires: rpm-pythonprov |
375b6ad2 | 88 | BuildRequires: sed >= 4.0 |
30baa9fb | 89 | BuildRequires: sqlite3-devel >= 3.3.5 |
d008fe98 | 90 | %{?with_info:BuildRequires: tetex-makeindex} |
ea46ca64 | 91 | #%{?with_tkinter:BuildRequires: tix-devel >= 1:8.1.4-4} |
9ef7b464 | 92 | %{?with_tkinter:BuildRequires: tk-devel >= 8.4.3} |
7496b759 | 93 | BuildRequires: zlib-devel |
b95df7c5 | 94 | Requires: %{name}-libs = %{epoch}:%{version}-%{release} |
c760bd24 | 95 | Suggests: python-pip |
15cdf0e7 | 96 | Obsoletes: python2 < 2.7 |
cbbdb8c8 | 97 | Conflicts: bzr < 1.8 |
390a4bf0 | 98 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
adc34f9b | 99 | |
ca0308fd | 100 | %if %{with verbose_tests} |
12d09cd7 | 101 | %define test_flags -v -l -x |
ca0308fd | 102 | %else |
dcede741 | 103 | %define test_flags -w -l -x |
ca0308fd JK |
104 | %endif |
105 | ||
c13a1330 | 106 | %ifarch alpha ia64 ppc64 ppc64 %{x8664} |
ca0308fd JK |
107 | %define test_list %{nobuilder_tests} %{broken_tests} %{no64bit_tests} |
108 | %else | |
109 | %define test_list %{nobuilder_tests} %{broken_tests} | |
110 | %endif | |
6c765af5 | 111 | |
84f1c8f6 | 112 | %ifarch sparc sparcv9 |
e20f2a55 | 113 | %define test_list %{nobuilder_tests} %{broken_tests} test_fcntl test_ioctl |
114 | %endif | |
115 | ||
c13a1330 | 116 | %ifarch sparc64 |
25458093 | 117 | %define test_list %{nobuilder_tests} %{broken_tests} %{no64bit_tests} test_fcntl test_ioctl |
c13a1330 | 118 | %endif |
119 | ||
adc34f9b | 120 | %description |
9388650a | 121 | Python is an interpreted, interactive, object-oriented programming |
cf25e4ba | 122 | language. It incorporates modules, exceptions, dynamic typing, very |
123 | high level dynamic data types, and classes. Python combines remarkable | |
124 | power with very clear syntax. It has interfaces to many system calls | |
125 | and libraries, as well as to various window systems, and is extensible | |
126 | in C or C++. It is also usable as an extension language for | |
127 | applications that need a programmable interface. Finally, Python is | |
128 | portable: it runs on many brands of UNIX, on the Mac, and on PCs under | |
129 | MS-DOS, Windows, Windows NT, and OS/2. | |
5b13880d | 130 | |
84534bf8 ER |
131 | This package contains the Python binary. |
132 | ||
ed105c47 | 133 | %description -l de.UTF-8 |
170d6e71 | 134 | Python ist eine interpretierte, interaktive, objektorientierte |
cf25e4ba | 135 | Programmiersprache, vergleichbar zu Tcl, Perl, Scheme oder Java. |
ed105c47 JR |
136 | Python enthält Module, Klassen, Exceptions, High-Level dynamische |
137 | Datentypen und dynamisches Typisieren. Python unterstützt Interfaces | |
cf25e4ba | 138 | zu vielen Systemaufrufen und Libraries, sowie verschiedene |
139 | Fenstersysteme (X11, Motif, Tk, Mac und MFC) | |
170d6e71 | 140 | |
ed105c47 JR |
141 | Programmierer können neue built-in-Module für Python in C oder C++ |
142 | schreiben. Python kann auch als Erweiterungssprache für Applikationen | |
cf25e4ba | 143 | benutzt werden, die ein programmierbares Interface brauchen. Dieses |
ed105c47 | 144 | Paket enthält die meisten Standard-Python-Module, und Module zum |
cf25e4ba | 145 | Ansprechen von Tix (Tk-widget set) und RPM. |
170d6e71 | 146 | |
ed105c47 | 147 | %description -l es.UTF-8 |
4757490f | 148 | Python es un lenguaje de scripts interpretado orientado a objetos. |
ed105c47 | 149 | Contiene soporte para carga dinámica de objetos, clases, módulos y |
4757490f | 150 | excepciones. |
151 | ||
152 | Es sencillo adicionar interfaces para nuevos sistemas de biblioteca a | |
ed105c47 JR |
153 | través de código C, tornando Python fácil de usar en ambientes |
154 | particulares/personalizados. Este paquete Python incluye la mayoría de | |
155 | los módulos padrón Python, junto con módulos para crear interfaces | |
4757490f | 156 | para el conjunto de componentes Tix para Tk y RPM. |
157 | ||
ed105c47 JR |
158 | %description -l fr.UTF-8 |
159 | Python est un langage de script interprété et orienté objet. Il gère | |
cf25e4ba | 160 | le chargement dynamique des objets, les classes, les modules et les |
ed105c47 JR |
161 | exceptions. L'ajout d'interfaces aux nouvelles bibliothèques systèmes |
162 | avec du code C est simple, ce qui rend Python facile à utiliser dans | |
163 | des configs personnalisées. | |
adc34f9b | 164 | |
cf25e4ba | 165 | Ce paquetage Python contient la plupart des modules Python standards, |
ed105c47 | 166 | ainsi que ceux permettant l'interfaçage avec les widgets Tix pour Tk |
cf25e4ba | 167 | et RPM. |
adc34f9b | 168 | |
ed105c47 | 169 | %description -l pl.UTF-8 |
af97e69f | 170 | Python jest interpretowanym, interaktywnym i zorientowanym obiektowo |
ed105c47 JR |
171 | językiem programowania. Jest modularny, obsługuje wyjątki, dynamiczne |
172 | typy, zaawansowane dynamiczne struktury danych i klasy. Python łączy w | |
173 | sobie duże możliwości i przejrzystą składnię. Posiada interfejsy do | |
174 | wielu wywołań systemowych i bibliotek, w tym również do różnych | |
175 | bibliotek okienkowych. Możliwości jego można jeszcze rozszerzać | |
176 | poprzez odpowiednie moduły pisane w C lub C++. Python może być również | |
177 | użyty jako element aplikacji, którym potrzebny jest interpreter do | |
178 | skryptów. I wreszcie, Python jest wieloplatformowy, działa na wielu | |
86602284 | 179 | odmianach UNIX-a, Macu oraz PC pod DOS-em, Windows, WindowsNT oraz |
cf25e4ba | 180 | OS/2. |
5b13880d | 181 | |
ed105c47 | 182 | Ten pakiet zawiera binarkę Pythona. |
3934ad29 | 183 | |
ed105c47 JR |
184 | %description -l pt_BR.UTF-8 |
185 | Python é uma linguagem de scripts interpretada orientada a objetos. | |
186 | Contém suporte para carga dinâmica de objetos, classes, módulos e | |
187 | exceções. Adicionar interfaces para novos sistemas de biblioteca | |
188 | através de código C é simples, tornando Python fácil de usar em | |
4757490f | 189 | ambientes particulares/personalizados. |
190 | ||
ed105c47 JR |
191 | Este pacote Python inclui a maioria do módulos padrão Python, junto |
192 | com módulos para interfaceamento para o conjunto de componentes Tix | |
4757490f | 193 | para Tk e RPM. |
194 | ||
ed105c47 JR |
195 | %description -l ru.UTF-8 |
196 | Python - это интерпретируемый, объектно-ориентированный язык | |
197 | программирования. Он поддерживает динамическую загрузку объектов, | |
198 | классы, модули и обработку исключительных ситуаций (exceptions). | |
199 | Простота добавления интерфейсов к новым системным библиотекам через | |
200 | код на языке C делает Python хорошим выбором для использования в | |
201 | специальных конфигурациях. | |
202 | ||
203 | %description -l tr.UTF-8 | |
204 | Python, nesneye yönelik bir kabuk yorumlayıcıdır. Nesnelerin, | |
205 | sınıfların, modüllerin ve aykırı durumların dinamik yüklenmelerine | |
206 | destek verir. C koduyla birlikte kullanımı son derece kolaydır. Bu | |
207 | paket, standart Python birimlerinin çoğunun yanısıra Tk ve RPM için | |
208 | arayüz birimlerini de içerir. | |
209 | ||
210 | %description -l uk.UTF-8 | |
211 | Python - це інтерпретована, об'єктно-орієнтована мова програмування. | |
212 | Він підтримує динамічну загрузку об'єктів, класи, модулі та обробку | |
213 | виключних ситуацій (exceptions). Простота додавання інтерфейсів для | |
214 | нових системних бібліотек через код на мові C робить Python добрим | |
215 | вибором для використання в спеціальних конфігураціях. | |
94f0df92 | 216 | |
9bc1f934 | 217 | %package libs |
218 | Summary: Python library | |
0b27afdb | 219 | Summary(pl.UTF-8): Biblioteka języka Python |
0d3fc867 | 220 | Group: Libraries/Python |
eed8142f JB |
221 | # broken detection in rpm/pythondeps.sh |
222 | Provides: python(abi) = %{py_ver} | |
223 | # for compatibility with existing Ac packages | |
8ffdc920 | 224 | Provides: python(bytecode) = %{py_ver} |
15cdf0e7 | 225 | %{!?with_info:Obsoletes: python-doc-info < %{epoch}:%{version}-%{release}} |
4675b5d8 | 226 | Obsoletes: python-intl |
9bc1f934 | 227 | |
228 | %description libs | |
84534bf8 | 229 | Python shared library and very essental modules for Python binary. |
9bc1f934 | 230 | |
ed105c47 JR |
231 | %description libs -l pl.UTF-8 |
232 | Biblioteka współdzielona języka Python oraz bardzo podstawowe moduły | |
3934ad29 | 233 | dla Pythona. |
9bc1f934 | 234 | |
235 | %package modules | |
236 | Summary: Python modules | |
0b27afdb | 237 | Summary(pl.UTF-8): Moduły języka Python |
0d3fc867 | 238 | Group: Libraries/Python |
8ffdc920 | 239 | Requires: %{name}-libs = %{epoch}:%{version}-%{release} |
d9971142 | 240 | Provides: python-argparse = 1.1 |
15cdf0e7 | 241 | Provides: python-cElementTree = 1.0.6 |
21894ccc | 242 | Provides: python-elementtree |
d9971142 ER |
243 | Provides: pythonegg(argparse) = 1.1 |
244 | Obsoletes: python-argparse < 1.1.99 | |
15cdf0e7 JB |
245 | Obsoletes: python-cElementTree < 1.0.7 |
246 | Obsoletes: python-ctypes < 1.0.3 | |
4675b5d8 | 247 | Obsoletes: python-curses |
15cdf0e7 | 248 | Obsoletes: python-elementtree < 1.2.7 |
4675b5d8 | 249 | Obsoletes: python-gdbm |
15cdf0e7 JB |
250 | Obsoletes: python-hashlib < 20081120 |
251 | Obsoletes: python-logging < 0.5 | |
252 | Obsoletes: python-old < 1:2.5 | |
253 | # just dropped module? 1.5 is on pypi now | |
254 | Obsoletes: python-optik < 1.5 | |
255 | Obsoletes: python-ssl < 1.17 | |
4675b5d8 | 256 | Obsoletes: python-xml |
e8ab3359 | 257 | Obsoletes: python-xmlrpc <= 1.0.1 |
15cdf0e7 | 258 | Obsoletes: python-zlib <= 1.0 |
f81db09b | 259 | %requires_ge_to openssl openssl-devel |
9bc1f934 | 260 | |
261 | %description modules | |
84534bf8 | 262 | Python officially distributed modules. |
9bc1f934 | 263 | |
ed105c47 JR |
264 | %description modules -l pl.UTF-8 |
265 | Oficjalnie rozprowadzane moduły języka Python. | |
9bc1f934 | 266 | |
6acc3a01 | 267 | %package modules-sqlite |
268 | Summary: Python SQLite modules | |
0b27afdb | 269 | Summary(pl.UTF-8): Moduły SQLite języka Python |
6acc3a01 | 270 | Group: Libraries/Python |
271 | Requires: %{name}-modules = %{epoch}:%{version}-%{release} | |
909f39a4 | 272 | Provides: python(sqlite) |
6acc3a01 | 273 | |
274 | %description modules-sqlite | |
275 | Python officially distributed sqlite module. | |
276 | ||
ed105c47 JR |
277 | %description modules-sqlite -l pl.UTF-8 |
278 | Oficjalnie rozprowadzany moduł sqlite języka Python. | |
6acc3a01 | 279 | |
f7403710 | 280 | %package -n pydoc |
9bc1f934 | 281 | Summary: Python interactive module documentation access support |
0b27afdb | 282 | Summary(pl.UTF-8): Interaktywne korzystanie z dokumentacji modułów języka Python |
0d3fc867 | 283 | Group: Applications |
390a4bf0 | 284 | Requires: %{name}-modules = %{epoch}:%{version}-%{release} |
15cdf0e7 | 285 | Obsoletes: python-pydoc < 1:2.3-2 |
9bc1f934 | 286 | |
f7403710 | 287 | %description -n pydoc |
9bc1f934 | 288 | Python interactive module documentation access support. |
289 | ||
f7403710 | 290 | %description -n pydoc -l pl.UTF-8 |
ed105c47 | 291 | Interaktywne korzystanie z dokumentacji modułów języka Python. |
9bc1f934 | 292 | |
f7403710 | 293 | %package -n idle |
9d0d4238 | 294 | Summary: IDE for Python language |
0b27afdb | 295 | Summary(pl.UTF-8): IDE dla języka Python |
3f6b8c4d | 296 | Group: Applications/Editors |
0569a0ea | 297 | Requires: %{name}-tkinter = %{epoch}:%{version}-%{release} |
15cdf0e7 | 298 | Obsoletes: python-idle < 1:2.3-2 |
9d0d4238 | 299 | |
f7403710 | 300 | %description -n idle |
9d0d4238 | 301 | IDE for Python language. |
302 | ||
ed105c47 JR |
303 | %description -n idle -l pl.UTF-8 |
304 | IDE dla języka Python. | |
9d0d4238 | 305 | |
adc34f9b | 306 | %package devel |
5b13880d | 307 | Summary: Libraries and header files for building python code |
0b27afdb ER |
308 | Summary(de.UTF-8): Libraries und Header-Dateien zum Erstellen von Python-Code |
309 | Summary(es.UTF-8): Bibliotecas y archivos de inclusión para construir programas en python | |
310 | Summary(fr.UTF-8): Bibliothèques et en-têtes pour construire du code python | |
311 | Summary(pl.UTF-8): Pliki nagłówkowe i biblioteki Pythona | |
312 | Summary(pt_BR.UTF-8): Bibliotecas e arquivos de inclusão para o Python | |
313 | Summary(ru.UTF-8): Библиотеки и хедеры для построения кода на языке Python | |
314 | Summary(tr.UTF-8): Python ile geliştirme yapmak için gerekli dosyalar | |
315 | Summary(uk.UTF-8): Бібліотеки та хедери для програмування на мові Python | |
a9e2f1f5 | 316 | Group: Development/Languages/Python |
390a4bf0 | 317 | Requires: %{name}-libs = %{epoch}:%{version}-%{release} |
274e744e | 318 | Requires: %{name}-modules = %{epoch}:%{version}-%{release} |
15cdf0e7 | 319 | Obsoletes: python2-devel < 2.7 |
adc34f9b | 320 | |
321 | %description devel | |
cf25e4ba | 322 | The Python interpreter is relatively easy to extend with dynamically |
daf8bffc | 323 | loaded extensions and to embed in other programs. This package |
cf25e4ba | 324 | contains the header files and libraries which are needed to do both of |
325 | these tasks. | |
adc34f9b | 326 | |
ed105c47 | 327 | %description devel -l de.UTF-8 |
cf25e4ba | 328 | Der Python-Interpretierer ist relativ einfach anhand von dynamisch |
ed105c47 JR |
329 | ladbaren Erweiterungen auszubauen und läßt sich in andere Programme |
330 | integrieren. Dieses Paket enthält die Header-Dateien und Libraries, | |
331 | die für beide Aufgaben erforderlich sind. | |
adc34f9b | 332 | |
ed105c47 | 333 | %description devel -l es.UTF-8 |
4757490f | 334 | El interpretador Python permite incluir con facilidad extensiones |
ed105c47 JR |
335 | cargadas dinámicamente. Python es también fácil de ser empotrado en |
336 | otros programas. Este paquete contiene los archivos de inclusión y | |
4757490f | 337 | bibliotecas necesarios para estas dos tareas. |
338 | ||
ed105c47 JR |
339 | %description devel -l fr.UTF-8 |
340 | L'interpréteur Python est relativement facile à étendre avec des | |
341 | extensions chargées dynamiquement et à insérer dans d'autres | |
342 | programmes. Ce paquetage contient les en-têtes et les bibliothèques | |
343 | nécessaires à ces deux tâches. | |
344 | ||
345 | %description devel -l pl.UTF-8 | |
346 | Interpreter Pythona jest w miarę łatwy do rozszerzania przy pomocy | |
347 | dynamicznie ładowanych rozszerzeń napisanych w C lub C++ oraz | |
348 | osadzania w innych programach. Ten pakiet zawiera pliki nagłówkowe i | |
349 | wszystko inne co potrzebne do tych celów. | |
350 | ||
351 | %description devel -l pt_BR.UTF-8 | |
352 | O interpretador Python permite incluir com facilidade extensões | |
353 | carregadas dinamicamente. Python é também fácil de ser embutido em | |
354 | outros programas. Este pacote contém os arquivos de inclusão e | |
355 | bibliotecas necessários para estas duas tarefas. | |
356 | ||
357 | %description devel -l ru.UTF-8 | |
358 | Интерпретатор Python относительно легко расширяется при помощи | |
359 | динамически загружаемых расширений и встраивается в другие программы. | |
360 | Этот пакет содержит хедеры и библиотеки, необходимые для обеих этих | |
361 | задач. | |
362 | ||
363 | %description devel -l tr.UTF-8 | |
364 | Bu paket, Python ile geliştirme yapılabilmesi için gerekli başlık | |
365 | dosyalarını ve kitaplıkları içerir. | |
366 | ||
367 | %description devel -l uk.UTF-8 | |
368 | Інтерпретатор Python відносно легко розширюється за допомогою | |
369 | розширень з динамічною загрузкою та вбудовується в інші програми. Цей | |
370 | пакет містить хедери та бібліотеки, необхідні для обох цих задач. | |
94f0df92 | 371 | |
9bc1f934 | 372 | %package devel-src |
373 | Summary: Python module sources | |
0b27afdb | 374 | Summary(pl.UTF-8): Pliki źródłowe modułów Pythona |
9bc1f934 | 375 | Group: Development/Languages/Python |
390a4bf0 | 376 | Requires: %{name}-modules = %{epoch}:%{version}-%{release} |
9bc1f934 | 377 | |
378 | %description devel-src | |
379 | Python module sources. | |
380 | ||
ed105c47 JR |
381 | %description devel-src -l pl.UTF-8 |
382 | Pliki źródłowe modułów Pythona. | |
9bc1f934 | 383 | |
f19fca05 | 384 | %package devel-tools |
385 | Summary: Python development tools | |
0b27afdb | 386 | Summary(pl.UTF-8): Narzędzia programistyczne języka Python |
f19fca05 | 387 | Group: Development/Languages/Python |
390a4bf0 | 388 | Requires: %{name}-modules = %{epoch}:%{version}-%{release} |
f19fca05 | 389 | |
390 | %description devel-tools | |
391 | Python development tools such as profilers and debugger. | |
392 | ||
ed105c47 JR |
393 | %description devel-tools -l pl.UTF-8 |
394 | Narzędzia programistyczne języka Python takie jak profiler oraz | |
6888c01c | 395 | debugger. |
f19fca05 | 396 | |
dbbdab91 AF |
397 | %package 2to3 |
398 | Summary: Automated Python 2 to 3 code translation | |
de833dff | 399 | Summary(pl.UTF-8): Automatyczne tłumaczenie kodu Pythona 2 na 3 |
8c748ea7 | 400 | Group: Development/Languages/Python |
dbbdab91 AF |
401 | |
402 | %description 2to3 | |
8c748ea7 ER |
403 | 2to3 is a Python program that reads Python 2.x source code and applies |
404 | a series of fixers to transform it into valid Python 3.x code. The | |
405 | standard library contains a rich set of fixers that will handle almost | |
406 | all code. 2to3 supporting library lib2to3 is, however, a flexible and | |
407 | generic library, so it is possible to write your own fixers for 2to3. | |
408 | lib2to3 could also be adapted to custom applications in which Python | |
409 | code needs to be edited automatically. | |
dbbdab91 | 410 | |
de833dff JB |
411 | %description 2to3 -l pl.UTF-8 |
412 | 2to3 to program w Pythonie czytający od źródłowy w Pythonie 2.x i | |
413 | aplikujący serię poprawek przekształcających go w poprawny kod w | |
414 | Pythonie 3.x. Biblioteka standardowa zawiera duży zbiór poprawek | |
415 | obsługujących większość kodu. Biblioteka wspierająca 2to3 (lib2to3) | |
416 | jest jednak elastyczną i ogólną biblioteką, więc można pisać własne | |
417 | poprawki dla 2to3. lib2to3 można także zaadaptować na potrzeby | |
418 | własnych zastosowań, w których kod w Pythonie musi być modyfikowany | |
419 | automatycznie. | |
420 | ||
673628f8 | 421 | %package static |
422 | Summary: Static python library | |
0b27afdb | 423 | Summary(pl.UTF-8): Statyczna biblioteka Pythona |
673628f8 | 424 | Group: Development/Languages/Python |
390a4bf0 | 425 | Requires: %{name}-devel = %{epoch}:%{version}-%{release} |
673628f8 | 426 | |
427 | %description static | |
428 | Static python library. | |
429 | ||
ed105c47 | 430 | %description static -l pl.UTF-8 |
3c8585c7 JB |
431 | Statyczna biblioteka Pythona. |
432 | ||
9388650a | 433 | %package doc |
5b13880d | 434 | Summary: Documentation on Python |
0b27afdb ER |
435 | Summary(de.UTF-8): Dokumentation zu Python |
436 | Summary(es.UTF-8): Documentación para Python | |
437 | Summary(fr.UTF-8): Documentation sur Python | |
438 | Summary(pl.UTF-8): Dokumentacja do Pythona | |
439 | Summary(pt_BR.UTF-8): Documentação para a linguagem de programação Python | |
440 | Summary(ru.UTF-8): Документация по языку Python | |
441 | Summary(tr.UTF-8): Python belgeleri | |
442 | Summary(uk.UTF-8): Документація по мові Python | |
0d3fc867 | 443 | Group: Documentation |
15cdf0e7 | 444 | Obsoletes: python-docs < 1.5.2-18 |
adc34f9b | 445 | |
9388650a | 446 | %description doc |
cf25e4ba | 447 | This package contains documentation on the Python language and |
448 | interpretor as a mix of plain ASCII files and LaTeX sources. | |
adc34f9b | 449 | |
ed105c47 JR |
450 | %description doc -l de.UTF-8 |
451 | Dieses Paket enthält Dokumentationen zu Python (Sprache und | |
cf25e4ba | 452 | Interpreter) in Form von einfachen ASCII-Dateien und LaTeX-Quellen. |
adc34f9b | 453 | |
ed105c47 JR |
454 | %description doc -l es.UTF-8 |
455 | Documentación para Python. Contiene archivos en texto y PostScript. | |
4757490f | 456 | |
ed105c47 | 457 | %description doc -l fr.UTF-8 |
cf25e4ba | 458 | Ce paquetage contient la documentation sur le langage python et sur |
ed105c47 | 459 | son interpréteur sous forme de fichiers ASCII et LaTeX. |
adc34f9b | 460 | |
ed105c47 JR |
461 | %description doc -l pl.UTF-8 |
462 | Oficjalna dokumentacja do Pythona. Zawiera przykładowe programy, | |
463 | narzędzia i dokumentację. Strony podręcznika man znajdują się w | |
464 | głównym pakiecie. Ten pakiet nie zawiera źródeł dokumentacji | |
6888c01c ER |
465 | napisanych w LaTeXu, tylko gotowe do wykorzystania pliki postscriptowe |
466 | i HTML. | |
adc34f9b | 467 | |
ed105c47 JR |
468 | %description doc -l pt_BR.UTF-8 |
469 | O pacote python-doc contém documentação para a linguagem de | |
470 | programação e para o interpretador Python. Fornecida em arquivos texto | |
4757490f | 471 | e Postcript. |
472 | ||
ed105c47 JR |
473 | %description doc -l ru.UTF-8 |
474 | Этот пакет содержит документацию по собственно языку Python и по | |
475 | исполняющему его интерпретатору в виде набора текстовых файлов и | |
476 | исходных текстов в формате LaTeX. | |
94f0df92 | 477 | |
ed105c47 JR |
478 | %description doc -l tr.UTF-8 |
479 | Bu paket, Python dili ile ilgili belgeleri ve düz ASCII dosyaları ve | |
480 | LaTeX kaynaklarının bir karışımı olan yorumlayıcıyı içerir. | |
adc34f9b | 481 | |
ed105c47 JR |
482 | %description doc -l uk.UTF-8 |
483 | Цей пакет містить документацію по власне мові Python та по виконуючому | |
484 | її інтерпретатору у вигляді набора текстових файлів та вихідних | |
485 | текстів у форматі LaTeX. | |
94f0df92 | 486 | |
9f13b05c | 487 | %package doc-info |
488 | Summary: Documentation on Python in texinfo format | |
0b27afdb | 489 | Summary(pl.UTF-8): Dokumentacja do Pythona w formacie texinfo |
9f13b05c | 490 | Group: Documentation |
491 | ||
492 | %description doc-info | |
493 | Documentation on Python in texinfo format. | |
494 | ||
ed105c47 | 495 | %description doc-info -l pl.UTF-8 |
9f13b05c | 496 | Dokumentacja do Pythona w formacie texinfo. |
497 | ||
efc1a08b | 498 | %package tkinter |
fbe0b8d8 | 499 | Summary: Standard Python interface to the Tk GUI toolkit |
0b27afdb ER |
500 | Summary(de.UTF-8): Grafische Tk-Schnittstelle für Python |
501 | Summary(es.UTF-8): Interfaz de GUI Tk para Python | |
502 | Summary(fr.UTF-8): Interface graphique Tk pour Python | |
503 | Summary(pl.UTF-8): Standardowy interfejs Pythona do biblioteki Tk | |
504 | Summary(pt_BR.UTF-8): Interface GUI Tk para Phyton | |
505 | Summary(tr.UTF-8): Python için grafik kullanıcı arayüzü | |
0d3fc867 | 506 | Group: Libraries/Python |
390a4bf0 JB |
507 | Requires: %{name}-modules = %{epoch}:%{version}-%{release} |
508 | Requires: tcl >= 8.4.3 | |
509 | Requires: tix >= 1:8.1.4-4 | |
c038dfd2 | 510 | Requires: tk >= 8.4.3 |
15cdf0e7 | 511 | Obsoletes: tkinter < 1:2.3-2 |
adc34f9b | 512 | |
efc1a08b | 513 | %description tkinter |
fbe0b8d8 | 514 | Standard Python interface to the Tk GUI toolkit. |
adc34f9b | 515 | |
ed105c47 JR |
516 | %description tkinter -l de.UTF-8 |
517 | Eine grafische Schnittstelle für Python, basierend auf Tcl/Tk, und von | |
9388650a | 518 | vielen Konfigurations-Tools genutzt. |
adc34f9b | 519 | |
ed105c47 JR |
520 | %description tkinter -l es.UTF-8 |
521 | Una interfaz gráfica para Python, basada en Tcl/Tk, y usada por muchas | |
522 | herramientas de configuración. | |
4757490f | 523 | |
ed105c47 JR |
524 | %description tkinter -l fr.UTF-8 |
525 | Interface graphique pour Python, basée sur Tcl/Tk et utilisée par | |
cf25e4ba | 526 | beaucoup des outils de configuration. |
adc34f9b | 527 | |
ed105c47 | 528 | %description tkinter -l pl.UTF-8 |
fbe0b8d8 | 529 | Standardowy interfejs Pythona do biblioteki Tk. |
5b13880d | 530 | |
ed105c47 JR |
531 | %description tkinter -l pt_BR.UTF-8 |
532 | Uma interface gráfica para Python, baseada em Tcl/Tk, e usada por | |
533 | muitas ferramentas de configuração. | |
4757490f | 534 | |
ed105c47 JR |
535 | %description tkinter -l ru.UTF-8 |
536 | Графический интерфейс (GUI) для Python, построенный на Tcl/Tk. | |
944b9701 | 537 | |
ed105c47 JR |
538 | %description tkinter -l tr.UTF-8 |
539 | Python için Tcl/Tk'ye dayalı ve pek çok ayarlama aracı tarafından | |
540 | kullanılan grafik bir arayüzdür. | |
adc34f9b | 541 | |
ed105c47 JR |
542 | %description tkinter -l uk.UTF-8 |
543 | Графічний інтерфейс (GUI) для Python, побудований на Tcl/Tk. | |
944b9701 | 544 | |
9d555a37 | 545 | %package examples |
546 | Summary: Example programs in Python | |
0b27afdb | 547 | Summary(pl.UTF-8): Przykładowe programy w Pythonie |
9d555a37 | 548 | Group: Development/Languages/Python |
15cdf0e7 | 549 | Obsoletes: python-tools < 2.2 |
9d555a37 | 550 | |
551 | %description examples | |
9bc1f934 | 552 | Example programs in Python. |
9d555a37 | 553 | |
72dcf1e0 | 554 | These are for Python 2.3.4, not %{version}. |
555 | ||
ed105c47 JR |
556 | %description examples -l pl.UTF-8 |
557 | Przykładowe programy w Pythonie. | |
9d555a37 | 558 | |
ed105c47 | 559 | Przykłady te są dla Pythona 2.3.4, nie %{version}. |
72dcf1e0 | 560 | |
72d4c735 JK |
561 | %package test |
562 | Summary: Python test modules | |
563 | Summary(pl.UTF-8): Moduły testowe Pythona | |
564 | Group: Development/Languages/Python | |
565 | Requires: %{name}-modules = %{epoch}:%{version}-%{release} | |
5b8d37fd | 566 | Suggests: %{name}-devel-src = %{epoch}:%{version}-%{release} |
72d4c735 JK |
567 | |
568 | %description test | |
569 | Python test modules. | |
570 | ||
571 | Unit tests for Python, some may be reused for testing other Python | |
572 | software. | |
573 | ||
574 | %description test -l pl.UTF-8 | |
575 | Moduły testowe Pythona. | |
576 | ||
577 | Niektóre z nich mogą być używane do testowania oprogramowania | |
578 | napisanego w Pythonie. | |
579 | ||
adc34f9b | 580 | %prep |
c0f19ca3 | 581 | %setup -q -n Python-%{version} |
fbd4bf4a | 582 | %patch0 -p1 |
876808b7 | 583 | %patch1 -p1 |
af97e69f | 584 | %patch2 -p1 |
c90aefc1 | 585 | %patch3 -p1 |
55c63f85 | 586 | %patch4 -p1 |
17141c0f | 587 | %patch5 -p1 |
a3868319 | 588 | %patch6 -p1 |
a35a64a8 | 589 | %patch7 -p1 |
aa4fd056 | 590 | %patch8 -p1 |
e4f2beca | 591 | %patch9 -p1 |
05607efb | 592 | %patch10 -p1 |
375e7fe7 | 593 | %patch11 -p1 |
adc34f9b | 594 | |
21894ccc | 595 | tar xjf %{SOURCE1} |
a9e2f1f5 | 596 | |
132c1a2a AM |
597 | sed -i -e 's#db_setup_debug = False#db_setup_debug = True#g' setup.py |
598 | ||
7e400b45 AM |
599 | # remove if Lib/plat-linux3 exists |
600 | [ -d Lib/plat-linux3 ] && exit 1 | |
601 | cp -a Lib/plat-linux2 Lib/plat-linux3 | |
602 | ||
84094aad JB |
603 | %{__sed} -i -e '1s,/usr/bin/python$,%{__python},' Lib/cgi.py |
604 | %{__sed} -i -e '1s,/usr/bin/env python$,%{__python},' Lib/{UserString,base64,cProfile,keyword,mimify,pdb,platform,profile,pydoc,quopri,smtpd,smtplib,symbol,tabnanny,timeit,trace,uu,webbrowser}.py | |
605 | %{__sed} -i -e '1s,/usr/bin/env python$,%{__python},' Lib/encodings/rot_13.py | |
606 | %{__sed} -i -e '1s,/usr/bin/env python$,%{__python},' Lib/idlelib/PyShell.py | |
607 | %{__sed} -i -e '1s,/usr/bin/env python$,%{__python},' Lib/lib2to3/pgen2/token.py | |
608 | %{__sed} -i -e '1s,/usr/bin/env python$,%{__python},' Lib/lib2to3/tests/{pytree_idempotency,data/different_encoding,data/false_encoding}.py | |
609 | %{__sed} -i -e '1s,/usr/bin/env python2,%{__python},' Lib/test/bisect_cmd.py | |
610 | %{__sed} -i -e '1s,/usr/bin/env python$,%{__python},' Lib/test/{curses_tests,pystone,re_tests,regrtest}.py | |
611 | %{__sed} -i -e '1s,@EXENAME@,%{__python},' Misc/python-config.in | |
612 | %{__sed} -i -e '1s,/usr/bin/env python3,%{__python3},' Tools/ssl/make_ssl_data.py | |
613 | %{__sed} -i -e '1s,/usr/bin/python\>,%{__python},' Tools/{gdb/libpython,pybench/pybench}.py | |
614 | grep -l '/usr/bin/env python' -r Demo Tools | xargs %{__sed} -i -e '1s,/usr/bin/env python$,%{__python},' | |
615 | ||
80302796 | 616 | %build |
a07178c8 | 617 | %{__aclocal} |
a20bb51c | 618 | %{__autoconf} |
80302796 | 619 | %configure \ |
c2623236 | 620 | CC="%{__cc}" \ |
01758773 AM |
621 | OPT="%{rpmcflags}" \ |
622 | CPPFLAGS="%{rpmcppflags}" \ | |
623 | LDFLAGS="%{rpmldflags}" \ | |
633154b9 AM |
624 | ac_cv_posix_semaphores_enabled=yes \ |
625 | ac_cv_broken_sem_getvalue=no \ | |
01758773 | 626 | %{?with_debug:--with-pydebug} \ |
9d0d4238 | 627 | --with-threads \ |
6c025de4 | 628 | --with-system-ffi \ |
c9c8df30 | 629 | --enable-ipv6 \ |
5531b6a9 | 630 | --enable-unicode=ucs4 \ |
c68e08ad | 631 | --enable-shared \ |
c7d9ea6b AM |
632 | --with-dbmliborder=gdbm:bdb \ |
633 | --without-ensurepip | |
01758773 AM |
634 | |
635 | %{__make} 2>&1 | awk ' | |
b53e6307 AM |
636 | BEGIN { fail = 0; logmsg = ""; } |
637 | { | |
21894ccc ER |
638 | if ($0 ~ /\*\*\* WARNING:/) { |
639 | fail = 1; | |
640 | logmsg = logmsg $0; | |
641 | } | |
642 | print $0; | |
b53e6307 AM |
643 | } |
644 | END { if (fail) { print "\nPROBLEMS FOUND:"; print logmsg; exit(1); } }' | |
3846ac63 | 645 | |
f8774cc1 | 646 | %if %{with tests} |
41db756b | 647 | LC_ALL=C.UTF-8 \ |
69f899d3 | 648 | WITHIN_PYTHON_RPM_BUILD=1 %{__make} -j1 test \ |
05d1ed70 | 649 | TESTOPTS="%{test_flags} %{test_list}" \ |
72fdb1fa | 650 | TESTPYTHON="LD_LIBRARY_PATH=`pwd` PYTHONHOME=`pwd` PYTHONPATH=`pwd`/Lib:`pwd`/Lib/lib-tk:`pwd`/build/lib.linux-`uname -m`-%{py_ver} ./python -tt" |
f8774cc1 | 651 | %endif |
5531b6a9 | 652 | |
adc34f9b | 653 | %install |
654 | rm -rf $RPM_BUILD_ROOT | |
6c765af5 | 655 | install -d $RPM_BUILD_ROOT{%{_bindir},%{_libdir}} \ |
72dcf1e0 | 656 | $RPM_BUILD_ROOT{%{py_sitedir},%{_mandir}/man1} \ |
1265a205 | 657 | $RPM_BUILD_ROOT%{_prefix}/local/%{_lib}/python%{py_ver}/site-packages \ |
dbafd771 | 658 | $RPM_BUILD_ROOT%{py_sitescriptdir} \ |
9f13b05c | 659 | $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} \ |
30baa9fb | 660 | $RPM_BUILD_ROOT%{_infodir} \ |
d9fe451a | 661 | $RPM_BUILD_ROOT%{_docdir} \ |
30baa9fb | 662 | $RPM_BUILD_ROOT/etc/shrc.d |
9d0d4238 | 663 | |
daf8bffc JB |
664 | %{__make} install \ |
665 | DESTDIR=$RPM_BUILD_ROOT | |
5ac3f69c | 666 | |
d9fe451a | 667 | # docs in constant location |
668 | ln -sf python-doc-%{version} $RPM_BUILD_ROOT%{_docdir}/python-doc | |
669 | ||
d008fe98 | 670 | %if %{with info} |
9f13b05c | 671 | %{__make} -C Doc/info |
274e744e | 672 | cp -p Doc/info/python*info* $RPM_BUILD_ROOT%{_infodir} |
d008fe98 | 673 | %endif |
9f13b05c | 674 | |
274e744e | 675 | cp -p Makefile.pre.in $RPM_BUILD_ROOT%{py_libdir}/config |
826c17e1 | 676 | |
05607efb | 677 | %{__mv} $RPM_BUILD_ROOT{%{py_libdir}/config,%{_libdir}}/libpython%{py_ver}.a |
130f1463 | 678 | ln -sf libpython%{py_ver}.a $RPM_BUILD_ROOT%{_libdir}/libpython.a |
9d0d4238 | 679 | ln -sf libpython%{py_ver}.so.1.0 $RPM_BUILD_ROOT%{_libdir}/libpython.so |
d3dbe63f | 680 | ln -sf libpython%{py_ver}.so.1.0 $RPM_BUILD_ROOT%{_libdir}/libpython%{py_ver}.so |
35c336e3 | 681 | |
90c0662f | 682 | install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} |
b8dbbecc | 683 | cp -a Tools Demo $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} |
9d555a37 | 684 | |
30baa9fb | 685 | # |
686 | # create several useful aliases, such as timeit.py, profile.py, pdb.py, smtpd.py | |
687 | # | |
688 | ||
689 | # for python devel tools | |
690 | for script in timeit profile pdb pstats; do | |
f7403710 AM |
691 | echo alias $script.py=\"python -m ${script}\" |
692 | done > $RPM_BUILD_ROOT/etc/shrc.d/python-devel.sh | |
30baa9fb | 693 | |
30baa9fb | 694 | sed 's/=/ /' \ |
f7403710 AM |
695 | < $RPM_BUILD_ROOT/etc/shrc.d/python-devel.sh \ |
696 | > $RPM_BUILD_ROOT/etc/shrc.d/python-devel.csh | |
30baa9fb | 697 | |
698 | # for python modules | |
699 | for script in smtpd webbrowser; do | |
f7403710 AM |
700 | echo alias $script.py=\"python -m ${script}\" |
701 | done > $RPM_BUILD_ROOT/etc/shrc.d/python-modules.sh | |
c87d7700 | 702 | %{__rm} $RPM_BUILD_ROOT%{_bindir}/smtpd.py |
30baa9fb | 703 | |
704 | sed 's/=/ /' \ | |
f7403710 AM |
705 | < $RPM_BUILD_ROOT/etc/shrc.d/python-modules.sh \ |
706 | > $RPM_BUILD_ROOT/etc/shrc.d/python-modules.csh | |
f19fca05 | 707 | |
2b63ccc7 | 708 | # just to cut the noise, as they are not packaged (now) |
c87d7700 JB |
709 | %{__rm} $RPM_BUILD_ROOT%{py_libdir}/ctypes/macholib/fetch_macholib |
710 | %{__rm} $RPM_BUILD_ROOT%{py_libdir}/distutils/command/command_template | |
711 | %{__rm} $RPM_BUILD_ROOT%{py_libdir}/distutils/command/wininst-*.exe | |
dbafd771 | 712 | %{__rm} -r $RPM_BUILD_ROOT%{py_libdir}/idlelib/idle_test |
c87d7700 JB |
713 | %{__rm} $RPM_BUILD_ROOT%{py_libdir}/idlelib/ChangeLog |
714 | %{__rm} $RPM_BUILD_ROOT%{py_libdir}/idlelib/help.html | |
715 | %{__rm} $RPM_BUILD_ROOT%{py_libdir}/idlelib/idle.pyw | |
716 | %{__rm} -r $RPM_BUILD_ROOT%{py_libdir}/plat-*/regen | |
717 | # packaged as %doc | |
718 | %{__rm} $RPM_BUILD_ROOT%{py_libdir}/pdb.doc | |
c7d9ea6b | 719 | |
dbafd771 JK |
720 | find $RPM_BUILD_ROOT%{py_libdir} -name \*.bat -exec rm {} \; |
721 | find $RPM_BUILD_ROOT%{py_libdir} -name \*.txt -exec rm {} \; | |
722 | find $RPM_BUILD_ROOT%{py_libdir} -name README\* -exec rm {} \; | |
2b63ccc7 | 723 | |
c87d7700 | 724 | %{__mv} $RPM_BUILD_ROOT%{py_incdir}/pyconfig.h $RPM_BUILD_ROOT%{py_libdir}/config/pyconfig.h |
59012690 | 725 | sed -e's#@PREFIX@#%{_prefix}#g;s#@PY_VER@#%{py_ver}#g' %{SOURCE2} > $RPM_BUILD_ROOT%{py_incdir}/pyconfig.h |
538a779a | 726 | |
adc34f9b | 727 | %clean |
728 | rm -rf $RPM_BUILD_ROOT | |
729 | ||
59012690 | 730 | %post libs -p /sbin/ldconfig |
538a779a | 731 | |
c038dfd2 | 732 | %postun libs -p /sbin/ldconfig |
8a3b6e65 | 733 | |
6ec2a8c2 | 734 | %post doc-info -p /sbin/postshell |
9002361f | 735 | -/usr/sbin/fix-info-dir -c %{_infodir} |
9f13b05c | 736 | |
6ec2a8c2 | 737 | %postun doc-info -p /sbin/postshell |
9002361f | 738 | -/usr/sbin/fix-info-dir -c %{_infodir} |
9f13b05c | 739 | |
a9ce5112 | 740 | %files |
adc34f9b | 741 | %defattr(644,root,root,755) |
fb20360f JB |
742 | %attr(755,root,root) %{_bindir}/python |
743 | %attr(755,root,root) %{_bindir}/python2 | |
744 | %attr(755,root,root) %{_bindir}/python%{py_ver} | |
4675b5d8 | 745 | %{_mandir}/man1/python.1* |
1ec59683 | 746 | %{_mandir}/man1/python2.1* |
876808b7 | 747 | |
efc1a08b | 748 | %files modules |
9bc1f934 | 749 | %defattr(644,root,root,755) |
06168997 | 750 | %doc Lib/pdb.doc |
27b89c8b | 751 | %config(noreplace) %verify(not md5 mtime size) /etc/shrc.d/python-modules* |
dbafd771 JK |
752 | %exclude %{py_libdir}/_abcoll.py[co] |
753 | %exclude %{py_libdir}/abc.py[co] | |
754 | %exclude %{py_libdir}/UserDict.py[co] | |
755 | %exclude %{py_libdir}/codecs.py[co] | |
756 | %exclude %{py_libdir}/copy_reg.py[co] | |
757 | %exclude %{py_libdir}/genericpath.py[co] | |
758 | %exclude %{py_libdir}/linecache.py[co] | |
759 | %exclude %{py_libdir}/locale.py[co] | |
760 | %exclude %{py_libdir}/posixpath.py[co] | |
761 | %exclude %{py_libdir}/profile.py[co] | |
762 | %exclude %{py_libdir}/pstats.py[co] | |
763 | %exclude %{py_libdir}/pydoc.py[co] | |
764 | %exclude %{py_libdir}/re.py[co] | |
765 | %exclude %{py_libdir}/site.py[co] | |
766 | %exclude %{py_libdir}/sre_*.py[co] | |
767 | %exclude %{py_libdir}/stat.py[co] | |
768 | %exclude %{py_libdir}/sysconfig.py[co] | |
e25b75d7 | 769 | %exclude %{py_libdir}/_sysconfigdata.py[co] |
dbafd771 JK |
770 | %exclude %{py_libdir}/timeit.py[co] |
771 | %exclude %{py_libdir}/os.py[co] | |
772 | %exclude %{py_libdir}/_weakrefset.py[co] | |
773 | %exclude %{py_libdir}/encodings/*.py[co] | |
e71fef50 | 774 | %exclude %{py_libdir}/traceback.py[co] |
dbafd771 JK |
775 | %exclude %{py_libdir}/types.py[co] |
776 | %exclude %{py_libdir}/warnings.py[co] | |
777 | ||
778 | %{py_libdir}/*.py[co] | |
efc1a08b | 779 | |
fb20360f | 780 | %{py_dyndir}/Python-%{version}-py%{py_ver}.egg-info |
9d3f9601 | 781 | |
d65da634 | 782 | # |
efc1a08b | 783 | # list .so modules to be sure that all of them are built |
d65da634 | 784 | # |
785 | ||
1f218cb3 | 786 | # three modules below do not work on 64-bit architectures |
d65da634 | 787 | # see Python README file for explanation |
3794a263 | 788 | %ifnarch alpha ia64 ppc64 sparc64 %{x8664} aarch64 |
d65da634 | 789 | %attr(755,root,root) %{py_dyndir}/imageop.so |
5531b6a9 | 790 | # sizeof(long) != sizeof(int), so dl module will not be built on 64-bit |
791 | # platforms | |
792 | %attr(755,root,root) %{py_dyndir}/dl.so | |
d65da634 | 793 | %endif |
794 | ||
6b36d48a | 795 | %attr(755,root,root) %{py_dyndir}/audioop.so |
30baa9fb | 796 | %attr(755,root,root) %{py_dyndir}/array.so |
797 | %attr(755,root,root) %{py_dyndir}/binascii.so | |
72dcf1e0 | 798 | %attr(755,root,root) %{py_dyndir}/_bisect.so |
efc1a08b | 799 | %attr(755,root,root) %{py_dyndir}/_bsddb.so |
30baa9fb | 800 | %attr(755,root,root) %{py_dyndir}/bz2.so |
801 | %attr(755,root,root) %{py_dyndir}/cmath.so | |
72dcf1e0 | 802 | %attr(755,root,root) %{py_dyndir}/_codecs_cn.so |
803 | %attr(755,root,root) %{py_dyndir}/_codecs_hk.so | |
804 | %attr(755,root,root) %{py_dyndir}/_codecs_iso2022.so | |
805 | %attr(755,root,root) %{py_dyndir}/_codecs_jp.so | |
806 | %attr(755,root,root) %{py_dyndir}/_codecs_kr.so | |
807 | %attr(755,root,root) %{py_dyndir}/_codecs_tw.so | |
c9c8df30 | 808 | %attr(755,root,root) %{py_dyndir}/_collections.so |
30baa9fb | 809 | %attr(755,root,root) %{py_dyndir}/cPickle.so |
810 | %attr(755,root,root) %{py_dyndir}/crypt.so | |
811 | %attr(755,root,root) %{py_dyndir}/cStringIO.so | |
efc1a08b | 812 | %attr(755,root,root) %{py_dyndir}/_csv.so |
9d3f9601 | 813 | %attr(755,root,root) %{py_dyndir}/_ctypes*.so |
efc1a08b | 814 | %attr(755,root,root) %{py_dyndir}/_curses_panel.so |
30baa9fb | 815 | %attr(755,root,root) %{py_dyndir}/_curses.so |
816 | %attr(755,root,root) %{py_dyndir}/datetime.so | |
817 | %attr(755,root,root) %{py_dyndir}/_elementtree.so | |
818 | %attr(755,root,root) %{py_dyndir}/_functools.so | |
819 | %attr(755,root,root) %{py_dyndir}/_hashlib.so | |
72dcf1e0 | 820 | %attr(755,root,root) %{py_dyndir}/_heapq.so |
132c1a2a | 821 | %attr(755,root,root) %{py_dyndir}/_io.so |
c9c8df30 | 822 | %attr(755,root,root) %{py_dyndir}/_json.so |
efc1a08b | 823 | %attr(755,root,root) %{py_dyndir}/_locale.so |
30baa9fb | 824 | %attr(755,root,root) %{py_dyndir}/_lsprof.so |
72dcf1e0 | 825 | %attr(755,root,root) %{py_dyndir}/_multibytecodec.so |
c9c8df30 | 826 | %attr(755,root,root) %{py_dyndir}/_multiprocessing.so |
efc1a08b | 827 | %attr(755,root,root) %{py_dyndir}/_random.so |
3846ac63 | 828 | %{?with_openssl097:%attr(755,root,root) %{py_dyndir}/_sha*.so} |
efc1a08b | 829 | %attr(755,root,root) %{py_dyndir}/_socket.so |
830 | %attr(755,root,root) %{py_dyndir}/_ssl.so | |
831 | %attr(755,root,root) %{py_dyndir}/_testcapi.so | |
e89fc570 | 832 | %ifnarch sparc64 |
5531b6a9 | 833 | %attr(755,root,root) %{py_dyndir}/dbm.so |
e89fc570 | 834 | %endif |
efc1a08b | 835 | %attr(755,root,root) %{py_dyndir}/fcntl.so |
c9c8df30 | 836 | %attr(755,root,root) %{py_dyndir}/future_builtins.so |
efc1a08b | 837 | %attr(755,root,root) %{py_dyndir}/gdbm.so |
838 | %attr(755,root,root) %{py_dyndir}/grp.so | |
efc1a08b | 839 | %attr(755,root,root) %{py_dyndir}/itertools.so |
840 | %attr(755,root,root) %{py_dyndir}/linuxaudiodev.so | |
841 | %attr(755,root,root) %{py_dyndir}/math.so | |
efc1a08b | 842 | %attr(755,root,root) %{py_dyndir}/mmap.so |
7df14d0f | 843 | %attr(755,root,root) %{py_dyndir}/nis.so |
efc1a08b | 844 | %attr(755,root,root) %{py_dyndir}/operator.so |
845 | %attr(755,root,root) %{py_dyndir}/ossaudiodev.so | |
846 | %attr(755,root,root) %{py_dyndir}/parser.so | |
efc1a08b | 847 | %attr(755,root,root) %{py_dyndir}/pyexpat.so |
4c04ad0e | 848 | %attr(755,root,root) %{py_dyndir}/readline.so |
efc1a08b | 849 | %attr(755,root,root) %{py_dyndir}/resource.so |
efc1a08b | 850 | %attr(755,root,root) %{py_dyndir}/select.so |
efc1a08b | 851 | %attr(755,root,root) %{py_dyndir}/strop.so |
852 | %attr(755,root,root) %{py_dyndir}/syslog.so | |
853 | %attr(755,root,root) %{py_dyndir}/termios.so | |
854 | %attr(755,root,root) %{py_dyndir}/time.so | |
30baa9fb | 855 | %attr(755,root,root) %{py_dyndir}/spwd.so |
efc1a08b | 856 | %attr(755,root,root) %{py_dyndir}/unicodedata.so |
efc1a08b | 857 | %attr(755,root,root) %{py_dyndir}/zlib.so |
9bc1f934 | 858 | |
dbafd771 JK |
859 | %dir %{py_libdir}/plat-* |
860 | %{py_libdir}/plat-*/*.py[co] | |
9d0d4238 | 861 | |
dbafd771 JK |
862 | %dir %{py_libdir}/bsddb |
863 | %{py_libdir}/bsddb/*.py[co] | |
21a422d0 | 864 | |
dbafd771 JK |
865 | %dir %{py_libdir}/compiler |
866 | %{py_libdir}/compiler/*.py[co] | |
ba317ddd | 867 | |
dbafd771 JK |
868 | %dir %{py_libdir}/ctypes |
869 | %dir %{py_libdir}/ctypes/macholib | |
870 | %{py_libdir}/ctypes/*.py[co] | |
871 | %{py_libdir}/ctypes/macholib/*.py[co] | |
30baa9fb | 872 | |
dbafd771 JK |
873 | %dir %{py_libdir}/curses |
874 | %{py_libdir}/curses/*.py[co] | |
21a422d0 | 875 | |
dbafd771 JK |
876 | %dir %{py_libdir}/distutils |
877 | %dir %{py_libdir}/distutils/command | |
878 | %{py_libdir}/distutils/*.py[co] | |
879 | %{py_libdir}/distutils/command/*.py[co] | |
21a422d0 | 880 | |
dbafd771 JK |
881 | %dir %{py_libdir}/email |
882 | %dir %{py_libdir}/email/mime | |
883 | %{py_libdir}/email/*.py[co] | |
884 | %{py_libdir}/email/mime/*.py[co] | |
ba317ddd | 885 | |
dbafd771 JK |
886 | %dir %{py_libdir}/ensurepip |
887 | %{py_libdir}/ensurepip/*.py[co] | |
888 | %{py_libdir}/ensurepip/_bundled | |
c7d9ea6b | 889 | |
dbafd771 | 890 | %dir %{py_libdir}/idlelib |
38b625e6 | 891 | |
dbafd771 JK |
892 | %dir %{py_libdir}/importlib |
893 | %{py_libdir}/importlib/*.py[co] | |
132c1a2a | 894 | |
dbafd771 JK |
895 | %dir %{py_libdir}/json |
896 | %{py_libdir}/json/*.py[co] | |
c9c8df30 | 897 | |
dbafd771 JK |
898 | %dir %{py_libdir}/logging |
899 | %{py_libdir}/logging/*.py[co] | |
ba317ddd | 900 | |
dbafd771 JK |
901 | %dir %{py_libdir}/multiprocessing |
902 | %dir %{py_libdir}/multiprocessing/dummy | |
903 | %{py_libdir}/multiprocessing/*.py[co] | |
904 | %{py_libdir}/multiprocessing/dummy/*.py[co] | |
c9c8df30 | 905 | |
dbafd771 JK |
906 | %dir %{py_libdir}/unittest |
907 | %{py_libdir}/unittest/*.py[co] | |
908 | %dir %{py_libdir}/unittest/test | |
909 | %{py_libdir}/unittest/test/*.py[co] | |
132c1a2a | 910 | |
dbafd771 JK |
911 | %dir %{py_libdir}/wsgiref |
912 | %{py_libdir}/wsgiref/*.py[co] | |
913 | %{py_libdir}/wsgiref.egg-info | |
21a422d0 | 914 | |
dbafd771 JK |
915 | %dir %{py_libdir}/xml |
916 | %dir %{py_libdir}/xml/dom | |
917 | %dir %{py_libdir}/xml/etree | |
918 | %dir %{py_libdir}/xml/parsers | |
919 | %dir %{py_libdir}/xml/sax | |
920 | %{py_libdir}/xml/*.py[co] | |
921 | %{py_libdir}/xml/dom/*.py[co] | |
922 | %{py_libdir}/xml/etree/*.py[co] | |
923 | %{py_libdir}/xml/parsers/*.py[co] | |
924 | %{py_libdir}/xml/sax/*.py[co] | |
c52f3e5e | 925 | |
6acc3a01 | 926 | %files modules-sqlite |
927 | %defattr(644,root,root,755) | |
928 | %attr(755,root,root) %{py_dyndir}/_sqlite3.so | |
dbafd771 JK |
929 | %dir %{py_libdir}/sqlite3 |
930 | %{py_libdir}/sqlite3/*.py[co] | |
6acc3a01 | 931 | |
9bc1f934 | 932 | %files libs |
933 | %defattr(644,root,root,755) | |
fb20360f | 934 | %attr(755,root,root) %{_libdir}/libpython%{py_ver}.so.* |
9bc1f934 | 935 | |
d3dc0a50 | 936 | %dir %{py_dyndir} |
937 | %dir %{py_libdir} | |
329003a4 | 938 | %dir %{_datadir}/python%{py_ver} |
92bddedf | 939 | %dir %{py_sitescriptdir} |
d3dc0a50 | 940 | %dir %{py_sitedir} |
941 | ||
1265a205 | 942 | # for locally installed packages |
ea4f2d47 | 943 | %dir %{_prefix}/local/%{_lib}/python%{py_ver} |
1265a205 ER |
944 | %dir %{_prefix}/local/%{_lib}/python%{py_ver}/site-packages |
945 | ||
d537fe3a | 946 | # shared modules required by python library |
30baa9fb | 947 | %attr(755,root,root) %{py_dyndir}/_struct.so |
d3dc0a50 | 948 | |
d537fe3a | 949 | # modules required by python library |
dbafd771 JK |
950 | %{py_libdir}/_abcoll.py[co] |
951 | %{py_libdir}/abc.py[co] | |
952 | %{py_libdir}/UserDict.py[co] | |
953 | %{py_libdir}/codecs.py[co] | |
954 | %{py_libdir}/copy_reg.py[co] | |
955 | %{py_libdir}/genericpath.py[co] | |
956 | %{py_libdir}/linecache.py[co] | |
957 | %{py_libdir}/locale.py[co] | |
958 | %{py_libdir}/posixpath.py[co] | |
959 | %{py_libdir}/re.py[co] | |
960 | %{py_libdir}/site.py[co] | |
961 | %{py_libdir}/sre_*.py[co] | |
962 | %{py_libdir}/stat.py[co] | |
963 | %{py_libdir}/sysconfig.py[co] | |
e25b75d7 | 964 | %{py_libdir}/_sysconfigdata.py[co] |
dbafd771 JK |
965 | %{py_libdir}/os.py[co] |
966 | %{py_libdir}/_weakrefset.py[co] | |
e71fef50 | 967 | %{py_libdir}/traceback.py[co] |
55c63f85 | 968 | # needed by the dynamic sys.lib patch |
dbafd771 JK |
969 | %{py_libdir}/types.py[co] |
970 | %{py_libdir}/warnings.py[co] | |
d3dc0a50 | 971 | |
d537fe3a | 972 | # encodings required by python library |
dbafd771 JK |
973 | %dir %{py_libdir}/encodings |
974 | %{py_libdir}/encodings/*.py[co] | |
d3dc0a50 | 975 | |
30c7170b AM |
976 | # required by sysconfig.py |
977 | %dir %{py_libdir}/config | |
978 | %{py_libdir}/config/Makefile | |
59012690 | 979 | %{py_libdir}/config/pyconfig.h |
30c7170b | 980 | %dir %{py_incdir} |
59012690 | 981 | %{py_incdir}/pyconfig.h |
30c7170b | 982 | |
f7403710 | 983 | %files -n pydoc |
9bc1f934 | 984 | %defattr(644,root,root,755) |
985 | %attr(755,root,root) %{_bindir}/pydoc | |
dbafd771 JK |
986 | %{py_libdir}/pydoc.py[co] |
987 | %dir %{py_libdir}/pydoc_data | |
988 | %{py_libdir}/pydoc_data/*.py[co] | |
9d0d4238 | 989 | |
f7403710 | 990 | %files -n idle |
9d0d4238 | 991 | %defattr(644,root,root,755) |
f7403710 | 992 | %attr(755,root,root) %{_bindir}/idle |
dbafd771 JK |
993 | %dir %{py_libdir}/idlelib/Icons |
994 | %{py_libdir}/idlelib/*.py[co] | |
995 | %{py_libdir}/idlelib/Icons/* | |
996 | %{py_libdir}/idlelib/*.def | |
9bc1f934 | 997 | |
adc34f9b | 998 | %files devel |
999 | %defattr(644,root,root,755) | |
12d09cd7 | 1000 | %doc Misc/{ACKS,NEWS,README,README.valgrind,valgrind-python.supp} |
fb20360f JB |
1001 | %attr(755,root,root) %{_bindir}/python-config |
1002 | %attr(755,root,root) %{_bindir}/python2-config | |
1003 | %attr(755,root,root) %{_bindir}/python%{py_ver}-config | |
1004 | %attr(755,root,root) %{_libdir}/libpython%{py_ver}.so | |
1005 | %attr(755,root,root) %{_libdir}/libpython.so | |
67c01d08 | 1006 | %{py_incdir}/*.h |
30c7170b | 1007 | %exclude %{py_incdir}/pyconfig.h |
fb20360f JB |
1008 | %{_pkgconfigdir}/python.pc |
1009 | %{_pkgconfigdir}/python2.pc | |
1010 | %{_pkgconfigdir}/python-%{py_ver}.pc | |
d12ec25a | 1011 | |
d12ec25a | 1012 | %attr(755,root,root) %{py_libdir}/config/makesetup |
1013 | %attr(755,root,root) %{py_libdir}/config/install-sh | |
826c17e1 | 1014 | %{py_libdir}/config/Makefile.pre.in |
d12ec25a | 1015 | %{py_libdir}/config/Setup |
1016 | %{py_libdir}/config/Setup.config | |
1017 | %{py_libdir}/config/Setup.local | |
1018 | %{py_libdir}/config/config.c | |
1019 | %{py_libdir}/config/config.c.in | |
30baa9fb | 1020 | %{py_libdir}/config/python.o |
9291d687 | 1021 | |
9bc1f934 | 1022 | %files devel-src |
4757490f | 1023 | %defattr(644,root,root,755) |
dbafd771 JK |
1024 | %attr(-,root,root) %{py_libdir}/*.py |
1025 | %{py_libdir}/plat-*/*.py | |
1026 | %{py_libdir}/bsddb/*.py | |
1027 | %{py_libdir}/ctypes/*.py | |
1028 | %{py_libdir}/ctypes/macholib/*.py | |
1029 | %{py_libdir}/compiler/*.py | |
1030 | %{py_libdir}/curses/*.py | |
1031 | %{py_libdir}/distutils/*.py | |
1032 | %{py_libdir}/distutils/command/*.py | |
1033 | %{py_libdir}/email/*.py | |
1034 | %{py_libdir}/email/mime/*.py | |
1035 | %{py_libdir}/encodings/*.py | |
1036 | %{py_libdir}/hotshot/*.py | |
1037 | %{py_libdir}/ensurepip/*.py | |
1038 | %{py_libdir}/idlelib/*.py | |
1039 | %{py_libdir}/importlib/*.py | |
1040 | %{py_libdir}/json/*.py | |
1041 | %{py_libdir}/lib2to3/*.py | |
1042 | %{py_libdir}/lib2to3/fixes/*.py | |
1043 | %{py_libdir}/lib2to3/pgen2/*.py | |
1044 | %{py_libdir}/logging/*.py | |
1045 | %{py_libdir}/multiprocessing/*.py | |
1046 | %{py_libdir}/multiprocessing/dummy/*.py | |
1047 | %{py_libdir}/pydoc_data/*.py | |
1048 | %{py_libdir}/sqlite3/*.py | |
1049 | %{py_libdir}/unittest/*.py | |
1050 | %{py_libdir}/unittest/test/*.py | |
1051 | %{py_libdir}/wsgiref/*.py | |
1052 | %{py_libdir}/xml/*.py | |
1053 | %{py_libdir}/xml/dom/*.py | |
1054 | %{py_libdir}/xml/etree/*.py | |
1055 | %{py_libdir}/xml/parsers/*.py | |
1056 | %{py_libdir}/xml/sax/*.py | |
9bc1f934 | 1057 | |
f19fca05 | 1058 | %files devel-tools |
3164b41e | 1059 | %defattr(644,root,root,755) |
27b89c8b | 1060 | %config(noreplace) %verify(not md5 mtime size) /etc/shrc.d/python-devel* |
30baa9fb | 1061 | |
dbbdab91 | 1062 | %attr(755,root,root) %{py_dyndir}/_hotshot.so |
dbafd771 JK |
1063 | %dir %{py_libdir}/hotshot |
1064 | %{py_libdir}/hotshot/*.py[co] | |
1065 | %{py_libdir}/profile.py[co] | |
1066 | %{py_libdir}/pstats.py[co] | |
1067 | %{py_libdir}/timeit.py[co] | |
dbbdab91 AF |
1068 | |
1069 | %files 2to3 | |
8c748ea7 | 1070 | %defattr(644,root,root,755) |
c9c8df30 | 1071 | %attr(755,root,root) %{_bindir}/2to3 |
dbafd771 JK |
1072 | %dir %{py_libdir}/lib2to3 |
1073 | %dir %{py_libdir}/lib2to3/fixes | |
1074 | %dir %{py_libdir}/lib2to3/pgen2 | |
1075 | %{py_libdir}/lib2to3/*.py[co] | |
1076 | %{py_libdir}/lib2to3/*.pickle | |
1077 | %{py_libdir}/lib2to3/fixes/*.py[co] | |
1078 | %{py_libdir}/lib2to3/pgen2/*.py[co] | |
c9c8df30 | 1079 | |
673628f8 | 1080 | %files static |
1081 | %defattr(644,root,root,755) | |
fb20360f JB |
1082 | %{_libdir}/libpython%{py_ver}.a |
1083 | %{_libdir}/libpython.a | |
a8ed86ea | 1084 | |
9d555a37 | 1085 | %files examples |
1086 | %defattr(644,root,root,755) | |
90c0662f | 1087 | %{_examplesdir}/%{name}-%{version} |
9d555a37 | 1088 | |
72d4c735 | 1089 | %files test |
274e744e | 1090 | %defattr(644,root,root,755) |
dbafd771 JK |
1091 | %{py_libdir}/test |
1092 | %{py_libdir}/bsddb/test | |
1093 | %{py_libdir}/ctypes/test | |
1094 | %{py_libdir}/distutils/tests | |
1095 | %{py_libdir}/email/test | |
1096 | %{py_libdir}/sqlite3/test | |
1097 | %{py_libdir}/json/tests | |
1098 | %{py_libdir}/lib2to3/tests | |
72d4c735 | 1099 | |
9388650a | 1100 | %files doc |
af97e69f | 1101 | %defattr(644,root,root,755) |
c0f19ca3 | 1102 | %doc python-%{version}-docs-html/* |
d9fe451a | 1103 | %{_docdir}/python-doc |
adc34f9b | 1104 | |
d008fe98 | 1105 | %if %{with info} |
9f13b05c | 1106 | %files doc-info |
1107 | %defattr(644,root,root,755) | |
1f218cb3 | 1108 | %{_infodir}/*.info* |
d008fe98 | 1109 | %endif |
9f13b05c | 1110 | |
9ef7b464 | 1111 | %if %{with tkinter} |
39ac7110 | 1112 | %files tkinter |
adc34f9b | 1113 | %defattr(644,root,root,755) |
dbafd771 | 1114 | %{py_libdir}/lib-tk |
d12ec25a | 1115 | %attr(755,root,root) %{py_dyndir}/_tkinter.so |
9ef7b464 | 1116 | %endif |