artiq/setup.py

85 lines
2.9 KiB
Python
Executable File

#!/usr/bin/env python3.5
from setuptools import setup, find_packages
import sys
import versioneer
if sys.version_info[:3] < (3, 5, 2):
raise Exception("You need Python 3.5.2+")
# Depends on PyQt5, but setuptools cannot check for it.
requirements = [
"sphinx", "sphinx-argparse", "sphinxcontrib-wavedrom", "sphinx_rtd_theme",
"asyncserial", "numpy", "scipy",
"python-dateutil", "prettytable", "h5py",
"quamash", "pyqtgraph", "pygit2", "aiohttp",
"llvmlite_artiq", "pythonparser", "python-Levenshtein",
"lit", "OutputCheck",
]
console_scripts = [
"artiq_client=artiq.frontend.artiq_client:main",
"artiq_compile=artiq.frontend.artiq_compile:main",
"artiq_coreanalyzer=artiq.frontend.artiq_coreanalyzer:main",
"artiq_coreconfig=artiq.frontend.artiq_coreconfig:main",
"artiq_corelog=artiq.frontend.artiq_corelog:main",
"artiq_ctlmgr=artiq.frontend.artiq_ctlmgr:main",
"artiq_influxdb=artiq.frontend.artiq_influxdb:main",
"artiq_master=artiq.frontend.artiq_master:main",
"artiq_mkfs=artiq.frontend.artiq_mkfs:main",
"artiq_rpctool=artiq.frontend.artiq_rpctool:main",
"artiq_run=artiq.frontend.artiq_run:main",
"artiq_flash=artiq.frontend.artiq_flash:main",
"lda_controller=artiq.frontend.lda_controller:main",
"novatech409b_controller=artiq.frontend.novatech409b_controller:main",
"pdq2_client=artiq.frontend.pdq2_client:main",
"pdq2_controller=artiq.frontend.pdq2_controller:main",
"thorlabs_tcube_controller=artiq.frontend.thorlabs_tcube_controller:main",
]
gui_scripts = [
"artiq_browser=artiq.frontend.artiq_browser:main",
"artiq_dashboard=artiq.frontend.artiq_dashboard:main",
]
setup(
name="artiq",
version=versioneer.get_version(),
cmdclass=versioneer.get_cmdclass(),
author="M-Labs",
author_email="artiq@lists.m-labs.hk",
url="https://m-labs.hk/artiq",
description="Advanced Real-Time Infrastructure for Quantum physics",
long_description=open("README.rst", encoding="utf-8").read(),
license="GPLv3+",
classifiers="""\
Development Status :: 5 - Production/Stable
Environment :: Console
Environment :: X11 Applications :: Qt
Intended Audience :: Science/Research
License :: OSI Approved :: GNU Lesser General Public License v3 or later (LGPLv3+)
Operating System :: Microsoft :: Windows
Operating System :: POSIX :: Linux
Programming Language :: Python :: 3.5
Topic :: Scientific/Engineering :: Physics
Topic :: System :: Hardware
""".splitlines(),
install_requires=requirements,
extras_require={},
dependency_links=[
"git+https://github.com/m-labs/pyqtgraph.git@develop#egg=pyqtgraph",
"git+https://github.com/m-labs/llvmlite.git@artiq#egg=llvmlite_artiq"
],
packages=find_packages(),
namespace_packages=[],
include_package_data=True,
ext_modules=[],
entry_points={
"console_scripts": console_scripts,
"gui_scripts": gui_scripts,
}
)