setup.py 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. from glob import glob
  2. from os import path
  3. from setuptools import Extension, setup
  4. ROOT_DIR = path.dirname(path.realpath(__file__))
  5. MOD_DIR = path.join(ROOT_DIR, 'cpython')
  6. SRC_DIR = path.join(ROOT_DIR, 'src')
  7. INCL_DIR = path.join(ROOT_DIR, 'include')
  8. EXT_DIR = path.join(ROOT_DIR, 'ext')
  9. sources = (
  10. glob(path.join(SRC_DIR, '*.c')) +
  11. glob(path.join(SRC_DIR, 'codec', '*.c')) +
  12. glob(path.join(MOD_DIR, '*.c')) +
  13. [
  14. path.join(EXT_DIR, 'openldap', 'libraries', 'liblmdb', 'mdb.c'),
  15. path.join(EXT_DIR, 'openldap', 'libraries', 'liblmdb', 'midl.c'),
  16. path.join(EXT_DIR, 'xxHash', 'xxhash.c'),
  17. path.join(EXT_DIR, 'tpl', 'src', 'tpl.c'),
  18. path.join(EXT_DIR, 'log', 'src', 'log.c'),
  19. ]
  20. )
  21. debug = True
  22. compile_args = [
  23. # '-std=c99',
  24. ]
  25. if debug:
  26. compile_args.extend(['-DDEBUG', '-g3', '-O0'])
  27. else:
  28. compile_args.extend(['-g0', '-O3'])
  29. setup(
  30. name="lsup_rdf",
  31. version="1.0a1",
  32. description='Ultra-compact RDF library.',
  33. author='Stefano Cossu <https://notabug.org/scossu>',
  34. url='https://notabug.org/scossu/lsup_rdf',
  35. license='https://notabug.org/scossu/lsup_rdf/src/master/LICENSE',
  36. package_dir={'lsup_rdf': path.join(MOD_DIR, 'lsup_rdf')},
  37. packages=['lsup_rdf'],
  38. ext_modules=[
  39. Extension(
  40. "_lsup_rdf",
  41. sources,
  42. include_dirs=[
  43. ROOT_DIR,
  44. INCL_DIR,
  45. path.join(EXT_DIR, 'uthash', 'src'),
  46. path.join(EXT_DIR, 'tpl', 'src'),
  47. path.join(EXT_DIR, 'log', 'src'),
  48. ],
  49. libraries=['uuid'],
  50. extra_compile_args=compile_args,
  51. ),
  52. ],
  53. )