aboutsummaryrefslogtreecommitdiff
path: root/pyproject.toml
blob: bcf7b2f00cb076f2f365a1de42fcd94c3da5f922 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
[project]
dynamic = ["version"]

name = "amaranth-boards"
description = "Board and connector definitions for Amaranth HDL"
authors = [{name = "Amaranth HDL contributors"}]
license = {file = "LICENSE.txt"}

requires-python = "~=3.8"
dependencies = [
  # this version requirement needs to be synchronized with the one in .github/workflows/main.yml
  "amaranth>=0.4,<0.6",
]

[project.urls]
"Source Code" = "https://github.com/amaranth-lang/amaranth-boards"
"Bug Tracker" = "https://github.com/amaranth-lang/amaranth-boards/issues"

# Build system configuration

[build-system]
requires = ["wheel", "setuptools>=67.0", "setuptools_scm[toml]>=6.2"]
build-backend = "setuptools.build_meta"

[tool.setuptools]
# If old amaranth-boards 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_boards` 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_boards"]

[tool.setuptools_scm]
local_scheme = "node-and-timestamp"

# Development workflow configuration

[tool.pdm.dev-dependencies]
toolchain = [
  "amaranth-yosys",
  "yowasp-yosys",
  "yowasp-nextpnr-ice40",
  "yowasp-nextpnr-ecp5",
  "yowasp-nextpnr-gowin",
]

[tool.pdm.scripts]
_.env_file = ".env.toolchain"