]> git.pld-linux.org Git - packages/python-egenix-mx-base.git/blame - python-egenix-mx-base.spec
automatic change: use py_build/py_install macros
[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
7521d125 7Summary(pl.UTF-8): eGenix mx-Extensions dla języka Python
2c8b38aa 8Name: python-%{module}
ae959d3a 9Version: 3.1.1
a672bf73 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
ae959d3a 15# Source0-md5: d0f3b1adca33a68867bf50f000060cd6
1c34c4f9 16URL: http://www.egenix.com/files/python/eGenix-mx-Extensions.html
a6f6c245 17BuildRequires: python-devel >= 1:2.5
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
7521d125 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)
7521d125 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
7521d125 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
7521d125 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
7521d125 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
7521d125 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
7521d125 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
7521d125 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
7521d125 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
ae959d3a
AM
269%package -n python-mx-UID
270Summary: Fast Unique Identifiers for Python
a6f6c245 271Summary(pl.UTF-8): Szybkie unikalne identyfikatory (UID) dla Pythona
ae959d3a
AM
272Group: Libraries/Python
273Requires: %{name} = %{version}-%{release}
274
275%description -n python-mx-UID
276UID is an extension package that provides a fast mechanism for
277generating unique identification strings (UIDs).
278
279%description -n python-mx-UID -l pl.UTF-8
280Pakiet UID dostarcza szybki mechanizm do generowania unikalnych ciągów
281znaków (UID).
282
283%package -n python-mx-URL
284Summary: Flexible URL Data-Type for Python
285Summary(pl.UTF-8): Elastyczny typ danych URL dla Pythona
286Group: Libraries/Python
287Requires: %{name} = %{version}-%{release}
288
289%description -n python-mx-URL
290URL package provides a new datatype for storing and manipulating URL
291values as well as a few helpers related to URL building, encoding and
292decoding.
293
ad00cf83 294%description -n python-mx-URL -l pl.UTF-8
ae959d3a
AM
295Pakiet URL dostarcza nowy typ danych do przechowywania i manipulowania
296wartościami URL jak również kilka pomocniczych elementów służących do
297tworzenia, kodowania i dekodowania adresów URL.
298
fd2a456e 299%prep
feae2631 300%setup -q -n %{module}-%{version}
fd2a456e 301
302%build
b9ca9d8f 303env CFLAGS="%{rpmcflags}" %py_build
fd2a456e 304
305%install
2c8b38aa 306rm -rf $RPM_BUILD_ROOT
38a77d59 307install -d $RPM_BUILD_ROOT%{py_incdir}/mx
b9ca9d8f 308%py_install \
0cb8f2e1 309 --install-purelib=%{py_sitedir}
310
38a77d59 311find $RPM_BUILD_ROOT%{py_sitedir} -name \*.h \
312 -exec mv {} $RPM_BUILD_ROOT%{py_incdir}/mx \;
c9f5d351 313find $RPM_BUILD_ROOT%{py_sitedir} -name '*.py' -o -regex '.*/\(COPYRIGHT\|LICENSE\|README\|Doc\|Examples\)' | xargs rm -rf
2c8b38aa 314
fd2a456e 315%clean
316rm -rf $RPM_BUILD_ROOT
317
2c8b38aa 318%files
319%defattr(644,root,root,755)
ae959d3a 320%doc README mx/LICENSE mx/COPYRIGHT mx/Doc/*License.txt
25fe96ed 321%dir %{mxdir}
38a77d59 322%dir %{py_incdir}/mx
3616fa0c 323%{mxdir}/*.py[co]
a97acb99 324%dir %{mxdir}/Misc
3616fa0c 325%{mxdir}/Misc/*.py[co]
ae959d3a 326%{py_sitedir}/*.egg-info
2c8b38aa 327
38a77d59 328%files devel
329%defattr(644,root,root,755)
330%{py_incdir}/mx/mxh.h
331
c9f5d351
JB
332%files -n python-mx-BeeBase
333%defattr(644,root,root,755)
ae959d3a 334%doc mx/BeeBase/Doc/*.pdf
c9f5d351
JB
335%dir %{mxdir}/BeeBase
336%{mxdir}/BeeBase/*.py[co]
337%dir %{mxdir}/BeeBase/mxBeeBase
338%{mxdir}/BeeBase/mxBeeBase/*.py[co]
339%attr(755,root,root) %{mxdir}/BeeBase/mxBeeBase/*.so
340
341# -devel if needed
342#%{py_incdir}/mx/btr.h
343#%{py_incdir}/mx/mxBeeBase.h
344
2c8b38aa 345%files -n python-mx-DateTime
346%defattr(644,root,root,755)
ae959d3a 347%doc mx/DateTime/Doc/*.pdf
a97acb99 348%dir %{mxdir}/DateTime
3616fa0c 349%{mxdir}/DateTime/*.py[co]
a97acb99 350%dir %{mxdir}/DateTime/mxDateTime
3616fa0c 351%{mxdir}/DateTime/mxDateTime/*.py[co]
a97acb99 352%attr(755,root,root) %{mxdir}/DateTime/mxDateTime/*.so
2c8b38aa 353
997f4c2c
MK
354%files -n python-mx-DateTime-devel
355%defattr(644,root,root,755)
38a77d59 356%{py_incdir}/mx/mxDateTime.h
997f4c2c 357
c9f5d351 358%files -n python-mx-Proxy
2c8b38aa 359%defattr(644,root,root,755)
ae959d3a 360%doc mx/Proxy/Doc/*.pdf
c9f5d351
JB
361%dir %{mxdir}/Proxy
362%{mxdir}/Proxy/*.py[co]
363%dir %{mxdir}/Proxy/mxProxy
364%{mxdir}/Proxy/mxProxy/*.py[co]
365%attr(755,root,root) %{mxdir}/Proxy/mxProxy/*.so
a97acb99 366
c9f5d351
JB
367# -devel if needed
368#%{py_incdir}/mx/mxProxy.h
a97acb99 369
c9f5d351
JB
370%files -n python-mx-Queue
371%defattr(644,root,root,755)
ae959d3a 372%doc mx/Queue/Doc/*.pdf
c9f5d351
JB
373%dir %{mxdir}/Queue
374%{mxdir}/Queue/*.py[co]
375%dir %{mxdir}/Queue/mxQueue
376%{mxdir}/Queue/mxQueue/*.py[co]
377%attr(755,root,root) %{mxdir}/Queue/mxQueue/*.so
378
379# -devel if needed
380#%{py_incdir}/mx/mxQueue.h
2c8b38aa 381
382%files -n python-mx-Stack
383%defattr(644,root,root,755)
ae959d3a 384%doc mx/Stack/Doc/*.pdf
a97acb99 385%dir %{mxdir}/Stack
3616fa0c 386%{mxdir}/Stack/*.py[co]
a97acb99 387%dir %{mxdir}/Stack/mxStack
3616fa0c 388%{mxdir}/Stack/mxStack/*.py[co]
a97acb99 389%attr(755,root,root) %{mxdir}/Stack/mxStack/*.so
390
c9f5d351 391%files -n python-mx-TextTools
a97acb99 392%defattr(644,root,root,755)
ae959d3a 393%doc mx/TextTools/Doc/*.pdf
c9f5d351
JB
394%dir %{mxdir}/TextTools
395%{mxdir}/TextTools/*.py[co]
396%dir %{mxdir}/TextTools/mxTextTools
397%{mxdir}/TextTools/mxTextTools/*.py[co]
398%attr(755,root,root) %{mxdir}/TextTools/mxTextTools/*.so
399%dir %{mxdir}/TextTools/Constants
400%{mxdir}/TextTools/Constants/*.py[co]
a97acb99 401
c9f5d351
JB
402# -devel if needed
403#%{py_incdir}/mx/mxTextTools.h
404#%{py_incdir}/mx/mxbmse.h
405#%{py_incdir}/mx/mxte.h
2c8b38aa 406
407%files -n python-mx-Tools
408%defattr(644,root,root,755)
ae959d3a 409%doc mx/Tools/Doc/*.pdf
a97acb99 410%dir %{mxdir}/Tools
3616fa0c 411%{mxdir}/Tools/*.py[co]
a97acb99 412%dir %{mxdir}/Tools/mxTools
3616fa0c 413%{mxdir}/Tools/mxTools/*.py[co]
a97acb99 414%attr(755,root,root) %{mxdir}/Tools/mxTools/*.so
2c8b38aa 415
c9f5d351
JB
416# -devel if needed
417#%{py_incdir}/mx/mxTools.h
ae959d3a
AM
418
419%files -n python-mx-UID
420%defattr(644,root,root,755)
421%doc mx/UID/Doc/*.pdf
422%dir %{mxdir}/UID
423%{mxdir}/UID/*.py[co]
424%dir %{mxdir}/UID/mxUID
425%{mxdir}/UID/mxUID/*.py[co]
426%attr(755,root,root) %{mxdir}/UID/mxUID/*.so
427
428# -devel if needed
429#%{py_incdir}/mx/mxUID.h
430
431%files -n python-mx-URL
432%defattr(644,root,root,755)
433%doc mx/URL/Doc/*.pdf
434%dir %{mxdir}/URL
435%{mxdir}/URL/*.py[co]
436%dir %{mxdir}/URL/mxURL
437%{mxdir}/URL/mxURL/*.py[co]
438%attr(755,root,root) %{mxdir}/URL/mxURL/*.so
439
440# -devel if needed
441#%{py_incdir}/mx/mxURL.h
This page took 0.110378 seconds and 4 git commands to generate.