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