Ticket #276 (new enhancement)

Opened 5 years ago

Last modified 3 years ago

Add support for convenience libraries

Reported by: rl Owned by:
Priority: normal Milestone: Cabal-1.8
Component: Cabal library Version: 1.2.3.0
Severity: normal Keywords:
Cc: johan.tibell@…, wehr@… Difficulty: project(> week)
GHC Version: 6.8.2 Platform:

Description

I'd like to have a package with several binaries which all use a convenience library included in that same package. The convenience library should NOT be installed. For this to work, Cabal needs two things. Firstly, it must allow dependencies within a package such that I could describe the library and have the binaries depend on it. Secondly, it should have an "installable" flag, similar to "buildable". A thing that's not installable would be built but not installed. The same mechanism could be used for package-internal tools.

Change History

Changed 5 years ago by duncan

  • difficulty changed from normal to project(> week)

There is the constraint that there be at most one installable library so I'm not sure a bool flag is quite right.

Changed 5 years ago by duncan

  • milestone set to Cabal-1.8

This would mean that the lib would always have to be built statically even if the user requests dynamic libs.

So this feature mainly depends on the ability to use build-depends: on a lib defined within the same package (whether that lib is to be installed or not). Similarly for build-tools.

This would also solve ticket #89.

Changed 3 years ago by tibbe

  • cc johan.tibell@… added

Changed 3 years ago by skogsbaer

  • cc wehr@… added
Note: See TracTickets for help on using tickets.