setup.py 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. #!/usr/bin/env python
  2. # Setup script for wxGUI vdigit extension.
  3. import os
  4. import sys
  5. sys.path.append('..')
  6. from build_ext import update_opts
  7. from distutils.core import setup, Extension
  8. if sys.platform == "win32":
  9. package = '\\"grasslibs\\"'
  10. else:
  11. package = '"grasslibs"'
  12. macros = [('PACKAGE', package)]
  13. inc_dirs = [os.path.join(os.path.normpath(os.getenv('ARCH_DISTDIR')), 'include'),
  14. os.path.join(os.path.normpath(os.getenv('GISBASE')), 'include')]
  15. lib_dirs = [os.path.join(os.path.normpath(os.getenv('ARCH_DISTDIR')), 'lib'),
  16. os.path.join(os.path.normpath(os.getenv('GISBASE')), 'lib')]
  17. libs = ['grass_dbmibase',
  18. 'grass_dbmiclient',
  19. 'grass_vector',
  20. 'grass_gis',
  21. 'grass_vedit']
  22. extras = []
  23. for flag in ['CXXFLAGS',
  24. 'GDALCFLAGS',
  25. 'GDALLIBS',
  26. 'GEOSCFLAGS',
  27. 'WXWIDGETSLIB',
  28. 'WXWIDGETSCXXFLAGS']:
  29. update_opts(os.getenv(flag), macros, inc_dirs, lib_dirs, libs, extras)
  30. setup(
  31. ext_modules= [
  32. Extension(
  33. name = '_grass7_wxvdigit',
  34. sources = ["cats.cpp",
  35. "driver.cpp",
  36. "driver_draw.cpp",
  37. "driver_select.cpp",
  38. "line.cpp",
  39. "message.cpp",
  40. "select.cpp",
  41. "undo.cpp",
  42. "vertex.cpp",
  43. "pseudodc.cpp",
  44. "digit.cpp",
  45. "grass7_wxvdigit.i"],
  46. swig_opts = ['-c++',
  47. '-shadow'],
  48. define_macros = macros,
  49. include_dirs = inc_dirs,
  50. library_dirs = lib_dirs,
  51. libraries = libs,
  52. extra_link_args = extras,
  53. )
  54. ]
  55. )