artiq/setup.py

83 lines
2.5 KiB
Python
Raw Normal View History

#!/usr/bin/env python3
2014-05-28 02:40:42 +08:00
from setuptools import setup, find_packages, Command
import sys
2015-06-02 00:20:22 +08:00
import os
2015-11-09 11:33:38 +08:00
import versioneer
2015-08-07 15:51:56 +08:00
if sys.version_info[:3] < (3, 5, 0):
raise Exception("You need Python 3.5.0+")
2014-05-28 02:40:42 +08:00
2015-08-17 15:44:40 +08:00
class PushDocCommand(Command):
description = "uploads the documentation to m-labs.hk"
user_options = []
2015-08-17 15:44:40 +08:00
def initialize_options(self):
pass
2015-08-17 15:44:40 +08:00
def finalize_options(self):
pass
2015-08-17 15:44:40 +08:00
def run(self):
os.system("rsync -avz doc/manual/_build/html/ shell.serverraum.org:~/web/m-labs.hk/artiq/manual")
2015-08-17 15:44:40 +08:00
requirements = [
2015-02-16 08:31:19 +08:00
"sphinx", "sphinx-argparse", "pyserial", "numpy", "scipy",
2015-05-22 17:05:15 +08:00
"python-dateutil", "prettytable", "h5py", "pydaqmx", "pyelftools",
"quamash", "pyqtgraph", "pygit2", "aiohttp",
"llvmlite_artiq", "pythonparser", "python-Levenshtein",
"lit", "OutputCheck",
2015-02-16 08:31:19 +08:00
]
scripts = [
2015-02-16 08:31:19 +08:00
"artiq_client=artiq.frontend.artiq_client:main",
"artiq_compile=artiq.frontend.artiq_compile:main",
"artiq_coretool=artiq.frontend.artiq_coretool:main",
2015-02-16 08:31:19 +08:00
"artiq_ctlmgr=artiq.frontend.artiq_ctlmgr:main",
2015-05-22 17:05:15 +08:00
"artiq_gui=artiq.frontend.artiq_gui:main",
2015-08-17 15:44:40 +08:00
"artiq_influxdb=artiq.frontend.artiq_influxdb:main",
2015-02-16 08:31:19 +08:00
"artiq_master=artiq.frontend.artiq_master:main",
2015-04-30 20:03:11 +08:00
"artiq_mkfs=artiq.frontend.artiq_mkfs:main",
2015-02-16 08:31:19 +08:00
"artiq_rpctool=artiq.frontend.artiq_rpctool:main",
"artiq_run=artiq.frontend.artiq_run: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",
2015-05-21 23:08:47 +08:00
"pxi6733_controller=artiq.frontend.pxi6733_controller:main",
2015-04-22 10:00:56 +08:00
"thorlabs_tcube_controller=artiq.frontend.thorlabs_tcube_controller:main",
2015-02-16 08:31:19 +08:00
]
2015-11-09 11:33:38 +08:00
cmdclass = {"push_doc": PushDocCommand}
cmdclass.update(versioneer.get_cmdclass())
2014-05-28 02:40:42 +08:00
setup(
2014-12-30 18:53:27 +08:00
name="artiq",
2015-11-09 11:33:38 +08:00
version=versioneer.get_version(),
2014-12-30 18:53:27 +08:00
author="M-Labs / NIST Ion Storage Group",
author_email="sb@m-labs.hk",
url="http://m-labs.hk/artiq",
description="A control system for trapped-ion experiments",
long_description=open("README.rst").read(),
2015-10-23 09:09:45 +08:00
license="GPL",
install_requires=requirements,
2014-12-30 18:53:27 +08:00
extras_require={},
dependency_links=[
2015-11-12 22:00:04 +08:00
"git+https://github.com/m-labs/pyqtgraph.git@develop#egg=pyqtgraph",
"git+https://github.com/m-labs/llvmlite.git@artiq#egg=llvmlite_artiq"
],
2014-12-30 18:53:27 +08:00
packages=find_packages(),
namespace_packages=[],
test_suite="artiq.test",
include_package_data=True,
ext_modules=[],
entry_points={
"console_scripts": scripts,
},
2015-11-09 11:33:38 +08:00
cmdclass=cmdclass
)