setup.py 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  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 variables
  7. from build_ext import update_opts
  8. from distutils.core import setup, Extension
  9. macros = [('PACKAGE', '"grasslibs"')]
  10. inc_dirs = [os.path.join(os.path.normpath(os.environ['ARCH_DISTDIR']), 'include'),
  11. os.path.join(os.path.normpath(os.environ['GISBASE']), 'include')]
  12. lib_dirs = [os.path.join(os.path.normpath(os.environ['ARCH_DISTDIR']), 'lib'),
  13. os.path.join(os.path.normpath(os.environ['GISBASE']), 'lib')]
  14. libs = ['grass_gis',
  15. 'grass_nviz',
  16. 'grass_ogsf',
  17. 'grass_g3d']
  18. extras = []
  19. for flag in ['GDALCFLAGS',
  20. 'GDALLIBS',
  21. 'WXWIDGETSCXXFLAGS',
  22. 'OPENGLINC',
  23. 'OPENGLLIB',
  24. 'OPENGLULIB']:
  25. update_opts(flag, macros, inc_dirs, lib_dirs, libs, extras)
  26. if sys.platform != 'darwin':
  27. update_opts('WXWIDGETSLIB', macros, inc_dirs, lib_dirs, libs, extras)
  28. if variables['OPENGL_X11'] == '1':
  29. for flag in ['XCFLAGS']:
  30. update_opts(flag, macros, inc_dirs, lib_dirs, libs, extras)
  31. setup(
  32. ext_modules= [
  33. Extension(
  34. name = '_grass7_wxnviz',
  35. sources=["change_view.cpp",
  36. "draw.cpp",
  37. "init.cpp",
  38. "lights.cpp",
  39. "load.cpp",
  40. "surface.cpp",
  41. "vector.cpp",
  42. "volume.cpp",
  43. "grass7_wxnviz.i"],
  44. swig_opts = ['-c++',
  45. '-shadow'],
  46. define_macros = macros,
  47. include_dirs = inc_dirs,
  48. library_dirs = lib_dirs,
  49. libraries = libs,
  50. extra_link_args = extras,
  51. )
  52. ]
  53. )