1
0
infernal-interpreter/setup.py

70 lines
1.7 KiB
Python
Raw Normal View History

# WARNING
#
# THIS IS AN AUTOGENERATED FILE.
#
# MANUAL CHANGES CAN AND WILL BE OVERWRITTEN.
2024-07-09 23:14:12 +00:00
import re
2024-07-09 23:14:12 +00:00
from setuptools import setup
PACKAGE_NAME = 'infernal_interpreter'
PACKAGE_DESCRIPTION = """
# Infernal Interpreter & Devious Stack Painter.
Simple interpreter and stack tracer for the AMD x86-64 ABI.
Recently updated for Python 3.
Does not support all instructions, and will never ever do.
It produces output in either ascii or LaTeX with tikz format.
Compiling the LaTeX requires both a LaTeX compiler, and packages
`preview` and `standalone`. Options can be viewed by running
`./infernal --help`.
## Tests
Please ignore the `/tests` folder. It is very old, and unsupported,
but kept for archival purposes.
""".strip()
PACKAGE_DESCRIPTION_SHORT = """
Simple interpreter and stack tracer for the AMD x86-64 ABI.""".strip()
def parse_version_file(text: str) -> str:
match = re.match(r'^__version__\s*=\s*(["\'])([\d\.]+)\1$', text)
if match is None:
msg = 'Malformed _version.py file!'
raise Exception(msg)
return match.group(2)
with open(PACKAGE_NAME + '/_version.py') as f:
version = parse_version_file(f.read())
REQUIREMENTS_MAIN = []
REQUIREMENTS_TEST = [
'pytest',
]
setup(
name=PACKAGE_NAME,
version=version,
description=PACKAGE_DESCRIPTION_SHORT,
long_description=PACKAGE_DESCRIPTION,
long_description_content_type='text/markdown',
author='Jon Michael Aanes',
author_email='jonjmaa@gmail.com',
url='https://gitfub.space/Jmaa/' + PACKAGE_NAME,
packages=[PACKAGE_NAME],
install_requires=REQUIREMENTS_MAIN,
extras_require={
'test': REQUIREMENTS_TEST,
},
python_requires='>=3.9',
)