1 from setuptools
import setup
, find_packages
5 def local_scheme(version
):
6 if version
.tag
and not version
.distance
:
7 return version
.format_with("")
9 return version
.format_choice("+{node}", "+{node}.dirty")
11 "relative_to": __file__
,
12 "version_scheme": "guess-next-dev",
13 "local_scheme": local_scheme
19 from setuptools_scm
.git
import parse
as parse_git
27 return git
.format_with("{tag}")
34 use_scm_version
=scm_version(),
36 author_email
="whitequark@whitequark.org",
37 description
="Python toolbox for building complex digital hardware",
38 #long_description="""TODO""",
40 python_requires
="~=3.6",
41 setup_requires
=["wheel", "setuptools", "setuptools_scm"],
43 "importlib_metadata; python_version<'3.8'", # for __version__ and nmigen._yosys
44 "importlib_resources; python_version<'3.9'", # for nmigen._yosys
45 "pyvcd~=0.2.2", # for nmigen.pysim
46 "Jinja2~=2.11", # for nmigen.build
49 # this version requirement needs to be synchronized with the one in nmigen.back.verilog!
50 "builtin-yosys": ["nmigen-yosys>=0.9.post3527.*"],
51 "remote-build": ["paramiko~=2.7"],
53 packages
=find_packages(exclude
=["tests*"]),
56 "nmigen-rpc = nmigen.rpc:main",
60 "Documentation": "https://nmigen.info/nmigen/{}".format(doc_version()),
61 "Source Code": "https://github.com/nmigen/nmigen",
62 "Bug Tracker": "https://github.com/nmigen/nmigen/issues",