setup.py 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. #!/usr/bin/env python
  2. from setuptools.dist import Distribution
  3. from distutils.core import setup, Extension
  4. from distutils.util import convert_path
  5. emulator_files = [
  6. 'emulator/devices/utilities.c',
  7. 'emulator/devices/cpu/registers.c',
  8. 'emulator/devices/memory/memspace.c',
  9. 'emulator/debugger/debugger.c',
  10. 'emulator/debugger/register_display.c',
  11. 'emulator/devices/cpu/decoder.c',
  12. 'emulator/devices/cpu/flag_handler.c',
  13. 'emulator/devices/cpu/formatI.c',
  14. 'emulator/devices/cpu/formatII.c',
  15. 'emulator/devices/cpu/formatIII.c',
  16. 'emulator/devices/peripherals/bcm.c',
  17. 'emulator/devices/peripherals/timer_a.c',
  18. 'emulator/devices/peripherals/usci.c',
  19. 'emulator/devices/peripherals/port1.c',
  20. 'emulator/debugger/disassembler.c',
  21. 'emulator/python/py_functions.c',
  22. 'emulator/python/py_interface.c',
  23. 'emulator/win.c',
  24. ]
  25. main_ns = {}
  26. ver_path = convert_path('msp430emu/version.py')
  27. with open(ver_path) as ver_file:
  28. exec(ver_file.read(), main_ns)
  29. class BinaryDistribution(Distribution):
  30. def is_pure(self):
  31. return False
  32. setup(name='msp430emu',
  33. version=main_ns['__version__'],
  34. description=main_ns['description'],
  35. author_email=main_ns['__author__'],
  36. packages=['msp430emu'],
  37. package_dir={'msp430emu': 'msp430emu'},
  38. package_data={'msp430emu': ['*.png']},
  39. include_package_data=True,
  40. ext_modules=[Extension(
  41. '_msp430emu', emulator_files, extra_compile_args=["-w", "-DPYTHON"]
  42. )],
  43. distclass=BinaryDistribution,
  44. install_requires=[
  45. "wxPython >= 4",
  46. ],
  47. )