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