buildozer/setup.py

83 lines
2.5 KiB
Python
Raw Normal View History

'''
Buildozer
'''
import sys
from setuptools import setup
from os.path import dirname, join
import codecs
import os
import re
2015-10-04 12:57:26 +02:00
import io
here = os.path.abspath(os.path.dirname(__file__))
CURRENT_PYTHON = sys.version_info[:2]
REQUIRED_PYTHON = (3, 6)
# This check and everything above must remain compatible with Python 2.7.
if CURRENT_PYTHON < REQUIRED_PYTHON:
sys.stderr.write("""
==========================
Unsupported Python version
==========================
This version of buildozer requires Python {}.{}, but you're trying to
install it on Python {}.{}.
""".format(*(REQUIRED_PYTHON + CURRENT_PYTHON)))
sys.exit(1)
def find_version(*file_paths):
# Open in Latin-1 so that we avoid encoding errors.
# Use codecs.open for Python 2 compatibility
with codecs.open(os.path.join(here, *file_paths), 'r', 'utf-8') as f:
version_file = f.read()
# The version line must have the form
# __version__ = 'ver'
version_match = re.search(r"^__version__ = ['\"]([^'\"]*)['\"]",
version_file, re.M)
if version_match:
return version_match.group(1)
raise RuntimeError("Unable to find version string.")
2012-12-20 01:01:19 +01:00
2015-10-04 12:57:26 +02:00
curdir = dirname(__file__)
2019-02-03 12:28:11 +01:00
with io.open(join(curdir, "README.md"), encoding="utf-8") as fd:
readme = fd.read()
2015-10-04 12:57:26 +02:00
with io.open(join(curdir, "CHANGELOG.md"), encoding="utf-8") as fd:
changelog = fd.read()
setup(
name='buildozer',
version=find_version('buildozer', '__init__.py'),
description='Generic Python packager for Android / iOS and Desktop',
long_description=readme + "\n\n" + changelog,
2019-02-03 12:28:11 +01:00
long_description_content_type='text/markdown',
author='Mathieu Virbel',
author_email='mat@kivy.org',
url='http://github.com/kivy/buildozer',
license='MIT',
packages=[
2015-10-04 12:57:26 +02:00
'buildozer', 'buildozer.targets', 'buildozer.libs', 'buildozer.scripts'
2018-12-28 12:30:39 +01:00
],
package_data={'buildozer': ['default.spec']},
include_package_data=True,
2018-12-28 12:30:39 +01:00
install_requires=['pexpect', 'virtualenv', 'sh'],
classifiers=[
'Development Status :: 5 - Production/Stable',
'Intended Audience :: Developers',
'Topic :: Software Development :: Build Tools',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.6',
'Programming Language :: Python :: 3.7',
'Programming Language :: Python :: 3.8',
2015-10-04 12:57:26 +02:00
],
entry_points={
'console_scripts': [
'buildozer=buildozer.scripts.client:main',
2015-10-04 12:57:26 +02:00
'buildozer-remote=buildozer.scripts.remote:main'
]
})