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