The setuptools-scm packages gained a setup hook, that sets it to the
derivation version automatically, so setting it to that manually has
become redundant.
This also affects downstream consumers of setuptools-scm, like hatch-vcs
or flit-scm.
This continues where d8f7f6a5ce left off. Similarly
to that commit, this commit this also points `sourceRoot`s to `src.name` and similar
instead of keeping hardcoded names, and edits other derivation attrs do do the same,
where appropriate.
Also, similarly to d8f7f6a5ce some of expressions this
edits use `srcs` attribute with customly-named sources, so they have to be moved
into `let` blocks to keep evaluation efficient (the other, worse, way to do this
would to recurcively refer to `elemAt n finalAttrs.srcs` or, similarly, with `rec`).
Subtools such as pnmainc rely on libraries in the diamond/bin/lin64 and
diamond/ispfpga/bin/lin64 directories, but they don't set LD_LIBRARY_PATH as
would be needed.
To make things work, simply include these two directories in the RPATH that is
patched into Diamond binaries.
checkInputs used to be added to nativeBuildInputs. Now we have
nativeCheckInputs to do that instead. Doing this treewide change allows
to keep hashes identical to before the introduction of
nativeCheckInputs.
This avoids the following missing features:
hidapi-libusb not found: cmsis_dap support disabled
zlib library not found: can't flash intel/altera devices