allow installing just specific bits, like just docs #218

Closed
bos opened this Issue May 24, 2012 · 2 comments

Comments

Projects
None yet
3 participants
@bos
Contributor

bos commented May 24, 2012

(Imported from Trac #225, reported by @dcoutts on 2008-01-31)

Sometimes people would like to build and install just part of a cabal project, e.g. the documentation or one of the libraries or binaries. Specific use-cases are packaging for OS distro's and generating Haddock docs for code that was installed without it (cf the current state of Debian-stable).

Igloo proposes the following user interface:


As long as docs, license and binaries can be (de)selected individually I don't really mind.

If you want a concrete suggestion, we could have --foo and --no-foo for each thing, with the default being --all and the command line being processed left-to-right, e.g.

cabal install --no-haddock-interfaces --docs --no-html
would install
  • all (which wouldn't actually contain anything)
  • docs (which wouldn't actually contain anything)
  • haddock-interfaces
  • license
  • everything under binaries

I broadly agree, but am slightly concerned there are dependencies amongst the various things that his syntax does not respect (e.g. one may need to install the libraries - e.g. one depending on a foreign library - in order to get a binary working). So either we have to vet the command lines or coarsen the flags. I hope Duncan and Igloo can draw on their packaging experience and determine what is actually useful.
@bos

This comment has been minimized.

Show comment
Hide comment
@bos

bos May 24, 2012

Contributor

(Imported comment by guest on 2008-01-31)

One use for this is building split packages for profiling/non-profiling libraries using template haskell. The distro would like to install only profiling libraries under a specific destdir, but normal libraries must be build as well for template haskell support.

Contributor

bos commented May 24, 2012

(Imported comment by guest on 2008-01-31)

One use for this is building split packages for profiling/non-profiling libraries using template haskell. The distro would like to install only profiling libraries under a specific destdir, but normal libraries must be build as well for template haskell support.

@jsl

This comment has been minimized.

Show comment
Hide comment
@jsl

jsl Feb 24, 2015

Given that there is no activity since 2008, I propose closing. Please re-open or create a new ticket if this is still desired.

/cc @tibbe

jsl commented Feb 24, 2015

Given that there is no activity since 2008, I propose closing. Please re-open or create a new ticket if this is still desired.

/cc @tibbe

@tibbe tibbe closed this Feb 24, 2015

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment