Overhaul build system using new `cfd' machinery.
[mLib-python] / mLib.pyx
1 ### -*-pyrex-*-
2 ###
3 ### Main driver for mLib module
4 ###
5 ### (c) 2005 Straylight/Edgeware
6 ###
7
8 ###----- Licensing notice ---------------------------------------------------
9 ###
10 ### This file is part of the Python interface to mLib.
11 ###
12 ### mLib/Python is free software; you can redistribute it and/or modify
13 ### it under the terms of the GNU General Public License as published by
14 ### the Free Software Foundation; either version 2 of the License, or
15 ### (at your option) any later version.
16 ###
17 ### mLib/Python is distributed in the hope that it will be useful,
18 ### but WITHOUT ANY WARRANTY; without even the implied warranty of
19 ### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 ### GNU General Public License for more details.
21 ###
22 ### You should have received a copy of the GNU General Public License
23 ### along with mLib/Python; if not, write to the Free Software Foundation,
24 ### Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
25
26 ###--------------------------------------------------------------------------
27 ### External stuff.
28
29 include 'defs.pxi'
30
31 ###--------------------------------------------------------------------------
32 ### Various facilities.
33
34 ## Internal utilities.
35 include 'utils.pyx'
36
37 ## Hashing.
38 include 'crc32.pyx'
39 include 'unihash.pyx'
40
41 ## Data structures.
42 include 'mapping.pyx'
43 include 'sym.pyx'
44 include 'atom.pyx'
45 include 'assoc.pyx'
46
47 ## String utilities.
48 include 'str.pyx'
49
50 ## Encodings.
51 include 'base64.pyx'
52 include 'base32.pyx'
53 include 'hex.pyx'
54 include 'url.pyx'
55
56 ## Error reporting.
57 include 'report.pyx'
58
59 ## File utilities.
60 include 'fwatch.pyx'
61 include 'fdutils.pyx'
62 include 'mdup.pyx'
63
64 ## Other useful stuff.
65 include 'stuff.pyx'
66
67 ## Buffering.
68 include 'lbuf.pyx'
69 include 'pkbuf.pyx'
70
71 ## Select stuff.
72 include 'sel-base.pyx'
73 include 'sel-file.pyx'
74 include 'sel-timer.pyx'
75 include 'conn.pyx'
76 include 'bres.pyx'
77 include 'sig.pyx'
78 include 'selbuf.pyx'
79 include 'selpk.pyx'
80 include 'ident.pyx'
81
82 ###--------------------------------------------------------------------------
83 ### Set-up stuff.
84
85 cdef object _tyobj(PyTypeObject *ty):
86 cdef PyObject *obj
87 obj = <PyObject *>ty
88 Py_INCREF(obj)
89 return <object>obj
90
91 da_pysetup()
92 Array = _tyobj(&da_pytype)
93 ArrayIter = _tyobj(&daiter_pytype)
94
95 atom_pysetup()
96 Atom = _tyobj(&atom_pytype)
97
98 ###----- That's all, folks --------------------------------------------------