]> git.rkrishnan.org Git - tahoe-lafs/zfec.git/blob - zfec/setup.py
zfec: update docs
[tahoe-lafs/zfec.git] / zfec / setup.py
1 #!/usr/bin/env python
2
3 # zfec -- a fast C implementation of Reed-Solomon erasure coding with
4 # command-line, C, and Python interfaces
5
6 # Copyright (C) 2007 Allmydata, Inc.
7 # Author: Zooko Wilcox-O'Hearn
8 # mailto:zooko@zooko.com
9
10 # This file is part of zfec.
11
12 # This program is free software; you can redistribute it and/or modify it
13 # under the terms of the GNU General Public License as published by the Free
14 # Software Foundation; either version 2 of the License, or (at your option)
15 # any later version.  This package also comes with the added permission that,
16 # in the case that you are obligated to release a derived work under this
17 # licence (as per section 2.b of the GPL), you may delay the fulfillment of
18 # this obligation for up to 12 months.
19
20 # This program is distributed in the hope that it will be useful,
21 # but WITHOUT ANY WARRANTY; without even the implied warranty of
22 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
23 # GNU General Public License for more details.
24
25 # You should have received a copy of the GNU General Public License
26 # along with this program; if not, write to the Free Software
27 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
28
29 from distutils.core import Extension, setup
30
31
32 DEBUGMODE=False
33 # DEBUGMODE=True
34
35 extra_compile_args=[]
36 extra_link_args=[]
37
38 extra_compile_args.append("-std=c99")
39
40 undef_macros=[]
41
42 if DEBUGMODE:
43     extra_compile_args.append("-O0")
44     extra_compile_args.append("-g")
45     extra_compile_args.append("-Wall")
46     extra_link_args.append("-g")
47     undef_macros.append('NDEBUG')
48
49 trove_classifiers=[
50     "Development Status :: 4 - Beta", 
51     "Environment :: No Input/Output (Daemon)", 
52     "Intended Audience :: Developers", 
53     "License :: OSI Approved :: GNU General Public License (GPL)", 
54     "Natural Language :: English", 
55     "Operating System :: OS Independent", 
56     "Programming Language :: C", 
57     "Programming Language :: Python", 
58     "Topic :: System :: Archiving :: Backup", 
59     ]
60
61 setup(name='zfec',
62       version='1.0.0a3',
63       summary='a fast C implementation of Reed-Solomon erasure coding with command-line, C, and Python interfaces',
64       description='Fast, portable, programmable erasure coding a.k.a. "forward error correction": the generation of redundant blocks of information such that if some blocks are lost then the original data can be recovered from the remaining blocks.',
65       author='Zooko O\'Whielacronx',
66       author_email='zooko@zooko.com',
67       url='http://allmydata.com/source/zfec',
68       license='GNU GPL',
69       platform='Any',
70       packages=['zfec', 'zfec.util', 'zfec.test'],
71       classifiers=trove_classifiers,
72       scripts=['bin/zfec', 'bin/zunfec',],
73       ext_modules=[Extension('_fec', ['zfec/fec.c', 'zfec/_fecmodule.c',], extra_link_args=extra_link_args, extra_compile_args=extra_compile_args, undef_macros=undef_macros),],
74       )