src/platform/python/setup.py (view raw)
1from setuptools import setup
2import re
3import os
4import os.path
5import sys
6import subprocess
7
8
9def get_version_component(piece):
10 return subprocess.check_output(['cmake', '-DPRINT_STRING={}'.format(piece), '-P', '../../../version.cmake']).decode('utf-8').strip()
11
12
13version = '{}.{}.{}'.format(*(get_version_component(p) for p in ('LIB_VERSION_MAJOR', 'LIB_VERSION_MINOR', 'LIB_VERSION_PATCH')))
14if not get_version_component('GIT_TAG'):
15 version += '.{}+g{}'.format(*(get_version_component(p) for p in ('GIT_REV', 'GIT_COMMIT_SHORT')))
16
17setup(
18 name="mgba",
19 version=version,
20 author="Jeffrey Pfau",
21 author_email="jeffrey@endrift.com",
22 url="http://github.com/mgba-emu/mgba/",
23 packages=["mgba"],
24 setup_requires=['cffi>=1.6,!=1.12.3', 'pytest-runner'],
25 install_requires=['cffi>=1.6,!=1.12.3', 'cached-property'],
26 extras_require={'pil': ['Pillow>=2.3'], 'cinema': ['pyyaml', 'pytest']},
27 tests_require=['pytest'],
28 cffi_modules=["_builder.py:ffi"],
29 license="MPL 2.0",
30 classifiers=[
31 "Programming Language :: C",
32 "Programming Language :: Python :: 2",
33 "Programming Language :: Python :: 3",
34 "License :: OSI Approved :: Mozilla Public License 2.0 (MPL 2.0)",
35 "Topic :: Games/Entertainment",
36 "Topic :: System :: Emulators"
37 ]
38)