29fed6f834
This update greatly enhances the accuracy with which dependencies are expressed in the generated Nix files. Previous versions distinguished dependencies for building ("buildDepends") and testing ("testDepends"). This distinction didn't apply to system packages or build tools, however: the fields "extraLibs" and "buildTools" applied to the entire build. This meant that dependencies required only for testing would be pulled in regardless of whether the test were actually being run, etc. These days, we distinguish dependencies for libraries, executables, and tests, and for each of those types we distinguish dependencies on Haskell libraries, system libraries, pkgconfig libraries, and build tools. This gives us a whopping 12 new attributes xxxHaskellDepends xxxSystemDepends xxxPkgconfigDepends xxxToolDepends where "xxx" is any of "library", "executable", or "test". The old dependency attributes are no longer generated by cabal2nix. The generic builder in Nixpkgs still accepts them, though, for the sake of backwards compatibility. This means that you don't have to re-generate all your build expressions with the new version, but you *should*. |
||
---|---|---|
.. | ||
applications | ||
build-support | ||
data | ||
desktops | ||
development | ||
games | ||
misc | ||
os-specific | ||
servers | ||
shells | ||
stdenv | ||
test | ||
tools | ||
top-level |