summaryrefslogtreecommitdiff
path: root/bindings/rs-dablooms/dablooms/pydablooms/setup.py
diff options
context:
space:
mode:
Diffstat (limited to 'bindings/rs-dablooms/dablooms/pydablooms/setup.py')
-rw-r--r--bindings/rs-dablooms/dablooms/pydablooms/setup.py35
1 files changed, 35 insertions, 0 deletions
diff --git a/bindings/rs-dablooms/dablooms/pydablooms/setup.py b/bindings/rs-dablooms/dablooms/pydablooms/setup.py
new file mode 100644
index 0000000..add7ba5
--- /dev/null
+++ b/bindings/rs-dablooms/dablooms/pydablooms/setup.py
@@ -0,0 +1,35 @@
+from distutils.core import setup, Extension
+import os, sys
+
+def local_path(path):
+ local_dir = os.path.dirname(__file__)
+ return os.path.normpath(os.path.join(local_dir, path))
+
+def parse_version_from_c():
+ cfile = open(local_path('../src/dablooms.c'))
+ result = ''
+ for line in cfile:
+ parts = line.split()
+ if len(parts) == 3 and parts[:2] == ['#define', 'DABLOOMS_VERSION']:
+ result = parts[2].strip('"')
+ break
+ cfile.close()
+ return result
+
+def path_from_env(name, default):
+ return os.environ.get(name, local_path(default))
+
+module1 = Extension('pydablooms',
+ include_dirs = [local_path('../src')],
+ sources = [local_path('pydablooms.c'),
+ local_path('../src/dablooms.c'),
+ local_path('../src/murmur.c'), ],
+ )
+
+setup (name = 'pydablooms',
+ version = parse_version_from_c(),
+ description = 'This is a a python extension of the scaling, counting, bloom filter, dablooms.',
+ author = 'Justin P. Hines',
+ author_email = '[email protected]',
+ url = 'http://github.com/bitly/dablooms.git',
+ ext_modules = [module1])