amaranth/pyproject.toml
Catherine 4627d8d3c8 pyproject: depend on setuptools>=67.0 instead of ~=67.0.
The latter is overly strict and breaks installation with PDM (which
is more principled than our other PEP517 build backends).
2023-07-21 03:57:06 +00:00

37 lines
1.2 KiB
TOML

[build-system]
requires = ["wheel", "setuptools>=67.0", "setuptools_scm[toml]>=6.2"]
build-backend = "setuptools.build_meta"
[project]
dynamic = ["version", "urls"]
name = "amaranth"
description = "Amaranth hardware definition language"
authors = [{name = "Amaranth HDL contributors"}]
license = {file = "LICENSE.txt"}
requires-python = "~=3.8"
dependencies = [
"importlib_resources; python_version<'3.9'", # for amaranth._toolchain.yosys
"pyvcd>=0.2.2,<0.5", # for amaranth.sim.pysim
"Jinja2~=3.0", # for amaranth.build
]
[project.optional-dependencies]
# this version requirement needs to be synchronized with the one in amaranth.back.verilog!
builtin-yosys = ["amaranth-yosys>=0.10"]
remote-build = ["paramiko~=2.7"]
[project.scripts]
amaranth-rpc = "amaranth.rpc:main"
[tool.setuptools]
# If amaranth 0.3 is checked out with git (e.g. as a part of a persistent editable install or
# a git worktree cached by tools like poetry), it can have an empty `nmigen` directory left over,
# which causes a hard error because setuptools cannot determine the top-level package.
# Add a workaround to improve experience for people upgrading from old checkouts.
packages = ["amaranth"]
[tool.setuptools_scm]
local_scheme = "node-and-timestamp"