[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.5", ] [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"