]> git.pld-linux.org Git - packages/python.git/blob - python.spec
- added db patch to allow db 4.8/5.0
[packages/python.git] / python.spec
1 #
2 # TODO
3 # - test_distutils fails for unknown reason: (does it still do with new lib64 patch?)
4 #   AssertionError: '/tmp/tmpaomC0l/installation/share/python' != '/tmp/tmpaomC0l/installation/lib/python'
5 # - test_pydoc fails because of PYTHONPATH override
6 # - test_zlib fails with zlib 1.2.4 - recheck with newer python
7 # - change searchpath order so /usr/lib* is before /usr/share
8 # - kill lib-tk from searchpath
9 # - kill BR: file requirement from lib64 patch
10 # - security(CVE-2008-4108)
11 #   http://securitytracker.com/alerts/2008/Sep/1020904.html
12 #
13 # Conditional build:
14 %bcond_with     info                    # build info pages (requires emacs, fails in python-2.5.0)
15 %bcond_without  tkinter                 # disables tkinter module building
16 %bcond_without  tests                   # disables Python testing
17 %bcond_with     verbose_tests           # runs tests in verbose mode
18 %bcond_with     openssl097
19 #
20 # tests which will not work on 64-bit platforms
21 %define         no64bit_tests   test_audioop test_rgbimg test_imageop
22 # tests which may fail because of builder environment limitations (no /proc or /dev/pts)
23 %define         nobuilder_tests test_resource test_openpty test_socket test_nis test_posix test_locale test_pty test_urllib2
24 # tests which fail because of some unknown/unresolved reason (this list should be empty)
25 %define         broken_tests test_anydbm test_bsddb test_re test_shelve test_whichdb test_zipimport test_distutils test_pydoc test_zlib
26
27 %define beta            %{nil}
28
29 %define py_ver          2.6
30 %define py_prefix       %{_prefix}
31 %define py_libdir       %{py_prefix}/%{_lib}/python%{py_ver}
32 %define py_incdir       %{_includedir}/python%{py_ver}
33 %define py_sitedir      %{py_libdir}/site-packages
34 %define py_dyndir       %{py_libdir}/lib-dynload
35
36 Summary:        Very high level scripting language with X interface
37 Summary(es.UTF-8):      Lenguaje script de alto nivel con interfaz X
38 Summary(fr.UTF-8):      Langage de script de très haut niveau avec interface X
39 Summary(pl.UTF-8):      Python - język obiektowy wysokiego poziomu
40 Summary(pt_BR.UTF-8):   Linguagem de programação interpretada de alto nível
41 Summary(ru.UTF-8):      Язык программирования очень высокого уровня с X-интерфейсом
42 Summary(tr.UTF-8):      X arayüzlü, yüksek düzeyli, kabuk yorumlayıcı dili
43 Summary(uk.UTF-8):      Мова програмування дуже високого рівня з X-інтерфейсом
44 Name:           python
45 Version:        %{py_ver}.5
46 %define dver %{version}
47 Release:        3
48 Epoch:          1
49 License:        PSF
50 Group:          Applications
51 Source0:        http://www.python.org/ftp/python/%{version}/Python-%{version}%{beta}.tar.bz2
52 # Source0-md5:  6bef0417e71a1a1737ccf5750420fdb3
53 Source1:        http://www.python.org/ftp/python/doc/%{dver}/%{name}-%{dver}-docs-html.tar.bz2
54 # Source1-md5:  4becde65eb92d8d24b503a44f6d01c62
55 Patch1:         %{name}-%{name}path.patch
56 Patch2:         %{name}-no_ndbm.patch
57 Patch3:         %{name}-ac_fixes.patch
58 Patch4:         %{name}-noarch_to_datadir.patch
59 Patch5:         %{name}-lib64.patch
60 Patch6:         %{name}-db.patch
61 URL:            http://www.python.org/
62 BuildRequires:  autoconf >= 2.61
63 BuildRequires:  bluez-libs-devel
64 BuildRequires:  bzip2-devel
65 BuildRequires:  db-devel >= 4
66 %{?with_info:BuildRequires:     emacs >= 21}
67 BuildRequires:  expat-devel >= 1:1.95.7
68 BuildRequires:  file
69 BuildRequires:  gdbm-devel >= 1.8.3
70 BuildRequires:  gmp-devel >= 4.0
71 BuildRequires:  libffi-devel
72 BuildRequires:  libstdc++-devel
73 BuildRequires:  ncurses-ext-devel >= 5.2
74 %if %{with openssl097}
75 BuildRequires:  openssl-devel < 0.9.8
76 %else
77 BuildRequires:  openssl-devel >= 0.9.8
78 %endif
79 BuildRequires:  readline-devel >= 5.0
80 BuildRequires:  rpm-pythonprov
81 BuildRequires:  sed >= 4.0
82 BuildRequires:  sqlite3-devel >= 3.3.5
83 %{?with_info:BuildRequires:     tetex-makeindex}
84 %{?with_tkinter:BuildRequires:  tix-devel >= 1:8.1.4-4}
85 %{?with_tkinter:BuildRequires:  tk-devel >= 8.4.3}
86 BuildRequires:  zlib-devel
87 Requires:       %{name}-libs = %{epoch}:%{version}-%{release}
88 Obsoletes:      python2
89 Conflicts:      bzr < 1.8
90 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
91
92 %if %{with verbose_tests}
93 %define test_flags -v -l -x
94 %else
95 %define test_flags -l -x
96 %endif
97
98 %ifarch alpha ia64 ppc64 ppc64 %{x8664}
99 %define test_list %{nobuilder_tests} %{broken_tests} %{no64bit_tests}
100 %else
101 %define test_list %{nobuilder_tests} %{broken_tests}
102 %endif
103
104 %ifarch sparc sparcv9
105 %define test_list %{nobuilder_tests} %{broken_tests} test_fcntl test_ioctl
106 %endif
107
108 %ifarch sparc64
109 %define test_list %{nobuilder_tests} %{broken_tests} %{no64bit_tests} test_fcntl test_ioctl
110 %endif
111
112 %description
113 Python is an interpreted, interactive, object-oriented programming
114 language. It incorporates modules, exceptions, dynamic typing, very
115 high level dynamic data types, and classes. Python combines remarkable
116 power with very clear syntax. It has interfaces to many system calls
117 and libraries, as well as to various window systems, and is extensible
118 in C or C++. It is also usable as an extension language for
119 applications that need a programmable interface. Finally, Python is
120 portable: it runs on many brands of UNIX, on the Mac, and on PCs under
121 MS-DOS, Windows, Windows NT, and OS/2.
122
123 This package contains the Python binary.
124
125 %description -l de.UTF-8
126 Python ist eine interpretierte, interaktive, objektorientierte
127 Programmiersprache, vergleichbar zu Tcl, Perl, Scheme oder Java.
128 Python enthält Module, Klassen, Exceptions, High-Level dynamische
129 Datentypen und dynamisches Typisieren. Python unterstützt Interfaces
130 zu vielen Systemaufrufen und Libraries, sowie verschiedene
131 Fenstersysteme (X11, Motif, Tk, Mac und MFC)
132
133 Programmierer können neue built-in-Module für Python in C oder C++
134 schreiben. Python kann auch als Erweiterungssprache für Applikationen
135 benutzt werden, die ein programmierbares Interface brauchen. Dieses
136 Paket enthält die meisten Standard-Python-Module, und Module zum
137 Ansprechen von Tix (Tk-widget set) und RPM.
138
139 %description -l es.UTF-8
140 Python es un lenguaje de scripts interpretado orientado a objetos.
141 Contiene soporte para carga dinámica de objetos, clases, módulos y
142 excepciones.
143
144 Es sencillo adicionar interfaces para nuevos sistemas de biblioteca a
145 través de código C, tornando Python fácil de usar en ambientes
146 particulares/personalizados. Este paquete Python incluye la mayoría de
147 los módulos padrón Python, junto con módulos para crear interfaces
148 para el conjunto de componentes Tix para Tk y RPM.
149
150 %description -l fr.UTF-8
151 Python est un langage de script interprété et orienté objet. Il gère
152 le chargement dynamique des objets, les classes, les modules et les
153 exceptions. L'ajout d'interfaces aux nouvelles bibliothèques systèmes
154 avec du code C est simple, ce qui rend Python facile à utiliser dans
155 des configs personnalisées.
156
157 Ce paquetage Python contient la plupart des modules Python standards,
158 ainsi que ceux permettant l'interfaçage avec les widgets Tix pour Tk
159 et RPM.
160
161 %description -l pl.UTF-8
162 Python jest interpretowanym, interaktywnym i zorientowanym obiektowo
163 językiem programowania. Jest modularny, obsługuje wyjątki, dynamiczne
164 typy, zaawansowane dynamiczne struktury danych i klasy. Python łączy w
165 sobie duże możliwości i przejrzystą składnię. Posiada interfejsy do
166 wielu wywołań systemowych i bibliotek, w tym również do różnych
167 bibliotek okienkowych. Możliwości jego można jeszcze rozszerzać
168 poprzez odpowiednie moduły pisane w C lub C++. Python może być również
169 użyty jako element aplikacji, którym potrzebny jest interpreter do
170 skryptów. I wreszcie, Python jest wieloplatformowy, działa na wielu
171 odmianach UNIX-a, Macu oraz PC pod DOS-em, Windows, WindowsNT oraz
172 OS/2.
173
174 Ten pakiet zawiera binarkę Pythona.
175
176 %description -l pt_BR.UTF-8
177 Python é uma linguagem de scripts interpretada orientada a objetos.
178 Contém suporte para carga dinâmica de objetos, classes, módulos e
179 exceções. Adicionar interfaces para novos sistemas de biblioteca
180 através de código C é simples, tornando Python fácil de usar em
181 ambientes particulares/personalizados.
182
183 Este pacote Python inclui a maioria do módulos padrão Python, junto
184 com módulos para interfaceamento para o conjunto de componentes Tix
185 para Tk e RPM.
186
187 %description -l ru.UTF-8
188 Python - это интерпретируемый, объектно-ориентированный язык
189 программирования. Он поддерживает динамическую загрузку объектов,
190 классы, модули и обработку исключительных ситуаций (exceptions).
191 Простота добавления интерфейсов к новым системным библиотекам через
192 код на языке C делает Python хорошим выбором для использования в
193 специальных конфигурациях.
194
195 %description -l tr.UTF-8
196 Python, nesneye yönelik bir kabuk yorumlayıcıdır. Nesnelerin,
197 sınıfların, modüllerin ve aykırı durumların dinamik yüklenmelerine
198 destek verir. C koduyla birlikte kullanımı son derece kolaydır. Bu
199 paket, standart Python birimlerinin çoğunun yanısıra Tk ve RPM için
200 arayüz birimlerini de içerir.
201
202 %description -l uk.UTF-8
203 Python - це інтерпретована, об'єктно-орієнтована мова програмування.
204 Він підтримує динамічну загрузку об'єктів, класи, модулі та обробку
205 виключних ситуацій (exceptions). Простота додавання інтерфейсів для
206 нових системних бібліотек через код на мові C робить Python добрим
207 вибором для використання в спеціальних конфігураціях.
208
209 %package libs
210 Summary:        Python library
211 Summary(pl.UTF-8):      Biblioteka języka Python
212 Group:          Libraries/Python
213 # broken detection in rpm/pythondeps.sh
214 Provides:       python(abi) = %{py_ver}
215 # for compatibility with existing Ac packages
216 Provides:       python(bytecode) = %{py_ver}
217 %{!?with_info:Obsoletes:        python-doc-info}
218 Obsoletes:      python-intl
219
220 %description libs
221 Python shared library and very essental modules for Python binary.
222
223 %description libs -l pl.UTF-8
224 Biblioteka współdzielona języka Python oraz bardzo podstawowe moduły
225 dla Pythona.
226
227 %package modules
228 Summary:        Python modules
229 Summary(pl.UTF-8):      Moduły języka Python
230 Group:          Libraries/Python
231 Requires:       %{name}-libs = %{epoch}:%{version}-%{release}
232 Provides:       python-cElementTree
233 Provides:       python-elementtree
234 Obsoletes:      python-cElementTree
235 Obsoletes:      python-ctypes
236 Obsoletes:      python-curses
237 Obsoletes:      python-elementtree
238 Obsoletes:      python-gdbm
239 Obsoletes:      python-hashlib
240 Obsoletes:      python-logging
241 Obsoletes:      python-old
242 Obsoletes:      python-optik
243 Obsoletes:      python-ssl
244 Obsoletes:      python-xml
245 Obsoletes:      python-xmlrpc <= 1.0.1
246 Obsoletes:      python-zlib
247
248 %description modules
249 Python officially distributed modules.
250
251 %description modules -l pl.UTF-8
252 Oficjalnie rozprowadzane moduły języka Python.
253
254 %package modules-sqlite
255 Summary:        Python SQLite modules
256 Summary(pl.UTF-8):      Moduły SQLite języka Python
257 Group:          Libraries/Python
258 Requires:       %{name}-modules = %{epoch}:%{version}-%{release}
259 Provides:       python(sqlite)
260
261 %description modules-sqlite
262 Python officially distributed sqlite module.
263
264 %description modules-sqlite -l pl.UTF-8
265 Oficjalnie rozprowadzany moduł sqlite języka Python.
266
267 %package -n pydoc
268 Summary:        Python interactive module documentation access support
269 Summary(pl.UTF-8):      Interaktywne korzystanie z dokumentacji modułów języka Python
270 Group:          Applications
271 Requires:       %{name}-modules = %{epoch}:%{version}-%{release}
272 Obsoletes:      python-pydoc
273
274 %description -n pydoc
275 Python interactive module documentation access support.
276
277 %description -n pydoc -l pl.UTF-8
278 Interaktywne korzystanie z dokumentacji modułów języka Python.
279
280 %package -n idle
281 Summary:        IDE for Python language
282 Summary(pl.UTF-8):      IDE dla języka Python
283 Group:          Applications
284 Requires:       %{name}-tkinter = %{epoch}:%{version}-%{release}
285 Obsoletes:      python-idle
286
287 %description -n idle
288 IDE for Python language.
289
290 %description -n idle -l pl.UTF-8
291 IDE dla języka Python.
292
293 %package devel
294 Summary:        Libraries and header files for building python code
295 Summary(de.UTF-8):      Libraries und Header-Dateien zum Erstellen von Python-Code
296 Summary(es.UTF-8):      Bibliotecas y archivos de inclusión para construir programas en python
297 Summary(fr.UTF-8):      Bibliothèques et en-têtes pour construire du code python
298 Summary(pl.UTF-8):      Pliki nagłówkowe i biblioteki Pythona
299 Summary(pt_BR.UTF-8):   Bibliotecas e arquivos de inclusão para o Python
300 Summary(ru.UTF-8):      Библиотеки и хедеры для построения кода на языке Python
301 Summary(tr.UTF-8):      Python ile geliştirme yapmak için gerekli dosyalar
302 Summary(uk.UTF-8):      Бібліотеки та хедери для програмування на мові Python
303 Group:          Development/Languages/Python
304 Requires:       %{name}-libs = %{epoch}:%{version}-%{release}
305 Obsoletes:      python2-devel
306
307 %description devel
308 The Python interpreter is relatively easy to extend with dynamically
309 loaded extensions and to embed in other programs. This package
310 contains the header files and libraries which are needed to do both of
311 these tasks.
312
313 %description devel -l de.UTF-8
314 Der Python-Interpretierer ist relativ einfach anhand von dynamisch
315 ladbaren Erweiterungen auszubauen und läßt sich in andere Programme
316 integrieren. Dieses Paket enthält die Header-Dateien und Libraries,
317 die für beide Aufgaben erforderlich sind.
318
319 %description devel -l es.UTF-8
320 El interpretador Python permite incluir con facilidad extensiones
321 cargadas dinámicamente. Python es también fácil de ser empotrado en
322 otros programas. Este paquete contiene los archivos de inclusión y
323 bibliotecas necesarios para estas dos tareas.
324
325 %description devel -l fr.UTF-8
326 L'interpréteur Python est relativement facile à étendre avec des
327 extensions chargées dynamiquement et à insérer dans d'autres
328 programmes. Ce paquetage contient les en-têtes et les bibliothèques
329 nécessaires à ces deux tâches.
330
331 %description devel -l pl.UTF-8
332 Interpreter Pythona jest w miarę łatwy do rozszerzania przy pomocy
333 dynamicznie ładowanych rozszerzeń napisanych w C lub C++ oraz
334 osadzania w innych programach. Ten pakiet zawiera pliki nagłówkowe i
335 wszystko inne co potrzebne do tych celów.
336
337 %description devel -l pt_BR.UTF-8
338 O interpretador Python permite incluir com facilidade extensões
339 carregadas dinamicamente. Python é também fácil de ser embutido em
340 outros programas. Este pacote contém os arquivos de inclusão e
341 bibliotecas necessários para estas duas tarefas.
342
343 %description devel -l ru.UTF-8
344 Интерпретатор Python относительно легко расширяется при помощи
345 динамически загружаемых расширений и встраивается в другие программы.
346 Этот пакет содержит хедеры и библиотеки, необходимые для обеих этих
347 задач.
348
349 %description devel -l tr.UTF-8
350 Bu paket, Python ile geliştirme yapılabilmesi için gerekli başlık
351 dosyalarını ve kitaplıkları içerir.
352
353 %description devel -l uk.UTF-8
354 Інтерпретатор Python відносно легко розширюється за допомогою
355 розширень з динамічною загрузкою та вбудовується в інші програми. Цей
356 пакет містить хедери та бібліотеки, необхідні для обох цих задач.
357
358 %package devel-src
359 Summary:        Python module sources
360 Summary(pl.UTF-8):      Pliki źródłowe modułów Pythona
361 Group:          Development/Languages/Python
362 Requires:       %{name}-modules = %{epoch}:%{version}-%{release}
363
364 %description devel-src
365 Python module sources.
366
367 %description devel-src -l pl.UTF-8
368 Pliki źródłowe modułów Pythona.
369
370 %package devel-tools
371 Summary:        Python development tools
372 Summary(pl.UTF-8):      Narzędzia programistyczne języka Python
373 Group:          Development/Languages/Python
374 Requires:       %{name}-modules = %{epoch}:%{version}-%{release}
375
376 %description devel-tools
377 Python development tools such as profilers and debugger.
378
379 %description devel-tools -l pl.UTF-8
380 Narzędzia programistyczne języka Python takie jak profiler oraz
381 debugger.
382
383 %package 2to3
384 Summary:        Automated Python 2 to 3 code translation
385 Summary(pl.UTF-8):      Automatyczne tłumaczenie kody Pythona 2 do 3
386 Group:          Development/Languages/Python
387
388 %description 2to3
389 2to3 is a Python program that reads Python 2.x source code and applies
390 a series of fixers to transform it into valid Python 3.x code. The
391 standard library contains a rich set of fixers that will handle almost
392 all code. 2to3 supporting library lib2to3 is, however, a flexible and
393 generic library, so it is possible to write your own fixers for 2to3.
394 lib2to3 could also be adapted to custom applications in which Python
395 code needs to be edited automatically.
396
397 %package static
398 Summary:        Static python library
399 Summary(pl.UTF-8):      Statyczna biblioteka Pythona
400 Group:          Development/Languages/Python
401 Requires:       %{name}-devel = %{epoch}:%{version}-%{release}
402
403 %description static
404 Static python library.
405
406 %description static -l pl.UTF-8
407 Statyczna biblioteka Pythona.
408
409 %package doc
410 Summary:        Documentation on Python
411 Summary(de.UTF-8):      Dokumentation zu Python
412 Summary(es.UTF-8):      Documentación para Python
413 Summary(fr.UTF-8):      Documentation sur Python
414 Summary(pl.UTF-8):      Dokumentacja do Pythona
415 Summary(pt_BR.UTF-8):   Documentação para a linguagem de programação Python
416 Summary(ru.UTF-8):      Документация по языку Python
417 Summary(tr.UTF-8):      Python belgeleri
418 Summary(uk.UTF-8):      Документація по мові Python
419 Group:          Documentation
420 Obsoletes:      python-docs
421
422 %description doc
423 This package contains documentation on the Python language and
424 interpretor as a mix of plain ASCII files and LaTeX sources.
425
426 %description doc -l de.UTF-8
427 Dieses Paket enthält Dokumentationen zu Python (Sprache und
428 Interpreter) in Form von einfachen ASCII-Dateien und LaTeX-Quellen.
429
430 %description doc -l es.UTF-8
431 Documentación para Python. Contiene archivos en texto y PostScript.
432
433 %description doc -l fr.UTF-8
434 Ce paquetage contient la documentation sur le langage python et sur
435 son interpréteur sous forme de fichiers ASCII et LaTeX.
436
437 %description doc -l pl.UTF-8
438 Oficjalna dokumentacja do Pythona. Zawiera przykładowe programy,
439 narzędzia i dokumentację. Strony podręcznika man znajdują się w
440 głównym pakiecie. Ten pakiet nie zawiera źródeł dokumentacji
441 napisanych w LaTeXu, tylko gotowe do wykorzystania pliki postscriptowe
442 i HTML.
443
444 %description doc -l pt_BR.UTF-8
445 O pacote python-doc contém documentação para a linguagem de
446 programação e para o interpretador Python. Fornecida em arquivos texto
447 e Postcript.
448
449 %description doc -l ru.UTF-8
450 Этот пакет содержит документацию по собственно языку Python и по
451 исполняющему его интерпретатору в виде набора текстовых файлов и
452 исходных текстов в формате LaTeX.
453
454 %description doc -l tr.UTF-8
455 Bu paket, Python dili ile ilgili belgeleri ve düz ASCII dosyaları ve
456 LaTeX kaynaklarının bir karışımı olan yorumlayıcıyı içerir.
457
458 %description doc -l uk.UTF-8
459 Цей пакет містить документацію по власне мові Python та по виконуючому
460 її інтерпретатору у вигляді набора текстових файлів та вихідних
461 текстів у форматі LaTeX.
462
463 %package doc-info
464 Summary:        Documentation on Python in texinfo format
465 Summary(pl.UTF-8):      Dokumentacja do Pythona w formacie texinfo
466 Group:          Documentation
467
468 %description doc-info
469 Documentation on Python in texinfo format.
470
471 %description doc-info -l pl.UTF-8
472 Dokumentacja do Pythona w formacie texinfo.
473
474 %package tkinter
475 Summary:        Standard Python interface to the Tk GUI toolkit
476 Summary(de.UTF-8):      Grafische Tk-Schnittstelle für Python
477 Summary(es.UTF-8):      Interfaz de GUI Tk para Python
478 Summary(fr.UTF-8):      Interface graphique Tk pour Python
479 Summary(pl.UTF-8):      Standardowy interfejs Pythona do biblioteki Tk
480 Summary(pt_BR.UTF-8):   Interface GUI Tk para Phyton
481 Summary(tr.UTF-8):      Python için grafik kullanıcı arayüzü
482 Group:          Libraries/Python
483 Requires:       %{name}-modules = %{epoch}:%{version}-%{release}
484 Requires:       tcl >= 8.4.3
485 Requires:       tix >= 1:8.1.4-4
486 Requires:       tk >= 8.4.3
487 Obsoletes:      tkinter
488
489 %description tkinter
490 Standard Python interface to the Tk GUI toolkit.
491
492 %description tkinter -l de.UTF-8
493 Eine grafische Schnittstelle für Python, basierend auf Tcl/Tk, und von
494 vielen Konfigurations-Tools genutzt.
495
496 %description tkinter -l es.UTF-8
497 Una interfaz gráfica para Python, basada en Tcl/Tk, y usada por muchas
498 herramientas de configuración.
499
500 %description tkinter -l fr.UTF-8
501 Interface graphique pour Python, basée sur Tcl/Tk et utilisée par
502 beaucoup des outils de configuration.
503
504 %description tkinter -l pl.UTF-8
505 Standardowy interfejs Pythona do biblioteki Tk.
506
507 %description tkinter -l pt_BR.UTF-8
508 Uma interface gráfica para Python, baseada em Tcl/Tk, e usada por
509 muitas ferramentas de configuração.
510
511 %description tkinter -l ru.UTF-8
512 Графический интерфейс (GUI) для Python, построенный на Tcl/Tk.
513
514 %description tkinter -l tr.UTF-8
515 Python için Tcl/Tk'ye dayalı ve pek çok ayarlama aracı tarafından
516 kullanılan grafik bir arayüzdür.
517
518 %description tkinter -l uk.UTF-8
519 Графічний інтерфейс (GUI) для Python, побудований на Tcl/Tk.
520
521 %package examples
522 Summary:        Example programs in Python
523 Summary(pl.UTF-8):      Przykładowe programy w Pythonie
524 Group:          Development/Languages/Python
525 Obsoletes:      python-tools
526
527 %description examples
528 Example programs in Python.
529
530 These are for Python 2.3.4, not %{version}.
531
532 %description examples -l pl.UTF-8
533 Przykładowe programy w Pythonie.
534
535 Przykłady te są dla Pythona 2.3.4, nie %{version}.
536
537 %prep
538 %setup -q -n Python-%{version}%{beta}
539 %patch1 -p1
540 %patch2 -p1
541 %patch3 -p1
542 %patch5 -p1
543 %patch4 -p1
544 %patch6 -p1
545
546 tar xjf %{SOURCE1}
547
548 %build
549 sed -i -e 's#-ltermcap#-ltinfo#g' configure*
550 %{__autoconf}
551 CPPFLAGS="-I/usr/include/ncursesw %{rpmcppflags}"; export CPPFLAGS
552 %configure \
553         --with-threads \
554         --with-cxx-main="%{__cxx}" \
555         --with-system-ffi \
556         --enable-ipv6 \
557         --enable-unicode=ucs4 \
558         --enable-shared \
559         LINKCC='$(PURIFY) $(CXX)' \
560         LDSHARED='$(CC) $(CFLAGS) -shared' \
561         BLDSHARED='$(CC) $(CFLAGS) -shared' \
562         LDFLAGS="%{rpmcflags} %{rpmldflags}"
563
564 %{__make} \
565         OPT="%{rpmcflags}" 2>&1 | awk '
566 BEGIN { fail = 0; logmsg = ""; }
567 {
568                 if ($0 ~ /\*\*\* WARNING:/) {
569                                 fail = 1;
570                                 logmsg = logmsg $0;
571                 }
572                 print $0;
573 }
574 END { if (fail) { print "\nPROBLEMS FOUND:"; print logmsg; exit(1); } }'
575
576 LC_ALL=C
577 export LC_ALL
578 %if %{with tests}
579 binlibdir="`pwd`/`echo build/lib.*`"
580 %{__make} test \
581         TESTOPTS="%{test_flags} %{test_list}" \
582         TESTPYTHON="LD_LIBRARY_PATH=`pwd` PYTHONHOME=`pwd` PYTHONPATH=`pwd`/Lib:$binlibdir ./python -tt"
583 %endif
584
585 %install
586 rm -rf $RPM_BUILD_ROOT
587 install -d $RPM_BUILD_ROOT{%{_bindir},%{_libdir}} \
588         $RPM_BUILD_ROOT{%{py_sitedir},%{_mandir}/man1} \
589         $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} \
590         $RPM_BUILD_ROOT%{_infodir} \
591         $RPM_BUILD_ROOT%{_docdir} \
592         $RPM_BUILD_ROOT/etc/shrc.d
593
594 %{__make} install \
595         DESTDIR=$RPM_BUILD_ROOT
596
597 # docs in constant location
598 ln -sf python-doc-%{version} $RPM_BUILD_ROOT%{_docdir}/python-doc
599
600 %if %{with info}
601 %{__make} -C Doc/info
602 install Doc/info/python*info* $RPM_BUILD_ROOT%{_infodir}
603 %endif
604
605 install Makefile.pre.in $RPM_BUILD_ROOT%{py_libdir}/config
606
607 mv $RPM_BUILD_ROOT{%{py_libdir}/config,%{_libdir}}/libpython%{py_ver}.a
608 ln -sf libpython%{py_ver}.a $RPM_BUILD_ROOT%{_libdir}/libpython.a
609 ln -sf libpython%{py_ver}.so.1.0 $RPM_BUILD_ROOT%{_libdir}/libpython.so
610 ln -sf libpython%{py_ver}.so.1.0 $RPM_BUILD_ROOT%{_libdir}/libpython%{py_ver}.so
611
612 install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
613 cp -a Tools Demo $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
614
615 #
616 # create several useful aliases, such as timeit.py, profile.py, pdb.py, smtpd.py
617 #
618
619 # for python devel tools
620 for script in timeit profile pdb pstats; do
621     echo alias $script.py=\"python -m ${script}\"
622 done > $RPM_BUILD_ROOT/etc/shrc.d/python-devel.sh
623
624 sed 's/=/ /' \
625         < $RPM_BUILD_ROOT/etc/shrc.d/python-devel.sh \
626         > $RPM_BUILD_ROOT/etc/shrc.d/python-devel.csh
627
628 # for python modules
629 for script in smtpd webbrowser; do
630     echo alias $script.py=\"python -m ${script}\"
631 done > $RPM_BUILD_ROOT/etc/shrc.d/python-modules.sh
632
633 sed 's/=/ /' \
634         < $RPM_BUILD_ROOT/etc/shrc.d/python-modules.sh \
635         > $RPM_BUILD_ROOT/etc/shrc.d/python-modules.csh
636
637 # just to cut the noise, as they are not packaged (now)
638 # first tests
639 rm -r $RPM_BUILD_ROOT%{py_scriptdir}/test
640 rm -r $RPM_BUILD_ROOT%{py_scriptdir}/bsddb/test
641 rm -r $RPM_BUILD_ROOT%{py_scriptdir}/ctypes/test
642 rm -r $RPM_BUILD_ROOT%{py_scriptdir}/distutils/tests
643 rm -r $RPM_BUILD_ROOT%{py_scriptdir}/email/test
644 rm -r $RPM_BUILD_ROOT%{py_scriptdir}/sqlite3/test
645 rm -r $RPM_BUILD_ROOT%{py_scriptdir}/json/tests
646 rm -r $RPM_BUILD_ROOT%{py_scriptdir}/lib2to3/tests
647
648 # other files
649 rm -r $RPM_BUILD_ROOT%{py_scriptdir}/plat-*/regen
650 find $RPM_BUILD_ROOT%{py_scriptdir} -name \*.egg-info -exec rm {} \;
651 find $RPM_BUILD_ROOT%{py_scriptdir} -name \*.bat -exec rm {} \;
652 find $RPM_BUILD_ROOT%{py_scriptdir} -name \*.txt -exec rm {} \;
653 find $RPM_BUILD_ROOT%{py_scriptdir} -name README\* -exec rm {} \;
654
655 %clean
656 rm -rf $RPM_BUILD_ROOT
657
658 %post   libs -p /sbin/ldconfig
659 %postun libs -p /sbin/ldconfig
660
661 %post   doc-info -p /sbin/postshell
662 -/usr/sbin/fix-info-dir -c %{_infodir}
663
664 %postun doc-info -p /sbin/postshell
665 -/usr/sbin/fix-info-dir -c %{_infodir}
666
667 %files
668 %defattr(644,root,root,755)
669 %attr(755,root,root) %{_bindir}/python
670 %attr(755,root,root) %{_bindir}/python%{py_ver}
671 %{_mandir}/man1/python.1*
672
673 %files modules
674 %defattr(644,root,root,755)
675 /etc/shrc.d/python-modules*
676 %exclude %{py_scriptdir}/UserDict.py[co]
677 %exclude %{py_scriptdir}/codecs.py[co]
678 %exclude %{py_scriptdir}/copy_reg.py[co]
679 %exclude %{py_scriptdir}/locale.py[co]
680 %exclude %{py_scriptdir}/posixpath.py[co]
681 %exclude %{py_scriptdir}/pdb.py[co]
682 %exclude %{py_scriptdir}/profile.py[co]
683 %exclude %{py_scriptdir}/pstats.py[co]
684 %exclude %{py_scriptdir}/pydoc.py[co]
685 %exclude %{py_scriptdir}/site.py[co]
686 %exclude %{py_scriptdir}/stat.py[co]
687 %exclude %{py_scriptdir}/timeit.py[co]
688 %exclude %{py_scriptdir}/os.py[co]
689 %exclude %{py_scriptdir}/encodings/*.py[co]
690 %exclude %{py_scriptdir}/types.py[co]
691
692 %{py_scriptdir}/*.py[co]
693
694 %{py_dyndir}/*.egg-info
695
696 #
697 # list .so modules to be sure that all of them are built
698 #
699
700 # three modules below do not work on 64-bit architectures
701 # see Python README file for explanation
702 %ifnarch alpha ia64 ppc64 sparc64 %{x8664}
703 %attr(755,root,root) %{py_dyndir}/audioop.so
704 %attr(755,root,root) %{py_dyndir}/imageop.so
705 # sizeof(long) != sizeof(int), so dl module will not be built on 64-bit
706 # platforms
707 %attr(755,root,root) %{py_dyndir}/dl.so
708 %endif
709
710 %attr(755,root,root) %{py_dyndir}/array.so
711 %attr(755,root,root) %{py_dyndir}/binascii.so
712 %attr(755,root,root) %{py_dyndir}/_bisect.so
713 %attr(755,root,root) %{py_dyndir}/_bsddb.so
714 %attr(755,root,root) %{py_dyndir}/_bytesio.so
715 %attr(755,root,root) %{py_dyndir}/bz2.so
716 %attr(755,root,root) %{py_dyndir}/cmath.so
717 %attr(755,root,root) %{py_dyndir}/_codecs_cn.so
718 %attr(755,root,root) %{py_dyndir}/_codecs_hk.so
719 %attr(755,root,root) %{py_dyndir}/_codecs_iso2022.so
720 %attr(755,root,root) %{py_dyndir}/_codecs_jp.so
721 %attr(755,root,root) %{py_dyndir}/_codecs_kr.so
722 %attr(755,root,root) %{py_dyndir}/_codecs_tw.so
723 %attr(755,root,root) %{py_dyndir}/_collections.so
724 %attr(755,root,root) %{py_dyndir}/cPickle.so
725 %attr(755,root,root) %{py_dyndir}/crypt.so
726 %attr(755,root,root) %{py_dyndir}/cStringIO.so
727 %attr(755,root,root) %{py_dyndir}/_csv.so
728 %attr(755,root,root) %{py_dyndir}/_ctypes*.so
729 %attr(755,root,root) %{py_dyndir}/_curses_panel.so
730 %attr(755,root,root) %{py_dyndir}/_curses.so
731 %attr(755,root,root) %{py_dyndir}/datetime.so
732 %attr(755,root,root) %{py_dyndir}/_elementtree.so
733 %attr(755,root,root) %{py_dyndir}/_functools.so
734 %attr(755,root,root) %{py_dyndir}/_fileio.so
735 %attr(755,root,root) %{py_dyndir}/_hashlib.so
736 %attr(755,root,root) %{py_dyndir}/_heapq.so
737 %attr(755,root,root) %{py_dyndir}/_json.so
738 %attr(755,root,root) %{py_dyndir}/_locale.so
739 %attr(755,root,root) %{py_dyndir}/_lsprof.so
740 %attr(755,root,root) %{py_dyndir}/_multibytecodec.so
741 %attr(755,root,root) %{py_dyndir}/_multiprocessing.so
742 %attr(755,root,root) %{py_dyndir}/_random.so
743 %{?with_openssl097:%attr(755,root,root) %{py_dyndir}/_sha*.so}
744 %attr(755,root,root) %{py_dyndir}/_socket.so
745 %attr(755,root,root) %{py_dyndir}/_ssl.so
746 %attr(755,root,root) %{py_dyndir}/_testcapi.so
747 %attr(755,root,root) %{py_dyndir}/_weakref.so
748 %ifnarch sparc64
749 %attr(755,root,root) %{py_dyndir}/dbm.so
750 %endif
751 %attr(755,root,root) %{py_dyndir}/fcntl.so
752 %attr(755,root,root) %{py_dyndir}/future_builtins.so
753 %attr(755,root,root) %{py_dyndir}/gdbm.so
754 %attr(755,root,root) %{py_dyndir}/grp.so
755 %attr(755,root,root) %{py_dyndir}/itertools.so
756 %attr(755,root,root) %{py_dyndir}/linuxaudiodev.so
757 %attr(755,root,root) %{py_dyndir}/math.so
758 %attr(755,root,root) %{py_dyndir}/mmap.so
759 %attr(755,root,root) %{py_dyndir}/nis.so
760 %attr(755,root,root) %{py_dyndir}/operator.so
761 %attr(755,root,root) %{py_dyndir}/ossaudiodev.so
762 %attr(755,root,root) %{py_dyndir}/parser.so
763 %attr(755,root,root) %{py_dyndir}/pyexpat.so
764 %attr(755,root,root) %{py_dyndir}/readline.so
765 %attr(755,root,root) %{py_dyndir}/resource.so
766 %attr(755,root,root) %{py_dyndir}/select.so
767 %attr(755,root,root) %{py_dyndir}/strop.so
768 %attr(755,root,root) %{py_dyndir}/syslog.so
769 %attr(755,root,root) %{py_dyndir}/termios.so
770 %attr(755,root,root) %{py_dyndir}/time.so
771 %attr(755,root,root) %{py_dyndir}/spwd.so
772 %attr(755,root,root) %{py_dyndir}/unicodedata.so
773 %attr(755,root,root) %{py_dyndir}/zlib.so
774
775 %dir %{py_scriptdir}/plat-*
776 %{py_scriptdir}/plat-*/*.py[co]
777
778 %dir %{py_scriptdir}/bsddb
779 %{py_scriptdir}/bsddb/*.py[co]
780
781 %dir %{py_scriptdir}/compiler
782 %{py_scriptdir}/compiler/*.py[co]
783
784 %dir %{py_scriptdir}/ctypes
785 %dir %{py_scriptdir}/ctypes/macholib
786 %{py_scriptdir}/ctypes/*.py[co]
787 %{py_scriptdir}/ctypes/macholib/*.py[co]
788
789 %dir %{py_scriptdir}/curses
790 %{py_scriptdir}/curses/*.py[co]
791
792 %dir %{py_scriptdir}/distutils
793 %dir %{py_scriptdir}/distutils/command
794 %{py_scriptdir}/distutils/*.py[co]
795 %{py_scriptdir}/distutils/command/*.py[co]
796
797 %dir %{py_scriptdir}/email
798 %dir %{py_scriptdir}/email/mime
799 %{py_scriptdir}/email/*.py[co]
800 %{py_scriptdir}/email/mime/*.py[co]
801
802 %dir %{py_scriptdir}/json
803 %{py_scriptdir}/json/*.py[co]
804
805 %dir %{py_scriptdir}/logging
806 %{py_scriptdir}/logging/*.py[co]
807
808 %dir %{py_scriptdir}/multiprocessing
809 %dir %{py_scriptdir}/multiprocessing/dummy
810 %{py_scriptdir}/multiprocessing/*.py[co]
811 %{py_scriptdir}/multiprocessing/dummy/*.py[co]
812
813 %dir %{py_scriptdir}/wsgiref
814 %{py_scriptdir}/wsgiref/*.py[co]
815
816 %dir %{py_scriptdir}/xml
817 %dir %{py_scriptdir}/xml/dom
818 %dir %{py_scriptdir}/xml/etree
819 %dir %{py_scriptdir}/xml/parsers
820 %dir %{py_scriptdir}/xml/sax
821 %{py_scriptdir}/xml/*.py[co]
822 %{py_scriptdir}/xml/dom/*.py[co]
823 %{py_scriptdir}/xml/etree/*.py[co]
824 %{py_scriptdir}/xml/parsers/*.py[co]
825 %{py_scriptdir}/xml/sax/*.py[co]
826
827 %files modules-sqlite
828 %defattr(644,root,root,755)
829 %attr(755,root,root) %{py_dyndir}/_sqlite3.so
830 %dir %{py_scriptdir}/sqlite3
831 %{py_scriptdir}/sqlite3/*.py[co]
832
833 %files libs
834 %defattr(644,root,root,755)
835 %attr(755,root,root) %{_libdir}/libpython*.so.*
836
837 %dir %{py_dyndir}
838 %dir %{py_scriptdir}
839 %dir %{py_libdir}
840 %dir %{py_sitescriptdir}
841 %dir %{py_sitedir}
842
843 # shared modules required by python library
844 %attr(755,root,root) %{py_dyndir}/_struct.so
845
846 # modules required by python library
847 %{py_scriptdir}/UserDict.py[co]
848 %{py_scriptdir}/codecs.py[co]
849 %{py_scriptdir}/copy_reg.py[co]
850 %{py_scriptdir}/locale.py[co]
851 %{py_scriptdir}/posixpath.py[co]
852 %{py_scriptdir}/site.py[co]
853 %{py_scriptdir}/stat.py[co]
854 %{py_scriptdir}/os.py[co]
855 # needed by the dynamic sys.lib patch
856 %{py_scriptdir}/types.py[co]
857
858 # encodings required by python library
859 %dir %{py_scriptdir}/encodings
860 %{py_scriptdir}/encodings/*.py[co]
861
862 %files -n pydoc
863 %defattr(644,root,root,755)
864 %attr(755,root,root) %{_bindir}/pydoc
865 %{py_scriptdir}/pydoc.py[co]
866
867 %files -n idle
868 %defattr(644,root,root,755)
869 %attr(755,root,root) %{_bindir}/idle
870 %dir %{py_scriptdir}/idlelib
871 %dir %{py_scriptdir}/idlelib/Icons
872 %{py_scriptdir}/idlelib/*.py[co]
873 %{py_scriptdir}/idlelib/Icons/*
874 %{py_scriptdir}/idlelib/*.def
875
876 %files devel
877 %defattr(644,root,root,755)
878 %doc Misc/{ACKS,NEWS,README,README.valgrind,valgrind-python.supp}
879 %attr(755,root,root) %{_bindir}/python-config
880 %attr(755,root,root) %{_bindir}/python%{py_ver}-config
881 %attr(755,root,root) %{_libdir}/lib*.so
882 %dir %{py_incdir}
883 %{py_incdir}/*.h
884
885 %dir %{py_libdir}/config
886 %attr(755,root,root) %{py_libdir}/config/makesetup
887 %attr(755,root,root) %{py_libdir}/config/install-sh
888 %{py_libdir}/config/Makefile
889 %{py_libdir}/config/Makefile.pre.in
890 %{py_libdir}/config/Setup
891 %{py_libdir}/config/Setup.config
892 %{py_libdir}/config/Setup.local
893 %{py_libdir}/config/config.c
894 %{py_libdir}/config/config.c.in
895 %{py_libdir}/config/python.o
896
897 %files devel-src
898 %defattr(644,root,root,755)
899 %attr(-,root,root) %{py_scriptdir}/*.py
900 %{py_scriptdir}/plat-*/*.py
901 %{py_scriptdir}/bsddb/*.py
902 %{py_scriptdir}/ctypes/*.py
903 %{py_scriptdir}/ctypes/macholib/*.py
904 %{py_scriptdir}/compiler/*.py
905 %{py_scriptdir}/curses/*.py
906 %{py_scriptdir}/distutils/*.py
907 %{py_scriptdir}/distutils/command/*.py
908 %{py_scriptdir}/email/*.py
909 %{py_scriptdir}/email/mime/*.py
910 %{py_scriptdir}/hotshot/*.py
911 %{py_scriptdir}/json/*.py
912 %{py_scriptdir}/lib2to3/*.py
913 %{py_scriptdir}/lib2to3/fixes/*.py
914 %{py_scriptdir}/lib2to3/pgen2/*.py
915 %{py_scriptdir}/logging/*.py
916 %{py_scriptdir}/multiprocessing/*.py
917 %{py_scriptdir}/multiprocessing/dummy/*.py
918 %{py_scriptdir}/sqlite3/*.py
919 %{py_scriptdir}/wsgiref/*.py
920 %{py_scriptdir}/xml/*.py
921 %{py_scriptdir}/xml/dom/*.py
922 %{py_scriptdir}/xml/etree/*.py
923 %{py_scriptdir}/xml/parsers/*.py
924 %{py_scriptdir}/xml/sax/*.py
925 %{py_scriptdir}/encodings/*.py
926 %{py_scriptdir}/idlelib/*.py
927
928 %files devel-tools
929 %defattr(644,root,root,755)
930 %doc Lib/pdb.doc
931 /etc/shrc.d/python-devel*
932
933 %attr(755,root,root) %{py_dyndir}/_hotshot.so
934 %dir %{py_scriptdir}/hotshot
935 %{py_scriptdir}/hotshot/*.py[co]
936 %{py_scriptdir}/pdb.py[co]
937 %{py_scriptdir}/profile.py[co]
938 %{py_scriptdir}/pstats.py[co]
939 %{py_scriptdir}/timeit.py[co]
940
941 %files 2to3
942 %defattr(644,root,root,755)
943 %attr(755,root,root) %{_bindir}/2to3
944 %dir %{py_scriptdir}/lib2to3
945 %dir %{py_scriptdir}/lib2to3/fixes
946 %dir %{py_scriptdir}/lib2to3/pgen2
947 %{py_scriptdir}/lib2to3/*.py[co]
948 %{py_scriptdir}/lib2to3/*.pickle
949 %{py_scriptdir}/lib2to3/fixes/*.py[co]
950 %{py_scriptdir}/lib2to3/pgen2/*.py[co]
951
952 %files static
953 %defattr(644,root,root,755)
954 %{_libdir}/lib*.a
955
956 %files examples
957 %defattr(644,root,root,755)
958 %{_examplesdir}/%{name}-%{version}
959
960
961 %files doc
962 %defattr(644,root,root,755)
963 %doc python-%{dver}-docs-html/*
964 %{_docdir}/python-doc
965
966 %if %{with info}
967 %files doc-info
968 %defattr(644,root,root,755)
969 %{_infodir}/*.info*
970 %endif
971
972 %if %{with tkinter}
973 %files tkinter
974 %defattr(644,root,root,755)
975 %{py_scriptdir}/lib-tk
976 %attr(755,root,root) %{py_dyndir}/_tkinter.so
977 %endif
This page took 0.733228 seconds and 4 git commands to generate.