%define pver 2.0 Summary: Very high level scripting language with X interface Summary(de): Very High-Level-Script-Sprache mit X-Oberfläche Summary(fr): Langage de script de tés haut niveau avec interface X Summary(pl): Python - język obiektowy wysokiego poziomu Summary(tr): X arayüzlü, yüksek düzeyli, kabuk yorumlayýcý dili Name: python Version: %{pver} Release: 5 License: BeOpen Python License Group: Development/Languages/Python Group(de): Entwicklung/Sprachen/Python Group(pl): Programowanie/Języki/Python URL: http://www.pythonlabs.com/ Source0: http://www.pythonlabs.com/tech/python2.0/BeOpen-Python-%{version}.tar.bz2 Source1: http://www.pythonlabs.com/tech/python2.0/doc/html-%{version}.tar.bz2 Patch0: %{name}-shared-lib.patch Patch1: %{name}-pld.patch Patch2: %{name}-dl_global.patch Patch3: %{name}-shared.patch Patch4: %{name}-tkinter.patch BuildRequires: XFree86-devel BuildRequires: readline-devel >= 4.1 BuildRequires: ncurses-devel >= 5.0 BuildRequires: tix-devel BuildRequires: tk-devel >= 8.0 BuildRequires: tcl-devel >= 8.0 BuildRequires: zlib-devel BuildRequires: gdbm-devel >= 1.0.8-7 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) Obsoletes: python-xml Obsoletes: python-intl %description Python is an interpreted, interactive, object-oriented programming language. It incorporates modules, exceptions, dynamic typing, very high level dynamic data types, and classes. Python combines remarkable power with very clear syntax. It has interfaces to many system calls and libraries, as well as to various window systems, and is extensible in C or C++. It is also usable as an extension language for applications that need a programmable interface. Finally, Python is portable: it runs on many brands of UNIX, on the Mac, and on PCs under MS-DOS, Windows, Windows NT, and OS/2. %description -l de Python ist eine interpretierte, interaktive, objektorientierte Programmiersprache, vergleichbar zu Tcl, Perl, Scheme oder Java. Python enthält Module, Klassen, Exceptions, High-Level dynamische Datentypen und dynamisches Typisieren. Python unterstützt Interfaces zu vielen Systemaufrufen und Libraries, sowie verschiedene Fenstersysteme (X11, Motif, Tk, Mac und MFC) Programmierer können neue built-in-Module für Python in C oder C++ schreiben. Python kann auch als Erweiterungssprache für Applikationen benutzt werden, die ein programmierbares Interface brauchen. Dieses Paket enthält die meisten Standard-Python-Module, und Module zum Ansprechen von Tix (Tk-widget set) und RPM. Dokumentationen zu Python sind in python-doc enthalten. %description -l fr Python est un langage de script interprété et orienté objet. Il gčre le chargement dynamique des objets, les classes, les modules et les exceptions. L'ajout d'interfaces aux nouvelles bibliothčques systčmes avec du code C est simple, ce qui rend Python facile ŕ utiliser dans des configs personnalisées. Ce paquetage Python contient la plupart des modules Python standards, ainsi que ceux permettant l'interfaçage avec les widgets Tix pour Tk et RPM. %description -l pl Python jest interpretowanym, interaktywnym i zorientowanym obiektowo językiem programowania. Jest modularny, obsługuje wyjątki, dynamiczne typy, zaawansowane dynamiczne struktury danych i klasy. Python łączy w sobie duże możliwości i przejrzystą składnię. Posiada interfejsy do wielu wywołań systemowych i bibliotek, w tym również do różnych bibliotek okienkowych. Możliwości jego można jeszcze rozszerzać poprzez odpowiednie moduły pisane w C lub C++. Python może być również użyty jako element aplikacji, którym potrzebny jest interpreter do skryptów. I wreszcie, Python jest wieloplatformowy, działa na wielu odmianach UNIX'a, Mac'u oraz PC pod DOS'em, Windows, WindowsNT oraz OS/2. %description -l tr Python, nesneye yönelik bir kabuk yorumlayýcýdýr. Nesnelerin, sýnýflarýn, modüllerin ve aykýrý durumlarýn dinamik yüklenmelerine destek verir. C koduyla birlikte kullanýmý son derece kolaydýr. Bu paket, standart Python birimlerinin çođunun yanýsýra Tk ve RPM için arayüz birimlerini de içerir. %package devel Summary: Libraries and header files for building python code Summary(de): Libraries und Header-Dateien zum Erstellen von Python-Code Summary(fr): Bibliothčques et en-tętes pour construire du code python Summary(pl): Pliki nagłówkowe i biblioteki Python'a Summary(tr): Python ile geliţtirme yapmak için gerekli dosyalar Group: Development/Languages/Python Group(de): Entwicklung/Sprachen/Python Group(pl): Programowanie/Języki/Python Requires: %{name} = %{version} %description devel The Python interpreter is relatively easy to extend with dynamically loaded extensions and to embed in other programs. This packages contains the header files and libraries which are needed to do both of these tasks. %description -l de devel Der Python-Interpretierer ist relativ einfach anhand von dynamisch ladbaren Erweiterungen auszubauen und läßt sich in andere Programme integrieren. Dieses Paket enthält die Header-Dateien und Libraries, die für beide Aufgaben erforderlich sind. %description -l fr devel L'interpréteur Python est relativement facile ŕ étendre avec des extensions chargées dynamiquement et ŕ insérer dans d'autres programmes. Ce paquetage contient les en-tętes et les bibliothčques nécessaires ŕ ces deux tâches. %description -l pl devel Wszystko co potrzebne, aby napisać w C/C++ moduł rozszerzający możliwości Pythona. Są tu również wersje źródłowe modułów ze standardowej biblioteki. %description -l tr devel Bu paket, Python ile geliţtirme yapýlabilmesi için gerekli baţlýk dosyalarýný ve kitaplýklarý içerir. %package static Summary: Static python library Group: Development/Languages/Python Group(de): Entwicklung/Sprachen/Python Group(pl): Programowanie/Języki/Python Requires: %{name}-devel = %{version} %description static Static python library. %package doc Summary: Documentation on Python Summary(de): Dokumentation zu Python Summary(fr): Documentation sur Python Summary(pl): Dokumentacja do Python'a Summary(tr): Python belgeleri Group: Development/Languages Group(de): Entwicklung/Sprachen Group(pl): Programowanie/Języki Requires: %{name} = %{version} Obsoletes: python-docs %description doc This package contains documentation on the Python language and interpretor as a mix of plain ASCII files and LaTeX sources. %description -l de doc Dieses Paket enthält Dokumentationen zu Python (Sprache und Interpreter) in Form von einfachen ASCII-Dateien und LaTeX-Quellen. %description -l fr doc Ce paquetage contient la documentation sur le langage python et sur son interpréteur sous forme de fichiers ASCII et LaTeX. %description -l pl doc Oficjalna dokumentacja do Pythona. Zawiera przykładowe programy, narzędzia i dokumentację. Strony podręcznika man znajdują się w głównym pakiecie. Ten pakiet nie zawiera źródeł dokumentacji napisanych w LaTeX'u, tylko gotowe do wykorzystania pliki postscript'owe i HTML. %description -l tr doc Bu paket, Python dili ile ilgili belgeleri ve düz ASCII dosyalarý ve LaTeX kaynaklarýnýn bir karýţýmý olan yorumlayýcýyý içerir. %package -n tkinter Summary: Lowlevel Python -> Tk Interface Summary(de): Grafischer Oberfläche für Python Summary(fr): Interface graphique pour python. Summary(pl): Moduły niskiego poziomu dla pakietu Python-tkinter Summary(tr): Python için grafik kullanýcý arayüzü Group: Development/Languages/Python Group(de): Entwicklung/Sprachen/Python Group(pl): Programowanie/Języki/Python Requires: %{name} = %{version} Requires: tcl >= 8.0.3 Requires: tk >= 8.0.3 Requires: tix >= 4.1.0.6 %description -n tkinter This is the lowlevel C module that interfaces Tk and which is the basis for the Tkinter, Python's OO interface to Tk, which is included in the package python-tkinter. The only reason this file is removed from python-tkinter, is to make it more easy to replay _tkinter with a PIL (Python Imaging Libary) aware version of it. Look at my PIL distribution. %description -l de -n tkinter Eine grafische Schnittstelle für Python, basierend auf Tcl/Tk, und von vielen Konfigurations-Tools genutzt. %description -l fr -n tkinter Interface graphique pour Python, basée sur Tcl/Tk et utilisée par beaucoup des outils de configuration. %description -l pl -n tkinter Ten pakiet zawiera moduły w C, które pośredniczą w wywołaniach pomiędzy samym Tk a modułem Tkinter będącym głównym interfejsem Tk dla Pythona. Jedynym powodem wydzielenia tego pakietu jest ułatwienie wymiany go na PIL (Python Imaging Library). %description -l tr -n tkinter Python için Tcl/Tk'ye dayalý ve pek çok ayarlama aracý tarafýndan kullanýlan grafik bir arayüzdür. %prep %setup -q -n Python-%{version} %patch0 -p1 %patch1 -p1 %patch2 -p1 %patch3 -p1 %patch4 -p1 install -d html-doc && tar Ixf %{SOURCE1} -C html-doc %build export POSIXLY_CORRECT=TRUE autoconf echo ': ${LDSHARED='gcc -shared'}' > config.cache echo ': ${LINKFORSHARED='-rdynamic'}' >> config.cache echo ': ${CCSHARED='-fPIC'}' >> config.cache CPPFLAGS="-I%{_includedir}/ncurses -I%{_includedir}/db3"; export CPPFLAGS %configure \ --with-threads %{__make} OPT="%{!?debug:$RPM_OPT_FLAGS}%{?debug:-O -g} -D_REENTRANT" %install rm -rf $RPM_BUILD_ROOT install -d $RPM_BUILD_ROOT{%{_bindir},%{_libdir},%{_mandir}} export LD_LIBRARY_PATH=$(pwd) %{__make} install \ BINDIR=$RPM_BUILD_ROOT%{_bindir} \ SCRIPTDIR=$RPM_BUILD_ROOT%{_libdir} \ LIBDIR=$RPM_BUILD_ROOT%{_libdir} \ MANDIR=$RPM_BUILD_ROOT%{_mandir} \ INCLUDEDIR=$RPM_BUILD_ROOT%{_includedir} \ CONFINCLUDEDIR=$RPM_BUILD_ROOT%{_includedir} install libpython%{pver}.a $RPM_BUILD_ROOT%{_libdir} rm -f $RPM_BUILD_ROOT%{_bindir}/python%{pver} ln -sf libpython%{pver}.a $RPM_BUILD_ROOT%{_libdir}/libpython.a gzip -9nf Misc/{ACKS,BLURB,BLURB.LUTZ,NEWS,HYPE,README,unicode.txt} %clean rm -rf $RPM_BUILD_ROOT %post -p /sbin/ldconfig %postun -p /sbin/ldconfig %files %defattr(644,root,root,755) %attr(755,root,root) %{_bindir}/* %attr(755,root,root) %{_libdir}/libpython*so.* %dir %{_libdir}/python%{pver} %{_libdir}/python%{pver}/*.pyc %{_libdir}/python%{pver}/*.pyo %dir %{_libdir}/python%{pver}/lib-dynload %attr(755,root,root) %{_libdir}/python%{pver}/lib-dynload/*.so %dir %{_libdir}/python%{pver}/plat-* %attr(755,root,root) %{_libdir}/python%{pver}/plat-*/regen %{_libdir}/python%{pver}/plat-*/*.pyc %{_libdir}/python%{pver}/plat-*/*.pyo %dir %{_libdir}/python%{pver}/curses %{_libdir}/python%{pver}/curses/*.pyc %{_libdir}/python%{pver}/curses/*.pyo %dir %{_libdir}/python%{pver}/distutils %{_libdir}/python%{pver}/distutils/*.pyc %{_libdir}/python%{pver}/distutils/*.pyo %dir %{_libdir}/python%{pver}/distutils/command %{_libdir}/python%{pver}/distutils/command/*.pyc %{_libdir}/python%{pver}/distutils/command/*.pyo %dir %{_libdir}/python%{pver}/encodings %{_libdir}/python%{pver}/encodings/*.pyc %{_libdir}/python%{pver}/encodings/*.pyo %dir %{_libdir}/python%{pver}/lib-old %{_libdir}/python%{pver}/lib-old/*.pyc %{_libdir}/python%{pver}/lib-old/*.pyo %dir %{_libdir}/python%{pver}/xml %{_libdir}/python%{pver}/xml/*.pyc %{_libdir}/python%{pver}/xml/*.pyo %dir %{_libdir}/python%{pver}/xml/sax %{_libdir}/python%{pver}/xml/sax/*.pyc %{_libdir}/python%{pver}/xml/sax/*.pyo %dir %{_libdir}/python%{pver}/xml/dom %{_libdir}/python%{pver}/xml/dom/*.pyc %{_libdir}/python%{pver}/xml/dom/*.pyo %files devel %defattr(644,root,root,755) %doc README.gz Misc/{ACKS,BLURB,BLURB.LUTZ,NEWS,README,unicode.txt}.gz %attr(755,root,root) %{_libdir}/lib*.so %dir %{_includedir}/python%{pver} %{_includedir}/python%{pver}/*.h %attr(-,root,root) %{_libdir}/python%{pver}/*.py %{_libdir}/python%{pver}/plat-*/*.py %{_libdir}/python%{pver}/curses/*.py %{_libdir}/python%{pver}/distutils/*.py %{_libdir}/python%{pver}/distutils/command/*.py %{_libdir}/python%{pver}/xml/*.py %{_libdir}/python%{pver}/xml/sax/*.py %{_libdir}/python%{pver}/xml/dom/*.py %{_libdir}/python%{pver}/encodings/*.py %{_libdir}/python%{pver}/lib-old/*.py %dir %{_libdir}/python%{pver}/config %attr(755,root,root) %{_libdir}/python%{pver}/config/makesetup %attr(755,root,root) %{_libdir}/python%{pver}/config/install-sh %{_libdir}/python%{pver}/config/Makefile %{_libdir}/python%{pver}/config/Makefile.pre.in %{_libdir}/python%{pver}/config/Setup %{_libdir}/python%{pver}/config/Setup.config %{_libdir}/python%{pver}/config/Setup.local %{_libdir}/python%{pver}/config/config.c %{_libdir}/python%{pver}/config/config.c.in %{_libdir}/python%{pver}/config/python.o %files static %defattr(644,root,root,755) %{_libdir}/lib*.a %files doc %defattr(644,root,root,755) %doc html-doc/* %dir %{_libdir}/python%{pver}/test %attr(-,root,root) %{_libdir}/python%{pver}/test/* %files -n tkinter %defattr(644,root,root,755) %{_libdir}/python%{pver}/lib-tk %attr(755,root,root) %{_libdir}/python%{pver}/lib-dynload/_tkinter.so