]> git.pld-linux.org Git - packages/python-egenix-mx-base.git/blame - python-egenix-mx-base.spec
- converted to UTF-8
[packages/python-egenix-mx-base.git] / python-egenix-mx-base.spec
CommitLineData
bf51713f 1# TODO make examples package
2c8b38aa 2
36c63f4b 3%define module egenix-mx-base
4%define mxdir %{py_sitedir}/mx
2c8b38aa 5
ca03783b 6Summary: eGenix mx-Extensions for Python
f71d7ea6 7Summary(pl.UTF-8): eGenix mx-Extensions dla języka Python
2c8b38aa 8Name: python-%{module}
c9f5d351 9Version: 2.0.6
2b23dbe6 10Release: 3
b0fc504b 11License: distributable
bf66b3cb 12Group: Libraries/Python
1c34c4f9 13#Source0Download: http://www.egenix.com/files/python/eGenix-mx-Extensions.html
feae2631 14Source0: http://www.egenix.com/files/python/%{module}-%{version}.tar.gz
c9f5d351 15# Source0-md5: 66841151728a06f92d0b8dd2ed317a29
1c34c4f9 16URL: http://www.egenix.com/files/python/eGenix-mx-Extensions.html
964ab9f8 17BuildRequires: python-devel >= 2.2.2
1a3a0d39 18BuildRequires: rpm-pythonprov
c9f5d351 19%pyrequires_eq python-libs
2c8b38aa 20BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
fd2a456e 21
22%description
2c8b38aa 23The eGenix mx Extension Series are a collection of Python extensions
24written in ANSI C and Python which provide a large spectrum of useful
25additions to everyday Python programming.
26
ca03783b 27This package includes the Open Source subpackages of the series and is
28needed by all other add-on packages of the series.
2c8b38aa 29
f71d7ea6
JR
30%description -l pl.UTF-8
31eGenix mx Extensions Series jest zestawem modułów, ułatwiających życie
32każdemu programiście piszącemu w języku Python, napisanych w ANSI C i
ca03783b 33Pythonie.
2c8b38aa 34
f71d7ea6 35Ten pakiet zawiera podstawowe moduły wymagane przez inne pakiety.
eea42fc4 36
38a77d59 37%package devel
38Summary: Basic header files for eGenix extensions
f71d7ea6 39Summary(pl.UTF-8): Podstawowe pliki nagłówkowe dla rozszerzeń eGenix
38a77d59 40Group: Development/Languages/Python
c9f5d351 41Requires: %{name} = %{version}-%{release}
38a77d59 42
43%description devel
44Basic header files for eGenix extensions.
45
f71d7ea6
JR
46%description devel -l pl.UTF-8
47Podstawowe pliki nagłówkowe dla rozszerzeń eGenix.
38a77d59 48
c9f5d351
JB
49%package -n python-mx-BeeBase
50Summary: High performance construction kit for disk based indexed databases (B+Tree)
f71d7ea6 51Summary(pl.UTF-8): Wysokiej jakości pakiet do tworzenia indeksowanych baz danych (B+Tree)
c9f5d351
JB
52Group: Libraries/Python
53Requires: %{name} = %{version}-%{release}
54
55%description -n python-mx-BeeBase
56mxBeeBase is a high performance construction kit for disk based
57indexed databases. It offers components which you can plug together to
58easily build your own custom mid-sized databases (the current size
59limit is sizeof(long) which gives you an address range of around 2GB
60on 32-bit platforms).
61
62The two basic building blocks in mxBeeBase are storage and index.
63Storage is implemented as variable record length data storage with
64integrated data protection features, automatic data recovery and
65locking for multi process access. Indexes use a high performance
66optimized B+Tree implementation built on top of Thomas Niemann's
67Cookbook B+Tree implementation.
68
f71d7ea6
JR
69%description -n python-mx-BeeBase -l pl.UTF-8
70mxBeeBase jest wysokiej jakości pakietem do tworzenia indeksowanych
71baz danych. Zawiera komponenty, które można razem łączyć w celu
72zbudowania własnej bazy. Obecny limit ilości danych wynosi 2GB (max.
73wartość liczby całkowitej typu long na platformach 32 bitowych).
c9f5d351 74
f71d7ea6
JR
75Dwoma podstawowymi komponentami w tym pakiecie są indeksy oraz
76rekordy. Rekord może być zmiennej długości i zawiera mechanizmy
77ochrony, automatycznego odzyskiwania, blokowania, a także
78wieloprocesowego dostępu do danych. Do indeksowania są używane bardzo
c9f5d351
JB
79wydajne B-drzewa zaimplementowane na podstawie Cookbook B+Tree Thomasa
80Newmanna.
81
2c8b38aa 82%package -n python-mx-DateTime
83Summary: Date and time Python extension
f71d7ea6 84Summary(pl.UTF-8): Obiekty daty i czasu dla języka Python
bf66b3cb 85Group: Libraries/Python
c9f5d351 86Requires: %{name} = %{version}-%{release}
2c8b38aa 87
88%description -n python-mx-DateTime
89mxDateTime is an extension package that provides three new object
ca03783b 90types - DateTime, DateTimeDelta and RelativeDateTime, which let you
2c8b38aa 91store and handle date/time values in a much more natural way than by
ca03783b 92using ticks (seconds since 01.01.1970 0:00 UTC; the encoding used by
93the time module).
2c8b38aa 94
95You can add, subtract and even multiply instances, pickle and copy
96them and convert the results to strings, COM dates, ticks and some
97other more esoteric values. In addition, there are several convenient
98constructors and formatters at hand to greatly simplify dealing with
99dates and times in real-world applications.
100
101In addition to providing an easy-to-use Python interface the package
102also exports a comfortable C API interface for other extensions to
103build upon. This is especially interesting for database applications
104which often have to deal with date/time values (the mxODBC package is
105one example of an extension using this interface).
106
f71d7ea6
JR
107%description -n python-mx-DateTime -l pl.UTF-8
108mxDateTime jest pakietem modułów, które definiują trzy nowe klasy -
109DateTime, DateTimeDelta oraz RelativeDateTime. Umożliwiają one
ca03783b 110przechowywanie oraz operowanie na dacie i czasie w bardziej naturalny
f71d7ea6 111sposób niż za pomocą sekund od początku 1 stycznia 1970 (tak jak w
ca03783b 112module time).
113
f71d7ea6
JR
114Programista może dodawać, odejmować, mnożyć (w sensie arytmetycznym),
115serializować, a także mnożyć (w sesnie rozmnażania :-) obiekty.
116Instancje w/w klas mogą być konwertowane do napisów i sekund.
117Dodatkowo moduł zawiera kilka użytecznych funkcji do tworzenia nowych
118obiektów i ich formatowania.
ca03783b 119
f71d7ea6
JR
120Oprócz, łatwych w użyciu, klas języka Python, pakiet dostarcza także
121bardzo wygodny interfejs w C, który może być wykorzystany do tworzenia
122innych rozszerzeń (np.: pakiet mxODBC). W szczególności, cecha ta jest
123interesująca w przypadku aplikacji bazodanowych, które operują na
ca03783b 124dacie i czasie.
2c8b38aa 125
997f4c2c 126%package -n python-mx-DateTime-devel
c9f5d351 127Summary: Header file for DateTime Python extension
f71d7ea6 128Summary(pl.UTF-8): Plik nagłówkowy rozszerzenia DateTime dla Pythona
38a77d59 129Group: Development/Languages/Python
0cb8f2e1 130Requires: %{name}-devel = %{version}-%{release}
997f4c2c
MK
131
132%description -n python-mx-DateTime-devel
c9f5d351 133Header file for DateTime Python extension.
997f4c2c 134
f71d7ea6
JR
135%description -n python-mx-DateTime-devel -l pl.UTF-8
136Plik nagłówkowy rozszerzenia DateTime dla Pythona.
c9f5d351
JB
137
138%package -n python-mx-Proxy
139Summary: Support for Bastion like implementations for Python
f71d7ea6 140Summary(pl.UTF-8): Wsparcie dla implementacji typu Bastion dla języka Python
c9f5d351
JB
141Group: Libraries/Python
142Requires: %{name} = %{version}-%{release}
143
144%description -n python-mx-Proxy
145mxProxy is an extension package that provides a new type that is
146suitable to implement Bastion like features without the need to use
147restricted execution environments.
148
149The type's main features are secure data encapsulation (the hidden
150objects are not accessible from Python since they are stored in
151internal C structures), customizable attribute lookup methods and a
152cleanup protocol that helps in breaking circular references prior to
153object deletion.
154
155The latest version adds a very interesting new feature: weak
156references which help you work with circular references in a way that
157doesn't cause memory leakage in a Python system.
158
f71d7ea6
JR
159%description -n python-mx-Proxy -l pl.UTF-8
160Pakiet mxProxy dostarcza nowe klasy, które implementują funkcjonalność
161typu Bastion bez potrzeby ograniczania środowiska, w którym jest
c9f5d351
JB
162wykonywana aplikacja.
163
f71d7ea6
JR
164Podstawowymi zaletami są: bezpieczne obudowywanie danych (ukryte
165obiekty nie są dostępne z poziomu Pythona, ponieważ są one
166przechowywane w wewnętrznych strukturach języka C), konfigurowalne
167metody do pobierania wartości atrybutów oraz protokół, który pomaga w
168rozbijaniu zapętlonych referencji podczas usuwania obiektów.
c9f5d351 169
f71d7ea6
JR
170Ostatnia wersja pakietu implementuje tzw. słabe referencje, które nie
171powodują wycieków pamięci w przypadku referencji zapętlonych.
c9f5d351
JB
172
173%package -n python-mx-Queue
174Summary: Queue implementation for Python
f71d7ea6 175Summary(pl.UTF-8): Implementacja kolejki dla języka Python
c9f5d351
JB
176Group: Libraries/Python
177Requires: %{name} = %{version}-%{release}
178
179%description -n python-mx-Queue
180mxQueue is an extension package that provides a new object type called
181Queue. It works much like what you would expect from such a type,
182having .push() and .pop() methods and focusses on obtaining maximum
183speed at low memory costs.
184
f71d7ea6
JR
185%description -n python-mx-Queue -l pl.UTF-8
186Pakiet mxQueue zawiera implementację kolejki, która zawiera typowe
187metody takie jak pop() czy push(). Mechanizm został napisany tak by,
188przy minimalnym zużyciu pamięci, był bardzo wydajny.
c9f5d351
JB
189
190%package -n python-mx-Stack
191Summary: Stack implementation for Python
f71d7ea6 192Summary(pl.UTF-8): Implementacja stosu dla języka Python
c9f5d351
JB
193Group: Libraries/Python
194Requires: %{name} = %{version}-%{release}
195
196%description -n python-mx-Stack
197mxStack is an extension package that provides a new object type called
198Stack. It works much like what you would expect from such a type,
199having .push() and .pop() methods and focusses on obtaining maximum
200speed at low memory costs.
201
f71d7ea6
JR
202%description -n python-mx-Stack -l pl.UTF-8
203Pakiet mxStack zawiera implementację stosu, która zawiera typowe
204metody takie jak pop() czy push(). Mechanizm został napisany tak by,
205przy minimalnym zużyciu pamięci, był bardzo wydajny.
997f4c2c 206
2c8b38aa 207%package -n python-mx-TextTools
208Summary: Efficient text manipulation extensions for Python
f71d7ea6 209Summary(pl.UTF-8): Wydajne manipulowanie tekstem w języku Python
bf66b3cb 210Group: Libraries/Python
c9f5d351 211Requires: %{name} = %{version}-%{release}
2c8b38aa 212
213%description -n python-mx-TextTools
214mxTextTools is an extension package for Python that provides several
215useful functions and types that implement high-performance text
216manipulation and searching algorithms in addition to a very flexible
217and extendable state machine, the Tagging Engine, that allows scanning
218and processing text based on low-level byte-code "programs" written
219using Python tuples. It gives you access to the speed of C without the
220need to do any compile and link steps every time you change the
221parsing description.
222
223Applications include parsing structured text, finding and extracting
224text (either exact or using translation tables) and recombining
225strings to form new text.
226
f71d7ea6
JR
227%description -n python-mx-TextTools -l pl.UTF-8
228Pakiet mxTextTools dostarcza szereg użytecznych typów i funkcji, które
229implementują wysokiej jakości algorytmy do wyszukiwania i manipulacji
ca03783b 230tekstu. Programista dostaje wydajne (na poziomie kodu napisanego w
f71d7ea6 231języku C) narzędzie bez potrzeby kompilacji i konsolidacji, kiedy
ca03783b 232zajdzie potrzeba zmiany sposobu interpretacji tekstu.
233
f71d7ea6
JR
234Pakiet może mieć zastosowanie w aplikacjach, które muszą interpretować
235tekst zadany w konkretnym formacie, a także wyszukiwać, pobierać i
236manipulować tekstem.
2c8b38aa 237
2c8b38aa 238%package -n python-mx-Tools
239Summary: Some handy functions and objects which provides new builtins for Python
f71d7ea6 240Summary(pl.UTF-8): Kilka użytecznych klas i funkcji w postaci wew. mechanizmów Pythona
bf66b3cb 241Group: Libraries/Python
c9f5d351 242Requires: %{name} = %{version}-%{release}
fd2a456e 243
2c8b38aa 244%description -n python-mx-Tools
245mxTools is an extension package that includes a collection of handy
246functions and objects giving additional functionality in form of new
247builtins to the Python programmer.
fd2a456e 248
2c8b38aa 249The package auto-installs the new functions and objects as builtins
250upon first import. This means that they become instantely available to
251all other modules without any further action on your part. Add the
252line import mx.Tools.NewBuiltins to your site.py script and they will
253be available to all users at your site as if they were installed in
254the Python interpreter itself.
fd2a456e 255
f71d7ea6
JR
256%description -n python-mx-Tools -l pl.UTF-8
257Pakiet mxTools zawiera kilka użytecznych klas i funkcji, które dają
258więcej możliwości programiście, w postaci wewnętrznych mechanizmów
259języka Python.
260
261Pakiet ten instaluje, jako mechanizmy wewnętrzne Pythona, wszystkie
262funkcje i klasy po ich pierwszym dołączeniu do kodu. Oznacza to, że są
263one dostępne dla innych modułów bez jakichkolwiek dodatkowych
264zabiegów. Wystarczy dodać linię "import mx.Tools.NewBuiltins" do
265odpowiedniego skryptu (site.py) i zdefiniowane funkcje oraz klasy będą
266widoczne dla wszystkich użytkowników tak, jak by były wbudowane w
267język Python.
2c8b38aa 268
fd2a456e 269%prep
feae2631 270%setup -q -n %{module}-%{version}
fd2a456e 271
272%build
2c8b38aa 273env CFLAGS="%{rpmcflags}" python setup.py build
fd2a456e 274
275%install
2c8b38aa 276rm -rf $RPM_BUILD_ROOT
38a77d59 277install -d $RPM_BUILD_ROOT%{py_incdir}/mx
0cb8f2e1 278python setup.py install \
279 --root=$RPM_BUILD_ROOT \
280 --install-purelib=%{py_sitedir}
281
38a77d59 282find $RPM_BUILD_ROOT%{py_sitedir} -name \*.h \
283 -exec mv {} $RPM_BUILD_ROOT%{py_incdir}/mx \;
c9f5d351 284find $RPM_BUILD_ROOT%{py_sitedir} -name '*.py' -o -regex '.*/\(COPYRIGHT\|LICENSE\|README\|Doc\|Examples\)' | xargs rm -rf
2c8b38aa 285
fd2a456e 286%clean
287rm -rf $RPM_BUILD_ROOT
288
2c8b38aa 289%files
290%defattr(644,root,root,755)
ee0f2d3e 291%doc README mx/LICENSE mx/COPYRIGHT mx/Doc/mxLicense.html
25fe96ed 292%dir %{mxdir}
38a77d59 293%dir %{py_incdir}/mx
3616fa0c 294%{mxdir}/*.py[co]
a97acb99 295%dir %{mxdir}/Misc
3616fa0c 296%{mxdir}/Misc/*.py[co]
2c8b38aa 297
38a77d59 298%files devel
299%defattr(644,root,root,755)
300%{py_incdir}/mx/mxh.h
301
c9f5d351
JB
302%files -n python-mx-BeeBase
303%defattr(644,root,root,755)
304# this COPYRIGHT differs from others
305%doc mx/BeeBase/Doc/*.html mx/BeeBase/COPYRIGHT
306%dir %{mxdir}/BeeBase
307%{mxdir}/BeeBase/*.py[co]
308%dir %{mxdir}/BeeBase/mxBeeBase
309%{mxdir}/BeeBase/mxBeeBase/*.py[co]
310%attr(755,root,root) %{mxdir}/BeeBase/mxBeeBase/*.so
311
312# -devel if needed
313#%{py_incdir}/mx/btr.h
314#%{py_incdir}/mx/mxBeeBase.h
315
2c8b38aa 316%files -n python-mx-DateTime
317%defattr(644,root,root,755)
a97acb99 318%doc mx/DateTime/Doc/*.html
319%dir %{mxdir}/DateTime
3616fa0c 320%{mxdir}/DateTime/*.py[co]
a97acb99 321%dir %{mxdir}/DateTime/mxDateTime
3616fa0c 322%{mxdir}/DateTime/mxDateTime/*.py[co]
a97acb99 323%attr(755,root,root) %{mxdir}/DateTime/mxDateTime/*.so
2c8b38aa 324
997f4c2c
MK
325%files -n python-mx-DateTime-devel
326%defattr(644,root,root,755)
38a77d59 327%{py_incdir}/mx/mxDateTime.h
997f4c2c 328
c9f5d351 329%files -n python-mx-Proxy
2c8b38aa 330%defattr(644,root,root,755)
c9f5d351
JB
331%doc mx/Proxy/Doc/*.html
332%dir %{mxdir}/Proxy
333%{mxdir}/Proxy/*.py[co]
334%dir %{mxdir}/Proxy/mxProxy
335%{mxdir}/Proxy/mxProxy/*.py[co]
336%attr(755,root,root) %{mxdir}/Proxy/mxProxy/*.so
a97acb99 337
c9f5d351
JB
338# -devel if needed
339#%{py_incdir}/mx/mxProxy.h
a97acb99 340
c9f5d351
JB
341%files -n python-mx-Queue
342%defattr(644,root,root,755)
343%doc mx/Queue/Doc/*.html
344%dir %{mxdir}/Queue
345%{mxdir}/Queue/*.py[co]
346%dir %{mxdir}/Queue/mxQueue
347%{mxdir}/Queue/mxQueue/*.py[co]
348%attr(755,root,root) %{mxdir}/Queue/mxQueue/*.so
349
350# -devel if needed
351#%{py_incdir}/mx/mxQueue.h
2c8b38aa 352
353%files -n python-mx-Stack
354%defattr(644,root,root,755)
a97acb99 355%doc mx/Stack/Doc/*.html
356%dir %{mxdir}/Stack
3616fa0c 357%{mxdir}/Stack/*.py[co]
a97acb99 358%dir %{mxdir}/Stack/mxStack
3616fa0c 359%{mxdir}/Stack/mxStack/*.py[co]
a97acb99 360%attr(755,root,root) %{mxdir}/Stack/mxStack/*.so
361
c9f5d351 362%files -n python-mx-TextTools
a97acb99 363%defattr(644,root,root,755)
c9f5d351
JB
364%doc mx/TextTools/Doc/*.html
365%dir %{mxdir}/TextTools
366%{mxdir}/TextTools/*.py[co]
367%dir %{mxdir}/TextTools/mxTextTools
368%{mxdir}/TextTools/mxTextTools/*.py[co]
369%attr(755,root,root) %{mxdir}/TextTools/mxTextTools/*.so
370%dir %{mxdir}/TextTools/Constants
371%{mxdir}/TextTools/Constants/*.py[co]
a97acb99 372
c9f5d351
JB
373# -devel if needed
374#%{py_incdir}/mx/mxTextTools.h
375#%{py_incdir}/mx/mxbmse.h
376#%{py_incdir}/mx/mxte.h
2c8b38aa 377
378%files -n python-mx-Tools
379%defattr(644,root,root,755)
a97acb99 380%doc mx/Tools/Doc/*.html
381%dir %{mxdir}/Tools
3616fa0c 382%{mxdir}/Tools/*.py[co]
a97acb99 383%dir %{mxdir}/Tools/mxTools
3616fa0c 384%{mxdir}/Tools/mxTools/*.py[co]
a97acb99 385%attr(755,root,root) %{mxdir}/Tools/mxTools/*.so
2c8b38aa 386
c9f5d351
JB
387# -devel if needed
388#%{py_incdir}/mx/mxTools.h
This page took 0.562023 seconds and 4 git commands to generate.