You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I commented on the other issue, as the initial version of that is the same as this, except with plugin-depends instead of build-depends used in cabal project files. I prefer that, because I think build-depends should be what a package knows it depends on, and not be injectable.
Proposal
Support the
build-depends:
field in acabal.project
file.For example, this
cabal.project
file:would tell
cabal build
to build every component as ifghc-tags-plugin
had been added to itsbuild-depends:
.Motivation
I'm looking for a user-friendly way to run global GHC plugins 1 with Cabal.
Currently, users of ghc-tags-plugin are asked to:
cabal install --lib ghc-tags-plugin
(for me it was
/home/lawrence/.local/state/cabal/store/ghc-9.4.8/package.db/
)cabal.project
similar to:package * ghc-options: -package-db=/home/lawrence/.local/state/cabal/store/ghc-9.4.8/package.db/ -plugin-package=ghc-tags-plugin -fplugin=Plugin.GhcTags
cabal build
Related Issues
If #7901 is implemented,
cabal.project
would only need to contain:package * plugin-depends: ghc-tags-plugin
And no
cabal install --lib
call would be required.Unfortunately, a full implementation of #7901 'will be messy': #7901 (comment).
This feature might be easier to implement that #7901, because:
build-depends:
in.cabal
filesbuild-depends:
is compiler-agnositc)build-depends:
works with any library)Footnotes
A GHC plugin is global if it needs to run on all transitive dependencies of a package. (e.g. cabal-audit, ghc-tags-plugin, ghc-wpc) ↩
The text was updated successfully, but these errors were encountered: