tbxi/setup.py

41 lines
1.4 KiB
Python

from setuptools import setup, Extension
from os import path
this_directory = path.abspath(path.dirname(__file__))
with open(path.join(this_directory, 'README.md'), encoding='utf-8') as f:
long_description = f.read()
setup_args = dict(
name='tbxi',
long_description=long_description,
long_description_content_type='text/markdown',
version='0.12',
author='Elliot Nunn',
author_email='elliotnunn@fastmail.com',
description='Tools to compile and inspect Macintosh ROM images',
url='https://github.com/elliotnunn/tbxi',
classifiers=[
'Programming Language :: Python :: 3 :: Only',
'Programming Language :: C',
'Operating System :: OS Independent',
'Intended Audience :: Developers',
'Topic :: Software Development :: Build Tools',
'License :: OSI Approved :: MIT License',
],
zip_safe=True,
packages=['tbxi'],
install_requires=['macresources'],
entry_points=dict(console_scripts=['tbxi = tbxi.__main__:main']),
ext_modules=[Extension('tbxi.fast_lzss', ['speedups/fast_lzss.c'])],
)
# http://charlesleifer.com/blog/misadventures-in-python-packaging-optional-c-extensions/
# Yes, it might be a bit extreme to catch SystemExit to find a compiler error...
try:
setup(**setup_args)
except (SystemExit, Exception):
setup_args.pop('ext_modules')
setup(**setup_args)