cdocutils.nodes document q)q}q(U nametypesq}q(X%configuring builds with cabal.projectqNX)how can i profile my library/application?qNX quickstartqNXhaddock optionsq NXcmdoption--store-dirq Xunsupported commandsq NXcabal new-replq NXpackage versioning policyq Xsolver configuration optionsqNXhoogleqXhscolourqXcmdoption--project-fileqXhackageqXexecutable optionsqNXspecifying the local packagesqNXcabal new-configureqNXcpphsqXhappyqXcabal new-freezeqNXhaskellqXcmdoption--builddirqXobject code optionsqNX%advanced global configuration optionsqNX how it worksqNXpvpqX"foreign function interface optionsqNXdynamic linking optionsq NXdeveloping multiple packagesq!NXcoverage optionsq"NXcommandsq#NXalexq$Xglobal configuration optionsq%NXwhere are my build products?q&NXhaddockq'Xlocal versus external packagesq(NXpackage configuration optionsq)NXcabal new-buildq*NXcachingq+NXadvanced solver optionsq,NXcookbookq-NXprofiling optionsq.NuUsubstitution_defsq/}q0Uparse_messagesq1]q2(cdocutils.nodes system_message q3)q4}q5(U rawsourceq6UUparentq7cdocutils.nodes section q8)q9}q:(h6Uh7h8)q;}q<(h6Uh7hUsourceq=XA/home/refold/code/haskell/cabal-2.0/Cabal/doc/nix-local-build.rstq>Utagnameq?Usectionq@U attributesqA}qB(UdupnamesqC]UclassesqD]UbackrefsqE]UidsqF]qGU how-it-worksqHaUnamesqI]qJhauUlineqKKjUdocumentqLhUchildrenqM]qN(cdocutils.nodes title qO)qP}qQ(h6X How it worksqRh7h;h=h>h?UtitleqShA}qT(hC]hD]hE]hF]hI]uhKKjhLhhM]qUcdocutils.nodes Text qVX How it worksqWqX}qY(h6hRh=NhKNhLhh7hPubaubh9h8)qZ}q[(h6Uh7h;h=h>h?h@hA}q\(hC]hD]hE]hF]q]Uwhere-are-my-build-productsq^ahI]q_h&auhKKhLhhM]q`(hO)qa}qb(h6XWhere are my build products?qch7hZh=h>h?hShA}qd(hC]hD]hE]hF]hI]uhKKhLhhM]qehVXWhere are my build products?qfqg}qh(h6hch=NhKNhLhh7haubaubcdocutils.nodes paragraph qi)qj}qk(h6XA major deficiency in the current implementation of new-build is that there is no programmatic way to access the location of build products. The location of the build products is intended to be an internal implementation detail of new-build, but we also understand that many unimplemented features (e.g., ``new-test``) can only be reasonably worked around by accessing build products directly.h7hZh=h>h?U paragraphqlhA}qm(hC]hD]hE]hF]hI]uhKKhLhhM]qn(hVX1A major deficiency in the current implementation of new-build is that there is no programmatic way to access the location of build products. The location of the build products is intended to be an internal implementation detail of new-build, but we also understand that many unimplemented features (e.g., qoqp}qq(h6X1A major deficiency in the current implementation of new-build is that there is no programmatic way to access the location of build products. The location of the build products is intended to be an internal implementation detail of new-build, but we also understand that many unimplemented features (e.g., h=NhKNhLhh7hjubcdocutils.nodes literal qr)qs}qt(h6X ``new-test``hA}qu(hC]hD]hE]hF]hI]uh7hjhM]qvhVXnew-testqwqx}qy(h6Uh7hsubah?UliteralqzubhVXL) can only be reasonably worked around by accessing build products directly.q{q|}q}(h6XL) can only be reasonably worked around by accessing build products directly.h=NhKNhLhh7hjubeubhi)q~}q(h6X`The location where build products can be found varies depending on the version of cabal-install:qh7hZh=h>h?hlhA}q(hC]hD]hE]hF]hI]uhKKhLhhM]qhVX`The location where build products can be found varies depending on the version of cabal-install:qq}q(h6hh=NhKNhLhh7h~ubaubcdocutils.nodes bullet_list q)q}q(h6Uh7hZh=h>h?U bullet_listqhA}q(UbulletqX-hF]hE]hC]hD]hI]uhKKhLhhM]q(cdocutils.nodes list_item q)q}q(h6XIn cabal-install-1.24, the dist directory for a package ``p-0.1`` is stored in ``dist-newstyle/build/p-0.1``. For example, if you built an executable or test suite named ``pexe``, it would be located at ``dist-newstyle/build/p-0.1/build/pexe/pexe``. h7hh=h>h?U list_itemqhA}q(hC]hD]hE]hF]hI]uhKNhLhhM]qhi)q}q(h6XIn cabal-install-1.24, the dist directory for a package ``p-0.1`` is stored in ``dist-newstyle/build/p-0.1``. For example, if you built an executable or test suite named ``pexe``, it would be located at ``dist-newstyle/build/p-0.1/build/pexe/pexe``.h7hh=h>h?hlhA}q(hC]hD]hE]hF]hI]uhKKhM]q(hVX8In cabal-install-1.24, the dist directory for a package qq}q(h6X8In cabal-install-1.24, the dist directory for a package h7hubhr)q}q(h6X ``p-0.1``hA}q(hC]hD]hE]hF]hI]uh7hhM]qhVXp-0.1qq}q(h6Uh7hubah?hzubhVX is stored in qq}q(h6X is stored in h7hubhr)q}q(h6X``dist-newstyle/build/p-0.1``hA}q(hC]hD]hE]hF]hI]uh7hhM]qhVXdist-newstyle/build/p-0.1qq}q(h6Uh7hubah?hzubhVX>. For example, if you built an executable or test suite named qq}q(h6X>. For example, if you built an executable or test suite named h7hubhr)q}q(h6X``pexe``hA}q(hC]hD]hE]hF]hI]uh7hhM]qhVXpexeqq}q(h6Uh7hubah?hzubhVX, it would be located at qq}q(h6X, it would be located at h7hubhr)q}q(h6X-``dist-newstyle/build/p-0.1/build/pexe/pexe``hA}q(hC]hD]hE]hF]hI]uh7hhM]qhVX)dist-newstyle/build/p-0.1/build/pexe/pexeqq}q(h6Uh7hubah?hzubhVX.q}q(h6X.h7hubeubaubh)q}q(h6X5In cabal-install HEAD, the dist directory for a package ``p-0.1`` defining a library built with GHC 8.0.1 on 64-bit Linux is ``dist-newstyle/build/x86_64-linux/ghc-8.0.1/p-0.1``. When per-component builds are enabled (any non-Custom package), a subcomponent like an executable or test suite named ``pexe`` will be stored at ``dist-newstyle/build/x86_64-linux/ghc-8.0.1/p-0.1/c/pexe``; thus, the full path of the executable is ``dist-newstyle/build/x86_64-linux/ghc-8.0.1/p-0.1/c/pexe/build/pexe/pexe`` (you can see why we want this to be an implementation detail!) h7hh=h>h?hhA}q(hC]hD]hE]hF]hI]uhKNhLhhM]qhi)q}q(h6X4In cabal-install HEAD, the dist directory for a package ``p-0.1`` defining a library built with GHC 8.0.1 on 64-bit Linux is ``dist-newstyle/build/x86_64-linux/ghc-8.0.1/p-0.1``. When per-component builds are enabled (any non-Custom package), a subcomponent like an executable or test suite named ``pexe`` will be stored at ``dist-newstyle/build/x86_64-linux/ghc-8.0.1/p-0.1/c/pexe``; thus, the full path of the executable is ``dist-newstyle/build/x86_64-linux/ghc-8.0.1/p-0.1/c/pexe/build/pexe/pexe`` (you can see why we want this to be an implementation detail!)h7hh=h>h?hlhA}q(hC]hD]hE]hF]hI]uhKKhM]q(hVX8In cabal-install HEAD, the dist directory for a package qɅq}q(h6X8In cabal-install HEAD, the dist directory for a package h7hubhr)q}q(h6X ``p-0.1``hA}q(hC]hD]hE]hF]hI]uh7hhM]qhVXp-0.1qЅq}q(h6Uh7hubah?hzubhVX< defining a library built with GHC 8.0.1 on 64-bit Linux is qӅq}q(h6X< defining a library built with GHC 8.0.1 on 64-bit Linux is h7hubhr)q}q(h6X4``dist-newstyle/build/x86_64-linux/ghc-8.0.1/p-0.1``hA}q(hC]hD]hE]hF]hI]uh7hhM]qhVX0dist-newstyle/build/x86_64-linux/ghc-8.0.1/p-0.1qڅq}q(h6Uh7hubah?hzubhVXx. When per-component builds are enabled (any non-Custom package), a subcomponent like an executable or test suite named q݅q}q(h6Xx. When per-component builds are enabled (any non-Custom package), a subcomponent like an executable or test suite named h7hubhr)q}q(h6X``pexe``hA}q(hC]hD]hE]hF]hI]uh7hhM]qhVXpexeq䅁q}q(h6Uh7hubah?hzubhVX will be stored at q煁q}q(h6X will be stored at h7hubhr)q}q(h6X;``dist-newstyle/build/x86_64-linux/ghc-8.0.1/p-0.1/c/pexe``hA}q(hC]hD]hE]hF]hI]uh7hhM]qhVX7dist-newstyle/build/x86_64-linux/ghc-8.0.1/p-0.1/c/pexeqq}q(h6Uh7hubah?hzubhVX+; thus, the full path of the executable is qq}q(h6X+; thus, the full path of the executable is h7hubhr)q}q(h6XK``dist-newstyle/build/x86_64-linux/ghc-8.0.1/p-0.1/c/pexe/build/pexe/pexe``hA}q(hC]hD]hE]hF]hI]uh7hhM]qhVXGdist-newstyle/build/x86_64-linux/ghc-8.0.1/p-0.1/c/pexe/build/pexe/pexeqq}q(h6Uh7hubah?hzubhVX? (you can see why we want this to be an implementation detail!)qq}q(h6X? (you can see why we want this to be an implementation detail!)h7hubeubaubeubhi)q}q(h6X-The paths are a bit longer in HEAD but the benefit is that you can transparently have multiple builds with different versions of GHC. We plan to add the ability to create aliases for certain build configurations, and more convenient paths to access particularly useful build products like executables.rh7hZh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKKhLhhM]rhVX-The paths are a bit longer in HEAD but the benefit is that you can transparently have multiple builds with different versions of GHC. We plan to add the ability to create aliases for certain build configurations, and more convenient paths to access particularly useful build products like executables.rr}r(h6jh=NhKNhLhh7hubaubeubh8)r}r(h6Uh7h;h=h>h?h@hA}r(hC]hD]hE]hF]r Ucachingr ahI]r h+auhKKhLhhM]r (hO)r }r(h6XCachingrh7jh=h>h?hShA}r(hC]hD]hE]hF]hI]uhKKhLhhM]rhVXCachingrr}r(h6jh=NhKNhLhh7j ubaubhi)r}r(h6XNix-style local builds sport a robust caching system which help reduce the time it takes to execute a rebuild cycle. While the details of how ``cabal-install`` does caching are an implementation detail and may change in the future, knowing what gets cached is helpful for understanding the performance characteristics of invocations to ``new-build``. The cached intermediate results are stored in ``dist-newstyle/cache``; this folder can be safely deleted to clear the cache.h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKKhLhhM]r(hVXNix-style local builds sport a robust caching system which help reduce the time it takes to execute a rebuild cycle. While the details of how rr}r(h6XNix-style local builds sport a robust caching system which help reduce the time it takes to execute a rebuild cycle. While the details of how h=NhKNhLhh7jubhr)r}r(h6X``cabal-install``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX cabal-installr r!}r"(h6Uh7jubah?hzubhVX does caching are an implementation detail and may change in the future, knowing what gets cached is helpful for understanding the performance characteristics of invocations to r#r$}r%(h6X does caching are an implementation detail and may change in the future, knowing what gets cached is helpful for understanding the performance characteristics of invocations to h=NhKNhLhh7jubhr)r&}r'(h6X ``new-build``hA}r((hC]hD]hE]hF]hI]uh7jhM]r)hVX new-buildr*r+}r,(h6Uh7j&ubah?hzubhVX0. The cached intermediate results are stored in r-r.}r/(h6X0. The cached intermediate results are stored in h=NhKNhLhh7jubhr)r0}r1(h6X``dist-newstyle/cache``hA}r2(hC]hD]hE]hF]hI]uh7jhM]r3hVXdist-newstyle/cacher4r5}r6(h6Uh7j0ubah?hzubhVX7; this folder can be safely deleted to clear the cache.r7r8}r9(h6X7; this folder can be safely deleted to clear the cache.h=NhKNhLhh7jubeubhi)r:}r;(h6XwThe following intermediate results are cached in the following files in this folder (the most important two are first):r<h7jh=h>h?hlhA}r=(hC]hD]hE]hF]hI]uhKKhLhhM]r>hVXwThe following intermediate results are cached in the following files in this folder (the most important two are first):r?r@}rA(h6j<h=NhKNhLhh7j:ubaubcdocutils.nodes definition_list rB)rC}rD(h6Uh7jh=h>h?Udefinition_listrEhA}rF(hC]hD]hE]hF]hI]uhKNhLhhM]rG(cdocutils.nodes definition_list_item rH)rI}rJ(h6Xz``solver-plan`` (binary) The result of calling the dependency solver, assuming that the Hackage index, local ``cabal.project`` file, and local ``cabal`` files are unmodified. (Notably, we do NOT have to dependency solve again if new build products are stored in the global store; the invocation of the dependency solver is independent of what is already available in the store.)h7jCh=h>h?Udefinition_list_itemrKhA}rL(hC]hD]hE]hF]hI]uhKKhM]rM(cdocutils.nodes term rN)rO}rP(h6X``solver-plan`` (binary)rQh7jIh=h>h?UtermrRhA}rS(hC]hD]hE]hF]hI]uhKKhM]rT(hr)rU}rV(h6X``solver-plan``hA}rW(hC]hD]hE]hF]hI]uh7jOhM]rXhVX solver-planrYrZ}r[(h6Uh7jUubah?hzubhVX (binary)r\r]}r^(h6X (binary)h7jOubeubcdocutils.nodes definition r_)r`}ra(h6UhA}rb(hC]hD]hE]hF]hI]uh7jIhM]rchi)rd}re(h6XaThe result of calling the dependency solver, assuming that the Hackage index, local ``cabal.project`` file, and local ``cabal`` files are unmodified. (Notably, we do NOT have to dependency solve again if new build products are stored in the global store; the invocation of the dependency solver is independent of what is already available in the store.)h7j`h=h>h?hlhA}rf(hC]hD]hE]hF]hI]uhKKhM]rg(hVXTThe result of calling the dependency solver, assuming that the Hackage index, local rhri}rj(h6XTThe result of calling the dependency solver, assuming that the Hackage index, local h7jdubhr)rk}rl(h6X``cabal.project``hA}rm(hC]hD]hE]hF]hI]uh7jdhM]rnhVX cabal.projectrorp}rq(h6Uh7jkubah?hzubhVX file, and local rrrs}rt(h6X file, and local h7jdubhr)ru}rv(h6X ``cabal``hA}rw(hC]hD]hE]hF]hI]uh7jdhM]rxhVXcabalryrz}r{(h6Uh7juubah?hzubhVX files are unmodified. (Notably, we do NOT have to dependency solve again if new build products are stored in the global store; the invocation of the dependency solver is independent of what is already available in the store.)r|r}}r~(h6X files are unmodified. (Notably, we do NOT have to dependency solve again if new build products are stored in the global store; the invocation of the dependency solver is independent of what is already available in the store.)h7jdubeubah?U definitionrubeubjH)r}r(h6X``source-hashes`` (binary) The hashes of all local source files. When all local source files of a local package are unchanged, ``cabal new-build`` will skip invoking ``setup build`` entirely (saving us from a possibly expensive call to ``ghc --make``). The full list of source files participating in compilation are determined using ``setup sdist --list-sources`` (thus, if you do not list all your source files in a Cabal file, you may fail to recompile when you edit them.)h7jCh=h>h?jKhA}r(hC]hD]hE]hF]hI]uhKKhLhhM]r(jN)r}r(h6X``source-hashes`` (binary)rh7jh=h>h?jRhA}r(hC]hD]hE]hF]hI]uhKKhM]r(hr)r}r(h6X``source-hashes``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX source-hashesrr}r(h6Uh7jubah?hzubhVX (binary)rr}r(h6X (binary)h7jubeubj_)r}r(h6UhA}r(hC]hD]hE]hF]hI]uh7jhM]rhi)r}r(h6XThe hashes of all local source files. When all local source files of a local package are unchanged, ``cabal new-build`` will skip invoking ``setup build`` entirely (saving us from a possibly expensive call to ``ghc --make``). The full list of source files participating in compilation are determined using ``setup sdist --list-sources`` (thus, if you do not list all your source files in a Cabal file, you may fail to recompile when you edit them.)h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKKhM]r(hVXdThe hashes of all local source files. When all local source files of a local package are unchanged, rr}r(h6XdThe hashes of all local source files. When all local source files of a local package are unchanged, h7jubhr)r}r(h6X``cabal new-build``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXcabal new-buildrr}r(h6Uh7jubah?hzubhVX will skip invoking rr}r(h6X will skip invoking h7jubhr)r}r(h6X``setup build``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX setup buildrr}r(h6Uh7jubah?hzubhVX7 entirely (saving us from a possibly expensive call to rr}r(h6X7 entirely (saving us from a possibly expensive call to h7jubhr)r}r(h6X``ghc --make``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX ghc --makerr}r(h6Uh7jubah?hzubhVXS). The full list of source files participating in compilation are determined using rr}r(h6XS). The full list of source files participating in compilation are determined using h7jubhr)r}r(h6X``setup sdist --list-sources``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXsetup sdist --list-sourcesrr}r(h6Uh7jubah?hzubhVXp (thus, if you do not list all your source files in a Cabal file, you may fail to recompile when you edit them.)rr}r(h6Xp (thus, if you do not list all your source files in a Cabal file, you may fail to recompile when you edit them.)h7jubeubah?jubeubjH)r}r(h6X``config`` (same format as ``cabal.project``) The full project configuration, merged from ``cabal.project`` (and friends) as well as the command line arguments.h7jCh=h>h?jKhA}r(hC]hD]hE]hF]hI]uhKKhLhhM]r(jN)r}r(h6X-``config`` (same format as ``cabal.project``)rh7jh=h>h?jRhA}r(hC]hD]hE]hF]hI]uhKKhM]r(hr)r}r(h6X ``config``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXconfigrr}r(h6Uh7jubah?hzubhVX (same format as rr}r(h6X (same format as h7jubhr)r}r(h6X``cabal.project``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX cabal.projectrr}r(h6Uh7jubah?hzubhVX)r}r(h6X)h7jubeubj_)r}r(h6UhA}r(hC]hD]hE]hF]hI]uh7jhM]rhi)r}r(h6XrThe full project configuration, merged from ``cabal.project`` (and friends) as well as the command line arguments.h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKKhM]r(hVX,The full project configuration, merged from rr}r(h6X,The full project configuration, merged from h7jubhr)r}r(h6X``cabal.project``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX cabal.projectrr}r(h6Uh7jubah?hzubhVX5 (and friends) as well as the command line arguments.rr}r(h6X5 (and friends) as well as the command line arguments.h7jubeubah?jubeubjH)r}r(h6XX``compiler`` (binary) The configuration of the compiler being used to build the project.h7jCh=h>h?jKhA}r(hC]hD]hE]hF]hI]uhKKhLhhM]r(jN)r}r(h6X``compiler`` (binary)rh7jh=h>h?jRhA}r(hC]hD]hE]hF]hI]uhKKhM]r(hr)r}r(h6X ``compiler``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXcompilerrr}r(h6Uh7jubah?hzubhVX (binary)rr}r (h6X (binary)h7jubeubj_)r }r (h6UhA}r (hC]hD]hE]hF]hI]uh7jhM]r hi)r}r(h6XBThe configuration of the compiler being used to build the project.rh7j h=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKKhM]rhVXBThe configuration of the compiler being used to build the project.rr}r(h6jh7jubaubah?jubeubjH)r}r(h6X``improved-plan`` (binary) Like ``solver-plan``, but with all non-inplace packages improved into pre-existing copies from the store. h7jCh=h>h?jKhA}r(hC]hD]hE]hF]hI]uhKKhLhhM]r(jN)r}r(h6X``improved-plan`` (binary)rh7jh=h>h?jRhA}r(hC]hD]hE]hF]hI]uhKKhM]r(hr)r}r (h6X``improved-plan``hA}r!(hC]hD]hE]hF]hI]uh7jhM]r"hVX improved-planr#r$}r%(h6Uh7jubah?hzubhVX (binary)r&r'}r((h6X (binary)h7jubeubj_)r)}r*(h6UhA}r+(hC]hD]hE]hF]hI]uh7jhM]r,hi)r-}r.(h6XiLike ``solver-plan``, but with all non-inplace packages improved into pre-existing copies from the store.h7j)h=h>h?hlhA}r/(hC]hD]hE]hF]hI]uhKKhM]r0(hVXLike r1r2}r3(h6XLike h7j-ubhr)r4}r5(h6X``solver-plan``hA}r6(hC]hD]hE]hF]hI]uh7j-hM]r7hVX solver-planr8r9}r:(h6Uh7j4ubah?hzubhVXU, but with all non-inplace packages improved into pre-existing copies from the store.r;r<}r=(h6XU, but with all non-inplace packages improved into pre-existing copies from the store.h7j-ubeubah?jubeubeubhi)r>}r?(h6XnNote that every package also has a local cache managed by the Cabal build system, e.g., in ``$distdir/cache``.h7jh=h>h?hlhA}r@(hC]hD]hE]hF]hI]uhKKhLhhM]rA(hVX[Note that every package also has a local cache managed by the Cabal build system, e.g., in rBrC}rD(h6X[Note that every package also has a local cache managed by the Cabal build system, e.g., in h=NhKNhLhh7j>ubhr)rE}rF(h6X``$distdir/cache``hA}rG(hC]hD]hE]hF]hI]uh7j>hM]rHhVX$distdir/cacherIrJ}rK(h6Uh7jEubah?hzubhVX.rL}rM(h6X.h=NhKNhLhh7j>ubeubhi)rN}rO(h6XThere is another useful file in ``dist-newstyle/cache``, ``plan.json``, which is a JSON serialization of the computed install plan. (TODO: docs)h7jh=h>h?hlhA}rP(hC]hD]hE]hF]hI]uhKKhLhhM]rQ(hVX There is another useful file in rRrS}rT(h6X There is another useful file in h=NhKNhLhh7jNubhr)rU}rV(h6X``dist-newstyle/cache``hA}rW(hC]hD]hE]hF]hI]uh7jNhM]rXhVXdist-newstyle/cacherYrZ}r[(h6Uh7jUubah?hzubhVX, r\r]}r^(h6X, h=NhKNhLhh7jNubhr)r_}r`(h6X ``plan.json``hA}ra(hC]hD]hE]hF]hI]uh7jNhM]rbhVX plan.jsonrcrd}re(h6Uh7j_ubah?hzubhVXJ, which is a JSON serialization of the computed install plan. (TODO: docs)rfrg}rh(h6XJ, which is a JSON serialization of the computed install plan. (TODO: docs)h=NhKNhLhh7jNubeubeubeubh=h>h?h@hA}ri(hC]hD]hE]hF]rjUlocal-versus-external-packagesrkahI]rlh(auhKKmhLhhM]rm(hO)rn}ro(h6XLocal versus external packagesrph7h9h=h>h?hShA}rq(hC]hD]hE]hF]hI]uhKKmhLhhM]rrhVXLocal versus external packagesrsrt}ru(h6jph=NhKNhLhh7jnubaubhi)rv}rw(h6XOne of the primary innovations of Nix-style local builds is the distinction between local packages, which users edit and recompile and must be built per-project, versus external packages, which can be cached across projects. To be more precise:rxh7h9h=h>h?hlhA}ry(hC]hD]hE]hF]hI]uhKKohLhhM]rzhVXOne of the primary innovations of Nix-style local builds is the distinction between local packages, which users edit and recompile and must be built per-project, versus external packages, which can be cached across projects. To be more precise:r{r|}r}(h6jxh=NhKNhLhh7jvubaubcdocutils.nodes enumerated_list r~)r}r(h6Uh7h9h=h>h?Uenumerated_listrhA}r(UsuffixrU.hF]hE]hC]UprefixrUhD]hI]UenumtyperUarabicruhKKthLhhM]rh)r}r(h6XXA **local package** is one that is listed explicitly in the ``packages``, ``optional-packages`` or ``extra-packages`` field of a project. Usually, these refer to packages whose source code lives directly in a folder in your project (although, you can list an arbitrary Hackage package in ``extra-packages`` to force it to be treated as local). h7jh=h>h?hhA}r(hC]hD]hE]hF]hI]uhKNhLhhM]rhi)r}r(h6XWA **local package** is one that is listed explicitly in the ``packages``, ``optional-packages`` or ``extra-packages`` field of a project. Usually, these refer to packages whose source code lives directly in a folder in your project (although, you can list an arbitrary Hackage package in ``extra-packages`` to force it to be treated as local).h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKKthM]r(hVXA rr}r(h6XA h7jubcdocutils.nodes strong r)r}r(h6X**local package**hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX local packagerr}r(h6Uh7jubah?UstrongrubhVX) is one that is listed explicitly in the rr}r(h6X) is one that is listed explicitly in the h7jubhr)r}r(h6X ``packages``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXpackagesrr}r(h6Uh7jubah?hzubhVX, rr}r(h6X, h7jubhr)r}r(h6X``optional-packages``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXoptional-packagesrr}r(h6Uh7jubah?hzubhVX or rr}r(h6X or h7jubhr)r}r(h6X``extra-packages``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXextra-packagesrr}r(h6Uh7jubah?hzubhVX field of a project. Usually, these refer to packages whose source code lives directly in a folder in your project (although, you can list an arbitrary Hackage package in rr}r(h6X field of a project. Usually, these refer to packages whose source code lives directly in a folder in your project (although, you can list an arbitrary Hackage package in h7jubhr)r}r(h6X``extra-packages``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXextra-packagesrr}r(h6Uh7jubah?hzubhVX% to force it to be treated as local).rr}r(h6X% to force it to be treated as local).h7jubeubaubaubhi)r}r(h6XOLocal packages, as well as the external packages (below) which depend on them, are built **inplace**, meaning that they are always built specifically for the project and are not installed globally. Inplace packages are not cached and not given unique hashes, which makes them suitable for packages which you want to edit and recompile.h7h9h=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKK{hLhhM]r(hVXYLocal packages, as well as the external packages (below) which depend on them, are built rr}r(h6XYLocal packages, as well as the external packages (below) which depend on them, are built h=NhKNhLhh7jubj)r}r(h6X **inplace**hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXinplacerr}r(h6Uh7jubah?jubhVX, meaning that they are always built specifically for the project and are not installed globally. Inplace packages are not cached and not given unique hashes, which makes them suitable for packages which you want to edit and recompile.rr}r(h6X, meaning that they are always built specifically for the project and are not installed globally. Inplace packages are not cached and not given unique hashes, which makes them suitable for packages which you want to edit and recompile.h=NhKNhLhh7jubeubj~)r}r(h6Uh7h9h=h>h?jhA}r(jU.UstartrKhF]hE]hC]jUhD]hI]jjuhKKhLhhM]rh)r}r(h6XAn **external package** is any package which is not listed in the ``packages`` field. The source code for external packages is usually retrieved from Hackage. h7jh=h>h?hhA}r(hC]hD]hE]hF]hI]uhKNhLhhM]rhi)r}r(h6XAn **external package** is any package which is not listed in the ``packages`` field. The source code for external packages is usually retrieved from Hackage.h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKKhM]r(hVXAn rr}r(h6XAn h7jubj)r}r(h6X**external package**hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXexternal packagerr}r(h6Uh7jubah?jubhVX+ is any package which is not listed in the rr}r(h6X+ is any package which is not listed in the h7jubhr)r}r(h6X ``packages``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXpackagesrr}r(h6Uh7jubah?hzubhVXP field. The source code for external packages is usually retrieved from Hackage.rr}r(h6XP field. The source code for external packages is usually retrieved from Hackage.h7jubeubaubaubhi)r}r(h6XWhen an external package does not depend on an inplace package, it can be built and installed to a **global** store, which can be shared across projects. These build products are identified by a hash that over all of the inputs which would influence the compilation of a package (flags, dependency selection, etc.). Just as in Nix, these hashes uniquely identify the result of a build; if we compute this identifier and we find that we already have this ID built, we can just use the already built version.h7h9h=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKKhLhhM]r(hVXcWhen an external package does not depend on an inplace package, it can be built and installed to a rr}r(h6XcWhen an external package does not depend on an inplace package, it can be built and installed to a h=NhKNhLhh7jubj)r}r(h6X **global**hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXglobalrr}r (h6Uh7jubah?jubhVX store, which can be shared across projects. These build products are identified by a hash that over all of the inputs which would influence the compilation of a package (flags, dependency selection, etc.). Just as in Nix, these hashes uniquely identify the result of a build; if we compute this identifier and we find that we already have this ID built, we can just use the already built version.r r }r (h6X store, which can be shared across projects. These build products are identified by a hash that over all of the inputs which would influence the compilation of a package (flags, dependency selection, etc.). Just as in Nix, these hashes uniquely identify the result of a build; if we compute this identifier and we find that we already have this ID built, we can just use the already built version.h=NhKNhLhh7jubeubhi)r }r(h6XFThe global package store is ``~/.cabal/store`` (configurable via global `store-dir` option); if you need to clear your store for whatever reason (e.g., to reclaim disk space or because the global store is corrupted), deleting this directory is safe (``new-build`` will just rebuild everything it needs on its next invocation).h7h9h=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKKhLhhM]r(hVXThe global package store is rr}r(h6XThe global package store is h=NhKNhLhh7j ubhr)r}r(h6X``~/.cabal/store``hA}r(hC]hD]hE]hF]hI]uh7j hM]rhVX~/.cabal/storerr}r(h6Uh7jubah?hzubhVX (configurable via global rr}r(h6X (configurable via global h=NhKNhLhh7j ubcdocutils.nodes title_reference r)r}r (h6X `store-dir`hA}r!(hC]hD]hE]hF]hI]uh7j hM]r"hVX store-dirr#r$}r%(h6Uh7jubah?Utitle_referencer&ubhVX option); if you need to clear your store for whatever reason (e.g., to reclaim disk space or because the global store is corrupted), deleting this directory is safe (r'r(}r)(h6X option); if you need to clear your store for whatever reason (e.g., to reclaim disk space or because the global store is corrupted), deleting this directory is safe (h=NhKNhLhh7j ubhr)r*}r+(h6X ``new-build``hA}r,(hC]hD]hE]hF]hI]uh7j hM]r-hVX new-buildr.r/}r0(h6Uh7j*ubah?hzubhVX? will just rebuild everything it needs on its next invocation).r1r2}r3(h6X? will just rebuild everything it needs on its next invocation).h=NhKNhLhh7j ubeubhi)r4}r5(h6X/This split motivates some of the UI choices for Nix-style local build commands. For example, flags passed to ``cabal new-build`` are only applied to *local* packages, so that adding a flag to ``cabal new-build`` doesn't necessitate a rebuild of *every* transitive dependency in the global package store.h7h9h=h>h?hlhA}r6(hC]hD]hE]hF]hI]uhKKhLhhM]r7(hVXmThis split motivates some of the UI choices for Nix-style local build commands. For example, flags passed to r8r9}r:(h6XmThis split motivates some of the UI choices for Nix-style local build commands. For example, flags passed to h=NhKNhLhh7j4ubhr)r;}r<(h6X``cabal new-build``hA}r=(hC]hD]hE]hF]hI]uh7j4hM]r>hVXcabal new-buildr?r@}rA(h6Uh7j;ubah?hzubhVX are only applied to rBrC}rD(h6X are only applied to h=NhKNhLhh7j4ubcdocutils.nodes emphasis rE)rF}rG(h6X*local*hA}rH(hC]hD]hE]hF]hI]uh7j4hM]rIhVXlocalrJrK}rL(h6Uh7jFubah?UemphasisrMubhVX$ packages, so that adding a flag to rNrO}rP(h6X$ packages, so that adding a flag to h=NhKNhLhh7j4ubhr)rQ}rR(h6X``cabal new-build``hA}rS(hC]hD]hE]hF]hI]uh7j4hM]rThVXcabal new-buildrUrV}rW(h6Uh7jQubah?hzubhVX$ doesn’t necessitate a rebuild of rXrY}rZ(h6X" doesn't necessitate a rebuild of h=NhKNhLhh7j4ubjE)r[}r\(h6X*every*hA}r](hC]hD]hE]hF]hI]uh7j4hM]r^hVXeveryr_r`}ra(h6Uh7j[ubah?jMubhVX3 transitive dependency in the global package store.rbrc}rd(h6X3 transitive dependency in the global package store.h=NhKNhLhh7j4ubeubhi)re}rf(h6X!In cabal-install HEAD, Nix-style local builds also take advantage of a new Cabal library feature, `per-component builds `__, where each component of a package is configured and built separately. This can massively speed up rebuilds of packages with lots of components (e.g., a package that defines multiple executables), as only one executable needs to be rebuilt. Packages that use Custom setup scripts are not currently built on a per-component basis.h7h9h=h>h?hlhA}rg(hC]hD]hE]hF]hI]uhKKhLhhM]rh(hVXbIn cabal-install HEAD, Nix-style local builds also take advantage of a new Cabal library feature, rirj}rk(h6XbIn cabal-install HEAD, Nix-style local builds also take advantage of a new Cabal library feature, h=NhKNhLhh7jeubcdocutils.nodes reference rl)rm}rn(h6Xu`per-component builds `__hA}ro(UnameXper-component buildsUrefurirpXZhttps://github.com/ezyang/ghc-proposals/blob/master/proposals/0000-componentized-cabal.rsthF]hE]hC]hD]hI]uh7jehM]rqhVXper-component buildsrrrs}rt(h6Uh7jmubah?U referenceruubhVXJ, where each component of a package is configured and built separately. This can massively speed up rebuilds of packages with lots of components (e.g., a package that defines multiple executables), as only one executable needs to be rebuilt. Packages that use Custom setup scripts are not currently built on a per-component basis.rvrw}rx(h6XJ, where each component of a package is configured and built separately. This can massively speed up rebuilds of packages with lots of components (e.g., a package that defines multiple executables), as only one executable needs to be rebuilt. Packages that use Custom setup scripts are not currently built on a per-component basis.h=NhKNhLhh7jeubeubeubh=h>h?Usystem_messageryhA}rz(hC]UlevelKhF]hE]Usourceh>hD]hI]UlineKjUtypeUINFOr{uhKKhLhhM]r|hi)r}}r~(h6X:Enumerated list start value not ordinal-1: "2" (ordinal 2)hA}r(hC]hD]hE]hF]hI]uh7h4hM]rhVX>Enumerated list start value not ordinal-1: “2” (ordinal 2)rr}r(h6Uh7j}ubah?hlubaubh3)r}r(h6UhA}r(hC]UlevelKhF]hE]Usourceh>hD]hI]UlineM7UtypeUERRORruh7h)r}r(h6X%Components of a particular type: ``package:ctypes``, ``all:ctypes``: which specifies all components of the given type. Where valid ``ctypes`` are: - ``libs``, ``libraries``, - ``flibs``, ``foreign-libraries``, - ``exes``, ``executables``, - ``tests``, - ``benches``, ``benchmarks``. h7h)r}r(h6Uh7h8)r}r(h6Uh7h8)r}r(h6Uh7hh=h>h?h@hA}r(hC]hD]hE]hF]rUcommandsrahI]rh#auhKKhLhhM]r(hO)r}r(h6XCommandsrh7jh=h>h?hShA}r(hC]hD]hE]hF]hI]uhKKhLhhM]rhVXCommandsrr}r(h6jh=NhKNhLhh7jubaubhi)r}r(h6XhWe now give an in-depth description of all the commands, describing the arguments and flags they accept.rh7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKKhLhhM]rhVXhWe now give an in-depth description of all the commands, describing the arguments and flags they accept.rr}r(h6jh=NhKNhLhh7jubaubh8)r}r(h6Uh7jh=h>h?h@hA}r(hC]hD]hE]hF]rUcabal-new-configurerahI]rhauhKKhLhhM]r(hO)r}r(h6Xcabal new-configurerh7jh=h>h?hShA}r(hC]hD]hE]hF]hI]uhKKhLhhM]rhVXcabal new-configurerr}r(h6jh=NhKNhLhh7jubaubhi)r}r(h6XM``cabal new-configure`` takes a set of arguments and writes a ``cabal.project.local`` file based on the flags passed to this command. ``cabal new-configure FLAGS; cabal new-build`` is roughly equivalent to ``cabal new-build FLAGS``, except that with ``new-configure`` the flags are persisted to all subsequent calls to ``new-build``.h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKKhLhhM]r(hr)r}r(h6X``cabal new-configure``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXcabal new-configurerr}r(h6Uh7jubah?hzubhVX' takes a set of arguments and writes a rr}r(h6X' takes a set of arguments and writes a h=NhKNhLhh7jubhr)r}r(h6X``cabal.project.local``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXcabal.project.localrr}r(h6Uh7jubah?hzubhVX1 file based on the flags passed to this command. rr}r(h6X1 file based on the flags passed to this command. h=NhKNhLhh7jubhr)r}r(h6X.``cabal new-configure FLAGS; cabal new-build``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX*cabal new-configure FLAGS; cabal new-buildrr}r(h6Uh7jubah?hzubhVX is roughly equivalent to rr}r(h6X is roughly equivalent to h=NhKNhLhh7jubhr)r}r(h6X``cabal new-build FLAGS``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXcabal new-build FLAGSrr}r(h6Uh7jubah?hzubhVX, except that with rr}r(h6X, except that with h=NhKNhLhh7jubhr)r}r(h6X``new-configure``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX new-configurerr}r(h6Uh7jubah?hzubhVX4 the flags are persisted to all subsequent calls to rr}r(h6X4 the flags are persisted to all subsequent calls to h=NhKNhLhh7jubhr)r}r(h6X ``new-build``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX new-buildrr}r(h6Uh7jubah?hzubhVX.r}r(h6X.h=NhKNhLhh7jubeubhi)r}r(h6X``cabal new-configure`` is intended to be a convenient way to write out a ``cabal.project.local`` for simple configurations; e.g., ``cabal new-configure -w ghc-7.8`` would ensure that all subsequent builds with ``cabal new-build`` are performed with the compiler ``ghc-7.8``. For more complex configuration, we recommend writing the ``cabal.project.local`` file directly (or placing it in ``cabal.project``!)h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhLhhM]r(hr)r}r(h6X``cabal new-configure``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXcabal new-configurerr}r(h6Uh7jubah?hzubhVX3 is intended to be a convenient way to write out a rr}r(h6X3 is intended to be a convenient way to write out a h=NhKNhLhh7jubhr)r}r(h6X``cabal.project.local``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXcabal.project.localrr}r(h6Uh7jubah?hzubhVX" for simple configurations; e.g., rr }r (h6X" for simple configurations; e.g., h=NhKNhLhh7jubhr)r }r (h6X"``cabal new-configure -w ghc-7.8``hA}r (hC]hD]hE]hF]hI]uh7jhM]rhVXcabal new-configure -w ghc-7.8rr}r(h6Uh7j ubah?hzubhVX. would ensure that all subsequent builds with rr}r(h6X. would ensure that all subsequent builds with h=NhKNhLhh7jubhr)r}r(h6X``cabal new-build``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXcabal new-buildrr}r(h6Uh7jubah?hzubhVX! are performed with the compiler rr}r(h6X! are performed with the compiler h=NhKNhLhh7jubhr)r}r (h6X ``ghc-7.8``hA}r!(hC]hD]hE]hF]hI]uh7jhM]r"hVXghc-7.8r#r$}r%(h6Uh7jubah?hzubhVX;. For more complex configuration, we recommend writing the r&r'}r((h6X;. For more complex configuration, we recommend writing the h=NhKNhLhh7jubhr)r)}r*(h6X``cabal.project.local``hA}r+(hC]hD]hE]hF]hI]uh7jhM]r,hVXcabal.project.localr-r.}r/(h6Uh7j)ubah?hzubhVX! file directly (or placing it in r0r1}r2(h6X! file directly (or placing it in h=NhKNhLhh7jubhr)r3}r4(h6X``cabal.project``hA}r5(hC]hD]hE]hF]hI]uh7jhM]r6hVX cabal.projectr7r8}r9(h6Uh7j3ubah?hzubhVX!)r:r;}r<(h6X!)h=NhKNhLhh7jubeubhi)r=}r>(h6XC``cabal new-configure`` inherits options from ``Cabal``. semantics:r?h7jh=h>h?hlhA}r@(hC]hD]hE]hF]hI]uhKM hLhhM]rA(hr)rB}rC(h6X``cabal new-configure``hA}rD(hC]hD]hE]hF]hI]uh7j=hM]rEhVXcabal new-configurerFrG}rH(h6Uh7jBubah?hzubhVX inherits options from rIrJ}rK(h6X inherits options from h=NhKNhLhh7j=ubhr)rL}rM(h6X ``Cabal``hA}rN(hC]hD]hE]hF]hI]uh7j=hM]rOhVXCabalrPrQ}rR(h6Uh7jLubah?hzubhVX . semantics:rSrT}rU(h6X . semantics:h=NhKNhLhh7j=ubeubh)rV}rW(h6Uh7jh=h>h?hhA}rX(hX-hF]hE]hC]hD]hI]uhKM hLhhM]rY(h)rZ}r[(h6X,Any flag accepted by ``./Setup configure``. h7jVh=h>h?hhA}r\(hC]hD]hE]hF]hI]uhKNhLhhM]r]hi)r^}r_(h6X+Any flag accepted by ``./Setup configure``.h7jZh=h>h?hlhA}r`(hC]hD]hE]hF]hI]uhKM hM]ra(hVXAny flag accepted by rbrc}rd(h6XAny flag accepted by h7j^ubhr)re}rf(h6X``./Setup configure``hA}rg(hC]hD]hE]hF]hI]uh7j^hM]rhhVX./Setup configurerirj}rk(h6Uh7jeubah?hzubhVX.rl}rm(h6X.h7j^ubeubaubh)rn}ro(h6XAny flag accepted by ``cabal configure`` beyond ``./Setup configure``, namely ``--cabal-lib-version``, ``--constraint``, ``--preference`` and ``--solver.`` h7jVh=h>h?hhA}rp(hC]hD]hE]hF]hI]uhKNhLhhM]rqhi)rr}rs(h6XAny flag accepted by ``cabal configure`` beyond ``./Setup configure``, namely ``--cabal-lib-version``, ``--constraint``, ``--preference`` and ``--solver.``h7jnh=h>h?hlhA}rt(hC]hD]hE]hF]hI]uhKMhM]ru(hVXAny flag accepted by rvrw}rx(h6XAny flag accepted by h7jrubhr)ry}rz(h6X``cabal configure``hA}r{(hC]hD]hE]hF]hI]uh7jrhM]r|hVXcabal configurer}r~}r(h6Uh7jyubah?hzubhVX beyond rr}r(h6X beyond h7jrubhr)r}r(h6X``./Setup configure``hA}r(hC]hD]hE]hF]hI]uh7jrhM]rhVX./Setup configurerr}r(h6Uh7jubah?hzubhVX , namely rr}r(h6X , namely h7jrubhr)r}r(h6X``--cabal-lib-version``hA}r(hC]hD]hE]hF]hI]uh7jrhM]rhVX--cabal-lib-versionrr}r(h6Uh7jubah?hzubhVX, rr}r(h6X, h7jrubhr)r}r(h6X``--constraint``hA}r(hC]hD]hE]hF]hI]uh7jrhM]rhVX --constraintrr}r(h6Uh7jubah?hzubhVX, rr}r(h6X, h7jrubhr)r}r(h6X``--preference``hA}r(hC]hD]hE]hF]hI]uh7jrhM]rhVX --preferencerr}r(h6Uh7jubah?hzubhVX and rr}r(h6X and h7jrubhr)r}r(h6X ``--solver.``hA}r(hC]hD]hE]hF]hI]uh7jrhM]rhVX --solver.rr}r(h6Uh7jubah?hzubeubaubh)r}r(h6XEAny flag accepted by ``cabal install`` beyond ``./Setup configure``. h7jVh=h>h?hhA}r(hC]hD]hE]hF]hI]uhKNhLhhM]rhi)r}r(h6XDAny flag accepted by ``cabal install`` beyond ``./Setup configure``.h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhM]r(hVXAny flag accepted by rr}r(h6XAny flag accepted by h7jubhr)r}r(h6X``cabal install``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX cabal installrr}r(h6Uh7jubah?hzubhVX beyond rr}r(h6X beyond h7jubhr)r}r(h6X``./Setup configure``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX./Setup configurerr}r(h6Uh7jubah?hzubhVX.r}r(h6X.h7jubeubaubh)r}r(h6X*Any flag accepted by ``./Setup haddock``. h7jVh=h>h?hhA}r(hC]hD]hE]hF]hI]uhKNhLhhM]rhi)r}r(h6X)Any flag accepted by ``./Setup haddock``.h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhM]r(hVXAny flag accepted by rr}r(h6XAny flag accepted by h7jubhr)r}r(h6X``./Setup haddock``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX./Setup haddockrr}r(h6Uh7jubah?hzubhVX.r}r(h6X.h7jubeubaubeubhi)r}r(h6XThe options of all of these flags apply only to *local* packages in a project; this behavior is different than that of ``cabal install``, which applies flags to every package that would be built. The motivation for this is to avoid an innocuous addition to the flags of a package resulting in a rebuild of every package in the store (which might need to happen if a flag actually applied to every transitive dependency). To apply options to an external package, use a ``package`` stanza in a ``cabal.project`` file.h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhLhhM]r(hVX0The options of all of these flags apply only to rr}r(h6X0The options of all of these flags apply only to h=NhKNhLhh7jubjE)r}r(h6X*local*hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXlocalrr}r(h6Uh7jubah?jMubhVX@ packages in a project; this behavior is different than that of rr}r(h6X@ packages in a project; this behavior is different than that of h=NhKNhLhh7jubhr)r}r(h6X``cabal install``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX cabal installrr}r(h6Uh7jubah?hzubhVXL, which applies flags to every package that would be built. The motivation for this is to avoid an innocuous addition to the flags of a package resulting in a rebuild of every package in the store (which might need to happen if a flag actually applied to every transitive dependency). To apply options to an external package, use a rr}r(h6XL, which applies flags to every package that would be built. The motivation for this is to avoid an innocuous addition to the flags of a package resulting in a rebuild of every package in the store (which might need to happen if a flag actually applied to every transitive dependency). To apply options to an external package, use a h=NhKNhLhh7jubhr)r}r(h6X ``package``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXpackagerr}r(h6Uh7jubah?hzubhVX stanza in a rr}r(h6X stanza in a h=NhKNhLhh7jubhr)r }r (h6X``cabal.project``hA}r (hC]hD]hE]hF]hI]uh7jhM]r hVX cabal.projectr r}r(h6Uh7j ubah?hzubhVX file.rr}r(h6X file.h=NhKNhLhh7jubeubeubjh8)r}r(h6Uh7jh=h>h?h@hA}r(hC]hD]hE]hF]rUcabal-new-replrahI]rh auhKMVhLhhM]r(hO)r}r(h6Xcabal new-replrh7jh=h>h?hShA}r(hC]hD]hE]hF]hI]uhKMVhLhhM]rhVXcabal new-replrr }r!(h6jh=NhKNhLhh7jubaubhi)r"}r#(h6X``cabal new-repl TARGET`` loads all of the modules of the target into GHCi as interpreted bytecode. It takes the same flags as ``cabal new-build``.h7jh=h>h?hlhA}r$(hC]hD]hE]hF]hI]uhKMXhLhhM]r%(hr)r&}r'(h6X``cabal new-repl TARGET``hA}r((hC]hD]hE]hF]hI]uh7j"hM]r)hVXcabal new-repl TARGETr*r+}r,(h6Uh7j&ubah?hzubhVXf loads all of the modules of the target into GHCi as interpreted bytecode. It takes the same flags as r-r.}r/(h6Xf loads all of the modules of the target into GHCi as interpreted bytecode. It takes the same flags as h=NhKNhLhh7j"ubhr)r0}r1(h6X``cabal new-build``hA}r2(hC]hD]hE]hF]hI]uh7j"hM]r3hVXcabal new-buildr4r5}r6(h6Uh7j0ubah?hzubhVX.r7}r8(h6X.h=NhKNhLhh7j"ubeubhi)r9}r:(h6XCurrently, it is not supported to pass multiple targets to ``new-repl`` (``new-repl`` will just successively open a separate GHCi session for each target.)h7jh=h>h?hlhA}r;(hC]hD]hE]hF]hI]uhKM\hLhhM]r<(hVX;Currently, it is not supported to pass multiple targets to r=r>}r?(h6X;Currently, it is not supported to pass multiple targets to h=NhKNhLhh7j9ubhr)r@}rA(h6X ``new-repl``hA}rB(hC]hD]hE]hF]hI]uh7j9hM]rChVXnew-replrDrE}rF(h6Uh7j@ubah?hzubhVX (rGrH}rI(h6X (h=NhKNhLhh7j9ubhr)rJ}rK(h6X ``new-repl``hA}rL(hC]hD]hE]hF]hI]uh7j9hM]rMhVXnew-replrNrO}rP(h6Uh7jJubah?hzubhVXF will just successively open a separate GHCi session for each target.)rQrR}rS(h6XF will just successively open a separate GHCi session for each target.)h=NhKNhLhh7j9ubeubeubh8)rT}rU(h6Uh7jh=h>h?h@hA}rV(hC]hD]hE]hF]rWUcabal-new-freezerXahI]rYhauhKMahLhhM]rZ(hO)r[}r\(h6Xcabal new-freezer]h7jTh=h>h?hShA}r^(hC]hD]hE]hF]hI]uhKMahLhhM]r_hVXcabal new-freezer`ra}rb(h6j]h=NhKNhLhh7j[ubaubhi)rc}rd(h6X``cabal new-freeze`` writes out a ``cabal.project.freeze`` file which records all of the versions and flags which that are picked by the solver under the current index and flags. A ``cabal.project.freeze`` file has the same syntax as ``cabal.project`` and looks something like this:h7jTh=h>h?hlhA}re(hC]hD]hE]hF]hI]uhKMchLhhM]rf(hr)rg}rh(h6X``cabal new-freeze``hA}ri(hC]hD]hE]hF]hI]uh7jchM]rjhVXcabal new-freezerkrl}rm(h6Uh7jgubah?hzubhVX writes out a rnro}rp(h6X writes out a h=NhKNhLhh7jcubhr)rq}rr(h6X``cabal.project.freeze``hA}rs(hC]hD]hE]hF]hI]uh7jchM]rthVXcabal.project.freezerurv}rw(h6Uh7jqubah?hzubhVX{ file which records all of the versions and flags which that are picked by the solver under the current index and flags. A rxry}rz(h6X{ file which records all of the versions and flags which that are picked by the solver under the current index and flags. A h=NhKNhLhh7jcubhr)r{}r|(h6X``cabal.project.freeze``hA}r}(hC]hD]hE]hF]hI]uh7jchM]r~hVXcabal.project.freezerr}r(h6Uh7j{ubah?hzubhVX file has the same syntax as rr}r(h6X file has the same syntax as h=NhKNhLhh7jcubhr)r}r(h6X``cabal.project``hA}r(hC]hD]hE]hF]hI]uh7jchM]rhVX cabal.projectrr}r(h6Uh7jubah?hzubhVX and looks something like this:rr}r(h6X and looks something like this:h=NhKNhLhh7jcubeubcsphinx.addnodes highlightlang r)r}r(h6Uh7jTh=h>h?U highlightlangrhA}r(UlangXcabalUlinenothresholdI9223372036854775807 hF]hE]hC]hD]hI]uhKMjhLhhM]ubcdocutils.nodes literal_block r)r}r(h6Xconstraints: HTTP ==4000.3.3, HTTP +warp-tests -warn-as-error -network23 +network-uri -mtl1 -conduit10, QuickCheck ==2.9.1, QuickCheck +templatehaskell, -- etc...h7jTh=h>h?U literal_blockrhA}r(U xml:spacerUpreserverhF]hE]hC]hD]hI]uhKMmhLhhM]rhVXconstraints: HTTP ==4000.3.3, HTTP +warp-tests -warn-as-error -network23 +network-uri -mtl1 -conduit10, QuickCheck ==2.9.1, QuickCheck +templatehaskell, -- etc...rr}r(h6Uh7jubaubhi)r}r(h6X>For end-user executables, it is recommended that you distribute the ``cabal.project.freeze`` file in your source repository so that all users see a consistent set of dependencies. For libraries, this is not recommended: users often need to build against different versions of libraries than what you developed against.h7jTh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMthLhhM]r(hVXDFor end-user executables, it is recommended that you distribute the rr}r(h6XDFor end-user executables, it is recommended that you distribute the h=NhKNhLhh7jubhr)r}r(h6X``cabal.project.freeze``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXcabal.project.freezerr}r(h6Uh7jubah?hzubhVX file in your source repository so that all users see a consistent set of dependencies. For libraries, this is not recommended: users often need to build against different versions of libraries than what you developed against.rr}r(h6X file in your source repository so that all users see a consistent set of dependencies. For libraries, this is not recommended: users often need to build against different versions of libraries than what you developed against.h=NhKNhLhh7jubeubeubh8)r}r(h6Uh7jh=h>h?h@hA}r(hC]hD]hE]hF]rUunsupported-commandsrahI]rh auhKM{hLhhM]r(hO)r}r(h6XUnsupported commandsrh7jh=h>h?hShA}r(hC]hD]hE]hF]hI]uhKM{hLhhM]rhVXUnsupported commandsrr}r(h6jh=NhKNhLhh7jubaubhi)r}r(h6X3The following commands are not currently supported:rh7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKM}hLhhM]rhVX3The following commands are not currently supported:rr}r(h6jh=NhKNhLhh7jubaubjB)r}r(h6Uh7jh=h>h?jEhA}r(hC]hD]hE]hF]hI]uhKNhLhhM]r(jH)r}r(h6X``cabal new-test`` (:issue:`3638`) Workaround: run the test executable directly (see `Where are my build products <#where-are-my-build-products>`__?) h7jh=h>h?jKhA}r(hC]hD]hE]hF]hI]uhKMhM]r(jN)r}r(h6X"``cabal new-test`` (:issue:`3638`)rh7jh=h>h?jRhA}r(hC]hD]hE]hF]hI]uhKMhM]r(hr)r}r(h6X``cabal new-test``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXcabal new-testrr}r(h6Uh7jubah?hzubhVX (rr}r(h6X (h7jubjl)r}r(h6X#3638hA}r(UrefuriX,https://github.com/haskell/cabal/issues/3638hF]hE]hC]hD]hI]Uinternaluh7jhM]rhVX#3638rr}r(h6Uh7jubah?juubhVX)r}r(h6X)h7jubeubj_)r}r(h6UhA}r(hC]hD]hE]hF]hI]uh7jhM]rhi)r}r(h6XrWorkaround: run the test executable directly (see `Where are my build products <#where-are-my-build-products>`__?)h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhM]r(hVX2Workaround: run the test executable directly (see rr}r(h6X2Workaround: run the test executable directly (see h7jubjl)r}r(h6X>`Where are my build products <#where-are-my-build-products>`__hA}r(UnameXWhere are my build productsjpX#where-are-my-build-productshF]hE]hC]hD]hI]uh7jhM]rhVXWhere are my build productsrr}r(h6Uh7jubah?juubhVX?)rr}r(h6X?)h7jubeubah?jubeubjH)r}r(h6X``cabal new-bench`` (:issue:`3638`) Workaround: run the benchmark executable directly (see `Where are my build products <#where-are-my-build-products>`__?) h7jh=h>h?jKhA}r(hC]hD]hE]hF]hI]uhKMhLhhM]r(jN)r}r(h6X#``cabal new-bench`` (:issue:`3638`)rh7jh=h>h?jRhA}r(hC]hD]hE]hF]hI]uhKMhM]r(hr)r}r(h6X``cabal new-bench``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXcabal new-benchr r }r (h6Uh7jubah?hzubhVX (r r }r(h6X (h7jubjl)r}r(h6X#3638hA}r(UrefuriX,https://github.com/haskell/cabal/issues/3638hF]hE]hC]hD]hI]Uinternaluh7jhM]rhVX#3638rr}r(h6Uh7jubah?juubhVX)r}r(h6X)h7jubeubj_)r}r(h6UhA}r(hC]hD]hE]hF]hI]uh7jhM]rhi)r}r(h6XwWorkaround: run the benchmark executable directly (see `Where are my build products <#where-are-my-build-products>`__?)h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhM]r(hVX7Workaround: run the benchmark executable directly (see r r!}r"(h6X7Workaround: run the benchmark executable directly (see h7jubjl)r#}r$(h6X>`Where are my build products <#where-are-my-build-products>`__hA}r%(UnameXWhere are my build productsjpX#where-are-my-build-productshF]hE]hC]hD]hI]uh7jhM]r&hVXWhere are my build productsr'r(}r)(h6Uh7j#ubah?juubhVX?)r*r+}r,(h6X?)h7jubeubah?jubeubjH)r-}r.(h6X``cabal new-run`` (:issue:`3638`) Workaround: run the executable directly (see `Where are my build products <#where-are-my-build-products>`__?) h7jh=h>h?jKhA}r/(hC]hD]hE]hF]hI]uhKMhLhhM]r0(jN)r1}r2(h6X!``cabal new-run`` (:issue:`3638`)r3h7j-h=h>h?jRhA}r4(hC]hD]hE]hF]hI]uhKMhM]r5(hr)r6}r7(h6X``cabal new-run``hA}r8(hC]hD]hE]hF]hI]uh7j1hM]r9hVX cabal new-runr:r;}r<(h6Uh7j6ubah?hzubhVX (r=r>}r?(h6X (h7j1ubjl)r@}rA(h6X#3638hA}rB(UrefuriX,https://github.com/haskell/cabal/issues/3638hF]hE]hC]hD]hI]Uinternaluh7j1hM]rChVX#3638rDrE}rF(h6Uh7j@ubah?juubhVX)rG}rH(h6X)h7j1ubeubj_)rI}rJ(h6UhA}rK(hC]hD]hE]hF]hI]uh7j-hM]rLhi)rM}rN(h6XmWorkaround: run the executable directly (see `Where are my build products <#where-are-my-build-products>`__?)h7jIh=h>h?hlhA}rO(hC]hD]hE]hF]hI]uhKMhM]rP(hVX-Workaround: run the executable directly (see rQrR}rS(h6X-Workaround: run the executable directly (see h7jMubjl)rT}rU(h6X>`Where are my build products <#where-are-my-build-products>`__hA}rV(UnameXWhere are my build productsjpX#where-are-my-build-productshF]hE]hC]hD]hI]uh7jMhM]rWhVXWhere are my build productsrXrY}rZ(h6Uh7jTubah?juubhVX?)r[r\}r](h6X?)h7jMubeubah?jubeubjH)r^}r_(h6X``cabal new-exec`` Workaround: if you wanted to execute GHCi, consider using ``cabal new-repl`` instead. Otherwise, use ``-v`` to find the list of flags GHC is being invoked with and pass it manually. h7jh=h>h?jKhA}r`(hC]hD]hE]hF]hI]uhKMhLhhM]ra(jN)rb}rc(h6X``cabal new-exec``rdh7j^h=h>h?jRhA}re(hC]hD]hE]hF]hI]uhKMhM]rfhr)rg}rh(h6jdhA}ri(hC]hD]hE]hF]hI]uh7jbhM]rjhVXcabal new-execrkrl}rm(h6Uh7jgubah?hzubaubj_)rn}ro(h6UhA}rp(hC]hD]hE]hF]hI]uh7j^hM]rqhi)rr}rs(h6XWorkaround: if you wanted to execute GHCi, consider using ``cabal new-repl`` instead. Otherwise, use ``-v`` to find the list of flags GHC is being invoked with and pass it manually.h7jnh=h>h?hlhA}rt(hC]hD]hE]hF]hI]uhKMhM]ru(hVX:Workaround: if you wanted to execute GHCi, consider using rvrw}rx(h6X:Workaround: if you wanted to execute GHCi, consider using h7jrubhr)ry}rz(h6X``cabal new-repl``hA}r{(hC]hD]hE]hF]hI]uh7jrhM]r|hVXcabal new-replr}r~}r(h6Uh7jyubah?hzubhVX instead. Otherwise, use rr}r(h6X instead. Otherwise, use h7jrubhr)r}r(h6X``-v``hA}r(hC]hD]hE]hF]hI]uh7jrhM]rhVX-vrr}r(h6Uh7jubah?hzubhVXJ to find the list of flags GHC is being invoked with and pass it manually.rr}r(h6XJ to find the list of flags GHC is being invoked with and pass it manually.h7jrubeubah?jubeubjH)r}r(h6X``cabal new-haddock`` (:issue:`3535`) Workaround: run ``cabal act-as-setup -- haddock --builddir=dist-newstyle/build/pkg-0.1`` (or execute the Custom setup script directly). h7jh=h>h?jKhA}r(hC]hD]hE]hF]hI]uhKMhLhhM]r(jN)r}r(h6X%``cabal new-haddock`` (:issue:`3535`)rh7jh=h>h?jRhA}r(hC]hD]hE]hF]hI]uhKMhM]r(hr)r}r(h6X``cabal new-haddock``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXcabal new-haddockrr}r(h6Uh7jubah?hzubhVX (rr}r(h6X (h7jubjl)r}r(h6X#3535hA}r(UrefuriX,https://github.com/haskell/cabal/issues/3535hF]hE]hC]hD]hI]Uinternaluh7jhM]rhVX#3535rr}r(h6Uh7jubah?juubhVX)r}r(h6X)h7jubeubj_)r}r(h6UhA}r(hC]hD]hE]hF]hI]uh7jhM]rhi)r}r(h6XWorkaround: run ``cabal act-as-setup -- haddock --builddir=dist-newstyle/build/pkg-0.1`` (or execute the Custom setup script directly).h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhM]r(hVXWorkaround: run rr}r(h6XWorkaround: run h7jubhr)r}r(h6XH``cabal act-as-setup -- haddock --builddir=dist-newstyle/build/pkg-0.1``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXDcabal act-as-setup -- haddock --builddir=dist-newstyle/build/pkg-0.1rr}r(h6Uh7jubah?hzubhVX/ (or execute the Custom setup script directly).rr}r(h6X/ (or execute the Custom setup script directly).h7jubeubah?jubeubjH)r}r(h6X``cabal new-install`` (:issue:`3737`) Workaround: no good workaround at the moment. (But note that you no longer need to install libraries before building!) h7jh=h>h?jKhA}r(hC]hD]hE]hF]hI]uhKMhLhhM]r(jN)r}r(h6X%``cabal new-install`` (:issue:`3737`)rh7jh=h>h?jRhA}r(hC]hD]hE]hF]hI]uhKMhM]r(hr)r}r(h6X``cabal new-install``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXcabal new-installrr}r(h6Uh7jubah?hzubhVX (rr}r(h6X (h7jubjl)r}r(h6X#3737hA}r(UrefuriX,https://github.com/haskell/cabal/issues/3737hF]hE]hC]hD]hI]Uinternaluh7jhM]rhVX#3737rr}r(h6Uh7jubah?juubhVX)r}r(h6X)h7jubeubj_)r}r(h6UhA}r(hC]hD]hE]hF]hI]uh7jhM]rhi)r}r(h6XvWorkaround: no good workaround at the moment. (But note that you no longer need to install libraries before building!)rh7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhM]rhVXvWorkaround: no good workaround at the moment. (But note that you no longer need to install libraries before building!)rr}r(h6jh7jubaubah?jubeubeubeubeubh=h>h?h@hA}r(hC]hD]hE]hF]rUcabal-new-buildrahI]rh*auhKM!hLhhM]r(hO)r}r(h6Xcabal new-buildrh7jh=h>h?hShA}r(hC]hD]hE]hF]hI]uhKM!hLhhM]rhVXcabal new-buildrr}r(h6jh=NhKNhLhh7jubaubhi)r}r(h6X``cabal new-build`` takes a set of targets and builds them. It automatically handles building and installing any dependencies of these targets.h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKM#hLhhM]r(hr)r}r(h6X``cabal new-build``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXcabal new-buildrr}r(h6Uh7jubah?hzubhVX| takes a set of targets and builds them. It automatically handles building and installing any dependencies of these targets.rr}r(h6X| takes a set of targets and builds them. It automatically handles building and installing any dependencies of these targets.h=NhKNhLhh7jubeubhi)r}r(h6X-A target can take any of the following forms:rh7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKM'hLhhM]rhVX-A target can take any of the following forms:rr}r(h6jh=NhKNhLhh7jubaubjhi)r }r (h6XIn component targets, ``package:`` and ``ctype:`` (valid component types are ``lib``, ``flib``, ``exe``, ``test`` and ``bench``) can be used to disambiguate when multiple packages define the same component, or the same component name is used in a package (e.g., a package ``foo`` defines both an executable and library named ``foo``). We always prefer interpreting a target as a package name rather than as a component name.h7jh=h>h?hlhA}r (hC]hD]hE]hF]hI]uhKM=hLhhM]r (hVXIn component targets, r r}r(h6XIn component targets, h=NhKNhLhh7j ubhr)r}r(h6X ``package:``hA}r(hC]hD]hE]hF]hI]uh7j hM]rhVXpackage:rr}r(h6Uh7jubah?hzubhVX and rr}r(h6X and rh=NhKNhLhh7j ubhr)r}r(h6X ``ctype:``hA}r(hC]hD]hE]hF]hI]uh7j hM]rhVXctype:rr }r!(h6Uh7jubah?hzubhVX (valid component types are r"r#}r$(h6X (valid component types are h=NhKNhLhh7j ubhr)r%}r&(h6X``lib``hA}r'(hC]hD]hE]hF]hI]uh7j hM]r(hVXlibr)r*}r+(h6Uh7j%ubah?hzubhVX, r,r-}r.(h6X, r/h=NhKNhLhh7j ubhr)r0}r1(h6X``flib``hA}r2(hC]hD]hE]hF]hI]uh7j hM]r3hVXflibr4r5}r6(h6Uh7j0ubah?hzubhVX, r7r8}r9(h6X, h7j ubhr)r:}r;(h6X``exe``hA}r<(hC]hD]hE]hF]hI]uh7j hM]r=hVXexer>r?}r@(h6Uh7j:ubah?hzubhVX, rArB}rC(h6j/h7j ubhr)rD}rE(h6X``test``hA}rF(hC]hD]hE]hF]hI]uh7j hM]rGhVXtestrHrI}rJ(h6Uh7jDubah?hzubhVX and rKrL}rM(h6jh7j ubhr)rN}rO(h6X ``bench``hA}rP(hC]hD]hE]hF]hI]uh7j hM]rQhVXbenchrRrS}rT(h6Uh7jNubah?hzubhVX) can be used to disambiguate when multiple packages define the same component, or the same component name is used in a package (e.g., a package rUrV}rW(h6X) can be used to disambiguate when multiple packages define the same component, or the same component name is used in a package (e.g., a package h=NhKNhLhh7j ubhr)rX}rY(h6X``foo``hA}rZ(hC]hD]hE]hF]hI]uh7j hM]r[hVXfoor\r]}r^(h6Uh7jXubah?hzubhVX. defines both an executable and library named r_r`}ra(h6X. defines both an executable and library named h=NhKNhLhh7j ubhr)rb}rc(h6X``foo``hA}rd(hC]hD]hE]hF]hI]uh7j hM]rehVXfoorfrg}rh(h6Uh7jbubah?hzubhVX\). We always prefer interpreting a target as a package name rather than as a component name.rirj}rk(h6X\). We always prefer interpreting a target as a package name rather than as a component name.h=NhKNhLhh7j ubeubhi)rl}rm(h6XSome example targets:rnh7jh=h>h?hlhA}ro(hC]hD]hE]hF]hI]uhKMDhLhhM]rphVXSome example targets:rqrr}rs(h6jnh=NhKNhLhh7jlubaubj)rt}ru(h6X$ cabal new-build lib:foo-pkg # build the library named foo-pkg $ cabal new-build foo-pkg:foo-tests # build foo-tests in foo-pkgh7jh=h>h?jhA}rv(jjhF]hE]hC]hD]hI]uhKMHhLhhM]rwhVX$ cabal new-build lib:foo-pkg # build the library named foo-pkg $ cabal new-build foo-pkg:foo-tests # build foo-tests in foo-pkgrxry}rz(h6Uh7jtubaubhi)r{}r|(h6Xd(There is also syntax for specifying module and file targets, but it doesn't currently do anything.)r}h7jh=h>h?hlhA}r~(hC]hD]hE]hF]hI]uhKMKhLhhM]rhVXf(There is also syntax for specifying module and file targets, but it doesn’t currently do anything.)rr}r(h6j}h=NhKNhLhh7j{ubaubhi)r}r(h6XBeyond a list of targets, ``cabal new-build`` accepts all the flags that ``cabal new-configure`` takes. Most of these flags are only taken into consideration when building local packages; however, some flags may cause extra store packages to be built (for example, ``--enable-profiling`` will automatically make sure profiling libraries for all transitive dependencies are built and installed.)h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMNhLhhM]r(hVXBeyond a list of targets, rr}r(h6XBeyond a list of targets, h=NhKNhLhh7jubhr)r}r(h6X``cabal new-build``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXcabal new-buildrr}r(h6Uh7jubah?hzubhVX accepts all the flags that rr}r(h6X accepts all the flags that h=NhKNhLhh7jubhr)r}r(h6X``cabal new-configure``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXcabal new-configurerr}r(h6Uh7jubah?hzubhVX takes. Most of these flags are only taken into consideration when building local packages; however, some flags may cause extra store packages to be built (for example, rr}r(h6X takes. Most of these flags are only taken into consideration when building local packages; however, some flags may cause extra store packages to be built (for example, h=NhKNhLhh7jubhr)r}r(h6X``--enable-profiling``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX--enable-profilingrr}r(h6Uh7jubah?hzubhVXk will automatically make sure profiling libraries for all transitive dependencies are built and installed.)rr}r(h6Xk will automatically make sure profiling libraries for all transitive dependencies are built and installed.)h=NhKNhLhh7jubeubeubh=h>h?hhA}r(hX-hF]hE]hC]hD]hI]uhKM)hLhhM]r(h)r}r(h6XA package target: ``package``, which specifies that all enabled components of a package to be built. By default, test suites and benchmarks are *not* enabled, unless they are explicitly requested (e.g., via ``--enable-tests``.) h7jh=h>h?hhA}r(hC]hD]hE]hF]hI]uhKNhLhhM]rhi)r}r(h6XA package target: ``package``, which specifies that all enabled components of a package to be built. By default, test suites and benchmarks are *not* enabled, unless they are explicitly requested (e.g., via ``--enable-tests``.)h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKM)hM]r(hVXA package target: rr}r(h6XA package target: h7jubhr)r}r(h6X ``package``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXpackagerr}r(h6Uh7jubah?hzubhVXs, which specifies that all enabled components of a package to be built. By default, test suites and benchmarks are rr}r(h6Xs, which specifies that all enabled components of a package to be built. By default, test suites and benchmarks are h7jubjE)r}r(h6X*not*hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXnotrr}r(h6Uh7jubah?jMubhVX: enabled, unless they are explicitly requested (e.g., via rr}r(h6X: enabled, unless they are explicitly requested (e.g., via h7jubhr)r}r(h6X``--enable-tests``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX--enable-testsrr}r(h6Uh7jubah?hzubhVX.)rr}r(h6X.)h7jubeubaubh)r}r(h6XA component target: ``[package:][ctype:]component``, which specifies a specific component (e.g., a library, executable, test suite or benchmark) to be built. h7jh=h>h?hhA}r(hC]hD]hE]hF]hI]uhKNhLhhM]rhi)r}r(h6XA component target: ``[package:][ctype:]component``, which specifies a specific component (e.g., a library, executable, test suite or benchmark) to be built.h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKM.hM]r(hVXA component target: rr}r(h6XA component target: h7jubhr)r}r(h6X``[package:][ctype:]component``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXackage:][ctype:]componentrr}r(h6Uh7jubah?hzubhVXj, which specifies a specific component (e.g., a library, executable, test suite or benchmark) to be built.rr}r(h6Xj, which specifies a specific component (e.g., a library, executable, test suite or benchmark) to be built.h7jubeubaubh)r}r(h6XHAll packages: ``all``, which specifies all packages within the project. h7jh=h>h?hhA}r(hC]hD]hE]hF]hI]uhKNhLhhM]rhi)r}r(h6XGAll packages: ``all``, which specifies all packages within the project.h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKM2hM]r(hVXAll packages: rr}r(h6XAll packages: h7jubhr)r}r(h6X``all``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXallrr}r(h6Uh7jubah?hzubhVX2, which specifies all packages within the project.rr}r(h6X2, which specifies all packages within the project.h7jubeubaubjeubh=h>h?hhA}r(hC]hD]hE]hF]hI]uhKNhLhhM]r(hi)r}r(h6XComponents of a particular type: ``package:ctypes``, ``all:ctypes``: which specifies all components of the given type. Where valid ``ctypes`` are:h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKM4hM]r(hVX!Components of a particular type: rr}r(h6X!Components of a particular type: h7jubhr)r}r(h6X``package:ctypes``hA}r(hC]hD]hE]hF]hI]uh7jhM]r hVXpackage:ctypesr r }r (h6Uh7jubah?hzubhVX, r r}r(h6X, h7jubhr)r}r(h6X``all:ctypes``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX all:ctypesrr}r(h6Uh7jubah?hzubhVX@: which specifies all components of the given type. Where valid rr}r(h6X@: which specifies all components of the given type. Where valid h7jubhr)r}r(h6X ``ctypes``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXctypesrr}r (h6Uh7jubah?hzubhVX are:r!r"}r#(h6X are:h7jubeubcdocutils.nodes block_quote r$)r%}r&(h6UhA}r'(hC]hD]hE]hF]hI]uh7jhM]r(h)r)}r*(h6Uh7j%h=h>h?hhA}r+(hX-hF]hE]hC]hD]hI]uhKM7hM]r,(h)r-}r.(h6X``libs``, ``libraries``,r/hA}r0(hC]hD]hE]hF]hI]uh7j)hM]r1hi)r2}r3(h6j/h7j-h=h>h?hlhA}r4(hC]hD]hE]hF]hI]uhKM7hM]r5(hr)r6}r7(h6X``libs``hA}r8(hC]hD]hE]hF]hI]uh7j2hM]r9hVXlibsr:r;}r<(h6Uh7j6ubah?hzubhVX, r=r>}r?(h6X, h7j2ubhr)r@}rA(h6X ``libraries``hA}rB(hC]hD]hE]hF]hI]uh7j2hM]rChVX librariesrDrE}rF(h6Uh7j@ubah?hzubhVX,rG}rH(h6X,h7j2ubeubah?hubh)rI}rJ(h6X!``flibs``, ``foreign-libraries``,rKhA}rL(hC]hD]hE]hF]hI]uh7j)hM]rMhi)rN}rO(h6jKh7jIh=h>h?hlhA}rP(hC]hD]hE]hF]hI]uhKM8hM]rQ(hr)rR}rS(h6X ``flibs``hA}rT(hC]hD]hE]hF]hI]uh7jNhM]rUhVXflibsrVrW}rX(h6Uh7jRubah?hzubhVX, rYrZ}r[(h6X, h7jNubhr)r\}r](h6X``foreign-libraries``hA}r^(hC]hD]hE]hF]hI]uh7jNhM]r_hVXforeign-librariesr`ra}rb(h6Uh7j\ubah?hzubhVX,rc}rd(h6X,h7jNubeubah?hubh)re}rf(h6X``exes``, ``executables``,rghA}rh(hC]hD]hE]hF]hI]uh7j)hM]rihi)rj}rk(h6jgh7jeh=h>h?hlhA}rl(hC]hD]hE]hF]hI]uhKM9hM]rm(hr)rn}ro(h6X``exes``hA}rp(hC]hD]hE]hF]hI]uh7jjhM]rqhVXexesrrrs}rt(h6Uh7jnubah?hzubhVX, rurv}rw(h6X, h7jjubhr)rx}ry(h6X``executables``hA}rz(hC]hD]hE]hF]hI]uh7jjhM]r{hVX executablesr|r}}r~(h6Uh7jxubah?hzubhVX,r}r(h6X,h7jjubeubah?hubh)r}r(h6X ``tests``,rhA}r(hC]hD]hE]hF]hI]uh7j)hM]rhi)r}r(h6jh7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKM:hM]r(hr)r}r(h6X ``tests``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXtestsrr}r(h6Uh7jubah?hzubhVX,r}r(h6X,h7jubeubah?hubh)r}r(h6X``benches``, ``benchmarks``. hA}r(hC]hD]hE]hF]hI]uh7j)hM]rhi)r}r(h6X``benches``, ``benchmarks``.h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKM;hM]r(hr)r}r(h6X ``benches``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXbenchesrr}r(h6Uh7jubah?hzubhVX, rr}r(h6X, h7jubhr)r}r(h6X``benchmarks``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX benchmarksrr}r(h6Uh7jubah?hzubhVX.r}r(h6X.h7jubeubah?hubeubah?U block_quoterubeubhM]rhi)r}r(h6XUnexpected indentation.hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXUnexpected indentation.rr}r(h6Uh7jubah?hlubah?jyubeUcurrent_sourcerNU decorationrNUautofootnote_startrKUnameidsr}r(hU%configuring-builds-with-cabal-projectrhU(how-can-i-profile-my-library-applicationrhU quickstartrh Uhaddock-optionsrh Ucmdoption-store-dirrh jh jh Upackage-versioning-policyrhUsolver-configuration-optionsrhUhooglerhUhscolourrhUcmdoption-project-filerhUhackagerhUexecutable-optionsrhUspecifying-the-local-packagesrhjhUcpphsrhUhappyrhjXhUhaskellrhUcmdoption-builddirrhUobject-code-optionsrhU%advanced-global-configuration-optionsrhhHhUpvprhU"foreign-function-interface-optionsrh Udynamic-linking-optionsrh!Udeveloping-multiple-packagesrh"Ucoverage-optionsrh#jh$Ualexrh%Uglobal-configuration-optionsrh&h^h'Uhaddockrh(jkh)Upackage-configuration-optionsrh*jh+j h,Uadvanced-solver-optionsrh-Ucookbookrh.Uprofiling-optionsruhM]r(j)r}r(h6Uh7hh=h>h?jhA}r(UlangXconsoleUlinenothresholdI9223372036854775807 hF]hE]hC]hD]hI]uhKKhLhhM]ubh8)r}r(h6Uh7hh=h>h?h@hA}r(hC]hD]hE]hF]rjahI]rhauhKKhLhhM]r(hO)r}r(h6X Quickstartrh7jh=h>h?hShA}r(hC]hD]hE]hF]hI]uhKKhLhhM]rhVX Quickstartrr}r(h6jh=NhKNhLhh7jubaubhi)r}r(h6XSuppose that you are in a directory containing a single Cabal package which you wish to build. You can configure and build it using Nix-style local builds with this command (configuring is not necessary):rh7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKKhLhhM]rhVXSuppose that you are in a directory containing a single Cabal package which you wish to build. You can configure and build it using Nix-style local builds with this command (configuring is not necessary):rr}r(h6jh=NhKNhLhh7jubaubj)r}r(h6X$ cabal new-buildh7jh=h>h?jhA}r(jjhF]hE]hC]hD]hI]uhKK hLhhM]rhVX$ cabal new-buildrr}r(h6Uh7jubaubhi)r}r(h6X9To open a GHCi shell with this package, use this command:rh7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKKhLhhM]r hVX9To open a GHCi shell with this package, use this command:r r }r (h6jh=NhKNhLhh7jubaubj)r }r (h6X$ cabal new-replh7jh=h>h?jhA}r (jjhF]hE]hC]hD]hI]uhKKhLhhM]r hVX$ cabal new-replr r }r (h6Uh7j ubaubh8)r }r (h6Uh7jh=h>h?h@hA}r (hC]hD]hE]hF]r jahI]r h!auhKKhLhhM]r (hO)r }r (h6XDeveloping multiple packagesr h7j h=h>h?hShA}r (hC]hD]hE]hF]hI]uhKKhLhhM]r hVXDeveloping multiple packagesr r }r (h6j h=NhKNhLhh7j ubaubhi)r }r (h6XMany Cabal projects involve multiple packages which need to be built together. To build multiple Cabal packages, you need to first create a ``cabal.project`` file which declares where all the local package directories live. For example, in the Cabal repository, there is a root directory with a folder per package, e.g., the folders ``Cabal`` and ``cabal-install``. The ``cabal.project`` file specifies each folder as part of the project:h7j h=h>h?hlhA}r (hC]hD]hE]hF]hI]uhKKhLhhM]r (hVXMany Cabal projects involve multiple packages which need to be built together. To build multiple Cabal packages, you need to first create a r r }r (h6XMany Cabal projects involve multiple packages which need to be built together. To build multiple Cabal packages, you need to first create a h=NhKNhLhh7j ubhr)r }r! (h6X``cabal.project``hA}r" (hC]hD]hE]hF]hI]uh7j hM]r# hVX cabal.projectr$ r% }r& (h6Uh7j ubah?hzubhVX file which declares where all the local package directories live. For example, in the Cabal repository, there is a root directory with a folder per package, e.g., the folders r' r( }r) (h6X file which declares where all the local package directories live. For example, in the Cabal repository, there is a root directory with a folder per package, e.g., the folders h=NhKNhLhh7j ubhr)r* }r+ (h6X ``Cabal``hA}r, (hC]hD]hE]hF]hI]uh7j hM]r- hVXCabalr. r/ }r0 (h6Uh7j* ubah?hzubhVX and r1 r2 }r3 (h6X and h=NhKNhLhh7j ubhr)r4 }r5 (h6X``cabal-install``hA}r6 (hC]hD]hE]hF]hI]uh7j hM]r7 hVX cabal-installr8 r9 }r: (h6Uh7j4 ubah?hzubhVX. The r; r< }r= (h6X. The h=NhKNhLhh7j ubhr)r> }r? (h6X``cabal.project``hA}r@ (hC]hD]hE]hF]hI]uh7j hM]rA hVX cabal.projectrB rC }rD (h6Uh7j> ubah?hzubhVX3 file specifies each folder as part of the project:rE rF }rG (h6X3 file specifies each folder as part of the project:h=NhKNhLhh7j ubeubj)rH }rI (h6X)packages: Cabal/ cabal-install/h7j h=h>h?jhA}rJ (UlinenosrK UlanguagerL XcabaljjhF]hE]hC]Uhighlight_argsrM }hD]hI]uhKKhLhhM]rN hVX)packages: Cabal/ cabal-install/rO rP }rQ (h6Uh7jH ubaubhi)rR }rS (h6XThe expectation is that a ``cabal.project`` is checked into your source control, to be used by all developers of a project. If you need to make local changes, they can be placed in ``cabal.project.local`` (which should not be checked in.)h7j h=h>h?hlhA}rT (hC]hD]hE]hF]hI]uhKK$hLhhM]rU (hVXThe expectation is that a rV rW }rX (h6XThe expectation is that a h=NhKNhLhh7jR ubhr)rY }rZ (h6X``cabal.project``hA}r[ (hC]hD]hE]hF]hI]uh7jR hM]r\ hVX cabal.projectr] r^ }r_ (h6Uh7jY ubah?hzubhVX is checked into your source control, to be used by all developers of a project. If you need to make local changes, they can be placed in r` ra }rb (h6X is checked into your source control, to be used by all developers of a project. If you need to make local changes, they can be placed in h=NhKNhLhh7jR ubhr)rc }rd (h6X``cabal.project.local``hA}re (hC]hD]hE]hF]hI]uh7jR hM]rf hVXcabal.project.localrg rh }ri (h6Uh7jc ubah?hzubhVX" (which should not be checked in.)rj rk }rl (h6X" (which should not be checked in.)h=NhKNhLhh7jR ubeubhi)rm }rn (h6XThen, to build every component of every package, from the top-level directory, run the command: (Warning: cabal-install-1.24 does NOT have this behavior; you will need to upgrade to HEAD.)ro h7j h=h>h?hlhA}rp (hC]hD]hE]hF]hI]uhKK)hLhhM]rq hVXThen, to build every component of every package, from the top-level directory, run the command: (Warning: cabal-install-1.24 does NOT have this behavior; you will need to upgrade to HEAD.)rr rs }rt (h6jo h=NhKNhLhh7jm ubaubj)ru }rv (h6X$ cabal new-buildh7j h=h>h?jhA}rw (jjhF]hE]hC]hD]hI]uhKK/hLhhM]rx hVX$ cabal new-buildry rz }r{ (h6Uh7ju ubaubhi)r| }r} (h6XlTo build a specific package, you can either run ``new-build`` from the directory of the package in question:h7j h=h>h?hlhA}r~ (hC]hD]hE]hF]hI]uhKK1hLhhM]r (hVX0To build a specific package, you can either run r r }r (h6X0To build a specific package, you can either run h=NhKNhLhh7j| ubhr)r }r (h6X ``new-build``hA}r (hC]hD]hE]hF]hI]uh7j| hM]r hVX new-buildr r }r (h6Uh7j ubah?hzubhVX/ from the directory of the package in question:r r }r (h6X/ from the directory of the package in question:h=NhKNhLhh7j| ubeubj)r }r (h6X$$ cd cabal-install $ cabal new-buildh7j h=h>h?jhA}r (jjhF]hE]hC]hD]hI]uhKK6hLhhM]r hVX$$ cd cabal-install $ cabal new-buildr r }r (h6Uh7j ubaubhi)r }r (h6X~or you can pass the name of the package as an argument to ``cabal new-build`` (this works in any subdirectory of the project):h7j h=h>h?hlhA}r (hC]hD]hE]hF]hI]uhKK9hLhhM]r (hVX:or you can pass the name of the package as an argument to r r }r (h6X:or you can pass the name of the package as an argument to h=NhKNhLhh7j ubhr)r }r (h6X``cabal new-build``hA}r (hC]hD]hE]hF]hI]uh7j hM]r hVXcabal new-buildr r }r (h6Uh7j ubah?hzubhVX1 (this works in any subdirectory of the project):r r }r (h6X1 (this works in any subdirectory of the project):h=NhKNhLhh7j ubeubj)r }r (h6X$ cabal new-build cabal-installh7j h=h>h?jhA}r (jjhF]hE]hC]hD]hI]uhKK>hLhhM]r hVX$ cabal new-build cabal-installr r }r (h6Uh7j ubaubhi)r }r (h6XYou can also specify a specific component of the package to build. For example, to build a test suite named ``package-tests``, use the command:h7j h=h>h?hlhA}r (hC]hD]hE]hF]hI]uhKK@hLhhM]r (hVXlYou can also specify a specific component of the package to build. For example, to build a test suite named r r }r (h6XlYou can also specify a specific component of the package to build. For example, to build a test suite named h=NhKNhLhh7j ubhr)r }r (h6X``package-tests``hA}r (hC]hD]hE]hF]hI]uh7j hM]r hVX package-testsr r }r (h6Uh7j ubah?hzubhVX, use the command:r r }r (h6X, use the command:h=NhKNhLhh7j ubeubj)r }r (h6X$ cabal new-build package-testsh7j h=h>h?jhA}r (jjhF]hE]hC]hD]hI]uhKKEhLhhM]r hVX$ cabal new-build package-testsr r }r (h6Uh7j ubaubhi)r }r (h6XTargets can be qualified with package names. So to request ``package-tests`` *from* the ``Cabal`` package, use ``Cabal:package-tests``.h7j h=h>h?hlhA}r (hC]hD]hE]hF]hI]uhKKGhLhhM]r (hVX;Targets can be qualified with package names. So to request r r }r (h6X;Targets can be qualified with package names. So to request h=NhKNhLhh7j ubhr)r }r (h6X``package-tests``hA}r (hC]hD]hE]hF]hI]uh7j hM]r hVX package-testsr r }r (h6Uh7j ubah?hzubhVX r }r (h6X h=NhKNhLhh7j ubjE)r }r (h6X*from*hA}r (hC]hD]hE]hF]hI]uh7j hM]r hVXfromr r }r (h6Uh7j ubah?jMubhVX the r r }r (h6X the h=NhKNhLhh7j ubhr)r }r (h6X ``Cabal``hA}r (hC]hD]hE]hF]hI]uh7j hM]r hVXCabalr r }r (h6Uh7j ubah?hzubhVX package, use r r }r (h6X package, use h=NhKNhLhh7j ubhr)r }r (h6X``Cabal:package-tests``hA}r (hC]hD]hE]hF]hI]uh7j hM]r hVXCabal:package-testsr r }r (h6Uh7j ubah?hzubhVX.r }r (h6X.h=NhKNhLhh7j ubeubhi)r }r (h6XUnlike sandboxes, there is no need to setup a sandbox or ``add-source`` projects; just check in ``cabal.project`` to your repository and ``new-build`` will just work.h7j h=h>h?hlhA}r (hC]hD]hE]hF]hI]uhKKKhLhhM]r (hVX9Unlike sandboxes, there is no need to setup a sandbox or r r }r (h6X9Unlike sandboxes, there is no need to setup a sandbox or h=NhKNhLhh7j ubhr)r }r (h6X``add-source``hA}r (hC]hD]hE]hF]hI]uh7j hM]r hVX add-sourcer r }r (h6Uh7j ubah?hzubhVX projects; just check in r r }r (h6X projects; just check in h=NhKNhLhh7j ubhr)r }r (h6X``cabal.project``hA}r (hC]hD]hE]hF]hI]uh7j hM]r hVX cabal.projectr r }r (h6Uh7j ubah?hzubhVX to your repository and r r }r (h6X to your repository and h=NhKNhLhh7j ubhr)r }r (h6X ``new-build``hA}r (hC]hD]hE]hF]hI]uh7j hM]r hVX new-buildr r }r (h6Uh7j ubah?hzubhVX will just work.r r }r (h6X will just work.h=NhKNhLhh7j ubeubeubeubh8)r }r (h6Uh7hh=h>h?h@hA}r (hC]hD]hE]hF]r jahI]r h-auhKKPhLhhM]r (hO)r }r (h6XCookbookr h7j h=h>h?hShA}r (hC]hD]hE]hF]hI]uhKKPhLhhM]r hVXCookbookr! r" }r# (h6j h=NhKNhLhh7j ubaubh8)r$ }r% (h6Uh7j h=h>h?h@hA}r& (hC]hD]hE]hF]r' jahI]r( hauhKKShLhhM]r) (hO)r* }r+ (h6X)How can I profile my library/application?r, h7j$ h=h>h?hShA}r- (hC]hD]hE]hF]hI]uhKKShLhhM]r. hVX)How can I profile my library/application?r/ r0 }r1 (h6j, h=NhKNhLhh7j* ubaubhi)r2 }r3 (h6XFirst, make sure you have HEAD; 1.24 is affected by :issue:`3790`, which means that if any project which transitively depends on a package which has a Custom setup built against Cabal 1.22 or earlier will silently not work.h7j$ h=h>h?hlhA}r4 (hC]hD]hE]hF]hI]uhKKUhLhhM]r5 (hVX4First, make sure you have HEAD; 1.24 is affected by r6 r7 }r8 (h6X4First, make sure you have HEAD; 1.24 is affected by h=NhKNhLhh7j2 ubjl)r9 }r: (h6X#3790hA}r; (UrefuriX,https://github.com/haskell/cabal/issues/3790hF]hE]hC]hD]hI]Uinternaluh7j2 hM]r< hVX#3790r= r> }r? (h6Uh7j9 ubah?juubhVX, which means that if any project which transitively depends on a package which has a Custom setup built against Cabal 1.22 or earlier will silently not work.r@ rA }rB (h6X, which means that if any project which transitively depends on a package which has a Custom setup built against Cabal 1.22 or earlier will silently not work.h=NhKNhLhh7j2 ubeubhi)rC }rD (h6XHCreate or edit your ``cabal.project.local``, adding the following line::h7j$ h=h>h?hlhA}rE (hC]hD]hE]hF]hI]uhKKZhLhhM]rF (hVXCreate or edit your rG rH }rI (h6XCreate or edit your h=NhKNhLhh7jC ubhr)rJ }rK (h6X``cabal.project.local``hA}rL (hC]hD]hE]hF]hI]uh7jC hM]rM hVXcabal.project.localrN rO }rP (h6Uh7jJ ubah?hzubhVX, adding the following line:rQ rR }rS (h6X, adding the following line:h=NhKNhLhh7jC ubeubj)rT }rU (h6Xprofiling: Trueh7j$ h=h>h?jhA}rV (jjhF]hE]hC]hD]hI]uhKK]hLhhM]rW hVXprofiling: TruerX rY }rZ (h6Uh7jT ubaubhi)r[ }r\ (h6XNow, ``cabal new-build`` will automatically build all libraries and executables with profiling. You can fine-tune the profiling settings for each package using :cfg-field:`profiling-detail`::h7j$ h=h>h?hlhA}r] (hC]hD]hE]hF]hI]uhKK_hLhhM]r^ (hVXNow, r_ r` }ra (h6XNow, h=NhKNhLhh7j[ ubhr)rb }rc (h6X``cabal new-build``hA}rd (hC]hD]hE]hF]hI]uh7j[ hM]re hVXcabal new-buildrf rg }rh (h6Uh7jb ubah?hzubhVX will automatically build all libraries and executables with profiling. You can fine-tune the profiling settings for each package using ri rj }rk (h6X will automatically build all libraries and executables with profiling. You can fine-tune the profiling settings for each package using h=NhKNhLhh7j[ ubcsphinx.addnodes pending_xref rl )rm }rn (h6X:cfg-field:`profiling-detail`ro h7j[ h=h>h?U pending_xrefrp hA}rq (UreftypeX cfg-fieldUrefwarnrr U reftargetrs Xprofiling-detailU refdomainXcabalrt hF]hE]U refexplicithC]hD]hI]Urefdocru Xnix-local-buildrv Ucabal:cfg-sectionrw NuhKK_hM]rx hr)ry }rz (h6jo hA}r{ (hC]hD]r| (Uxrefr} jt Xcabal-cfg-fieldr~ ehE]hF]hI]uh7jm hM]r hVXprofiling-detailr r }r (h6Uh7jy ubah?hzubaubhVX:r }r (h6X:h=NhKNhLhh7j[ ubeubj)r }r (h6X2package p profiling-detail: toplevel-functionsh7j$ h=h>h?jhA}r (jjhF]hE]hC]hD]hI]uhKKchLhhM]r hVX2package p profiling-detail: toplevel-functionsr r }r (h6Uh7j ubaubhi)r }r (h6XeAlternately, you can call ``cabal new-build --enable-profiling`` to temporarily build with profiling.h7j$ h=h>h?hlhA}r (hC]hD]hE]hF]hI]uhKKfhLhhM]r (hVXAlternately, you can call r r }r (h6XAlternately, you can call h=NhKNhLhh7j ubhr)r }r (h6X&``cabal new-build --enable-profiling``hA}r (hC]hD]hE]hF]hI]uh7j hM]r hVX"cabal new-build --enable-profilingr r }r (h6Uh7j ubah?hzubhVX% to temporarily build with profiling.r r }r (h6X% to temporarily build with profiling.h=NhKNhLhh7j ubeubeubeubh;jh8)r }r (h6Uh7hh=h>h?h@hA}r (hC]hD]hE]hF]r jahI]r hauhKMhLhhM]r (hO)r }r (h6X%Configuring builds with cabal.projectr h7j h=h>h?hShA}r (hC]hD]hE]hF]hI]uhKMhLhhM]r hVX%Configuring builds with cabal.projectr r }r (h6j h=NhKNhLhh7j ubaubhi)r }r (h6X``cabal.project`` files support a variety of options which configure the details of your build. The general syntax of a ``cabal.project`` file is similar to that of a Cabal file: there are a number of fields, some of which live inside stanzas:h7j h=h>h?hlhA}r (hC]hD]hE]hF]hI]uhKMhLhhM]r (hr)r }r (h6X``cabal.project``hA}r (hC]hD]hE]hF]hI]uh7j hM]r hVX cabal.projectr r }r (h6Uh7j ubah?hzubhVXg files support a variety of options which configure the details of your build. The general syntax of a r r }r (h6Xg files support a variety of options which configure the details of your build. The general syntax of a h=NhKNhLhh7j ubhr)r }r (h6X``cabal.project``hA}r (hC]hD]hE]hF]hI]uh7j hM]r hVX cabal.projectr r }r (h6Uh7j ubah?hzubhVXj file is similar to that of a Cabal file: there are a number of fields, some of which live inside stanzas:r r }r (h6Xj file is similar to that of a Cabal file: there are a number of fields, some of which live inside stanzas:h=NhKNhLhh7j ubeubj)r }r (h6Xcpackages: */*.cabal with-compiler: /opt/ghc/8.0.1/bin/ghc package cryptohash optimization: Falseh7j h=h>h?jhA}r (jjhF]hE]hC]hD]hI]uhKMhLhhM]r hVXcpackages: */*.cabal with-compiler: /opt/ghc/8.0.1/bin/ghc package cryptohash optimization: Falser r }r (h6Uh7j ubaubhi)r }r (h6XIn general, the accepted field names coincide with the accepted command line flags that ``cabal install`` and other commands take. For example, ``cabal new-configure --enable-profiling`` will write out a project file with ``profiling: True``.h7j h=h>h?hlhA}r (hC]hD]hE]hF]hI]uhKMhLhhM]r (hVXXIn general, the accepted field names coincide with the accepted command line flags that r r }r (h6XXIn general, the accepted field names coincide with the accepted command line flags that h=NhKNhLhh7j ubhr)r }r (h6X``cabal install``hA}r (hC]hD]hE]hF]hI]uh7j hM]r hVX cabal installr r }r (h6Uh7j ubah?hzubhVX' and other commands take. For example, r r }r (h6X' and other commands take. For example, h=NhKNhLhh7j ubhr)r }r (h6X*``cabal new-configure --enable-profiling``hA}r (hC]hD]hE]hF]hI]uh7j hM]r hVX&cabal new-configure --enable-profilingr r }r (h6Uh7j ubah?hzubhVX$ will write out a project file with r r }r (h6X$ will write out a project file with h=NhKNhLhh7j ubhr)r }r (h6X``profiling: True``hA}r (hC]hD]hE]hF]hI]uh7j hM]r hVXprofiling: Truer r }r (h6Uh7j ubah?hzubhVX.r }r (h6X.h=NhKNhLhh7j ubeubhi)r }r (h6X{The full configuration of a project is determined by combining the following sources (later entries override earlier ones):r h7j h=h>h?hlhA}r (hC]hD]hE]hF]hI]uhKMhLhhM]r hVX{The full configuration of a project is determined by combining the following sources (later entries override earlier ones):r r }r (h6j h=NhKNhLhh7j ubaubj~)r }r (h6Uh7j h=h>h?jhA}r (jU.hF]hE]hC]jUhD]hI]jjuhKMhLhhM]r (h)r }r (h6X9``~/.cabal/config`` (the user-wide global configuration) h7j h=h>h?hhA}r (hC]hD]hE]hF]hI]uhKNhLhhM]r hi)r }r (h6X8``~/.cabal/config`` (the user-wide global configuration)h7j h=h>h?hlhA}r (hC]hD]hE]hF]hI]uhKMhM]r (hr)r }r (h6X``~/.cabal/config``hA}r (hC]hD]hE]hF]hI]uh7j hM]r hVX~/.cabal/configr r }r (h6Uh7j ubah?hzubhVX% (the user-wide global configuration)r r }r (h6X% (the user-wide global configuration)h7j ubeubaubh)r }r (h6X.``cabal.project`` (the project configuratoin) h7j h=h>h?hhA}r (hC]hD]hE]hF]hI]uhKNhLhhM]r hi)r }r (h6X-``cabal.project`` (the project configuratoin)h7j h=h>h?hlhA}r (hC]hD]hE]hF]hI]uhKMhM]r (hr)r }r (h6X``cabal.project``hA}r (hC]hD]hE]hF]hI]uh7j hM]r hVX cabal.projectr r }r (h6Uh7j ubah?hzubhVX (the project configuratoin)r r }r (h6X (the project configuratoin)h7j ubeubaubh)r }r (h6X>``cabal.project.freeze`` (the output of ``cabal new-freeze``) h7j h=h>h?hhA}r (hC]hD]hE]hF]hI]uhKNhLhhM]r! hi)r" }r# (h6X=``cabal.project.freeze`` (the output of ``cabal new-freeze``)h7j h=h>h?hlhA}r$ (hC]hD]hE]hF]hI]uhKMhM]r% (hr)r& }r' (h6X``cabal.project.freeze``hA}r( (hC]hD]hE]hF]hI]uh7j" hM]r) hVXcabal.project.freezer* r+ }r, (h6Uh7j& ubah?hzubhVX (the output of r- r. }r/ (h6X (the output of h7j" ubhr)r0 }r1 (h6X``cabal new-freeze``hA}r2 (hC]hD]hE]hF]hI]uh7j" hM]r3 hVXcabal new-freezer4 r5 }r6 (h6Uh7j0 ubah?hzubhVX)r7 }r8 (h6X)h7j" ubeubaubh)r9 }r: (h6XA``cabal.project.local`` (the output of ``cabal new-configure``) h7j h=h>h?hhA}r; (hC]hD]hE]hF]hI]uhKNhLhhM]r< hi)r= }r> (h6X?``cabal.project.local`` (the output of ``cabal new-configure``)h7j9 h=h>h?hlhA}r? (hC]hD]hE]hF]hI]uhKMhM]r@ (hr)rA }rB (h6X``cabal.project.local``hA}rC (hC]hD]hE]hF]hI]uh7j= hM]rD hVXcabal.project.localrE rF }rG (h6Uh7jA ubah?hzubhVX (the output of rH rI }rJ (h6X (the output of h7j= ubhr)rK }rL (h6X``cabal new-configure``hA}rM (hC]hD]hE]hF]hI]uh7j= hM]rN hVXcabal new-configurerO rP }rQ (h6Uh7jK ubah?hzubhVX)rR }rS (h6X)h7j= ubeubaubeubh8)rT }rU (h6Uh7j h=h>h?h@hA}rV (hC]hD]hE]hF]rW jahI]rX hauhKMhLhhM]rY (hO)rZ }r[ (h6XSpecifying the local packagesr\ h7jT h=h>h?hShA}r] (hC]hD]hE]hF]hI]uhKMhLhhM]r^ hVXSpecifying the local packagesr_ r` }ra (h6j\ h=NhKNhLhh7jZ ubaubhi)rb }rc (h6XQThe following top-level options specify what the local packages of a project are:rd h7jT h=h>h?hlhA}re (hC]hD]hE]hF]hI]uhKMhLhhM]rf hVXQThe following top-level options specify what the local packages of a project are:rg rh }ri (h6jd h=NhKNhLhh7jb ubaubcsphinx.addnodes index rj )rk }rl (h6Uh7jT h=h>h?Uindexrm hA}rn (hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubcsphinx.addnodes desc ro )rp }rq (h6Uh7jT h=h>h?Udescrr hA}rs (Unoindexrt Udomainru XcabalhF]hE]hC]hD]hI]Uobjtyperv X cfg-fieldrw Udesctyperx jw uhKNhLhhM]ry (csphinx.addnodes desc_signature rz )r{ }r| (h6X:packages: package location list (space or comma separated)h7jp h=h>h?Udesc_signaturer} hA}r~ (hF]r Xcfg-field-packagesr ahE]hC]hD]hI]Ufirstr uhKNhLhhM]r (jj )r }r (h6Uh7j{ h=h>h?jm hA}r (hF]hE]hC]hD]hI]Uentries]r (Upairr Xpackages ; cabal project optionj UNtr auhKNhLhhM]ubcsphinx.addnodes desc_name r )r }r (h6Xpackagesr h7j{ h=h>h?U desc_namer hA}r (jjhF]hE]hC]hD]hI]uhKNhLhhM]r hVXpackagesr r }r (h6Uh=NhKNhLhh7j ubaubcsphinx.addnodes desc_addname r )r }r (h6U: r h7j{ h=h>h?U desc_addnamer hA}r (jjhF]hE]hC]hD]hI]uhKNhLhhM]r hVX: r r }r (h6Uh=NhKNhLhh7j ubaubcsphinx.addnodes desc_annotation r )r }r (h6X0package location list (space or comma separated)h7j{ h=h>h?Udesc_annotationr hA}r (jjhF]hE]hC]hD]hI]uhKNhLhhM]r hVX0package location list (space or comma separated)r r }r (h6Uh=NhKNhLhh7j ubaubeubcsphinx.addnodes desc_content r )r }r (h6Uh7jp h=h>h?U desc_contentr hA}r (hC]hD]hE]hF]hI]uhKNhLhhM]r (cdocutils.nodes field_list r )r }r (h6Uh7j h=h>h?U field_listr hA}r (hC]hD]hE]hF]hI]uhKNhLhhM]r cdocutils.nodes field r )r }r (h6UhA}r (hC]hD]hE]hF]hI]uh7j hM]r (cdocutils.nodes field_name r )r }r (h6X Default valueh7j h=h>h?U field_namer hA}r (hC]hD]hE]hF]hI]uhKKhM]r hVX Default valuer r }r (h6Uh7j ubaubcdocutils.nodes field_body r )r }r (h6UhA}r (hC]hD]hE]hF]hI]uh7j hM]r hi)r }r (h6X ./*.cabalhA}r (hC]hD]hE]hF]hI]uh7j hM]r hr)r }r (h6X ``./*.cabal``h7j h=h>h?hzhA}r (hC]hD]hE]hF]hI]uhKNhLhhM]r hVX ./*.cabalr r }r (h6Uh=NhKNhLhh7j ubaubah?hlubah?U field_bodyr ubeh?Ufieldr ubaubhi)r }r (h6XSpecifies the list of package locations which contain the local packages to be built by this project. Package locations can take the following forms:r h7j h=h>h?hlhA}r (hC]hD]hE]hF]hI]uhKMhLhhM]r hVXSpecifies the list of package locations which contain the local packages to be built by this project. Package locations can take the following forms:r r }r (h6j h=NhKNhLhh7j ubaubj~)r }r (h6Uh7j h=h>h?jhA}r (jU.hF]hE]hC]jUhD]hI]jjuhKMhLhhM]r (h)r }r (h6XThey can specify a Cabal file, or a directory containing a Cabal file, e.g., ``packages: Cabal cabal-install/cabal-install.cabal``. h7j h=h>h?hhA}r (hC]hD]hE]hF]hI]uhKNhLhhM]r hi)r }r (h6XThey can specify a Cabal file, or a directory containing a Cabal file, e.g., ``packages: Cabal cabal-install/cabal-install.cabal``.h7j h=h>h?hlhA}r (hC]hD]hE]hF]hI]uhKMhM]r (hVXMThey can specify a Cabal file, or a directory containing a Cabal file, e.g., r r }r (h6XMThey can specify a Cabal file, or a directory containing a Cabal file, e.g., h7j ubhr)r }r (h6X5``packages: Cabal cabal-install/cabal-install.cabal``hA}r (hC]hD]hE]hF]hI]uh7j hM]r hVX1packages: Cabal cabal-install/cabal-install.cabalr r }r (h6Uh7j ubah?hzubhVX.r }r (h6X.h7j ubeubaubh)r }r (h6XThey can specify a glob-style wildcards, which must match one or more (a) directories containing a (single) Cabal file, (b) Cabal files (extension ``.cabal``), or (c) [STRIKEOUT:tarballs which contain Cabal packages (extension ``.tar.gz``)] (not implemented yet). For example, to match all Cabal files in all subdirectories, as well as the Cabal projects in the parent directories ``foo`` and ``bar``, use ``packages: */*.cabal ../{foo,bar}/`` h7j h=h>h?hhA}r (hC]hD]hE]hF]hI]uhKNhLhhM]r hi)r }r (h6XThey can specify a glob-style wildcards, which must match one or more (a) directories containing a (single) Cabal file, (b) Cabal files (extension ``.cabal``), or (c) [STRIKEOUT:tarballs which contain Cabal packages (extension ``.tar.gz``)] (not implemented yet). For example, to match all Cabal files in all subdirectories, as well as the Cabal projects in the parent directories ``foo`` and ``bar``, use ``packages: */*.cabal ../{foo,bar}/``h7j h=h>h?hlhA}r (hC]hD]hE]hF]hI]uhKMhM]r (hVXThey can specify a glob-style wildcards, which must match one or more (a) directories containing a (single) Cabal file, (b) Cabal files (extension r r }r (h6XThey can specify a glob-style wildcards, which must match one or more (a) directories containing a (single) Cabal file, (b) Cabal files (extension h7j ubhr)r }r (h6X ``.cabal``hA}r (hC]hD]hE]hF]hI]uh7j hM]r hVX.cabalr r }r (h6Uh7j ubah?hzubhVXF), or (c) [STRIKEOUT:tarballs which contain Cabal packages (extension r r }r (h6XF), or (c) [STRIKEOUT:tarballs which contain Cabal packages (extension h7j ubhr)r }r (h6X ``.tar.gz``hA}r (hC]hD]hE]hF]hI]uh7j hM]r hVX.tar.gzr r }r (h6Uh7j ubah?hzubhVX)] (not implemented yet). For example, to match all Cabal files in all subdirectories, as well as the Cabal projects in the parent directories r r }r (h6X)] (not implemented yet). For example, to match all Cabal files in all subdirectories, as well as the Cabal projects in the parent directories h7j ubhr)r }r (h6X``foo``hA}r (hC]hD]hE]hF]hI]uh7j hM]r hVXfoor r }r (h6Uh7j ubah?hzubhVX and r r }r (h6X and h7j ubhr)r }r (h6X``bar``hA}r (hC]hD]hE]hF]hI]uh7j hM]r hVXbarr r }r! (h6Uh7j ubah?hzubhVX, use r" r# }r$ (h6X, use h7j ubhr)r% }r& (h6X%``packages: */*.cabal ../{foo,bar}/``hA}r' (hC]hD]hE]hF]hI]uh7j hM]r( hVX!packages: */*.cabal ../{foo,bar}/r) r* }r+ (h6Uh7j% ubah?hzubeubaubh)r, }r- (h6X[STRIKEOUT:They can specify an ``http``, ``https`` or ``file`` URL, representing the path to a remote tarball to be downloaded and built.] (not implemented yet) h7j h=h>h?hhA}r. (hC]hD]hE]hF]hI]uhKNhLhhM]r/ hi)r0 }r1 (h6X[STRIKEOUT:They can specify an ``http``, ``https`` or ``file`` URL, representing the path to a remote tarball to be downloaded and built.] (not implemented yet)h7j, h=h>h?hlhA}r2 (hC]hD]hE]hF]hI]uhKMhM]r3 (hVX[STRIKEOUT:They can specify an r4 r5 }r6 (h6X[STRIKEOUT:They can specify an h7j0 ubhr)r7 }r8 (h6X``http``hA}r9 (hC]hD]hE]hF]hI]uh7j0 hM]r: hVXhttpr; r< }r= (h6Uh7j7 ubah?hzubhVX, r> r? }r@ (h6X, h7j0 ubhr)rA }rB (h6X ``https``hA}rC (hC]hD]hE]hF]hI]uh7j0 hM]rD hVXhttpsrE rF }rG (h6Uh7jA ubah?hzubhVX or rH rI }rJ (h6X or h7j0 ubhr)rK }rL (h6X``file``hA}rM (hC]hD]hE]hF]hI]uh7j0 hM]rN hVXfilerO rP }rQ (h6Uh7jK ubah?hzubhVXb URL, representing the path to a remote tarball to be downloaded and built.] (not implemented yet)rR rS }rT (h6Xb URL, representing the path to a remote tarball to be downloaded and built.] (not implemented yet)h7j0 ubeubaubeubhi)rU }rV (h6XBThere is no command line variant of this field; see :issue:`3585`.h7j h=h>h?hlhA}rW (hC]hD]hE]hF]hI]uhKMhLhhM]rX (hVX4There is no command line variant of this field; see rY rZ }r[ (h6X4There is no command line variant of this field; see h=NhKNhLhh7jU ubjl)r\ }r] (h6X#3585hA}r^ (UrefuriX,https://github.com/haskell/cabal/issues/3585hF]hE]hC]hD]hI]Uinternaluh7jU hM]r_ hVX#3585r` ra }rb (h6Uh7j\ ubah?juubhVX.rc }rd (h6X.h=NhKNhLhh7jU ubeubeubeubjj )re }rf (h6Uh7jT h=h>h?jm hA}rg (hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )rh }ri (h6Uh7jT h=h>h?jr hA}rj (jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldrk jx jk uhKNhLhhM]rl (jz )rm }rn (h6XCoptional-packages: package location list (space or comma-separated)h7jh h=h>h?j} hA}ro (hF]rp Xcfg-field-optional-packagesrq ahE]hC]hD]hI]j uhKNhLhhM]rr (jj )rs }rt (h6Uh7jm h=h>h?jm hA}ru (hF]hE]hC]hD]hI]Uentries]rv (j X(optional-packages ; cabal project optionjq UNtrw auhKNhLhhM]ubj )rx }ry (h6Xoptional-packagesrz h7jm h=h>h?j hA}r{ (jjhF]hE]hC]hD]hI]uhKNhLhhM]r| hVXoptional-packagesr} r~ }r (h6Uh=NhKNhLhh7jx ubaubj )r }r (h6j h7jm h=h>h?j hA}r (jjhF]hE]hC]hD]hI]uhKNhLhhM]r hVX: r r }r (h6Uh=NhKNhLhh7j ubaubj )r }r (h6X0package location list (space or comma-separated)h7jm h=h>h?j hA}r (jjhF]hE]hC]hD]hI]uhKNhLhhM]r hVX0package location list (space or comma-separated)r r }r (h6Uh=NhKNhLhh7j ubaubeubj )r }r (h6Uh7jh h=h>h?j hA}r (hC]hD]hE]hF]hI]uhKNhLhhM]r (j )r }r (h6Uh7j h=h>h?j hA}r (hC]hD]hE]hF]hI]uhKNhLhhM]r j )r }r (h6UhA}r (hC]hD]hE]hF]hI]uh7j hM]r (j )r }r (h6X Default valueh7j h=h>h?j hA}r (hC]hD]hE]hF]hI]uhKKhM]r hVX Default valuer r }r (h6Uh7j ubaubj )r }r (h6UhA}r (hC]hD]hE]hF]hI]uh7j hM]r hi)r }r (h6X ./*/*.cabalhA}r (hC]hD]hE]hF]hI]uh7j hM]r hr)r }r (h6X``./*/*.cabal``h7j h=h>h?hzhA}r (hC]hD]hE]hF]hI]uhKNhLhhM]r hVX ./*/*.cabalr r }r (h6Uh=NhKNhLhh7j ubaubah?hlubah?j ubeh?j ubaubhi)r }r (h6XLike :cfg-field:`packages`, specifies a list of package locations containing local packages to be built. Unlike :cfg-field:`packages`, if we glob for a package, it is permissible for the glob to match against zero packages. The intended use-case for :cfg-field:`optional-packages` is to make it so that vendored packages can be automatically picked up if they are placed in a subdirectory, but not error if there aren't any.h7j h=h>h?hlhA}r (hC]hD]hE]hF]hI]uhKMhLhhM]r (hVXLike r r }r (h6XLike h=NhKNhLhh7j ubjl )r }r (h6X:cfg-field:`packages`r h7j h=h>h?jp hA}r (UreftypeX cfg-fieldjr js XpackagesU refdomainXcabalr hF]hE]U refexplicithC]hD]hI]ju jv jw NuhKMhM]r hr)r }r (h6j hA}r (hC]hD]r (j} j Xcabal-cfg-fieldr ehE]hF]hI]uh7j hM]r hVXpackagesr r }r (h6Uh7j ubah?hzubaubhVXV, specifies a list of package locations containing local packages to be built. Unlike r r }r (h6XV, specifies a list of package locations containing local packages to be built. Unlike h=NhKNhLhh7j ubjl )r }r (h6X:cfg-field:`packages`r h7j h=h>h?jp hA}r (UreftypeX cfg-fieldjr js XpackagesU refdomainXcabalr hF]hE]U refexplicithC]hD]hI]ju jv jw NuhKMhM]r hr)r }r (h6j hA}r (hC]hD]r (j} j Xcabal-cfg-fieldr ehE]hF]hI]uh7j hM]r hVXpackagesr r }r (h6Uh7j ubah?hzubaubhVXu, if we glob for a package, it is permissible for the glob to match against zero packages. The intended use-case for r r }r (h6Xu, if we glob for a package, it is permissible for the glob to match against zero packages. The intended use-case for h=NhKNhLhh7j ubjl )r }r (h6X:cfg-field:`optional-packages`r h7j h=h>h?jp hA}r (UreftypeX cfg-fieldjr js Xoptional-packagesU refdomainXcabalr hF]hE]U refexplicithC]hD]hI]ju jv jw NuhKMhM]r hr)r }r (h6j hA}r (hC]hD]r (j} j Xcabal-cfg-fieldr ehE]hF]hI]uh7j hM]r hVXoptional-packagesr r }r (h6Uh7j ubah?hzubaubhVX is to make it so that vendored packages can be automatically picked up if they are placed in a subdirectory, but not error if there aren’t any.r r }r (h6X is to make it so that vendored packages can be automatically picked up if they are placed in a subdirectory, but not error if there aren't any.h=NhKNhLhh7j ubeubhi)r }r (h6X/There is no command line variant of this field.r h7j h=h>h?hlhA}r (hC]hD]hE]hF]hI]uhKMhLhhM]r hVX/There is no command line variant of this field.r r }r (h6j h=NhKNhLhh7j ubaubeubeubjj )r }r (h6Uh7jT h=h>h?jm hA}r (hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r }r (h6Uh7jT h=h>h?jr hA}r (jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr jx j uhKNhLhhM]r (jz )r }r (h6XBextra-packages: package list with version bounds (comma separated)h7j h=h>h?j} hA}r (hF]r Xcfg-field-extra-packagesr ahE]hC]hD]hI]j uhKNhLhhM]r (jj )r }r (h6Uh7j h=h>h?jm hA}r (hF]hE]hC]hD]hI]Uentries]r (j X%extra-packages ; cabal project optionj UNtr auhKNhLhhM]ubj )r }r (h6Xextra-packagesr h7j h=h>h?j hA}r (jjhF]hE]hC]hD]hI]uhKNhLhhM]r hVXextra-packagesr r }r (h6Uh=NhKNhLhh7j ubaubj )r }r (h6j h7j h=h>h?j hA}r (jjhF]hE]hC]hD]hI]uhKNhLhhM]r hVX: r r }r (h6Uh=NhKNhLhh7j ubaubj )r }r (h6X2package list with version bounds (comma separated)h7j h=h>h?j hA}r (jjhF]hE]hC]hD]hI]uhKNhLhhM]r hVX2package list with version bounds (comma separated)r r }r (h6Uh=NhKNhLhh7j ubaubeubj )r }r (h6Uh7j h=h>h?j hA}r (hC]hD]hE]hF]hI]uhKNhLhhM]r! (hi)r" }r# (h6X{[STRIKEOUT:Specifies a list of external packages from Hackage which should be considered local packages.] (Not implemented)r$ h7j h=h>h?hlhA}r% (hC]hD]hE]hF]hI]uhKMhLhhM]r& hVX{[STRIKEOUT:Specifies a list of external packages from Hackage which should be considered local packages.] (Not implemented)r' r( }r) (h6j$ h=NhKNhLhh7j" ubaubhi)r* }r+ (h6X/There is no command line variant of this field.r, h7j h=h>h?hlhA}r- (hC]hD]hE]hF]hI]uhKMhLhhM]r. hVX/There is no command line variant of this field.r/ r0 }r1 (h6j, h=NhKNhLhh7j* ubaubeubeubhi)r2 }r3 (h6X[STRIKEOUT:There is also a stanza ``source-repository-package`` for specifying packages from an external version control.] (Not implemented.)h7jT h=h>h?hlhA}r4 (hC]hD]hE]hF]hI]uhKMhLhhM]r5 (hVX"[STRIKEOUT:There is also a stanza r6 r7 }r8 (h6X"[STRIKEOUT:There is also a stanza h=NhKNhLhh7j2 ubhr)r9 }r: (h6X``source-repository-package``hA}r; (hC]hD]hE]hF]hI]uh7j2 hM]r< hVXsource-repository-packager= r> }r? (h6Uh7j9 ubah?hzubhVXN for specifying packages from an external version control.] (Not implemented.)r@ rA }rB (h6XN for specifying packages from an external version control.] (Not implemented.)h=NhKNhLhh7j2 ubeubhi)rC }rD (h6XAll local packages are *vendored*, in the sense that if other packages (including external ones from Hackage) depend on a package with the name of a local package, the local package is preferentially used. This motivates the default settings::h7jT h=h>h?hlhA}rE (hC]hD]hE]hF]hI]uhKMhLhhM]rF (hVXAll local packages are rG rH }rI (h6XAll local packages are h=NhKNhLhh7jC ubjE)rJ }rK (h6X *vendored*hA}rL (hC]hD]hE]hF]hI]uh7jC hM]rM hVXvendoredrN rO }rP (h6Uh7jJ ubah?jMubhVX, in the sense that if other packages (including external ones from Hackage) depend on a package with the name of a local package, the local package is preferentially used. This motivates the default settings:rQ rR }rS (h6X, in the sense that if other packages (including external ones from Hackage) depend on a package with the name of a local package, the local package is preferentially used. This motivates the default settings:h=NhKNhLhh7jC ubeubj)rT }rU (h6X2packages: ./*.cabal optional-packages: ./*/*.cabalh7jT h=h>h?jhA}rV (jjhF]hE]hC]hD]hI]uhKMhLhhM]rW hVX2packages: ./*.cabal optional-packages: ./*/*.cabalrX rY }rZ (h6Uh7jT ubaubhi)r[ }r\ (h6X...any package can be vendored simply by making a checkout in the top-level project directory, as might be seen in this hypothetical directory layout::h7jT h=h>h?hlhA}r] (hC]hD]hE]hF]hI]uhKMhLhhM]r^ hVX…any package can be vendored simply by making a checkout in the top-level project directory, as might be seen in this hypothetical directory layout:r_ r` }ra (h6X...any package can be vendored simply by making a checkout in the top-level project directory, as might be seen in this hypothetical directory layout:h=NhKNhLhh7j[ ubaubj)rb }rc (h6XUfoo.cabal foo-helper/ # local package unix/ # vendored external packageh7jT h=h>h?jhA}rd (jjhF]hE]hC]hD]hI]uhKMhLhhM]re hVXUfoo.cabal foo-helper/ # local package unix/ # vendored external packagerf rg }rh (h6Uh7jb ubaubhi)ri }rj (h6XPAll of these options support globs. ``cabal new-build`` has its own glob format:h7jT h=h>h?hlhA}rk (hC]hD]hE]hF]hI]uhKMhLhhM]rl (hVX$All of these options support globs. rm rn }ro (h6X$All of these options support globs. h=NhKNhLhh7ji ubhr)rp }rq (h6X``cabal new-build``hA}rr (hC]hD]hE]hF]hI]uh7ji hM]rs hVXcabal new-buildrt ru }rv (h6Uh7jp ubah?hzubhVX has its own glob format:rw rx }ry (h6X has its own glob format:h=NhKNhLhh7ji ubeubh)rz }r{ (h6Uh7jT h=h>h?hhA}r| (hX-hF]hE]hC]hD]hI]uhKMhLhhM]r} (h)r~ }r (h6X_Anywhere in a path, as many times as you like, you can specify an asterisk ``*`` wildcard. E.g., ``*/*.cabal`` matches all ``.cabal`` files in all immediate subdirectories. Like in glob(7), asterisks do not match hidden files unless there is an explicit period, e.g., ``.*/foo.cabal`` will match ``.private/foo.cabal`` (but ``*/foo.cabal`` will not). h7jz h=h>h?hhA}r (hC]hD]hE]hF]hI]uhKNhLhhM]r hi)r }r (h6X^Anywhere in a path, as many times as you like, you can specify an asterisk ``*`` wildcard. E.g., ``*/*.cabal`` matches all ``.cabal`` files in all immediate subdirectories. Like in glob(7), asterisks do not match hidden files unless there is an explicit period, e.g., ``.*/foo.cabal`` will match ``.private/foo.cabal`` (but ``*/foo.cabal`` will not).h7j~ h=h>h?hlhA}r (hC]hD]hE]hF]hI]uhKMhM]r (hVXKAnywhere in a path, as many times as you like, you can specify an asterisk r r }r (h6XKAnywhere in a path, as many times as you like, you can specify an asterisk h7j ubhr)r }r (h6X``*``hA}r (hC]hD]hE]hF]hI]uh7j hM]r hVX*r }r (h6Uh7j ubah?hzubhVX wildcard. E.g., r r }r (h6X wildcard. E.g., h7j ubhr)r }r (h6X ``*/*.cabal``hA}r (hC]hD]hE]hF]hI]uh7j hM]r hVX */*.cabalr r }r (h6Uh7j ubah?hzubhVX matches all r r }r (h6X matches all h7j ubhr)r }r (h6X ``.cabal``hA}r (hC]hD]hE]hF]hI]uh7j hM]r hVX.cabalr r }r (h6Uh7j ubah?hzubhVX files in all immediate subdirectories. Like in glob(7), asterisks do not match hidden files unless there is an explicit period, e.g., r r }r (h6X files in all immediate subdirectories. Like in glob(7), asterisks do not match hidden files unless there is an explicit period, e.g., h7j ubhr)r }r (h6X``.*/foo.cabal``hA}r (hC]hD]hE]hF]hI]uh7j hM]r hVX .*/foo.cabalr r }r (h6Uh7j ubah?hzubhVX will match r r }r (h6X will match h7j ubhr)r }r (h6X``.private/foo.cabal``hA}r (hC]hD]hE]hF]hI]uh7j hM]r hVX.private/foo.cabalr r }r (h6Uh7j ubah?hzubhVX (but r r }r (h6X (but h7j ubhr)r }r (h6X``*/foo.cabal``hA}r (hC]hD]hE]hF]hI]uh7j hM]r hVX */foo.cabalr r }r (h6Uh7j ubah?hzubhVX will not).r r }r (h6X will not).h7j ubeubaubh)r }r (h6XYou can use braces to specify specific directories; e.g., ``{vendor,pkgs}/*.cabal`` matches all Cabal files in the ``vendor`` and ``pkgs`` subdirectories. h7jz h=h>h?hhA}r (hC]hD]hE]hF]hI]uhKNhLhhM]r hi)r }r (h6XYou can use braces to specify specific directories; e.g., ``{vendor,pkgs}/*.cabal`` matches all Cabal files in the ``vendor`` and ``pkgs`` subdirectories.h7j h=h>h?hlhA}r (hC]hD]hE]hF]hI]uhKMhM]r (hVX:You can use braces to specify specific directories; e.g., r r }r (h6X:You can use braces to specify specific directories; e.g., h7j ubhr)r }r (h6X``{vendor,pkgs}/*.cabal``hA}r (hC]hD]hE]hF]hI]uh7j hM]r hVX{vendor,pkgs}/*.cabalr r }r (h6Uh7j ubah?hzubhVX matches all Cabal files in the r r }r (h6X matches all Cabal files in the h7j ubhr)r }r (h6X ``vendor``hA}r (hC]hD]hE]hF]hI]uh7j hM]r hVXvendorr r }r (h6Uh7j ubah?hzubhVX and r r }r (h6X and h7j ubhr)r }r (h6X``pkgs``hA}r (hC]hD]hE]hF]hI]uh7j hM]r hVXpkgsr r }r (h6Uh7j ubah?hzubhVX subdirectories.r r }r (h6X subdirectories.h7j ubeubaubeubhi)r }r (h6X4Formally, the format described by the following BNF:r h7jT h=h>h?hlhA}r (hC]hD]hE]hF]hI]uhKMhLhhM]r hVX4Formally, the format described by the following BNF:r r }r (h6j h=NhKNhLhh7j ubaubj)r }r (h6XFilePathGlob ::= FilePathRoot FilePathGlobRel FilePathRoot ::= {- empty -} # relative to cabal.project | "/" # Unix root | [a-zA-Z] ":" [/\\] # Windows root | "~" # home directory FilePathGlobRel ::= Glob "/" FilePathGlobRel # Unix directory | Glob "\\" FilePathGlobRel # Windows directory | Glob # file | {- empty -} # trailing slash Glob ::= GlobPiece * GlobPiece ::= "*" # wildcard | [^*{},/\\] * # literal string | "\\" [*{},] # escaped reserved character | "{" Glob "," ... "," Glob "}" # union (match any of these)h7jT h=h>h?jhA}r (jK jL XabnfjjhF]hE]hC]jM }hD]hI]uhKMhLhhM]r hVXFilePathGlob ::= FilePathRoot FilePathGlobRel FilePathRoot ::= {- empty -} # relative to cabal.project | "/" # Unix root | [a-zA-Z] ":" [/\\] # Windows root | "~" # home directory FilePathGlobRel ::= Glob "/" FilePathGlobRel # Unix directory | Glob "\\" FilePathGlobRel # Windows directory | Glob # file | {- empty -} # trailing slash Glob ::= GlobPiece * GlobPiece ::= "*" # wildcard | [^*{},/\\] * # literal string | "\\" [*{},] # escaped reserved character | "{" Glob "," ... "," Glob "}" # union (match any of these)r r }r (h6Uh7j ubaubeubh8)r }r (h6Uh7j h=h>h?h@hA}r (hC]hD]hE]hF]r jahI]rh%auhKM'hLhhM]r(hO)r}r(h6XGlobal configuration optionsrh7j h=h>h?hShA}r(hC]hD]hE]hF]hI]uhKM'hLhhM]rhVXGlobal configuration optionsrr}r (h6jh=NhKNhLhh7jubaubhi)r }r (h6XgThe following top-level configuration options are not specific to any package, and thus apply globally:r h7j h=h>h?hlhA}r (hC]hD]hE]hF]hI]uhKM)hLhhM]rhVXgThe following top-level configuration options are not specific to any package, and thus apply globally:rr}r(h6j h=NhKNhLhh7j ubaubjj )r}r(h6Uh7j h=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r}r(h6Uh7j h=h>h?jr hA}r(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldrjx juhKNhLhhM]r(jz )r}r(h6X verbose: nath7jh=h>h?j} hA}r(hF]rXcfg-field-verboserahE]hC]hD]hI]j uhKNhLhhM]r(jj )r }r!(h6Uh7jh=h>h?jm hA}r"(hF]hE]hC]hD]hI]Uentries]r#(j Xverbose ; cabal project optionjUNtr$auhKNhLhhM]ubj )r%}r&(h6Xverboser'h7jh=h>h?j hA}r((jjhF]hE]hC]hD]hI]uhKNhLhhM]r)hVXverboser*r+}r,(h6Uh=NhKNhLhh7j%ubaubj )r-}r.(h6j h7jh=h>h?j hA}r/(jjhF]hE]hC]hD]hI]uhKNhLhhM]r0hVX: r1r2}r3(h6Uh=NhKNhLhh7j-ubaubj )r4}r5(h6Xnath7jh=h>h?j hA}r6(jjhF]hE]hC]hD]hI]uhKNhLhhM]r7hVXnatr8r9}r:(h6Uh=NhKNhLhh7j4ubaubeubjz )r;}r<(h6X--verbose=n, -vnh7jh=h>h?j} hA}r=(hF]r>Xcfg-flag---verboser?ahE]hC]hD]hI]j uhKNhLhhM]r@(jj )rA}rB(h6Uh7j;h=h>h?jm hA}rC(hF]hE]hC]hD]hI]Uentries]rD(j X--verbose; cabal project optionj?UNtrEauhKNhLhhM]ubj )rF}rG(h6X --verboserHh7j;h=h>h?j hA}rI(jjhF]hE]hC]hD]hI]uhKNhLhhM]rJhVX --verboserKrL}rM(h6Uh=NhKNhLhh7jFubaubj )rN}rO(h6X=nh7j;h=h>h?j hA}rP(jjhF]hE]hC]hD]hI]uhKNhLhhM]rQhVX=nrRrS}rT(h6Uh=NhKNhLhh7jNubaubj )rU}rV(h6U, rWh7j;h=h>h?j hA}rX(jjhF]hE]hC]hD]hI]uhKNhLhhM]rYhVX, rZr[}r\(h6Uh=NhKNhLhh7jUubaubj )r]}r^(h6X-vnh7j;h=h>h?j hA}r_(jjhF]hE]hC]hD]hI]uhKNhLhhM]r`hVX-vnrarb}rc(h6Uh=NhKNhLhh7j]ubaubj )rd}re(h6U h7j;h=h>h?j hA}rf(jjhF]hE]hC]hD]hI]uhKNhLhhM]rghVX rh}ri(h6Uh=NhKNhLhh7jdubaubeubj )rj}rk(h6Uh7jh=h>h?j hA}rl(hC]hD]hE]hF]hI]uhKNhLhhM]rm(j )rn}ro(h6Uh7jjh=h>h?j hA}rp(hC]hD]hE]hF]hI]uhKNhLhhM]rqj )rr}rs(h6UhA}rt(hC]hD]hE]hF]hI]uh7jnhM]ru(j )rv}rw(h6X Default valueh7jrh=h>h?j hA}rx(hC]hD]hE]hF]hI]uhKKhM]ryhVX Default valuerzr{}r|(h6Uh7jvubaubj )r}}r~(h6UhA}r(hC]hD]hE]hF]hI]uh7jrhM]rhi)r}r(h6X1hA}r(hC]hD]hE]hF]hI]uh7j}hM]rhVX1r}r(h6X1h=NhKNhLhh7jubah?hlubah?j ubeh?j ubaubhi)r}r(h6XJControl the verbosity of ``cabal`` commands, valid values are from 0 to 3.h7jjh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKM2hLhhM]r(hVXControl the verbosity of rr}r(h6XControl the verbosity of h=NhKNhLhh7jubhr)r}r(h6X ``cabal``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXcabalrr}r(h6Uh7jubah?hzubhVX( commands, valid values are from 0 to 3.rr}r(h6X( commands, valid values are from 0 to 3.h=NhKNhLhh7jubeubhi)r}r(h6XbThe command line variant of this field is ``--verbose=2``; a short form ``-v2`` is also supported.h7jjh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKM5hLhhM]r(hVX*The command line variant of this field is rr}r(h6X*The command line variant of this field is h=NhKNhLhh7jubhr)r}r(h6X``--verbose=2``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX --verbose=2rr}r(h6Uh7jubah?hzubhVX; a short form rr}r(h6X; a short form h=NhKNhLhh7jubhr)r}r(h6X``-v2``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX-v2rr}r(h6Uh7jubah?hzubhVX is also supported.rr}r(h6X is also supported.h=NhKNhLhh7jubeubeubeubjj )r}r(h6Uh7j h=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r}r(h6Uh7j h=h>h?jr hA}r(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldrjx juhKNhLhhM]r(jz )r}r(h6Xjobs: nat or $ncpush7jh=h>h?j} hA}r(hF]rXcfg-field-jobsrahE]hC]hD]hI]j uhKNhLhhM]r(jj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j Xjobs ; cabal project optionjUNtrauhKNhLhhM]ubj )r}r(h6Xjobsrh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVXjobsrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6j h7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX: rr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6X nat or $ncpush7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX nat or $ncpusrr}r(h6Uh=NhKNhLhh7jubaubeubjz )r}r(h6X--jobs=n, -jn, --jobs=$ncpush7jh=h>h?j} hA}r(hF]rXcfg-flag---jobsrahE]hC]hD]hI]j uhKNhLhhM]r(jj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j X--jobs; cabal project optionjUNtrauhKNhLhhM]ubj )r}r(h6X--jobsrh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX--jobsrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6X=nh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX=nrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6jWh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX, rr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6X-jnh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX-jnrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6U h7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX r}r (h6Uh=NhKNhLhh7jubaubj )r }r (h6jWh7jh=h>h?j hA}r (jjhF]hE]hC]hD]hI]uhKNhLhhM]r hVX, rr}r(h6Uh=NhKNhLhh7j ubaubj )r}r(h6X--jobsh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX--jobsrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6X=$ncpush7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX=$ncpusrr}r(h6Uh=NhKNhLhh7jubaubeubj )r}r (h6Uh7jh=h>h?j hA}r!(hC]hD]hE]hF]hI]uhKNhLhhM]r"(j )r#}r$(h6Uh7jh=h>h?j hA}r%(hC]hD]hE]hF]hI]uhKNhLhhM]r&j )r'}r((h6UhA}r)(hC]hD]hE]hF]hI]uh7j#hM]r*(j )r+}r,(h6X Default valueh7j'h=h>h?j hA}r-(hC]hD]hE]hF]hI]uhKKhM]r.hVX Default valuer/r0}r1(h6Uh7j+ubaubj )r2}r3(h6UhA}r4(hC]hD]hE]hF]hI]uh7j'hM]r5hi)r6}r7(h6X1hA}r8(hC]hD]hE]hF]hI]uh7j2hM]r9hVX1r:}r;(h6X1h=NhKNhLhh7j6ubah?hlubah?j ubeh?j ubaubhi)r<}r=(h6XRun *nat* jobs simultaneously when building. If ``$ncpus`` is specified, run the number of jobs equal to the number of CPUs. Package building is often quite parallel, so turning on parallelism can speed up build times quite a bit!h7jh=h>h?hlhA}r>(hC]hD]hE]hF]hI]uhKM>hLhhM]r?(hVXRun r@rA}rB(h6XRun h=NhKNhLhh7j<ubjE)rC}rD(h6X*nat*hA}rE(hC]hD]hE]hF]hI]uh7j<hM]rFhVXnatrGrH}rI(h6Uh7jCubah?jMubhVX' jobs simultaneously when building. If rJrK}rL(h6X' jobs simultaneously when building. If h=NhKNhLhh7j<ubhr)rM}rN(h6X ``$ncpus``hA}rO(hC]hD]hE]hF]hI]uh7j<hM]rPhVX$ncpusrQrR}rS(h6Uh7jMubah?hzubhVX is specified, run the number of jobs equal to the number of CPUs. Package building is often quite parallel, so turning on parallelism can speed up build times quite a bit!rTrU}rV(h6X is specified, run the number of jobs equal to the number of CPUs. Package building is often quite parallel, so turning on parallelism can speed up build times quite a bit!h=NhKNhLhh7j<ubeubhi)rW}rX(h6XThe command line variant of this field is ``--jobs=2``; a short form ``-j2`` is also supported; a bare ``--jobs`` or ``-j`` is equivalent to ``--jobs=$ncpus``.h7jh=h>h?hlhA}rY(hC]hD]hE]hF]hI]uhKMChLhhM]rZ(hVX*The command line variant of this field is r[r\}r](h6X*The command line variant of this field is h=NhKNhLhh7jWubhr)r^}r_(h6X ``--jobs=2``hA}r`(hC]hD]hE]hF]hI]uh7jWhM]rahVX--jobs=2rbrc}rd(h6Uh7j^ubah?hzubhVX; a short form rerf}rg(h6X; a short form h=NhKNhLhh7jWubhr)rh}ri(h6X``-j2``hA}rj(hC]hD]hE]hF]hI]uh7jWhM]rkhVX-j2rlrm}rn(h6Uh7jhubah?hzubhVX is also supported; a bare rorp}rq(h6X is also supported; a bare h=NhKNhLhh7jWubhr)rr}rs(h6X ``--jobs``hA}rt(hC]hD]hE]hF]hI]uh7jWhM]ruhVX--jobsrvrw}rx(h6Uh7jrubah?hzubhVX or ryrz}r{(h6X or h=NhKNhLhh7jWubhr)r|}r}(h6X``-j``hA}r~(hC]hD]hE]hF]hI]uh7jWhM]rhVX-jrr}r(h6Uh7j|ubah?hzubhVX is equivalent to rr}r(h6X is equivalent to h=NhKNhLhh7jWubhr)r}r(h6X``--jobs=$ncpus``hA}r(hC]hD]hE]hF]hI]uh7jWhM]rhVX --jobs=$ncpusrr}r(h6Uh7jubah?hzubhVX.r}r(h6X.h=NhKNhLhh7jWubeubeubeubjj )r}r(h6Uh7j h=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r}r(h6Uh7j h=h>h?jr hA}r(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldrjx juhKNhLhhM]r(jz )r}r(h6Xkeep-going: booleanh7jh=h>h?j} hA}r(hF]rXcfg-field-keep-goingrahE]hC]hD]hI]j uhKNhLhhM]r(jj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j X!keep-going ; cabal project optionjUNtrauhKNhLhhM]ubj )r}r(h6X keep-goingrh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX keep-goingrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6j h7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX: rr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6Xbooleanh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVXbooleanrr}r(h6Uh=NhKNhLhh7jubaubeubjz )r}r(h6X --keep-goingrh7jh=h>h?j} hA}r(hF]rXcfg-flag---keep-goingrahE]hC]hD]hI]j uhKNhLhhM]r(jj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j X"--keep-going; cabal project optionjUNtrauhKNhLhhM]ubj )r}r(h6jh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX --keep-goingrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6U h7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX r}r(h6Uh=NhKNhLhh7jubaubeubj )r}r(h6Uh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKNhLhhM]r(j )r}r(h6Uh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKNhLhhM]rj )r}r(h6UhA}r(hC]hD]hE]hF]hI]uh7jhM]r(j )r}r(h6X Default valueh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKKhM]rhVX Default valuerr}r(h6Uh7jubaubj )r}r(h6UhA}r(hC]hD]hE]hF]hI]uh7jhM]rhi)r}r(h6XFalsehA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXFalserr}r(h6XFalseh=NhKNhLhh7jubah?hlubah?j ubeh?j ubaubhi)r}r(h6XLIf true, after a build failure, continue to build other unaffected packages.rh7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMMhLhhM]rhVXLIf true, after a build failure, continue to build other unaffected packages.rr}r(h6jh=NhKNhLhh7jubaubhi)r}r(h6X;The command line variant of this field is ``--keep-going``.h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMPhLhhM]r(hVX*The command line variant of this field is rr}r(h6X*The command line variant of this field is h=NhKNhLhh7jubhr)r}r(h6X``--keep-going``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX --keep-goingrr}r(h6Uh7jubah?hzubhVX.r}r(h6X.h=NhKNhLhh7jubeubeubeubjj )r}r(h6Uh7j h=h>h?jm hA}r (hF]hE]hC]hD]hI]Uentries]r (j X#command line option; --builddir=DIRjUNtr auhKNhLhhM]ubjo )r }r (h6Uh7j h=h>h?jr hA}r(jt ju XstdhF]hE]hC]hD]hI]jv Xoptionrjx juhKNhLhhM]r(jz )r}r(h6X--builddir=DIRh7j h=h>h?j} hA}r(Uallnamesr]rX --builddirrahF]rjahE]hC]hD]hI]rhaj uhKM[hLhhM]r(j )r}r(h6jh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKM[hLhhM]rhVX --builddirrr}r (h6Uh=NhKNhLhh7jubaubj )r!}r"(h6X=DIRh7jh=h>h?j hA}r#(jjhF]hE]hC]hD]hI]uhKM[hLhhM]r$hVX=DIRr%r&}r'(h6Uh=NhKNhLhh7j!ubaubeubj )r(}r)(h6Uh7j h=h>h?j hA}r*(hC]hD]hE]hF]hI]uhKM[hLhhM]r+(hi)r,}r-(h6XSpecifies the name of the directory where build products for build will be stored; defaults to ``dist-newstyle``. If a relative name is specified, this directory is resolved relative to the root of the project (i.e., where the ``cabal.project`` file lives.)h7j(h=h>h?hlhA}r.(hC]hD]hE]hF]hI]uhKMThLhhM]r/(hVX_Specifies the name of the directory where build products for build will be stored; defaults to r0r1}r2(h6X_Specifies the name of the directory where build products for build will be stored; defaults to h=NhKNhLhh7j,ubhr)r3}r4(h6X``dist-newstyle``hA}r5(hC]hD]hE]hF]hI]uh7j,hM]r6hVX dist-newstyler7r8}r9(h6Uh7j3ubah?hzubhVXt. If a relative name is specified, this directory is resolved relative to the root of the project (i.e., where the r:r;}r<(h6Xt. If a relative name is specified, this directory is resolved relative to the root of the project (i.e., where the h=NhKNhLhh7j,ubhr)r=}r>(h6X``cabal.project``hA}r?(hC]hD]hE]hF]hI]uh7j,hM]r@hVX cabal.projectrArB}rC(h6Uh7j=ubah?hzubhVX file lives.)rDrE}rF(h6X file lives.)h=NhKNhLhh7j,ubeubhi)rG}rH(h6X=This option cannot be specified via a ``cabal.project`` file.h7j(h=h>h?hlhA}rI(hC]hD]hE]hF]hI]uhKMZhLhhM]rJ(hVX&This option cannot be specified via a rKrL}rM(h6X&This option cannot be specified via a h=NhKNhLhh7jGubhr)rN}rO(h6X``cabal.project``hA}rP(hC]hD]hE]hF]hI]uh7jGhM]rQhVX cabal.projectrRrS}rT(h6Uh7jNubah?hzubhVX file.rUrV}rW(h6X file.h=NhKNhLhh7jGubeubeubeubjj )rX}rY(h6Uh7j h=h>h?jm hA}rZ(hF]hE]hC]hD]hI]Uentries]r[(j X(command line option; --project-file=FILEjUNtr\auhKNhLhhM]ubjo )r]}r^(h6Uh7j h=h>h?jr hA}r_(jt ju XstdhF]hE]hC]hD]hI]jv Xoptionr`jx j`uhKNhLhhM]ra(jz )rb}rc(h6X--project-file=FILEh7j]h=h>h?j} hA}rd(j]reX--project-filerfahF]rgjahE]hC]hD]hI]rhhaj uhKMlhLhhM]ri(j )rj}rk(h6jfh7jbh=h>h?j hA}rl(jjhF]hE]hC]hD]hI]uhKMlhLhhM]rmhVX--project-filernro}rp(h6Uh=NhKNhLhh7jjubaubj )rq}rr(h6X=FILEh7jbh=h>h?j hA}rs(jjhF]hE]hC]hD]hI]uhKMlhLhhM]rthVX=FILErurv}rw(h6Uh=NhKNhLhh7jqubaubeubj )rx}ry(h6Uh7j]h=h>h?j hA}rz(hC]hD]hE]hF]hI]uhKMlhLhhM]r{(hi)r|}r}(h6XSpecifies the name of the project file used to specify the rest of the top-level configuration; defaults to ``cabal.project``. This name not only specifies the name of the main project file, but also the auxiliary project files ``cabal.project.freeze`` and ``cabal.project.local``; for example, if you specify ``--project-file=my.project``, then the other files that will be probed are ``my.project.freeze`` and ``my.project.local``.h7jxh=h>h?hlhA}r~(hC]hD]hE]hF]hI]uhKM^hLhhM]r(hVXlSpecifies the name of the project file used to specify the rest of the top-level configuration; defaults to rr}r(h6XlSpecifies the name of the project file used to specify the rest of the top-level configuration; defaults to h=NhKNhLhh7j|ubhr)r}r(h6X``cabal.project``hA}r(hC]hD]hE]hF]hI]uh7j|hM]rhVX cabal.projectrr}r(h6Uh7jubah?hzubhVXg. This name not only specifies the name of the main project file, but also the auxiliary project files rr}r(h6Xg. This name not only specifies the name of the main project file, but also the auxiliary project files h=NhKNhLhh7j|ubhr)r}r(h6X``cabal.project.freeze``hA}r(hC]hD]hE]hF]hI]uh7j|hM]rhVXcabal.project.freezerr}r(h6Uh7jubah?hzubhVX and rr}r(h6X and h=NhKNhLhh7j|ubhr)r}r(h6X``cabal.project.local``hA}r(hC]hD]hE]hF]hI]uh7j|hM]rhVXcabal.project.localrr}r(h6Uh7jubah?hzubhVX; for example, if you specify rr}r(h6X; for example, if you specify h=NhKNhLhh7j|ubhr)r}r(h6X``--project-file=my.project``hA}r(hC]hD]hE]hF]hI]uh7j|hM]rhVX--project-file=my.projectrr}r(h6Uh7jubah?hzubhVX/, then the other files that will be probed are rr}r(h6X/, then the other files that will be probed are h=NhKNhLhh7j|ubhr)r}r(h6X``my.project.freeze``hA}r(hC]hD]hE]hF]hI]uh7j|hM]rhVXmy.project.freezerr}r(h6Uh7jubah?hzubhVX and rr}r(h6X and h=NhKNhLhh7j|ubhr)r}r(h6X``my.project.local``hA}r(hC]hD]hE]hF]hI]uh7j|hM]rhVXmy.project.localrr}r(h6Uh7jubah?hzubhVX.r}r(h6X.h=NhKNhLhh7j|ubeubhi)r}r(h6XIf the specified project file is a relative path, we will look for the file relative to the current working directory, and then for the parent directory, until the project file is found or we have hit the top of the user's home directory.rh7jxh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMfhLhhM]rhVXIf the specified project file is a relative path, we will look for the file relative to the current working directory, and then for the parent directory, until the project file is found or we have hit the top of the user’s home directory.rr}r(h6jh=NhKNhLhh7jubaubhi)r}r(h6X=This option cannot be specified via a ``cabal.project`` file.h7jxh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMkhLhhM]r(hVX&This option cannot be specified via a rr}r(h6X&This option cannot be specified via a h=NhKNhLhh7jubhr)r}r(h6X``cabal.project``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX cabal.projectrr}r(h6Uh7jubah?hzubhVX file.rr}r(h6X file.h=NhKNhLhh7jubeubeubeubjj )r}r(h6Uh7j h=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j X$command line option; --store-dir=DIRjUNtrauhKNhLhhM]ubjo )r}r(h6Uh7j h=h>h?jr hA}r(jt ju XstdhF]hE]hC]hD]hI]jv Xoptionrjx juhKNhLhhM]r(jz )r}r(h6X--store-dir=DIRh7jh=h>h?j} hA}r(j]rX --store-dirrahF]rjahE]hC]hD]hI]rh aj uhKMphLhhM]r(j )r}r(h6jh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKMphLhhM]rhVX --store-dirrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6X=DIRh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKMphLhhM]rhVX=DIRrr}r(h6Uh=NhKNhLhh7jubaubeubj )r}r(h6Uh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKMphLhhM]rhi)r}r(h6X@Specifies the name of the directory of the global package store.rh7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMohLhhM]rhVX@Specifies the name of the directory of the global package store.rr}r(h6jh=NhKNhLhh7jubaubaubeubeubh8)r}r(h6Uh7j h=h>h?h@hA}r(hC]hD]hE]hF]rjahI]rhauhKMrhLhhM]r(hO)r }r (h6XSolver configuration optionsr h7jh=h>h?hShA}r (hC]hD]hE]hF]hI]uhKMrhLhhM]r hVXSolver configuration optionsrr}r(h6j h=NhKNhLhh7j ubaubhi)r}r(h6XEThe following settings control the behavior of the dependency solver:rh7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMthLhhM]rhVXEThe following settings control the behavior of the dependency solver:rr}r(h6jh=NhKNhLhh7jubaubjj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r}r(h6Uh7jh=h>h?jr hA}r(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldrjx juhKNhLhhM]r (jz )r!}r"(h6X/constraints: constraints list (comma separated)h7jh=h>h?j} hA}r#(hF]r$Xcfg-field-constraintsr%ahE]hC]hD]hI]j uhKNhLhhM]r&(jj )r'}r((h6Uh7j!h=h>h?jm hA}r)(hF]hE]hC]hD]hI]Uentries]r*(j X"constraints ; cabal project optionj%UNtr+auhKNhLhhM]ubj )r,}r-(h6X constraintsr.h7j!h=h>h?j hA}r/(jjhF]hE]hC]hD]hI]uhKNhLhhM]r0hVX constraintsr1r2}r3(h6Uh=NhKNhLhh7j,ubaubj )r4}r5(h6j h7j!h=h>h?j hA}r6(jjhF]hE]hC]hD]hI]uhKNhLhhM]r7hVX: r8r9}r:(h6Uh=NhKNhLhh7j4ubaubj )r;}r<(h6X"constraints list (comma separated)h7j!h=h>h?j hA}r=(jjhF]hE]hC]hD]hI]uhKNhLhhM]r>hVX"constraints list (comma separated)r?r@}rA(h6Uh=NhKNhLhh7j;ubaubeubjz )rB}rC(h6X--constraint="pkg >= 2.0"h7jh=h>h?j} hA}rD(hF]rEXcfg-flag---constraintrFahE]hC]hD]hI]j uhKNhLhhM]rG(jj )rH}rI(h6Uh7jBh=h>h?jm hA}rJ(hF]hE]hC]hD]hI]Uentries]rK(j X"--constraint; cabal project optionjFUNtrLauhKNhLhhM]ubj )rM}rN(h6X --constraintrOh7jBh=h>h?j hA}rP(jjhF]hE]hC]hD]hI]uhKNhLhhM]rQhVX --constraintrRrS}rT(h6Uh=NhKNhLhh7jMubaubj )rU}rV(h6X ="pkg > 2.0"h7jBh=h>h?j hA}rW(jjhF]hE]hC]hD]hI]uhKNhLhhM]rXhVX ="pkg > 2.0"rYrZ}r[(h6Uh=NhKNhLhh7jUubaubeubj )r\}r](h6Uh7jh=h>h?j hA}r^(hC]hD]hE]hF]hI]uhKNhLhhM]r_(hi)r`}ra(h6X~Add extra constraints to the version bounds, flag settings, and other properties a solver can pick for a package. For example:rbh7j\h=h>h?hlhA}rc(hC]hD]hE]hF]hI]uhKMzhLhhM]rdhVX~Add extra constraints to the version bounds, flag settings, and other properties a solver can pick for a package. For example:rerf}rg(h6jbh=NhKNhLhh7j`ubaubj)rh}ri(h6Xconstraints: bar == 2.1h7j\h=h>h?jhA}rj(jjhF]hE]hC]hD]hI]uhKMhLhhM]rkhVXconstraints: bar == 2.1rlrm}rn(h6Uh7jhubaubhi)ro}rp(h6X&A package can be specified multiple times in ``constraints``, in which case the specified constraints are intersected. This is useful, since the syntax does not allow you to specify multiple constraints at once. For example, to specify both version bounds and flag assignments, you would write:h7j\h=h>h?hlhA}rq(hC]hD]hE]hF]hI]uhKMhLhhM]rr(hVX-A package can be specified multiple times in rsrt}ru(h6X-A package can be specified multiple times in h=NhKNhLhh7joubhr)rv}rw(h6X``constraints``hA}rx(hC]hD]hE]hF]hI]uh7johM]ryhVX constraintsrzr{}r|(h6Uh7jvubah?hzubhVX, in which case the specified constraints are intersected. This is useful, since the syntax does not allow you to specify multiple constraints at once. For example, to specify both version bounds and flag assignments, you would write:r}r~}r(h6X, in which case the specified constraints are intersected. This is useful, since the syntax does not allow you to specify multiple constraints at once. For example, to specify both version bounds and flag assignments, you would write:h=NhKNhLhh7joubeubj)r}r(h6X3constraints: bar == 2.1, bar +foo -bazh7j\h=h>h?jhA}r(jjhF]hE]hC]hD]hI]uhKMhLhhM]rhVX3constraints: bar == 2.1, bar +foo -bazrr}r(h6Uh7jubaubhi)r}r(h6XValid constraints take the same form as for the `constraint command line option `__.h7j\h=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhLhhM]r(hVX0Valid constraints take the same form as for the rr}r(h6X0Valid constraints take the same form as for the h=NhKNhLhh7jubjl)r}r(h6Xc`constraint command line option `__hA}r(UnameXconstraint command line optionjpX>installing-packages.html#cmdoption-setup-configure--constrainthF]hE]hC]hD]hI]uh7jhM]rhVXconstraint command line optionrr}r(h6Uh7jubah?juubhVX.r}r(h6X.h=NhKNhLhh7jubeubeubeubjj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r}r(h6Uh7jh=h>h?jr hA}r(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldrjx juhKNhLhhM]r(jz )r}r(h6X)preferences: preference (comma separated)h7jh=h>h?j} hA}r(hF]rXcfg-field-preferencesrahE]hC]hD]hI]j uhKNhLhhM]r(jj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j X"preferences ; cabal project optionjUNtrauhKNhLhhM]ubj )r}r(h6X preferencesrh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX preferencesrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6j h7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX: rr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6Xpreference (comma separated)h7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVXpreference (comma separated)rr}r(h6Uh=NhKNhLhh7jubaubeubjz )r}r(h6X--preference="pkg >= 2.0"h7jh=h>h?j} hA}r(hF]rXcfg-flag---preferencerahE]hC]hD]hI]j uhKNhLhhM]r(jj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j X"--preference; cabal project optionjUNtrauhKNhLhhM]ubj )r}r(h6X --preferencerh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX --preferencerr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6X ="pkg > 2.0"h7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX ="pkg > 2.0"rr}r(h6Uh=NhKNhLhh7jubaubeubj )r}r(h6Uh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKNhLhhM]r(hi)r}r(h6X0Like :cfg-field:`constraints`, but the solver will attempt to satisfy these preferences on a best-effort basis. The resulting install is locally optimal with respect to preferences; specifically, no single package could be replaced with a more preferred version that still satisfies the hard constraints.h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhLhhM]r(hVXLike rr}r(h6XLike h=NhKNhLhh7jubjl )r}r(h6X:cfg-field:`constraints`rh7jh=h>h?jp hA}r(UreftypeX cfg-fieldjr js X constraintsU refdomainXcabalrhF]hE]U refexplicithC]hD]hI]ju jv jw NuhKMhM]rhr)r}r(h6jhA}r(hC]hD]r(j} jXcabal-cfg-fieldrehE]hF]hI]uh7jhM]rhVX constraintsrr}r(h6Uh7jubah?hzubaubhVX, but the solver will attempt to satisfy these preferences on a best-effort basis. The resulting install is locally optimal with respect to preferences; specifically, no single package could be replaced with a more preferred version that still satisfies the hard constraints.rr}r(h6X, but the solver will attempt to satisfy these preferences on a best-effort basis. The resulting install is locally optimal with respect to preferences; specifically, no single package could be replaced with a more preferred version that still satisfies the hard constraints.h=NhKNhLhh7jubeubhi)r}r(h6XOperationally, preferences can cause the solver to attempt certain version choices of a package before others, which can improve dependency solver runtime.rh7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhLhhM]rhVXOperationally, preferences can cause the solver to attempt certain version choices of a package before others, which can improve dependency solver runtime.rr}r(h6jh=NhKNhLhh7jubaubhi)r}r(h6X^One way to use :cfg-field:`preferences` is to take a known working set of constraints (e.g., via ``cabal new-freeze``) and record them as preferences. In this case, the solver will first attempt to use this configuration, and if this violates hard constraints, it will try to find the minimal number of upgrades to satisfy the hard constraints again.h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhLhhM]r(hVXOne way to use rr}r(h6XOne way to use h=NhKNhLhh7jubjl )r}r(h6X:cfg-field:`preferences`rh7jh=h>h?jp hA}r (UreftypeX cfg-fieldjr js X preferencesU refdomainXcabalr hF]hE]U refexplicithC]hD]hI]ju jv jw NuhKMhM]r hr)r }r (h6jhA}r(hC]hD]r(j} j Xcabal-cfg-fieldrehE]hF]hI]uh7jhM]rhVX preferencesrr}r(h6Uh7j ubah?hzubaubhVX: is to take a known working set of constraints (e.g., via rr}r(h6X: is to take a known working set of constraints (e.g., via h=NhKNhLhh7jubhr)r}r(h6X``cabal new-freeze``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXcabal new-freezerr}r(h6Uh7jubah?hzubhVX) and record them as preferences. In this case, the solver will first attempt to use this configuration, and if this violates hard constraints, it will try to find the minimal number of upgrades to satisfy the hard constraints again.rr }r!(h6X) and record them as preferences. In this case, the solver will first attempt to use this configuration, and if this violates hard constraints, it will try to find the minimal number of upgrades to satisfy the hard constraints again.h=NhKNhLhh7jubeubhi)r"}r#(h6XThe command line variant of this field is ``--preference="pkg >= 2.0"``; to specify multiple preferences, pass the flag multiple times.h7jh=h>h?hlhA}r$(hC]hD]hE]hF]hI]uhKMhLhhM]r%(hVX*The command line variant of this field is r&r'}r((h6X*The command line variant of this field is h=NhKNhLhh7j"ubhr)r)}r*(h6X``--preference="pkg >= 2.0"``hA}r+(hC]hD]hE]hF]hI]uh7j"hM]r,hVX--preference="pkg >= 2.0"r-r.}r/(h6Uh7j)ubah?hzubhVX@; to specify multiple preferences, pass the flag multiple times.r0r1}r2(h6X@; to specify multiple preferences, pass the flag multiple times.h=NhKNhLhh7j"ubeubeubeubjj )r3}r4(h6Uh7jh=h>h?jm hA}r5(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r6}r7(h6Uh7jh=h>h?jr hA}r8(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr9jx j9uhKNhLhhM]r:(jz )r;}r<(h6XQallow-newer: none, all or list of scoped package names (space or comma separated)h7j6h=h>h?j} hA}r=(hF]r>Xcfg-field-allow-newerr?ahE]hC]hD]hI]j uhKNhLhhM]r@(jj )rA}rB(h6Uh7j;h=h>h?jm hA}rC(hF]hE]hC]hD]hI]Uentries]rD(j X"allow-newer ; cabal project optionj?UNtrEauhKNhLhhM]ubj )rF}rG(h6X allow-newerrHh7j;h=h>h?j hA}rI(jjhF]hE]hC]hD]hI]uhKNhLhhM]rJhVX allow-newerrKrL}rM(h6Uh=NhKNhLhh7jFubaubj )rN}rO(h6j h7j;h=h>h?j hA}rP(jjhF]hE]hC]hD]hI]uhKNhLhhM]rQhVX: rRrS}rT(h6Uh=NhKNhLhh7jNubaubj )rU}rV(h6XDnone, all or list of scoped package names (space or comma separated)h7j;h=h>h?j hA}rW(jjhF]hE]hC]hD]hI]uhKNhLhhM]rXhVXDnone, all or list of scoped package names (space or comma separated)rYrZ}r[(h6Uh=NhKNhLhh7jUubaubeubjz )r\}r](h6X+--allow-newer, --allow-newer=[none,all,pkg]h7j6h=h>h?j} hA}r^(hF]r_Xcfg-flag---allow-newerr`ahE]hC]hD]hI]j uhKNhLhhM]ra(jj )rb}rc(h6Uh7j\h=h>h?jm hA}rd(hF]hE]hC]hD]hI]Uentries]re(j X#--allow-newer; cabal project optionj`UNtrfauhKNhLhhM]ubj )rg}rh(h6X --allow-newerrih7j\h=h>h?j hA}rj(jjhF]hE]hC]hD]hI]uhKNhLhhM]rkhVX --allow-newerrlrm}rn(h6Uh=NhKNhLhh7jgubaubj )ro}rp(h6U h7j\h=h>h?j hA}rq(jjhF]hE]hC]hD]hI]uhKNhLhhM]rrhVX rs}rt(h6Uh=NhKNhLhh7joubaubj )ru}rv(h6jWh7j\h=h>h?j hA}rw(jjhF]hE]hC]hD]hI]uhKNhLhhM]rxhVX, ryrz}r{(h6Uh=NhKNhLhh7juubaubj )r|}r}(h6X --allow-newerh7j\h=h>h?j hA}r~(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX --allow-newerrr}r(h6Uh=NhKNhLhh7j|ubaubj )r}r(h6X=[noneh7j\h=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX=[nonerr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6jWh7j\h=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX, rr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6Xallh7j\h=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVXallrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6U h7j\h=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX r}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6jWh7j\h=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX, rr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6Xpkg]h7j\h=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVXpkg]rr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6U h7j\h=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX r}r(h6Uh=NhKNhLhh7jubaubeubj )r}r(h6Uh7j6h=h>h?j hA}r(hC]hD]hE]hF]hI]uhKNhLhhM]r(j )r}r(h6Uh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKNhLhhM]rj )r}r(h6UhA}r(hC]hD]hE]hF]hI]uh7jhM]r(j )r}r(h6X Default valueh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKKhM]rhVX Default valuerr}r(h6Uh7jubaubj )r}r(h6UhA}r(hC]hD]hE]hF]hI]uh7jhM]rhi)r}r(h6XnonehA}r(hC]hD]hE]hF]hI]uh7jhM]rhr)r}r(h6X``none``h7jh=h>h?hzhA}r(hC]hD]hE]hF]hI]uhKNhLhhM]rhVXnonerr}r(h6Uh=NhKNhLhh7jubaubah?hlubah?j ubeh?j ubaubhi)r}r(h6X Allow the solver to pick an newer version of some packages than would normally be permitted by than the :pkg-field:`build-depends` bounds of packages in the install plan. This option may be useful if the dependency solver cannot otherwise find a valid install plan.h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhLhhM]r(hVXhAllow the solver to pick an newer version of some packages than would normally be permitted by than the rr}r(h6XhAllow the solver to pick an newer version of some packages than would normally be permitted by than the h=NhKNhLhh7jubjl )r}r(h6X:pkg-field:`build-depends`rh7jh=h>h?jp hA}r(UreftypeX pkg-fieldjr js X build-dependsU refdomainXcabalrhF]hE]U refexplicithC]hD]hI]ju jv Ucabal:pkg-sectionrNuhKMhM]rhr)r}r(h6jhA}r(hC]hD]r(j} jXcabal-pkg-fieldrehE]hF]hI]uh7jhM]rhVX build-dependsrr}r(h6Uh7jubah?hzubaubhVX bounds of packages in the install plan. This option may be useful if the dependency solver cannot otherwise find a valid install plan.rr}r(h6X bounds of packages in the install plan. This option may be useful if the dependency solver cannot otherwise find a valid install plan.h=NhKNhLhh7jubeubhi)r}r(h6XFor example, to relax ``pkg``\ s :pkg-field:`build-depends` upper bound on ``dep-pkg``, write a scoped package name of the form:h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhLhhM]r(hVXFor example, to relax rr}r(h6XFor example, to relax h=NhKNhLhh7jubhr)r}r(h6X``pkg``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXpkgrr}r(h6Uh7jubah?hzubhVXs rr}r(h6X\ s h=NhKNhLhh7jubjl )r}r(h6X:pkg-field:`build-depends`rh7jh=h>h?jp hA}r(UreftypeX pkg-fieldjr js X build-dependsU refdomainXcabalrhF]hE]U refexplicithC]hD]hI]ju jv jNuhKMhM]rhr)r}r(h6jhA}r(hC]hD]r(j} jXcabal-pkg-fieldr ehE]hF]hI]uh7jhM]r hVX build-dependsr r }r (h6Uh7jubah?hzubaubhVX upper bound on rr}r(h6X upper bound on h=NhKNhLhh7jubhr)r}r(h6X ``dep-pkg``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXdep-pkgrr}r(h6Uh7jubah?hzubhVX*, write a scoped package name of the form:rr}r(h6X*, write a scoped package name of the form:h=NhKNhLhh7jubeubj)r}r(h6Xallow-newer: pkg:dep-pkgh7jh=h>h?jhA}r(jjhF]hE]hC]hD]hI]uhKMhLhhM]rhVXallow-newer: pkg:dep-pkgrr }r!(h6Uh7jubaubhi)r"}r#(h6XThis syntax is recommended, as it is often only a single package whose upper bound is misbehaving. In this case, the upper bounds of other packages should still be respected; indeed, relaxing the bound can break some packages which test the selected version of packages.r$h7jh=h>h?hlhA}r%(hC]hD]hE]hF]hI]uhKMhLhhM]r&hVXThis syntax is recommended, as it is often only a single package whose upper bound is misbehaving. In this case, the upper bounds of other packages should still be respected; indeed, relaxing the bound can break some packages which test the selected version of packages.r'r(}r)(h6j$h=NhKNhLhh7j"ubaubhi)r*}r+(h6X!However, in some situations (e.g., when attempting to build packages on a new version of GHC), it is useful to disregard *all* upper-bounds, with respect to a package or all packages. This can be done by specifying just a package name, or using the keyword ``all`` to specify all packages:h7jh=h>h?hlhA}r,(hC]hD]hE]hF]hI]uhKMhLhhM]r-(hVXyHowever, in some situations (e.g., when attempting to build packages on a new version of GHC), it is useful to disregard r.r/}r0(h6XyHowever, in some situations (e.g., when attempting to build packages on a new version of GHC), it is useful to disregard h=NhKNhLhh7j*ubjE)r1}r2(h6X*all*hA}r3(hC]hD]hE]hF]hI]uh7j*hM]r4hVXallr5r6}r7(h6Uh7j1ubah?jMubhVX upper-bounds, with respect to a package or all packages. This can be done by specifying just a package name, or using the keyword r8r9}r:(h6X upper-bounds, with respect to a package or all packages. This can be done by specifying just a package name, or using the keyword h=NhKNhLhh7j*ubhr)r;}r<(h6X``all``hA}r=(hC]hD]hE]hF]hI]uh7j*hM]r>hVXallr?r@}rA(h6Uh7j;ubah?hzubhVX to specify all packages:rBrC}rD(h6X to specify all packages:h=NhKNhLhh7j*ubeubj)rE}rF(h6X-- Disregard upper bounds involving the dependencies on -- packages bar, baz and quux allow-newer: bar, baz, quux -- Disregard all upper bounds when dependency solving allow-newer: allh7jh=h>h?jhA}rG(jjhF]hE]hC]hD]hI]uhKMhLhhM]rHhVX-- Disregard upper bounds involving the dependencies on -- packages bar, baz and quux allow-newer: bar, baz, quux -- Disregard all upper bounds when dependency solving allow-newer: allrIrJ}rK(h6Uh7jEubaubhi)rL}rM(h6X:cfg-field:`allow-newer` is often used in conjunction with a constraint (in the cfg-field:`constraints` field) forcing the usage of a specific, newer version of a package.h7jh=h>h?hlhA}rN(hC]hD]hE]hF]hI]uhKMhLhhM]rO(jl )rP}rQ(h6X:cfg-field:`allow-newer`rRh7jLh=h>h?jp hA}rS(UreftypeX cfg-fieldjr js X allow-newerU refdomainXcabalrThF]hE]U refexplicithC]hD]hI]ju jv jw NuhKMhM]rUhr)rV}rW(h6jRhA}rX(hC]hD]rY(j} jTXcabal-cfg-fieldrZehE]hF]hI]uh7jPhM]r[hVX allow-newerr\r]}r^(h6Uh7jVubah?hzubaubhVXB is often used in conjunction with a constraint (in the cfg-field:r_r`}ra(h6XB is often used in conjunction with a constraint (in the cfg-field:h=NhKNhLhh7jLubj)rb}rc(h6X `constraints`hA}rd(hC]hD]hE]hF]hI]uh7jLhM]rehVX constraintsrfrg}rh(h6Uh7jbubah?j&ubhVXD field) forcing the usage of a specific, newer version of a package.rirj}rk(h6XD field) forcing the usage of a specific, newer version of a package.h=NhKNhLhh7jLubeubhi)rl}rm(h6XThe command line variant of this field is ``--allow-newer=bar``. A bare ``--allow-newer`` is equivalent to ``--allow-newer=all``.h7jh=h>h?hlhA}rn(hC]hD]hE]hF]hI]uhKMhLhhM]ro(hVX*The command line variant of this field is rprq}rr(h6X*The command line variant of this field is h=NhKNhLhh7jlubhr)rs}rt(h6X``--allow-newer=bar``hA}ru(hC]hD]hE]hF]hI]uh7jlhM]rvhVX--allow-newer=barrwrx}ry(h6Uh7jsubah?hzubhVX . A bare rzr{}r|(h6X . A bare h=NhKNhLhh7jlubhr)r}}r~(h6X``--allow-newer``hA}r(hC]hD]hE]hF]hI]uh7jlhM]rhVX --allow-newerrr}r(h6Uh7j}ubah?hzubhVX is equivalent to rr}r(h6X is equivalent to h=NhKNhLhh7jlubhr)r}r(h6X``--allow-newer=all``hA}r(hC]hD]hE]hF]hI]uh7jlhM]rhVX--allow-newer=allrr}r(h6Uh7jubah?hzubhVX.r}r(h6X.h=NhKNhLhh7jlubeubeubeubjj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r}r(h6Uh7jh=h>h?jr hA}r(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldrjx juhKNhLhhM]r(jz )r}r(h6XOallow-older: none, all, list of scoped package names (space or comma separated)h7jh=h>h?j} hA}r(hF]rXcfg-field-allow-olderrahE]hC]hD]hI]j uhKNhLhhM]r(jj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j X"allow-older ; cabal project optionjUNtrauhKNhLhhM]ubj )r}r(h6X allow-olderrh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX allow-olderrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6j h7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX: rr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6XBnone, all, list of scoped package names (space or comma separated)h7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVXBnone, all, list of scoped package names (space or comma separated)rr}r(h6Uh=NhKNhLhh7jubaubeubjz )r}r(h6X+--allow-older, --allow-older=[none,all,pkg]h7jh=h>h?j} hA}r(hF]rXcfg-flag---allow-olderrahE]hC]hD]hI]j uhKNhLhhM]r(jj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j X#--allow-older; cabal project optionjUNtrauhKNhLhhM]ubj )r}r(h6X --allow-olderrh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX --allow-olderrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6U h7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX r}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6jWh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX, rr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6X --allow-olderh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX --allow-olderrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6X=[noneh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX=[nonerr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6jWh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX, rr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6Xallh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVXallrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6U h7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX r}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6jWh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX, rr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6Xpkg]h7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVXpkg]rr}r(h6Uh=NhKNhLhh7jubaubj )r }r (h6U h7jh=h>h?j hA}r (jjhF]hE]hC]hD]hI]uhKNhLhhM]r hVX r }r(h6Uh=NhKNhLhh7j ubaubeubj )r}r(h6Uh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKNhLhhM]r(j )r}r(h6Uh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKNhLhhM]rj )r}r(h6UhA}r(hC]hD]hE]hF]hI]uh7jhM]r(j )r}r(h6X Default valueh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKKhM]rhVX Default valuerr }r!(h6Uh7jubaubj )r"}r#(h6UhA}r$(hC]hD]hE]hF]hI]uh7jhM]r%hi)r&}r'(h6XnonehA}r((hC]hD]hE]hF]hI]uh7j"hM]r)hr)r*}r+(h6X``none``h7j&h=h>h?hzhA}r,(hC]hD]hE]hF]hI]uhKNhLhhM]r-hVXnoner.r/}r0(h6Uh=NhKNhLhh7j*ubaubah?hlubah?j ubeh?j ubaubhi)r1}r2(h6XTLike :cfg-field:`allow-newer`, but applied to lower bounds rather than upper bounds.h7jh=h>h?hlhA}r3(hC]hD]hE]hF]hI]uhKMhLhhM]r4(hVXLike r5r6}r7(h6XLike h=NhKNhLhh7j1ubjl )r8}r9(h6X:cfg-field:`allow-newer`r:h7j1h=h>h?jp hA}r;(UreftypeX cfg-fieldjr js X allow-newerU refdomainXcabalr<hF]hE]U refexplicithC]hD]hI]ju jv jw NuhKMhM]r=hr)r>}r?(h6j:hA}r@(hC]hD]rA(j} j<Xcabal-cfg-fieldrBehE]hF]hI]uh7j8hM]rChVX allow-newerrDrE}rF(h6Uh7j>ubah?hzubaubhVX7, but applied to lower bounds rather than upper bounds.rGrH}rI(h6X7, but applied to lower bounds rather than upper bounds.h=NhKNhLhh7j1ubeubhi)rJ}rK(h6XThe command line variant of this field is ``--allow-older=all``. A bare ``--allow-older`` is equivalent to ``--allow-older=all``.h7jh=h>h?hlhA}rL(hC]hD]hE]hF]hI]uhKMhLhhM]rM(hVX*The command line variant of this field is rNrO}rP(h6X*The command line variant of this field is h=NhKNhLhh7jJubhr)rQ}rR(h6X``--allow-older=all``hA}rS(hC]hD]hE]hF]hI]uh7jJhM]rThVX--allow-older=allrUrV}rW(h6Uh7jQubah?hzubhVX . A bare rXrY}rZ(h6X . A bare h=NhKNhLhh7jJubhr)r[}r\(h6X``--allow-older``hA}r](hC]hD]hE]hF]hI]uh7jJhM]r^hVX --allow-olderr_r`}ra(h6Uh7j[ubah?hzubhVX is equivalent to rbrc}rd(h6X is equivalent to h=NhKNhLhh7jJubhr)re}rf(h6X``--allow-older=all``hA}rg(hC]hD]hE]hF]hI]uh7jJhM]rhhVX--allow-older=allrirj}rk(h6Uh7jeubah?hzubhVX.rl}rm(h6X.h=NhKNhLhh7jJubeubeubeubjj )rn}ro(h6Uh7jh=h>h?jm hA}rp(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )rq}rr(h6Uh7jh=h>h?jr hA}rs(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldrtjx jtuhKNhLhhM]ru(jz )rv}rw(h6X9index-state: HEAD, unix-timestamp, ISO8601 UTC timestamp.h7jqh=h>h?j} hA}rx(hF]ryXcfg-field-index-staterzahE]hC]hD]hI]j uhKNhLhhM]r{(jj )r|}r}(h6Uh7jvh=h>h?jm hA}r~(hF]hE]hC]hD]hI]Uentries]r(j X"index-state ; cabal project optionjzUNtrauhKNhLhhM]ubj )r}r(h6X index-staterh7jvh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX index-staterr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6j h7jvh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX: rr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6X,HEAD, unix-timestamp, ISO8601 UTC timestamp.h7jvh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX,HEAD, unix-timestamp, ISO8601 UTC timestamp.rr}r(h6Uh=NhKNhLhh7jubaubeubj )r}r(h6Uh7jqh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKNhLhhM]r(j )r}r(h6Uh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKNhLhhM]r(j )r}r(h6Uh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKNhLhhM]r(j )r}r(h6USincerh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKKhM]rhVXSincerr}r(h6Uh7jubaubj )r}r(h6U Cabal 2.0rhA}r(hC]hD]hE]hF]hI]uh7jhM]rhi)r}r(h6jhA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX Cabal 2.0rr}r(h6Uh7jubah?hlubah?j ubeubj )r}r(h6UhA}r(hC]hD]hE]hF]hI]uh7jhM]r(j )r}r(h6X Default valueh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKKhM]rhVX Default valuerr}r(h6Uh7jubaubj )r}r(h6UhA}r(hC]hD]hE]hF]hI]uh7jhM]rhi)r}r(h6XHEADhA}r(hC]hD]hE]hF]hI]uh7jhM]rhr)r}r(h6X``HEAD``h7jh=h>h?hzhA}r(hC]hD]hE]hF]hI]uhKNhLhhM]rhVXHEADrr}r(h6Uh=NhKNhLhh7jubaubah?hlubah?j ubeh?j ubeubhi)r}r(h6XThis allows to change the source package index state the solver uses to compute install-plans. This is particularly useful in combination with freeze-files in order to also freeze the state the package index was in at the time the install-plan was frozen.rh7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhLhhM]rhVXThis allows to change the source package index state the solver uses to compute install-plans. This is particularly useful in combination with freeze-files in order to also freeze the state the package index was in at the time the install-plan was frozen.rr}r(h6jh=NhKNhLhh7jubaubj)r}r(h6X-- UNIX timestamp format example index-state: @1474739268 -- ISO8601 UTC timestamp format example -- This format is used by 'cabal new-configure' -- for storing `--index-state` values. index-state: 2016-09-24T17:47:48Zh7jh=h>h?jhA}r(jjhF]hE]hC]hD]hI]uhKMhLhhM]rhVX-- UNIX timestamp format example index-state: @1474739268 -- ISO8601 UTC timestamp format example -- This format is used by 'cabal new-configure' -- for storing `--index-state` values. index-state: 2016-09-24T17:47:48Zrr}r(h6Uh7jubaubeubeubeubh8)r}r(h6Uh7j h=h>h?h@hA}r(hC]hD]hE]hF]rjahI]rh)auhKMhLhhM]r(hO)r}r(h6XPackage configuration optionsrh7jh=h>h?hShA}r(hC]hD]hE]hF]hI]uhKMhLhhM]rhVXPackage configuration optionsrr}r(h6jh=NhKNhLhh7jubaubhi)r}r(h6XoPackage options affect the building of specific packages. There are two ways a package option can be specified:rh7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhLhhM]rhVXoPackage options affect the building of specific packages. There are two ways a package option can be specified:rr}r(h6jh=NhKNhLhh7jubaubh)r}r(h6Uh7jh=h>h?hhA}r(hX-hF]hE]hC]hD]hI]uhKMhLhhM]r(h)r}r(h6X_They can be specified at the top-level, in which case they apply only to **local package**, or h7jh=h>h?hhA}r(hC]hD]hE]hF]hI]uhKNhLhhM]rhi)r}r(h6X^They can be specified at the top-level, in which case they apply only to **local package**, orh7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhM]r(hVXIThey can be specified at the top-level, in which case they apply only to rr}r(h6XIThey can be specified at the top-level, in which case they apply only to h7jubj)r}r(h6X**local package**hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX local packager r }r (h6Uh7jubah?jubhVX, orr r }r(h6X, orh7jubeubaubh)r}r(h6XThey can be specified inside a ``package`` stanza, in which case they apply to the build of the package, whether or not it is local or external. h7jh=h>h?hhA}r(hC]hD]hE]hF]hI]uhKNhLhhM]rhi)r}r(h6XThey can be specified inside a ``package`` stanza, in which case they apply to the build of the package, whether or not it is local or external.h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhM]r(hVXThey can be specified inside a rr}r(h6XThey can be specified inside a h7jubhr)r}r(h6X ``package``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXpackagerr}r (h6Uh7jubah?hzubhVXf stanza, in which case they apply to the build of the package, whether or not it is local or external.r!r"}r#(h6Xf stanza, in which case they apply to the build of the package, whether or not it is local or external.h7jubeubaubeubhi)r$}r%(h6XFor example, the following options specify that :cfg-field:`optimization` should be turned off for all local packages, and that ``bytestring`` (possibly an external dependency) should be built with ``-fno-state-hack``::h7jh=h>h?hlhA}r&(hC]hD]hE]hF]hI]uhKMhLhhM]r'(hVX0For example, the following options specify that r(r)}r*(h6X0For example, the following options specify that h=NhKNhLhh7j$ubjl )r+}r,(h6X:cfg-field:`optimization`r-h7j$h=h>h?jp hA}r.(UreftypeX cfg-fieldjr js X optimizationU refdomainXcabalr/hF]hE]U refexplicithC]hD]hI]ju jv jw NuhKMhM]r0hr)r1}r2(h6j-hA}r3(hC]hD]r4(j} j/Xcabal-cfg-fieldr5ehE]hF]hI]uh7j+hM]r6hVX optimizationr7r8}r9(h6Uh7j1ubah?hzubaubhVX7 should be turned off for all local packages, and that r:r;}r<(h6X7 should be turned off for all local packages, and that h=NhKNhLhh7j$ubhr)r=}r>(h6X``bytestring``hA}r?(hC]hD]hE]hF]hI]uh7j$hM]r@hVX bytestringrArB}rC(h6Uh7j=ubah?hzubhVX8 (possibly an external dependency) should be built with rDrE}rF(h6X8 (possibly an external dependency) should be built with h=NhKNhLhh7j$ubhr)rG}rH(h6X``-fno-state-hack``hA}rI(hC]hD]hE]hF]hI]uh7j$hM]rJhVX-fno-state-hackrKrL}rM(h6Uh7jGubah?hzubhVX:rN}rO(h6X:h=NhKNhLhh7j$ubeubj)rP}rQ(h6XHoptimization: False package bytestring ghc-options: -fno-state-hackh7jh=h>h?jhA}rR(jjhF]hE]hC]hD]hI]uhKM hLhhM]rShVXHoptimization: False package bytestring ghc-options: -fno-state-hackrTrU}rV(h6Uh7jPubaubhi)rW}rX(h6X)``ghc-options`` is not specifically described in this documentation, but is one of many fields for configuring programs. They take the form ``progname-options`` and ``progname-location``, and can only be set inside package stanzas. (TODO: They are not supported at top-level, see :issue:`3579`.)h7jh=h>h?hlhA}rY(hC]hD]hE]hF]hI]uhKMhLhhM]rZ(hr)r[}r\(h6X``ghc-options``hA}r](hC]hD]hE]hF]hI]uh7jWhM]r^hVX ghc-optionsr_r`}ra(h6Uh7j[ubah?hzubhVX~ is not specifically described in this documentation, but is one of many fields for configuring programs. They take the form rbrc}rd(h6X~ is not specifically described in this documentation, but is one of many fields for configuring programs. They take the form h=NhKNhLhh7jWubhr)re}rf(h6X``progname-options``hA}rg(hC]hD]hE]hF]hI]uh7jWhM]rhhVXprogname-optionsrirj}rk(h6Uh7jeubah?hzubhVX and rlrm}rn(h6X and h=NhKNhLhh7jWubhr)ro}rp(h6X``progname-location``hA}rq(hC]hD]hE]hF]hI]uh7jWhM]rrhVXprogname-locationrsrt}ru(h6Uh7joubah?hzubhVX_, and can only be set inside package stanzas. (TODO: They are not supported at top-level, see rvrw}rx(h6X_, and can only be set inside package stanzas. (TODO: They are not supported at top-level, see h=NhKNhLhh7jWubjl)ry}rz(h6X#3579hA}r{(UrefuriX,https://github.com/haskell/cabal/issues/3579hF]hE]hC]hD]hI]Uinternaluh7jWhM]r|hVX#3579r}r~}r(h6Uh7jyubah?juubhVX.)rr}r(h6X.)h=NhKNhLhh7jWubeubhi)r}r(h6XAt the moment, there is no way to specify an option to apply to all external packages or all inplace packages. Additionally, it is only possible to specify these options on the command line for all local packages (there is no per-package command line interface.)rh7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhLhhM]rhVXAt the moment, there is no way to specify an option to apply to all external packages or all inplace packages. Additionally, it is only possible to specify these options on the command line for all local packages (there is no per-package command line interface.)rr}r(h6jh=NhKNhLhh7jubaubhi)r}r(h6XSome flags were added by more recent versions of the Cabal library. This means that they are NOT supported by packages which use Custom setup scripts that require a version of the Cabal library older than when the feature was added.rh7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhLhhM]rhVXSome flags were added by more recent versions of the Cabal library. This means that they are NOT supported by packages which use Custom setup scripts that require a version of the Cabal library older than when the feature was added.rr}r(h6jh=NhKNhLhh7jubaubjj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r}r(h6Uh7jh=h>h?jr hA}r(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldrjx juhKNhLhhM]r(jz )r}r(h6X7flags: list of +flagname or -flagname (space separated)h7jh=h>h?j} hA}r(hF]rXcfg-field-flagsrahE]hC]hD]hI]j uhKNhLhhM]r(jj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j Xflags ; cabal project optionjUNtrauhKNhLhhM]ubj )r}r(h6Xflagsrh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVXflagsrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6j h7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX: rr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6X0list of +flagname or -flagname (space separated)h7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX0list of +flagname or -flagname (space separated)rr}r(h6Uh=NhKNhLhh7jubaubeubjz )r}r(h6X"--flags="+foo -bar", -ffoo, -f-barh7jh=h>h?j} hA}r(hF]rXcfg-flag---flagsrahE]hC]hD]hI]j uhKNhLhhM]r(jj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j X--flags; cabal project optionjUNtrauhKNhLhhM]ubj )r}r(h6X--flagsrh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX--flagsrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6X ="+foo -bar"h7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX ="+foo -bar"rr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6jWh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX, rr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6X-ffooh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX-ffoorr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6U h7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX r}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6jWh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX, rr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6X-f-barh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX-f-barrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6U h7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX r}r(h6Uh=NhKNhLhh7jubaubeubj )r}r(h6Uh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKNhLhhM]r(hi)r}r(h6XForce all flags specified as ``+flagname`` to be true, and all flags specified as ``-flagname`` to be false. For example, to enable the flag ``foo`` and disable ``bar``, set:h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKM$hLhhM]r(hVXForce all flags specified as rr}r(h6XForce all flags specified as h=NhKNhLhh7jubhr)r }r (h6X ``+flagname``hA}r (hC]hD]hE]hF]hI]uh7jhM]r hVX +flagnamer r}r(h6Uh7j ubah?hzubhVX( to be true, and all flags specified as rr}r(h6X( to be true, and all flags specified as h=NhKNhLhh7jubhr)r}r(h6X ``-flagname``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX -flagnamerr}r(h6Uh7jubah?hzubhVX. to be false. For example, to enable the flag rr}r(h6X. to be false. For example, to enable the flag h=NhKNhLhh7jubhr)r}r(h6X``foo``hA}r(hC]hD]hE]hF]hI]uh7jhM]r hVXfoor!r"}r#(h6Uh7jubah?hzubhVX and disable r$r%}r&(h6X and disable h=NhKNhLhh7jubhr)r'}r((h6X``bar``hA}r)(hC]hD]hE]hF]hI]uh7jhM]r*hVXbarr+r,}r-(h6Uh7j'ubah?hzubhVX, set:r.r/}r0(h6X, set:h=NhKNhLhh7jubeubj)r1}r2(h6Xflags: +foo -barh7jh=h>h?jhA}r3(jjhF]hE]hC]hD]hI]uhKM*hLhhM]r4hVXflags: +foo -barr5r6}r7(h6Uh7j1ubaubhi)r8}r9(h6XlIf there is no leading punctuation, it is assumed that the flag should be enabled; e.g., this is equivalent:r:h7jh=h>h?hlhA}r;(hC]hD]hE]hF]hI]uhKM,hLhhM]r<hVXlIf there is no leading punctuation, it is assumed that the flag should be enabled; e.g., this is equivalent:r=r>}r?(h6j:h=NhKNhLhh7j8ubaubj)r@}rA(h6Xflags: foo -barh7jh=h>h?jhA}rB(jjhF]hE]hC]hD]hI]uhKM1hLhhM]rChVXflags: foo -barrDrE}rF(h6Uh7j@ubaubhi)rG}rH(h6XFlags are *per-package*, so it doesn't make much sense to specify flags at the top-level, unless you happen to know that *all* of your local packages support the same named flags. If a flag is not supported by a package, it is ignored.h7jh=h>h?hlhA}rI(hC]hD]hE]hF]hI]uhKM3hLhhM]rJ(hVX Flags are rKrL}rM(h6X Flags are h=NhKNhLhh7jGubjE)rN}rO(h6X *per-package*hA}rP(hC]hD]hE]hF]hI]uh7jGhM]rQhVX per-packagerRrS}rT(h6Uh7jNubah?jMubhVXd, so it doesn’t make much sense to specify flags at the top-level, unless you happen to know that rUrV}rW(h6Xb, so it doesn't make much sense to specify flags at the top-level, unless you happen to know that h=NhKNhLhh7jGubjE)rX}rY(h6X*all*hA}rZ(hC]hD]hE]hF]hI]uh7jGhM]r[hVXallr\r]}r^(h6Uh7jXubah?jMubhVXm of your local packages support the same named flags. If a flag is not supported by a package, it is ignored.r_r`}ra(h6Xm of your local packages support the same named flags. If a flag is not supported by a package, it is ignored.h=NhKNhLhh7jGubeubhi)rb}rc(h6XASee also the solver configuration field :cfg-field:`constraints`.h7jh=h>h?hlhA}rd(hC]hD]hE]hF]hI]uhKM8hLhhM]re(hVX(See also the solver configuration field rfrg}rh(h6X(See also the solver configuration field h=NhKNhLhh7jbubjl )ri}rj(h6X:cfg-field:`constraints`rkh7jbh=h>h?jp hA}rl(UreftypeX cfg-fieldjr js X constraintsU refdomainXcabalrmhF]hE]U refexplicithC]hD]hI]ju jv jw NuhKM8hM]rnhr)ro}rp(h6jkhA}rq(hC]hD]rr(j} jmXcabal-cfg-fieldrsehE]hF]hI]uh7jihM]rthVX constraintsrurv}rw(h6Uh7joubah?hzubaubhVX.rx}ry(h6X.h=NhKNhLhh7jbubeubhi)rz}r{(h6XfThe command line variant of this flag is ``--flags``. There is also a shortened form ``-ffoo -f-bar``.h7jh=h>h?hlhA}r|(hC]hD]hE]hF]hI]uhKM:hLhhM]r}(hVX)The command line variant of this flag is r~r}r(h6X)The command line variant of this flag is h=NhKNhLhh7jzubhr)r}r(h6X ``--flags``hA}r(hC]hD]hE]hF]hI]uh7jzhM]rhVX--flagsrr}r(h6Uh7jubah?hzubhVX!. There is also a shortened form rr}r(h6X!. There is also a shortened form h=NhKNhLhh7jzubhr)r}r(h6X``-ffoo -f-bar``hA}r(hC]hD]hE]hF]hI]uh7jzhM]rhVX -ffoo -f-barrr}r(h6Uh7jubah?hzubhVX.r}r(h6X.h=NhKNhLhh7jzubeubhi)r}r(h6X2A common mistake is to say ``cabal new-build -fhans``, where ``hans`` is a flag for a transitive dependency that is not in the local package; in this case, the flag will be silently ignored. If ``haskell-tor`` is the package you want this flag to apply to, try ``--constraint="haskell-tor +hans"`` instead.h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKM=hLhhM]r(hVXA common mistake is to say rr}r(h6XA common mistake is to say h=NhKNhLhh7jubhr)r}r(h6X``cabal new-build -fhans``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXcabal new-build -fhansrr}r(h6Uh7jubah?hzubhVX, where rr}r(h6X, where h=NhKNhLhh7jubhr)r}r(h6X``hans``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXhansrr}r(h6Uh7jubah?hzubhVX} is a flag for a transitive dependency that is not in the local package; in this case, the flag will be silently ignored. If rr}r(h6X} is a flag for a transitive dependency that is not in the local package; in this case, the flag will be silently ignored. If h=NhKNhLhh7jubhr)r}r(h6X``haskell-tor``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX haskell-torrr}r(h6Uh7jubah?hzubhVX4 is the package you want this flag to apply to, try rr}r(h6X4 is the package you want this flag to apply to, try h=NhKNhLhh7jubhr)r}r(h6X$``--constraint="haskell-tor +hans"``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX --constraint="haskell-tor +hans"rr}r(h6Uh7jubah?hzubhVX instead.rr}r(h6X instead.h=NhKNhLhh7jubeubeubeubjj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r}r(h6Uh7jh=h>h?jr hA}r(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldrjx juhKNhLhhM]r(jz )r}r(h6Xwith-compiler: executableh7jh=h>h?j} hA}r(hF]rXcfg-field-with-compilerrahE]hC]hD]hI]j uhKNhLhhM]r(jj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j X$with-compiler ; cabal project optionjUNtrauhKNhLhhM]ubj )r}r(h6X with-compilerrh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX with-compilerrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6j h7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX: rr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6X executableh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX executablerr}r(h6Uh=NhKNhLhh7jubaubeubjz )r}r(h6X--with-compiler=executableh7jh=h>h?j} hA}r(hF]rXcfg-flag---with-compilerrahE]hC]hD]hI]j uhKNhLhhM]r(jj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j X%--with-compiler; cabal project optionjUNtrauhKNhLhhM]ubj )r}r(h6X--with-compilerrh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX--with-compilerrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6X =executableh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX =executablerr}r(h6Uh=NhKNhLhh7jubaubeubj )r}r(h6Uh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKNhLhhM]r (hi)r }r (h6XSpecify the path to a particular compiler to be used. If not an absolute path, it will be resolved according to the :envvar:`PATH` environment. The type of the compiler (GHC, GHCJS, etc) must be consistent with the setting of the :cfg-field:`compiler` field.h7jh=h>h?hlhA}r (hC]hD]hE]hF]hI]uhKMGhLhhM]r (hVXtSpecify the path to a particular compiler to be used. If not an absolute path, it will be resolved according to the rr}r(h6XtSpecify the path to a particular compiler to be used. If not an absolute path, it will be resolved according to the h=NhKNhLhh7j ubjj )r}r(h6UhA}r(hF]hE]hC]hD]hI]Uentriesr]r((UsinglerXPATHrUindex-0rUNtr(jXenvironment variable; PATHjUNtreuh7j hM]h?jm ubcdocutils.nodes target r)r}r(h6UhA}r(hC]hD]hE]hF]rjahI]uh7j hM]h?Utargetr ubjl )r!}r"(h6X:envvar:`PATH`r#h7j h=h>h?jp hA}r$(UreftypeXenvvarjr js jU refdomainXstdr%hF]hE]U refexplicithC]hD]hI]ju jv uhKMGhM]r&hr)r'}r((h6j#hA}r)(hC]hD]r*(j} j%X std-envvarr+ehE]hF]hI]uh7j!hM]r,hVXPATHr-r.}r/(h6Uh7j'ubah?hzubaubhVXd environment. The type of the compiler (GHC, GHCJS, etc) must be consistent with the setting of the r0r1}r2(h6Xd environment. The type of the compiler (GHC, GHCJS, etc) must be consistent with the setting of the h=NhKNhLhh7j ubjl )r3}r4(h6X:cfg-field:`compiler`r5h7j h=h>h?jp hA}r6(UreftypeX cfg-fieldjr js XcompilerU refdomainXcabalr7hF]hE]U refexplicithC]hD]hI]ju jv jw NuhKMGhM]r8hr)r9}r:(h6j5hA}r;(hC]hD]r<(j} j7Xcabal-cfg-fieldr=ehE]hF]hI]uh7j3hM]r>hVXcompilerr?r@}rA(h6Uh7j9ubah?hzubaubhVX field.rBrC}rD(h6X field.h=NhKNhLhh7j ubeubhi)rE}rF(h6XThe most common use of this option is to specify a different version of your compiler to be used; e.g., if you have ``ghc-7.8`` in your path, you can specify ``with-compiler: ghc-7.8`` to use it.h7jh=h>h?hlhA}rG(hC]hD]hE]hF]hI]uhKMLhLhhM]rH(hVXtThe most common use of this option is to specify a different version of your compiler to be used; e.g., if you have rIrJ}rK(h6XtThe most common use of this option is to specify a different version of your compiler to be used; e.g., if you have h=NhKNhLhh7jEubhr)rL}rM(h6X ``ghc-7.8``hA}rN(hC]hD]hE]hF]hI]uh7jEhM]rOhVXghc-7.8rPrQ}rR(h6Uh7jLubah?hzubhVX in your path, you can specify rSrT}rU(h6X in your path, you can specify h=NhKNhLhh7jEubhr)rV}rW(h6X``with-compiler: ghc-7.8``hA}rX(hC]hD]hE]hF]hI]uh7jEhM]rYhVXwith-compiler: ghc-7.8rZr[}r\(h6Uh7jVubah?hzubhVX to use it.r]r^}r_(h6X to use it.h=NhKNhLhh7jEubeubhi)r`}ra(h6XUThis flag also sets the default value of :cfg-field:`with-hc-pkg`, using the heuristic that it is named ``ghc-pkg-7.8`` (if your executable name is suffixed with a version number), or is the executable named ``ghc-pkg`` in the same directory as the ``ghc`` directory. If this heuristic does not work, set :cfg-field:`with-hc-pkg` explicitly.h7jh=h>h?hlhA}rb(hC]hD]hE]hF]hI]uhKMPhLhhM]rc(hVX)This flag also sets the default value of rdre}rf(h6X)This flag also sets the default value of h=NhKNhLhh7j`ubjl )rg}rh(h6X:cfg-field:`with-hc-pkg`rih7j`h=h>h?jp hA}rj(UreftypeX cfg-fieldjr js X with-hc-pkgU refdomainXcabalrkhF]hE]U refexplicithC]hD]hI]ju jv jw NuhKMPhM]rlhr)rm}rn(h6jihA}ro(hC]hD]rp(j} jkXcabal-cfg-fieldrqehE]hF]hI]uh7jghM]rrhVX with-hc-pkgrsrt}ru(h6Uh7jmubah?hzubaubhVX', using the heuristic that it is named rvrw}rx(h6X', using the heuristic that it is named h=NhKNhLhh7j`ubhr)ry}rz(h6X``ghc-pkg-7.8``hA}r{(hC]hD]hE]hF]hI]uh7j`hM]r|hVX ghc-pkg-7.8r}r~}r(h6Uh7jyubah?hzubhVXY (if your executable name is suffixed with a version number), or is the executable named rr}r(h6XY (if your executable name is suffixed with a version number), or is the executable named h=NhKNhLhh7j`ubhr)r}r(h6X ``ghc-pkg``hA}r(hC]hD]hE]hF]hI]uh7j`hM]rhVXghc-pkgrr}r(h6Uh7jubah?hzubhVX in the same directory as the rr}r(h6X in the same directory as the h=NhKNhLhh7j`ubhr)r}r(h6X``ghc``hA}r(hC]hD]hE]hF]hI]uh7j`hM]rhVXghcrr}r(h6Uh7jubah?hzubhVX1 directory. If this heuristic does not work, set rr}r(h6X1 directory. If this heuristic does not work, set h=NhKNhLhh7j`ubjl )r}r(h6X:cfg-field:`with-hc-pkg`rh7j`h=h>h?jp hA}r(UreftypeX cfg-fieldjr js X with-hc-pkgU refdomainXcabalrhF]hE]U refexplicithC]hD]hI]ju jv jw NuhKMPhM]rhr)r}r(h6jhA}r(hC]hD]r(j} jXcabal-cfg-fieldrehE]hF]hI]uh7jhM]rhVX with-hc-pkgrr}r(h6Uh7jubah?hzubaubhVX explicitly.rr}r(h6X explicitly.h=NhKNhLhh7j`ubeubhi)r}r(h6XFor inplace packages, ``cabal new-build`` maintains a separate build directory for each version of GHC, so you can maintain multiple build trees for different versions of GHC without clobbering each other.h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMVhLhhM]r(hVXFor inplace packages, rr}r(h6XFor inplace packages, h=NhKNhLhh7jubhr)r}r(h6X``cabal new-build``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXcabal new-buildrr}r(h6Uh7jubah?hzubhVX maintains a separate build directory for each version of GHC, so you can maintain multiple build trees for different versions of GHC without clobbering each other.rr}r(h6X maintains a separate build directory for each version of GHC, so you can maintain multiple build trees for different versions of GHC without clobbering each other.h=NhKNhLhh7jubeubhi)r}r(h6XAt the moment, it's not possible to set :cfg-field:`with-compiler` on a per-package basis, but eventually we plan on relaxing this restriction. If this is something you need, give us a shout.h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKM[hLhhM]r(hVX*At the moment, it’s not possible to set rr}r(h6X(At the moment, it's not possible to set h=NhKNhLhh7jubjl )r}r(h6X:cfg-field:`with-compiler`rh7jh=h>h?jp hA}r(UreftypeX cfg-fieldjr js X with-compilerU refdomainXcabalrhF]hE]U refexplicithC]hD]hI]ju jv jw NuhKM[hM]rhr)r}r(h6jhA}r(hC]hD]r(j} jXcabal-cfg-fieldrehE]hF]hI]uh7jhM]rhVX with-compilerrr}r(h6Uh7jubah?hzubaubhVX} on a per-package basis, but eventually we plan on relaxing this restriction. If this is something you need, give us a shout.rr}r(h6X} on a per-package basis, but eventually we plan on relaxing this restriction. If this is something you need, give us a shout.h=NhKNhLhh7jubeubhi)r}r(h6XsThe command line variant of this flag is ``--with-compiler=ghc-7.8``; there is also a short version ``-w ghc-7.8``.h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKM_hLhhM]r(hVX)The command line variant of this flag is rr}r(h6X)The command line variant of this flag is h=NhKNhLhh7jubhr)r}r(h6X``--with-compiler=ghc-7.8``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX--with-compiler=ghc-7.8rr}r(h6Uh7jubah?hzubhVX ; there is also a short version rr}r(h6X ; there is also a short version h=NhKNhLhh7jubhr)r}r(h6X``-w ghc-7.8``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX -w ghc-7.8rr}r(h6Uh7jubah?hzubhVX.r}r(h6X.h=NhKNhLhh7jubeubeubeubjj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r}r(h6Uh7jh=h>h?jr hA}r(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldrjx juhKNhLhhM]r(jz )r}r(h6Xwith-hc-pkg: executableh7jh=h>h?j} hA}r(hF]rXcfg-field-with-hc-pkgrahE]hC]hD]hI]j uhKNhLhhM]r(jj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j X"with-hc-pkg ; cabal project optionjUNtrauhKNhLhhM]ubj )r}r(h6X with-hc-pkgrh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX with-hc-pkgrr}r(h6Uh=NhKNhLhh7jubaubj )r}r (h6j h7jh=h>h?j hA}r (jjhF]hE]hC]hD]hI]uhKNhLhhM]r hVX: r r }r(h6Uh=NhKNhLhh7jubaubj )r}r(h6X executableh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX executablerr}r(h6Uh=NhKNhLhh7jubaubeubjz )r}r(h6X--with-hc-pkg=executableh7jh=h>h?j} hA}r(hF]rXcfg-flag---with-hc-pkgrahE]hC]hD]hI]j uhKNhLhhM]r(jj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j X#--with-hc-pkg; cabal project optionjUNtr auhKNhLhhM]ubj )r!}r"(h6X --with-hc-pkgr#h7jh=h>h?j hA}r$(jjhF]hE]hC]hD]hI]uhKNhLhhM]r%hVX --with-hc-pkgr&r'}r((h6Uh=NhKNhLhh7j!ubaubj )r)}r*(h6X =executableh7jh=h>h?j hA}r+(jjhF]hE]hC]hD]hI]uhKNhLhhM]r,hVX =executabler-r.}r/(h6Uh=NhKNhLhh7j)ubaubeubj )r0}r1(h6Uh7jh=h>h?j hA}r2(hC]hD]hE]hF]hI]uhKNhLhhM]r3(hi)r4}r5(h6XQSpecify the path to the package tool, e.g., ``ghc-pkg``. This package tool must be compatible with the compiler specified by :cfg-field:`with-compiler` (generally speaking, it should be precisely the tool that was distributed with the compiler). If this option is omitted, the default value is determined from :cfg-field:`with-compiler`.h7j0h=h>h?hlhA}r6(hC]hD]hE]hF]hI]uhKMghLhhM]r7(hVX,Specify the path to the package tool, e.g., r8r9}r:(h6X,Specify the path to the package tool, e.g., h=NhKNhLhh7j4ubhr)r;}r<(h6X ``ghc-pkg``hA}r=(hC]hD]hE]hF]hI]uh7j4hM]r>hVXghc-pkgr?r@}rA(h6Uh7j;ubah?hzubhVXF. This package tool must be compatible with the compiler specified by rBrC}rD(h6XF. This package tool must be compatible with the compiler specified by h=NhKNhLhh7j4ubjl )rE}rF(h6X:cfg-field:`with-compiler`rGh7j4h=h>h?jp hA}rH(UreftypeX cfg-fieldjr js X with-compilerU refdomainXcabalrIhF]hE]U refexplicithC]hD]hI]ju jv jw NuhKMghM]rJhr)rK}rL(h6jGhA}rM(hC]hD]rN(j} jIXcabal-cfg-fieldrOehE]hF]hI]uh7jEhM]rPhVX with-compilerrQrR}rS(h6Uh7jKubah?hzubaubhVX (generally speaking, it should be precisely the tool that was distributed with the compiler). If this option is omitted, the default value is determined from rTrU}rV(h6X (generally speaking, it should be precisely the tool that was distributed with the compiler). If this option is omitted, the default value is determined from h=NhKNhLhh7j4ubjl )rW}rX(h6X:cfg-field:`with-compiler`rYh7j4h=h>h?jp hA}rZ(UreftypeX cfg-fieldjr js X with-compilerU refdomainXcabalr[hF]hE]U refexplicithC]hD]hI]ju jv jw NuhKMghM]r\hr)r]}r^(h6jYhA}r_(hC]hD]r`(j} j[Xcabal-cfg-fieldraehE]hF]hI]uh7jWhM]rbhVX with-compilerrcrd}re(h6Uh7j]ubah?hzubaubhVX.rf}rg(h6X.h=NhKNhLhh7j4ubeubhi)rh}ri(h6XGThe command line variant of this flag is ``--with-hc-pkg=ghc-pkg-7.8``.h7j0h=h>h?hlhA}rj(hC]hD]hE]hF]hI]uhKMmhLhhM]rk(hVX)The command line variant of this flag is rlrm}rn(h6X)The command line variant of this flag is h=NhKNhLhh7jhubhr)ro}rp(h6X``--with-hc-pkg=ghc-pkg-7.8``hA}rq(hC]hD]hE]hF]hI]uh7jhhM]rrhVX--with-hc-pkg=ghc-pkg-7.8rsrt}ru(h6Uh7joubah?hzubhVX.rv}rw(h6X.h=NhKNhLhh7jhubeubeubeubjj )rx}ry(h6Uh7jh=h>h?jm hA}rz(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r{}r|(h6Uh7jh=h>h?jr hA}r}(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr~jx j~uhKNhLhhM]r(jz )r}r(h6Xoptimization: nath7j{h=h>h?j} hA}r(hF]rXcfg-field-optimizationrahE]hC]hD]hI]j uhKNhLhhM]r(jj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j X#optimization ; cabal project optionjUNtrauhKNhLhhM]ubj )r}r(h6X optimizationrh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX optimizationrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6j h7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX: rr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6Xnath7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVXnatrr}r(h6Uh=NhKNhLhh7jubaubeubjz )r}r(h6X--enable-optimizationrh7j{h=h>h?j} hA}r(hF]rXcfg-flag---enable-optimizationrahE]hC]hD]hI]j uhKNhLhhM]r(jj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j X+--enable-optimization; cabal project optionjUNtrauhKNhLhhM]ubj )r}r(h6jh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX--enable-optimizationrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6U h7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX r}r(h6Uh=NhKNhLhh7jubaubeubjz )r}r(h6X--disable-optimizationrh7j{h=h>h?j} hA}r(hF]rXcfg-flag---disable-optimizationrahE]hC]hD]hI]j uhKNhLhhM]r(jj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j X,--disable-optimization; cabal project optionjUNtrauhKNhLhhM]ubj )r}r(h6jh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX--disable-optimizationrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6U h7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX r}r(h6Uh=NhKNhLhh7jubaubeubj )r}r(h6Uh7j{h=h>h?j hA}r(hC]hD]hE]hF]hI]uhKNhLhhM]r(j )r}r(h6Uh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKNhLhhM]rj )r}r(h6UhA}r(hC]hD]hE]hF]hI]uh7jhM]r(j )r}r(h6X Default valueh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKKhM]rhVX Default valuerr}r(h6Uh7jubaubj )r}r(h6UhA}r(hC]hD]hE]hF]hI]uh7jhM]rhi)r}r(h6X1hA}r(hC]hD]hE]hF]hI]uh7jhM]rhr)r}r(h6X``1``h7jh=h>h?hzhA}r(hC]hD]hE]hF]hI]uhKNhLhhM]rhVX1r}r(h6Uh=NhKNhLhh7jubaubah?hlubah?j ubeh?j ubaubhi)r}r(h6XyBuild with optimization. This is appropriate for production use, taking more time to build faster libraries and programs.rh7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMwhLhhM]rhVXyBuild with optimization. This is appropriate for production use, taking more time to build faster libraries and programs.rr}r(h6jh=NhKNhLhh7jubaubhi)r}r(h6XThe optional *nat* value is the optimisation level. Some compilers support multiple optimisation levels. The range is 0 to 2. Level 0 disables optimization, level 1 is the default. Level 2 is higher optimisation if the compiler supports it. Level 2 is likely to lead to longer compile times and bigger generated code. If you are not planning to run code, turning off optimization will lead to better build times and less code to be rebuilt when a module changes.h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMzhLhhM]r(hVX The optional rr}r(h6X The optional h=NhKNhLhh7jubjE)r}r(h6X*nat*hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXnatrr}r (h6Uh7jubah?jMubhVX value is the optimisation level. Some compilers support multiple optimisation levels. The range is 0 to 2. Level 0 disables optimization, level 1 is the default. Level 2 is higher optimisation if the compiler supports it. Level 2 is likely to lead to longer compile times and bigger generated code. If you are not planning to run code, turning off optimization will lead to better build times and less code to be rebuilt when a module changes.r r }r (h6X value is the optimisation level. Some compilers support multiple optimisation levels. The range is 0 to 2. Level 0 disables optimization, level 1 is the default. Level 2 is higher optimisation if the compiler supports it. Level 2 is likely to lead to longer compile times and bigger generated code. If you are not planning to run code, turning off optimization will lead to better build times and less code to be rebuilt when a module changes.h=NhKNhLhh7jubeubhi)r }r(h6XJWe also accept ``True`` (equivalent to 1) and ``False`` (equivalent to 0).h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhLhhM]r(hVXWe also accept rr}r(h6XWe also accept h=NhKNhLhh7j ubhr)r}r(h6X``True``hA}r(hC]hD]hE]hF]hI]uh7j hM]rhVXTruerr}r(h6Uh7jubah?hzubhVX (equivalent to 1) and rr}r(h6X (equivalent to 1) and h=NhKNhLhh7j ubhr)r}r(h6X ``False``hA}r (hC]hD]hE]hF]hI]uh7j hM]r!hVXFalser"r#}r$(h6Uh7jubah?hzubhVX (equivalent to 0).r%r&}r'(h6X (equivalent to 0).h=NhKNhLhh7j ubeubhi)r(}r)(h6X Note that as of GHC 8.0, GHC does not recompile when optimization levels change (see :ghc-ticket:`10923`), so if you change the optimization level for a local package you may need to blow away your old build products in order to rebuild with the new optimization level.h7jh=h>h?hlhA}r*(hC]hD]hE]hF]hI]uhKMhLhhM]r+(hVXUNote that as of GHC 8.0, GHC does not recompile when optimization levels change (see r,r-}r.(h6XUNote that as of GHC 8.0, GHC does not recompile when optimization levels change (see h=NhKNhLhh7j(ubjl)r/}r0(h6X GHC #10923hA}r1(UrefuriX,http://ghc.haskell.org/trac/ghc/ticket/10923hF]hE]hC]hD]hI]Uinternaluh7j(hM]r2hVX GHC #10923r3r4}r5(h6Uh7j/ubah?juubhVX), so if you change the optimization level for a local package you may need to blow away your old build products in order to rebuild with the new optimization level.r6r7}r8(h6X), so if you change the optimization level for a local package you may need to blow away your old build products in order to rebuild with the new optimization level.h=NhKNhLhh7j(ubeubhi)r9}r:(h6XThe command line variant of this flag is ``-O2`` (with ``-O1`` equivalent to ``-O``). There are also long-form variants ``--enable-optimization`` and ``--disable-optimization``.h7jh=h>h?hlhA}r;(hC]hD]hE]hF]hI]uhKMhLhhM]r<(hVX)The command line variant of this flag is r=r>}r?(h6X)The command line variant of this flag is h=NhKNhLhh7j9ubhr)r@}rA(h6X``-O2``hA}rB(hC]hD]hE]hF]hI]uh7j9hM]rChVX-O2rDrE}rF(h6Uh7j@ubah?hzubhVX (with rGrH}rI(h6X (with h=NhKNhLhh7j9ubhr)rJ}rK(h6X``-O1``hA}rL(hC]hD]hE]hF]hI]uh7j9hM]rMhVX-O1rNrO}rP(h6Uh7jJubah?hzubhVX equivalent to rQrR}rS(h6X equivalent to h=NhKNhLhh7j9ubhr)rT}rU(h6X``-O``hA}rV(hC]hD]hE]hF]hI]uh7j9hM]rWhVX-OrXrY}rZ(h6Uh7jTubah?hzubhVX%). There are also long-form variants r[r\}r](h6X%). There are also long-form variants h=NhKNhLhh7j9ubhr)r^}r_(h6X``--enable-optimization``hA}r`(hC]hD]hE]hF]hI]uh7j9hM]rahVX--enable-optimizationrbrc}rd(h6Uh7j^ubah?hzubhVX and rerf}rg(h6X and h=NhKNhLhh7j9ubhr)rh}ri(h6X``--disable-optimization``hA}rj(hC]hD]hE]hF]hI]uh7j9hM]rkhVX--disable-optimizationrlrm}rn(h6Uh7jhubah?hzubhVX.ro}rp(h6X.h=NhKNhLhh7j9ubeubeubeubjj )rq}rr(h6Uh7jh=h>h?jm hA}rs(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )rt}ru(h6Uh7jh=h>h?jr hA}rv(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldrwjx jwuhKNhLhhM]rx(jz )ry}rz(h6X)configure-options: args (space separated)h7jth=h>h?j} hA}r{(hF]r|Xcfg-field-configure-optionsr}ahE]hC]hD]hI]j uhKNhLhhM]r~(jj )r}r(h6Uh7jyh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j X(configure-options ; cabal project optionj}UNtrauhKNhLhhM]ubj )r}r(h6Xconfigure-optionsrh7jyh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVXconfigure-optionsrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6j h7jyh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX: rr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6Xargs (space separated)h7jyh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVXargs (space separated)rr}r(h6Uh=NhKNhLhh7jubaubeubjz )r}r(h6X--configure-option=argh7jth=h>h?j} hA}r(hF]rXcfg-flag---configure-optionrahE]hC]hD]hI]j uhKNhLhhM]r(jj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j X(--configure-option; cabal project optionjUNtrauhKNhLhhM]ubj )r}r(h6X--configure-optionrh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX--configure-optionrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6X=argh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX=argrr}r(h6Uh=NhKNhLhh7jubaubeubj )r}r(h6Uh7jth=h>h?j hA}r(hC]hD]hE]hF]hI]uhKNhLhhM]r(hi)r}r(h6XA list of extra arguments to pass to the external ``./configure`` script, if one is used. This is only useful for packages which have the ``Configure`` build type. See also the section on `system-dependent parameters `__.h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhLhhM]r(hVX2A list of extra arguments to pass to the external rr}r(h6X2A list of extra arguments to pass to the external h=NhKNhLhh7jubhr)r}r(h6X``./configure``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX ./configurerr}r(h6Uh7jubah?hzubhVXI script, if one is used. This is only useful for packages which have the rr}r(h6XI script, if one is used. This is only useful for packages which have the h=NhKNhLhh7jubhr)r}r(h6X ``Configure``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX Configurerr}r(h6Uh7jubah?hzubhVX% build type. See also the section on rr}r(h6X% build type. See also the section on h=NhKNhLhh7jubjl)r}r(h6XV`system-dependent parameters `__hA}r(UnameXsystem-dependent parametersjpX4developing-packages.html#system-dependent-parametershF]hE]hC]hD]hI]uh7jhM]rhVXsystem-dependent parametersrr}r(h6Uh7jubah?juubhVX.r}r(h6X.h=NhKNhLhh7jubeubhi)r}r(h6XThe command line variant of this flag is ``--configure-option=arg``, which can be specified multiple times to pass multiple options.h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhLhhM]r(hVX)The command line variant of this flag is rr}r(h6X)The command line variant of this flag is h=NhKNhLhh7jubhr)r}r(h6X``--configure-option=arg``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX--configure-option=argrr}r(h6Uh7jubah?hzubhVXA, which can be specified multiple times to pass multiple options.rr}r(h6XA, which can be specified multiple times to pass multiple options.h=NhKNhLhh7jubeubeubeubjj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r}r(h6Uh7jh=h>h?jr hA}r(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldrjx juhKNhLhhM]r(jz )r}r(h6X4compiler: ghc, ghcjs, jhc, lhc, uhc or haskell-suiteh7jh=h>h?j} hA}r(hF]rXcfg-field-compilerrahE]hC]hD]hI]j uhKNhLhhM]r(jj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j Xcompiler ; cabal project optionjUNtrauhKNhLhhM]ubj )r}r(h6Xcompilerrh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVXcompilerrr}r(h6Uh=NhKNhLhh7jubaubj )r}r (h6j h7jh=h>h?j hA}r (jjhF]hE]hC]hD]hI]uhKNhLhhM]r hVX: r r }r(h6Uh=NhKNhLhh7jubaubj )r}r(h6X*ghc, ghcjs, jhc, lhc, uhc or haskell-suiteh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX*ghc, ghcjs, jhc, lhc, uhc or haskell-suiterr}r(h6Uh=NhKNhLhh7jubaubeubjz )r}r(h6X--compiler=compilerh7jh=h>h?j} hA}r(hF]rXcfg-flag---compilerrahE]hC]hD]hI]j uhKNhLhhM]r(jj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j X --compiler; cabal project optionjUNtr auhKNhLhhM]ubj )r!}r"(h6X --compilerr#h7jh=h>h?j hA}r$(jjhF]hE]hC]hD]hI]uhKNhLhhM]r%hVX --compilerr&r'}r((h6Uh=NhKNhLhh7j!ubaubj )r)}r*(h6X =compilerh7jh=h>h?j hA}r+(jjhF]hE]hC]hD]hI]uhKNhLhhM]r,hVX =compilerr-r.}r/(h6Uh=NhKNhLhh7j)ubaubeubj )r0}r1(h6Uh7jh=h>h?j hA}r2(hC]hD]hE]hF]hI]uhKNhLhhM]r3(j )r4}r5(h6Uh7j0h=h>h?j hA}r6(hC]hD]hE]hF]hI]uhKNhLhhM]r7j )r8}r9(h6UhA}r:(hC]hD]hE]hF]hI]uh7j4hM]r;(j )r<}r=(h6X Default valueh7j8h=h>h?j hA}r>(hC]hD]hE]hF]hI]uhKKhM]r?hVX Default valuer@rA}rB(h6Uh7j<ubaubj )rC}rD(h6UhA}rE(hC]hD]hE]hF]hI]uh7j8hM]rFhi)rG}rH(h6XghchA}rI(hC]hD]hE]hF]hI]uh7jChM]rJhr)rK}rL(h6X``ghc``h7jGh=h>h?hzhA}rM(hC]hD]hE]hF]hI]uhKNhLhhM]rNhVXghcrOrP}rQ(h6Uh=NhKNhLhh7jKubaubah?hlubah?j ubeh?j ubaubhi)rR}rS(h6XSpecify which compiler toolchain to be used. This is independent of ``with-compiler``, because the choice of toolchain affects Cabal's build logic.h7j0h=h>h?hlhA}rT(hC]hD]hE]hF]hI]uhKMhLhhM]rU(hVXDSpecify which compiler toolchain to be used. This is independent of rVrW}rX(h6XDSpecify which compiler toolchain to be used. This is independent of h=NhKNhLhh7jRubhr)rY}rZ(h6X``with-compiler``hA}r[(hC]hD]hE]hF]hI]uh7jRhM]r\hVX with-compilerr]r^}r_(h6Uh7jYubah?hzubhVX@, because the choice of toolchain affects Cabal’s build logic.r`ra}rb(h6X>, because the choice of toolchain affects Cabal's build logic.h=NhKNhLhh7jRubeubhi)rc}rd(h6X<The command line variant of this flag is ``--compiler=ghc``.h7j0h=h>h?hlhA}re(hC]hD]hE]hF]hI]uhKMhLhhM]rf(hVX)The command line variant of this flag is rgrh}ri(h6X)The command line variant of this flag is h=NhKNhLhh7jcubhr)rj}rk(h6X``--compiler=ghc``hA}rl(hC]hD]hE]hF]hI]uh7jchM]rmhVX--compiler=ghcrnro}rp(h6Uh7jjubah?hzubhVX.rq}rr(h6X.h=NhKNhLhh7jcubeubeubeubjj )rs}rt(h6Uh7jh=h>h?jm hA}ru(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )rv}rw(h6Uh7jh=h>h?jr hA}rx(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldryjx jyuhKNhLhhM]rz(jz )r{}r|(h6Xtests: booleanh7jvh=h>h?j} hA}r}(hF]r~Xcfg-field-testsrahE]hC]hD]hI]j uhKNhLhhM]r(jj )r}r(h6Uh7j{h=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j Xtests ; cabal project optionjUNtrauhKNhLhhM]ubj )r}r(h6Xtestsrh7j{h=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVXtestsrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6j h7j{h=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX: rr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6Xbooleanh7j{h=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVXbooleanrr}r(h6Uh=NhKNhLhh7jubaubeubjz )r}r(h6X--enable-testsrh7jvh=h>h?j} hA}r(hF]rXcfg-flag---enable-testsrahE]hC]hD]hI]j uhKNhLhhM]r(jj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j X$--enable-tests; cabal project optionjUNtrauhKNhLhhM]ubj )r}r(h6jh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX--enable-testsrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6U h7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX r}r(h6Uh=NhKNhLhh7jubaubeubjz )r}r(h6X--disable-testsrh7jvh=h>h?j} hA}r(hF]rXcfg-flag---disable-testsrahE]hC]hD]hI]j uhKNhLhhM]r(jj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j X%--disable-tests; cabal project optionjUNtrauhKNhLhhM]ubj )r}r(h6jh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX--disable-testsrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6U h7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX r}r(h6Uh=NhKNhLhh7jubaubeubj )r}r(h6Uh7jvh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKNhLhhM]r(j )r}r(h6Uh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKNhLhhM]rj )r}r(h6UhA}r(hC]hD]hE]hF]hI]uh7jhM]r(j )r}r(h6X Default valueh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKKhM]rhVX Default valuerr}r(h6Uh7jubaubj )r}r(h6UhA}r(hC]hD]hE]hF]hI]uh7jhM]rhi)r}r(h6XFalsehA}r(hC]hD]hE]hF]hI]uh7jhM]rhr)r}r(h6X ``False``h7jh=h>h?hzhA}r(hC]hD]hE]hF]hI]uhKNhLhhM]rhVXFalserr}r(h6Uh=NhKNhLhh7jubaubah?hlubah?j ubeh?j ubaubhi)r}r(h6XForce test suites to be enabled. For most users this should not be needed, as we always attempt to solve for test suite dependencies, even when this value is ``False``; furthermore, test suites are automatically enabled if they are requested as a built target.h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhLhhM]r(hVXForce test suites to be enabled. For most users this should not be needed, as we always attempt to solve for test suite dependencies, even when this value is rr}r(h6XForce test suites to be enabled. For most users this should not be needed, as we always attempt to solve for test suite dependencies, even when this value is h=NhKNhLhh7jubhr)r}r(h6X ``False``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXFalserr}r(h6Uh7jubah?hzubhVX]; furthermore, test suites are automatically enabled if they are requested as a built target.rr}r(h6X]; furthermore, test suites are automatically enabled if they are requested as a built target.h=NhKNhLhh7jubeubhi)r}r(h6XTThe command line variant of this flag is ``--enable-tests`` and ``--disable-tests``.h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhLhhM]r(hVX)The command line variant of this flag is rr}r(h6X)The command line variant of this flag is h=NhKNhLhh7jubhr)r}r (h6X``--enable-tests``hA}r (hC]hD]hE]hF]hI]uh7jhM]r hVX--enable-testsr r }r(h6Uh7jubah?hzubhVX and rr}r(h6X and h=NhKNhLhh7jubhr)r}r(h6X``--disable-tests``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX--disable-testsrr}r(h6Uh7jubah?hzubhVX.r}r(h6X.h=NhKNhLhh7jubeubeubeubjj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r}r(h6Uh7jh=h>h?jr hA}r (jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr!jx j!uhKNhLhhM]r"(jz )r#}r$(h6Xbenchmarks: booleanh7jh=h>h?j} hA}r%(hF]r&Xcfg-field-benchmarksr'ahE]hC]hD]hI]j uhKNhLhhM]r((jj )r)}r*(h6Uh7j#h=h>h?jm hA}r+(hF]hE]hC]hD]hI]Uentries]r,(j X!benchmarks ; cabal project optionj'UNtr-auhKNhLhhM]ubj )r.}r/(h6X benchmarksr0h7j#h=h>h?j hA}r1(jjhF]hE]hC]hD]hI]uhKNhLhhM]r2hVX benchmarksr3r4}r5(h6Uh=NhKNhLhh7j.ubaubj )r6}r7(h6j h7j#h=h>h?j hA}r8(jjhF]hE]hC]hD]hI]uhKNhLhhM]r9hVX: r:r;}r<(h6Uh=NhKNhLhh7j6ubaubj )r=}r>(h6Xbooleanh7j#h=h>h?j hA}r?(jjhF]hE]hC]hD]hI]uhKNhLhhM]r@hVXbooleanrArB}rC(h6Uh=NhKNhLhh7j=ubaubeubjz )rD}rE(h6X--enable-benchmarksrFh7jh=h>h?j} hA}rG(hF]rHXcfg-flag---enable-benchmarksrIahE]hC]hD]hI]j uhKNhLhhM]rJ(jj )rK}rL(h6Uh7jDh=h>h?jm hA}rM(hF]hE]hC]hD]hI]Uentries]rN(j X)--enable-benchmarks; cabal project optionjIUNtrOauhKNhLhhM]ubj )rP}rQ(h6jFh7jDh=h>h?j hA}rR(jjhF]hE]hC]hD]hI]uhKNhLhhM]rShVX--enable-benchmarksrTrU}rV(h6Uh=NhKNhLhh7jPubaubj )rW}rX(h6U h7jDh=h>h?j hA}rY(jjhF]hE]hC]hD]hI]uhKNhLhhM]rZhVX r[}r\(h6Uh=NhKNhLhh7jWubaubeubjz )r]}r^(h6X--disable-benchmarksr_h7jh=h>h?j} hA}r`(hF]raXcfg-flag---disable-benchmarksrbahE]hC]hD]hI]j uhKNhLhhM]rc(jj )rd}re(h6Uh7j]h=h>h?jm hA}rf(hF]hE]hC]hD]hI]Uentries]rg(j X*--disable-benchmarks; cabal project optionjbUNtrhauhKNhLhhM]ubj )ri}rj(h6j_h7j]h=h>h?j hA}rk(jjhF]hE]hC]hD]hI]uhKNhLhhM]rlhVX--disable-benchmarksrmrn}ro(h6Uh=NhKNhLhh7jiubaubj )rp}rq(h6U h7j]h=h>h?j hA}rr(jjhF]hE]hC]hD]hI]uhKNhLhhM]rshVX rt}ru(h6Uh=NhKNhLhh7jpubaubeubj )rv}rw(h6Uh7jh=h>h?j hA}rx(hC]hD]hE]hF]hI]uhKNhLhhM]ry(j )rz}r{(h6Uh7jvh=h>h?j hA}r|(hC]hD]hE]hF]hI]uhKNhLhhM]r}j )r~}r(h6UhA}r(hC]hD]hE]hF]hI]uh7jzhM]r(j )r}r(h6X Default valueh7j~h=h>h?j hA}r(hC]hD]hE]hF]hI]uhKKhM]rhVX Default valuerr}r(h6Uh7jubaubj )r}r(h6UhA}r(hC]hD]hE]hF]hI]uh7j~hM]rhi)r}r(h6XFalsehA}r(hC]hD]hE]hF]hI]uh7jhM]rhr)r}r(h6X ``False``h7jh=h>h?hzhA}r(hC]hD]hE]hF]hI]uhKNhLhhM]rhVXFalserr}r(h6Uh=NhKNhLhh7jubaubah?hlubah?j ubeh?j ubaubhi)r}r(h6XForce benchmarks to be enabled. For most users this should not be needed, as we always attempt to solve for benchmark dependencies, even when this value is ``False``; furthermore, benchmarks are automatically enabled if they are requested as a built target.h7jvh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhLhhM]r(hVXForce benchmarks to be enabled. For most users this should not be needed, as we always attempt to solve for benchmark dependencies, even when this value is rr}r(h6XForce benchmarks to be enabled. For most users this should not be needed, as we always attempt to solve for benchmark dependencies, even when this value is h=NhKNhLhh7jubhr)r}r(h6X ``False``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXFalserr}r(h6Uh7jubah?hzubhVX\; furthermore, benchmarks are automatically enabled if they are requested as a built target.rr}r(h6X\; furthermore, benchmarks are automatically enabled if they are requested as a built target.h=NhKNhLhh7jubeubhi)r}r(h6X^The command line variant of this flag is ``--enable-benchmarks`` and ``--disable-benchmarks``.h7jvh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhLhhM]r(hVX)The command line variant of this flag is rr}r(h6X)The command line variant of this flag is h=NhKNhLhh7jubhr)r}r(h6X``--enable-benchmarks``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX--enable-benchmarksrr}r(h6Uh7jubah?hzubhVX and rr}r(h6X and h=NhKNhLhh7jubhr)r}r(h6X``--disable-benchmarks``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX--disable-benchmarksrr}r(h6Uh7jubah?hzubhVX.r}r(h6X.h=NhKNhLhh7jubeubeubeubjj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r}r(h6Uh7jh=h>h?jr hA}r(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldrjx juhKNhLhhM]r(jz )r}r(h6X3extra-prog-path: paths (newline or comma separated)h7jh=h>h?j} hA}r(hF]rXcfg-field-extra-prog-pathrahE]hC]hD]hI]j uhKNhLhhM]r(jj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j X&extra-prog-path ; cabal project optionjUNtrauhKNhLhhM]ubj )r}r(h6Xextra-prog-pathrh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVXextra-prog-pathrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6j h7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX: rr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6X"paths (newline or comma separated)h7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX"paths (newline or comma separated)rr}r(h6Uh=NhKNhLhh7jubaubeubjz )r}r(h6X--extra-prog-path=PATHh7jh=h>h?j} hA}r(hF]rXcfg-flag---extra-prog-pathrahE]hC]hD]hI]j uhKNhLhhM]r(jj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j X'--extra-prog-path; cabal project optionjUNtrauhKNhLhhM]ubj )r}r(h6X--extra-prog-pathrh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX--extra-prog-pathrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6X=PATHh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX=PATHrr}r(h6Uh=NhKNhLhh7jubaubeubj )r}r(h6Uh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKNhLhhM]r (j )r }r (h6Uh7jh=h>h?j hA}r (hC]hD]hE]hF]hI]uhKNhLhhM]r j )r}r(h6Uh7j h=h>h?j hA}r(hC]hD]hE]hF]hI]uhKNhLhhM]r(j )r}r(h6jh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKKhM]rhVXSincerr}r(h6Uh7jubaubj )r}r(h6U Cabal 1.18rhA}r(hC]hD]hE]hF]hI]uh7jhM]rhi)r}r(h6jhA}r (hC]hD]hE]hF]hI]uh7jhM]r!hVX Cabal 1.18r"r#}r$(h6Uh7jubah?hlubah?j ubeubaubhi)r%}r&(h6XA list of directories to search for extra required programs. Most users should not need this, as programs like ``happy`` and ``alex`` will automatically be installed and added to the path. This can be useful if a ``Custom`` setup script relies on an exotic extra program.h7jh=h>h?hlhA}r'(hC]hD]hE]hF]hI]uhKMhLhhM]r((hVXoA list of directories to search for extra required programs. Most users should not need this, as programs like r)r*}r+(h6XoA list of directories to search for extra required programs. Most users should not need this, as programs like h=NhKNhLhh7j%ubhr)r,}r-(h6X ``happy``hA}r.(hC]hD]hE]hF]hI]uh7j%hM]r/hVXhappyr0r1}r2(h6Uh7j,ubah?hzubhVX and r3r4}r5(h6X and h=NhKNhLhh7j%ubhr)r6}r7(h6X``alex``hA}r8(hC]hD]hE]hF]hI]uh7j%hM]r9hVXalexr:r;}r<(h6Uh7j6ubah?hzubhVXP will automatically be installed and added to the path. This can be useful if a r=r>}r?(h6XP will automatically be installed and added to the path. This can be useful if a h=NhKNhLhh7j%ubhr)r@}rA(h6X ``Custom``hA}rB(hC]hD]hE]hF]hI]uh7j%hM]rChVXCustomrDrE}rF(h6Uh7j@ubah?hzubhVX0 setup script relies on an exotic extra program.rGrH}rI(h6X0 setup script relies on an exotic extra program.h=NhKNhLhh7j%ubeubhi)rJ}rK(h6XkThe command line variant of this flag is ``--extra-prog-path=PATH``, which can be specified multiple times.h7jh=h>h?hlhA}rL(hC]hD]hE]hF]hI]uhKMhLhhM]rM(hVX)The command line variant of this flag is rNrO}rP(h6X)The command line variant of this flag is h=NhKNhLhh7jJubhr)rQ}rR(h6X``--extra-prog-path=PATH``hA}rS(hC]hD]hE]hF]hI]uh7jJhM]rThVX--extra-prog-path=PATHrUrV}rW(h6Uh7jQubah?hzubhVX(, which can be specified multiple times.rXrY}rZ(h6X(, which can be specified multiple times.h=NhKNhLhh7jJubeubeubeubjj )r[}r\(h6Uh7jh=h>h?jm hA}r](hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r^}r_(h6Uh7jh=h>h?jr hA}r`(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldrajx jauhKNhLhhM]rb(jz )rc}rd(h6Xrun-tests: booleanh7j^h=h>h?j} hA}re(hF]rfXcfg-field-run-testsrgahE]hC]hD]hI]j uhKNhLhhM]rh(jj )ri}rj(h6Uh7jch=h>h?jm hA}rk(hF]hE]hC]hD]hI]Uentries]rl(j X run-tests ; cabal project optionjgUNtrmauhKNhLhhM]ubj )rn}ro(h6X run-testsrph7jch=h>h?j hA}rq(jjhF]hE]hC]hD]hI]uhKNhLhhM]rrhVX run-testsrsrt}ru(h6Uh=NhKNhLhh7jnubaubj )rv}rw(h6j h7jch=h>h?j hA}rx(jjhF]hE]hC]hD]hI]uhKNhLhhM]ryhVX: rzr{}r|(h6Uh=NhKNhLhh7jvubaubj )r}}r~(h6Xbooleanh7jch=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVXbooleanrr}r(h6Uh=NhKNhLhh7j}ubaubeubjz )r}r(h6X --run-testsrh7j^h=h>h?j} hA}r(hF]rXcfg-flag---run-testsrahE]hC]hD]hI]j uhKNhLhhM]r(jj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j X!--run-tests; cabal project optionjUNtrauhKNhLhhM]ubj )r}r(h6jh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX --run-testsrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6U h7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX r}r(h6Uh=NhKNhLhh7jubaubeubj )r}r(h6Uh7j^h=h>h?j hA}r(hC]hD]hE]hF]hI]uhKNhLhhM]r(j )r}r(h6Uh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKNhLhhM]rj )r}r(h6UhA}r(hC]hD]hE]hF]hI]uh7jhM]r(j )r}r(h6X Default valueh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKKhM]rhVX Default valuerr}r(h6Uh7jubaubj )r}r(h6UhA}r(hC]hD]hE]hF]hI]uh7jhM]rhi)r}r(h6XFalsehA}r(hC]hD]hE]hF]hI]uh7jhM]rhr)r}r(h6X ``False``h7jh=h>h?hzhA}r(hC]hD]hE]hF]hI]uhKNhLhhM]rhVXFalserr}r(h6Uh=NhKNhLhh7jubaubah?hlubah?j ubeh?j ubaubhi)r}r(h6XRun the package test suite upon installation. This is useful for saying "When this package is installed, check that the test suite passes, terminating the rest of the build if it is broken."rh7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhLhhM]rhVXRun the package test suite upon installation. This is useful for saying “When this package is installed, check that the test suite passes, terminating the rest of the build if it is broken.”rr}r(h6jh=NhKNhLhh7jubaubcdocutils.nodes warning r)r}r(h6XOne deficiency: the :cfg-field:`run-tests` setting of a package is NOT recorded as part of the hash, so if you install something without :cfg-field:`run-tests` and then turn on ``run-tests``, we won't subsequently test the package. If this is causing you problems, give us a shout.h7jh=h>h?UwarningrhA}r(hC]hD]hE]hF]hI]uhKNhLhhM]rhi)r}r(h6XOne deficiency: the :cfg-field:`run-tests` setting of a package is NOT recorded as part of the hash, so if you install something without :cfg-field:`run-tests` and then turn on ``run-tests``, we won't subsequently test the package. If this is causing you problems, give us a shout.h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhM]r(hVXOne deficiency: the rr}r(h6XOne deficiency: the h7jubjl )r}r(h6X:cfg-field:`run-tests`rh7jh=h>h?jp hA}r(UreftypeX cfg-fieldjr js X run-testsU refdomainXcabalrhF]hE]U refexplicithC]hD]hI]ju jv jw NuhKMhM]rhr)r}r(h6jhA}r(hC]hD]r(j} jXcabal-cfg-fieldrehE]hF]hI]uh7jhM]rhVX run-testsrr}r(h6Uh7jubah?hzubaubhVX_ setting of a package is NOT recorded as part of the hash, so if you install something without rr}r(h6X_ setting of a package is NOT recorded as part of the hash, so if you install something without h7jubjl )r}r(h6X:cfg-field:`run-tests`rh7jh=h>h?jp hA}r(UreftypeX cfg-fieldjr js X run-testsU refdomainXcabalrhF]hE]U refexplicithC]hD]hI]ju jv jw NuhKMhM]rhr)r}r(h6jhA}r(hC]hD]r(j} jXcabal-cfg-fieldrehE]hF]hI]uh7jhM]rhVX run-testsrr}r(h6Uh7jubah?hzubaubhVX and then turn on rr}r(h6X and then turn on h7jubhr)r}r(h6X ``run-tests``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX run-testsrr}r(h6Uh7jubah?hzubhVX], we won’t subsequently test the package. If this is causing you problems, give us a shout.rr}r(h6X[, we won't subsequently test the package. If this is causing you problems, give us a shout.h7jubeubaubhi)r}r(h6X9The command line variant of this flag is ``--run-tests``.h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhLhhM]r(hVX)The command line variant of this flag is rr}r(h6X)The command line variant of this flag is h=NhKNhLhh7jubhr)r }r (h6X``--run-tests``hA}r (hC]hD]hE]hF]hI]uh7jhM]r hVX --run-testsr r}r(h6Uh7j ubah?hzubhVX.r}r(h6X.h=NhKNhLhh7jubeubeubeubh8)r}r(h6Uh7jh=h>h?h@hA}r(hC]hD]hE]hF]rjahI]rhauhKMhLhhM]r(hO)r}r(h6XObject code optionsrh7jh=h>h?hShA}r(hC]hD]hE]hF]hI]uhKMhLhhM]rhVXObject code optionsrr}r(h6jh=NhKNhLhh7jubaubjj )r }r!(h6Uh7jh=h>h?jm hA}r"(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r#}r$(h6Uh7jh=h>h?jr hA}r%(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr&jx j&uhKNhLhhM]r'(jz )r(}r)(h6Xdebug-info: booleanh7j#h=h>h?j} hA}r*(hF]r+Xcfg-field-debug-infor,ahE]hC]hD]hI]j uhKNhLhhM]r-(jj )r.}r/(h6Uh7j(h=h>h?jm hA}r0(hF]hE]hC]hD]hI]Uentries]r1(j X!debug-info ; cabal project optionj,UNtr2auhKNhLhhM]ubj )r3}r4(h6X debug-infor5h7j(h=h>h?j hA}r6(jjhF]hE]hC]hD]hI]uhKNhLhhM]r7hVX debug-infor8r9}r:(h6Uh=NhKNhLhh7j3ubaubj )r;}r<(h6j h7j(h=h>h?j hA}r=(jjhF]hE]hC]hD]hI]uhKNhLhhM]r>hVX: r?r@}rA(h6Uh=NhKNhLhh7j;ubaubj )rB}rC(h6Xbooleanh7j(h=h>h?j hA}rD(jjhF]hE]hC]hD]hI]uhKNhLhhM]rEhVXbooleanrFrG}rH(h6Uh=NhKNhLhh7jBubaubeubjz )rI}rJ(h6X--enable-debug-inforKh7j#h=h>h?j} hA}rL(hF]rMXcfg-flag---enable-debug-inforNahE]hC]hD]hI]j uhKNhLhhM]rO(jj )rP}rQ(h6Uh7jIh=h>h?jm hA}rR(hF]hE]hC]hD]hI]Uentries]rS(j X)--enable-debug-info; cabal project optionjNUNtrTauhKNhLhhM]ubj )rU}rV(h6jKh7jIh=h>h?j hA}rW(jjhF]hE]hC]hD]hI]uhKNhLhhM]rXhVX--enable-debug-inforYrZ}r[(h6Uh=NhKNhLhh7jUubaubj )r\}r](h6U h7jIh=h>h?j hA}r^(jjhF]hE]hC]hD]hI]uhKNhLhhM]r_hVX r`}ra(h6Uh=NhKNhLhh7j\ubaubeubjz )rb}rc(h6X--disable-debug-infordh7j#h=h>h?j} hA}re(hF]rfXcfg-flag---disable-debug-inforgahE]hC]hD]hI]j uhKNhLhhM]rh(jj )ri}rj(h6Uh7jbh=h>h?jm hA}rk(hF]hE]hC]hD]hI]Uentries]rl(j X*--disable-debug-info; cabal project optionjgUNtrmauhKNhLhhM]ubj )rn}ro(h6jdh7jbh=h>h?j hA}rp(jjhF]hE]hC]hD]hI]uhKNhLhhM]rqhVX--disable-debug-inforrrs}rt(h6Uh=NhKNhLhh7jnubaubj )ru}rv(h6U h7jbh=h>h?j hA}rw(jjhF]hE]hC]hD]hI]uhKNhLhhM]rxhVX ry}rz(h6Uh=NhKNhLhh7juubaubeubj )r{}r|(h6Uh7j#h=h>h?j hA}r}(hC]hD]hE]hF]hI]uhKNhLhhM]r~(j )r}r(h6Uh7j{h=h>h?j hA}r(hC]hD]hE]hF]hI]uhKNhLhhM]r(j )r}r(h6Uh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKNhLhhM]r(j )r}r(h6jh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKKhM]rhVXSincerr}r(h6Uh7jubaubj )r}r(h6U Cabal 1.22rhA}r(hC]hD]hE]hF]hI]uh7jhM]rhi)r}r(h6jhA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX Cabal 1.22rr}r(h6Uh7jubah?hlubah?j ubeubj )r}r(h6UhA}r(hC]hD]hE]hF]hI]uh7jhM]r(j )r}r(h6X Default valueh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKKhM]rhVX Default valuerr}r(h6Uh7jubaubj )r}r(h6UhA}r(hC]hD]hE]hF]hI]uh7jhM]rhi)r}r(h6XFalsehA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXFalserr}r(h6XFalseh=NhKNhLhh7jubah?hlubah?j ubeh?j ubeubhi)r}r(h6XIf the compiler (e.g., GHC 7.10 and later) supports outputing OS native debug info (e.g., DWARF), setting ``debug-info: True`` will instruct it to do so. See the GHC wiki page on :ghc-wiki:`DWARF` for more information about this feature.h7j{h=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhLhhM]r(hVXjIf the compiler (e.g., GHC 7.10 and later) supports outputing OS native debug info (e.g., DWARF), setting rr}r(h6XjIf the compiler (e.g., GHC 7.10 and later) supports outputing OS native debug info (e.g., DWARF), setting h=NhKNhLhh7jubhr)r}r(h6X``debug-info: True``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXdebug-info: Truerr}r(h6Uh7jubah?hzubhVX5 will instruct it to do so. See the GHC wiki page on rr}r(h6X5 will instruct it to do so. See the GHC wiki page on h=NhKNhLhh7jubjl)r}r(h6XDWARFhA}r(UrefuriX*http://ghc.haskell.org/trac/ghc/wiki/DWARFhF]hE]hC]hD]hI]Uinternaluh7jhM]rhVXDWARFrr}r(h6Uh7jubah?juubhVX) for more information about this feature.rr}r(h6X) for more information about this feature.h=NhKNhLhh7jubeubhi)r}r(h6XU(This field also accepts numeric syntax, but as of GHC 8.0 this doesn't do anything.)rh7j{h=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhLhhM]rhVXW(This field also accepts numeric syntax, but as of GHC 8.0 this doesn’t do anything.)rr}r(h6jh=NhKNhLhh7jubaubhi)r}r(h6X^The command line variant of this flag is ``--enable-debug-info`` and ``--disable-debug-info``.h7j{h=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhLhhM]r(hVX)The command line variant of this flag is rr}r(h6X)The command line variant of this flag is h=NhKNhLhh7jubhr)r}r(h6X``--enable-debug-info``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX--enable-debug-inforr}r(h6Uh7jubah?hzubhVX and rr}r(h6X and h=NhKNhLhh7jubhr)r}r(h6X``--disable-debug-info``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX--disable-debug-inforr}r(h6Uh7jubah?hzubhVX.r}r(h6X.h=NhKNhLhh7jubeubeubeubjj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r}r(h6Uh7jh=h>h?jr hA}r(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldrjx juhKNhLhhM]r(jz )r}r(h6Xsplit-objs: booleanh7jh=h>h?j} hA}r(hF]rXcfg-field-split-objsrahE]hC]hD]hI]j uhKNhLhhM]r(jj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j X!split-objs ; cabal project optionjUNtrauhKNhLhhM]ubj )r}r(h6X split-objsrh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX split-objsrr}r(h6Uh=NhKNhLhh7jubaubj )r}r (h6j h7jh=h>h?j hA}r (jjhF]hE]hC]hD]hI]uhKNhLhhM]r hVX: r r }r(h6Uh=NhKNhLhh7jubaubj )r}r(h6Xbooleanh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVXbooleanrr}r(h6Uh=NhKNhLhh7jubaubeubjz )r}r(h6X--enable-split-objsrh7jh=h>h?j} hA}r(hF]rXcfg-flag---enable-split-objsrahE]hC]hD]hI]j uhKNhLhhM]r(jj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r (j X)--enable-split-objs; cabal project optionjUNtr!auhKNhLhhM]ubj )r"}r#(h6jh7jh=h>h?j hA}r$(jjhF]hE]hC]hD]hI]uhKNhLhhM]r%hVX--enable-split-objsr&r'}r((h6Uh=NhKNhLhh7j"ubaubj )r)}r*(h6U h7jh=h>h?j hA}r+(jjhF]hE]hC]hD]hI]uhKNhLhhM]r,hVX r-}r.(h6Uh=NhKNhLhh7j)ubaubeubjz )r/}r0(h6X--disable-split-objsr1h7jh=h>h?j} hA}r2(hF]r3Xcfg-flag---disable-split-objsr4ahE]hC]hD]hI]j uhKNhLhhM]r5(jj )r6}r7(h6Uh7j/h=h>h?jm hA}r8(hF]hE]hC]hD]hI]Uentries]r9(j X*--disable-split-objs; cabal project optionj4UNtr:auhKNhLhhM]ubj )r;}r<(h6j1h7j/h=h>h?j hA}r=(jjhF]hE]hC]hD]hI]uhKNhLhhM]r>hVX--disable-split-objsr?r@}rA(h6Uh=NhKNhLhh7j;ubaubj )rB}rC(h6U h7j/h=h>h?j hA}rD(jjhF]hE]hC]hD]hI]uhKNhLhhM]rEhVX rF}rG(h6Uh=NhKNhLhh7jBubaubeubj )rH}rI(h6Uh7jh=h>h?j hA}rJ(hC]hD]hE]hF]hI]uhKNhLhhM]rK(j )rL}rM(h6Uh7jHh=h>h?j hA}rN(hC]hD]hE]hF]hI]uhKNhLhhM]rOj )rP}rQ(h6UhA}rR(hC]hD]hE]hF]hI]uh7jLhM]rS(j )rT}rU(h6X Default valueh7jPh=h>h?j hA}rV(hC]hD]hE]hF]hI]uhKKhM]rWhVX Default valuerXrY}rZ(h6Uh7jTubaubj )r[}r\(h6UhA}r](hC]hD]hE]hF]hI]uh7jPhM]r^hi)r_}r`(h6XFalsehA}ra(hC]hD]hE]hF]hI]uh7j[hM]rbhVXFalsercrd}re(h6XFalseh=NhKNhLhh7j_ubah?hlubah?j ubeh?j ubaubhi)rf}rg(h6X6Use the GHC ``-split-objs`` feature when building the library. This reduces the final size of the executables that use the library by allowing them to link with only the bits that they use rather than the entire library. The downside is that building the library takes longer and uses considerably more memory.h7jHh=h>h?hlhA}rh(hC]hD]hE]hF]hI]uhKMhLhhM]ri(hVX Use the GHC rjrk}rl(h6X Use the GHC h=NhKNhLhh7jfubhr)rm}rn(h6X``-split-objs``hA}ro(hC]hD]hE]hF]hI]uh7jfhM]rphVX -split-objsrqrr}rs(h6Uh7jmubah?hzubhVX feature when building the library. This reduces the final size of the executables that use the library by allowing them to link with only the bits that they use rather than the entire library. The downside is that building the library takes longer and uses considerably more memory.rtru}rv(h6X feature when building the library. This reduces the final size of the executables that use the library by allowing them to link with only the bits that they use rather than the entire library. The downside is that building the library takes longer and uses considerably more memory.h=NhKNhLhh7jfubeubhi)rw}rx(h6X^The command line variant of this flag is ``--enable-split-objs`` and ``--disable-split-objs``.h7jHh=h>h?hlhA}ry(hC]hD]hE]hF]hI]uhKM hLhhM]rz(hVX)The command line variant of this flag is r{r|}r}(h6X)The command line variant of this flag is h=NhKNhLhh7jwubhr)r~}r(h6X``--enable-split-objs``hA}r(hC]hD]hE]hF]hI]uh7jwhM]rhVX--enable-split-objsrr}r(h6Uh7j~ubah?hzubhVX and rr}r(h6X and h=NhKNhLhh7jwubhr)r}r(h6X``--disable-split-objs``hA}r(hC]hD]hE]hF]hI]uh7jwhM]rhVX--disable-split-objsrr}r(h6Uh7jubah?hzubhVX.r}r(h6X.h=NhKNhLhh7jwubeubeubeubjj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r}r(h6Uh7jh=h>h?jr hA}r(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldrjx juhKNhLhhM]r(jz )r}r(h6Xexecutable-stripping: booleanh7jh=h>h?j} hA}r(hF]rXcfg-field-executable-strippingrahE]hC]hD]hI]j uhKNhLhhM]r(jj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j X+executable-stripping ; cabal project optionjUNtrauhKNhLhhM]ubj )r}r(h6Xexecutable-strippingrh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVXexecutable-strippingrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6j h7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX: rr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6Xbooleanh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVXbooleanrr}r(h6Uh=NhKNhLhh7jubaubeubjz )r}r(h6X--enable-executable-strippingrh7jh=h>h?j} hA}r(hF]rX&cfg-flag---enable-executable-strippingrahE]hC]hD]hI]j uhKNhLhhM]r(jj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j X3--enable-executable-stripping; cabal project optionjUNtrauhKNhLhhM]ubj )r}r(h6jh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX--enable-executable-strippingrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6U h7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX r}r(h6Uh=NhKNhLhh7jubaubeubjz )r}r(h6X--disable-executable-strippingrh7jh=h>h?j} hA}r(hF]rX'cfg-flag---disable-executable-strippingrahE]hC]hD]hI]j uhKNhLhhM]r(jj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j X4--disable-executable-stripping; cabal project optionjUNtrauhKNhLhhM]ubj )r}r(h6jh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX--disable-executable-strippingrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6U h7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX r}r(h6Uh=NhKNhLhh7jubaubeubj )r}r(h6Uh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKNhLhhM]r(j )r}r(h6Uh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKNhLhhM]rj )r}r(h6UhA}r(hC]hD]hE]hF]hI]uh7jhM]r(j )r}r(h6X Default valueh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKKhM]rhVX Default valuerr}r(h6Uh7jubaubj )r}r(h6UhA}r(hC]hD]hE]hF]hI]uh7jhM]rhi)r}r(h6XTruehA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXTruerr}r (h6XTrueh=NhKNhLhh7jubah?hlubah?j ubeh?j ubaubhi)r }r (h6XWhen installing binary executable programs, run the ``strip`` program on the binary. This can considerably reduce the size of the executable binary file. It does this by removing debugging information and symbols.h7jh=h>h?hlhA}r (hC]hD]hE]hF]hI]uhKMhLhhM]r (hVX4When installing binary executable programs, run the rr}r(h6X4When installing binary executable programs, run the h=NhKNhLhh7j ubhr)r}r(h6X ``strip``hA}r(hC]hD]hE]hF]hI]uh7j hM]rhVXstriprr}r(h6Uh7jubah?hzubhVX program on the binary. This can considerably reduce the size of the executable binary file. It does this by removing debugging information and symbols.rr}r(h6X program on the binary. This can considerably reduce the size of the executable binary file. It does this by removing debugging information and symbols.h=NhKNhLhh7j ubeubhi)r}r(h6XmNot all Haskell implementations generate native binaries. For such implementations this option has no effect.rh7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKMhLhhM]rhVXmNot all Haskell implementations generate native binaries. For such implementations this option has no effect.r r!}r"(h6jh=NhKNhLhh7jubaubhi)r#}r$(h6XC(TODO: Check what happens if you combine this with ``debug-info``.)h7jh=h>h?hlhA}r%(hC]hD]hE]hF]hI]uhKMhLhhM]r&(hVX3(TODO: Check what happens if you combine this with r'r(}r)(h6X3(TODO: Check what happens if you combine this with h=NhKNhLhh7j#ubhr)r*}r+(h6X``debug-info``hA}r,(hC]hD]hE]hF]hI]uh7j#hM]r-hVX debug-infor.r/}r0(h6Uh7j*ubah?hzubhVX.)r1r2}r3(h6X.)h=NhKNhLhh7j#ubeubhi)r4}r5(h6XrThe command line variant of this flag is ``--enable-executable-stripping`` and ``--disable-executable-stripping``.h7jh=h>h?hlhA}r6(hC]hD]hE]hF]hI]uhKMhLhhM]r7(hVX)The command line variant of this flag is r8r9}r:(h6X)The command line variant of this flag is h=NhKNhLhh7j4ubhr)r;}r<(h6X!``--enable-executable-stripping``hA}r=(hC]hD]hE]hF]hI]uh7j4hM]r>hVX--enable-executable-strippingr?r@}rA(h6Uh7j;ubah?hzubhVX and rBrC}rD(h6X and h=NhKNhLhh7j4ubhr)rE}rF(h6X"``--disable-executable-stripping``hA}rG(hC]hD]hE]hF]hI]uh7j4hM]rHhVX--disable-executable-strippingrIrJ}rK(h6Uh7jEubah?hzubhVX.rL}rM(h6X.h=NhKNhLhh7j4ubeubeubeubjj )rN}rO(h6Uh7jh=h>h?jm hA}rP(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )rQ}rR(h6Uh7jh=h>h?jr hA}rS(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldrTjx jTuhKNhLhhM]rU(jz )rV}rW(h6Xlibrary-stripping: booleanh7jQh=h>h?j} hA}rX(hF]rYXcfg-field-library-strippingrZahE]hC]hD]hI]j uhKNhLhhM]r[(jj )r\}r](h6Uh7jVh=h>h?jm hA}r^(hF]hE]hC]hD]hI]Uentries]r_(j X(library-stripping ; cabal project optionjZUNtr`auhKNhLhhM]ubj )ra}rb(h6Xlibrary-strippingrch7jVh=h>h?j hA}rd(jjhF]hE]hC]hD]hI]uhKNhLhhM]rehVXlibrary-strippingrfrg}rh(h6Uh=NhKNhLhh7jaubaubj )ri}rj(h6j h7jVh=h>h?j hA}rk(jjhF]hE]hC]hD]hI]uhKNhLhhM]rlhVX: rmrn}ro(h6Uh=NhKNhLhh7jiubaubj )rp}rq(h6Xbooleanh7jVh=h>h?j hA}rr(jjhF]hE]hC]hD]hI]uhKNhLhhM]rshVXbooleanrtru}rv(h6Uh=NhKNhLhh7jpubaubeubjz )rw}rx(h6X--enable-library-strippingryh7jQh=h>h?j} hA}rz(hF]r{X#cfg-flag---enable-library-strippingr|ahE]hC]hD]hI]j uhKNhLhhM]r}(jj )r~}r(h6Uh7jwh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j X0--enable-library-stripping; cabal project optionj|UNtrauhKNhLhhM]ubj )r}r(h6jyh7jwh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX--enable-library-strippingrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6U h7jwh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX r}r(h6Uh=NhKNhLhh7jubaubeubjz )r}r(h6X--disable-library-strippingrh7jQh=h>h?j} hA}r(hF]rX$cfg-flag---disable-library-strippingrahE]hC]hD]hI]j uhKNhLhhM]r(jj )r}r(h6Uh7jh=h>h?jm hA}r(hF]hE]hC]hD]hI]Uentries]r(j X1--disable-library-stripping; cabal project optionjUNtrauhKNhLhhM]ubj )r}r(h6jh7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX--disable-library-strippingrr}r(h6Uh=NhKNhLhh7jubaubj )r}r(h6U h7jh=h>h?j hA}r(jjhF]hE]hC]hD]hI]uhKNhLhhM]rhVX r}r(h6Uh=NhKNhLhh7jubaubeubj )r}r(h6Uh7jQh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKNhLhhM]r(j )r}r(h6Uh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKNhLhhM]rj )r}r(h6Uh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKNhLhhM]r(j )r}r(h6jh7jh=h>h?j hA}r(hC]hD]hE]hF]hI]uhKKhM]rhVXSincerr}r(h6Uh7jubaubj )r}r(h6U Cabal 1.19rhA}r(hC]hD]hE]hF]hI]uh7jhM]rhi)r}r(h6jhA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX Cabal 1.19rr}r(h6Uh7jubah?hlubah?j ubeubaubhi)r}r(h6XWhen installing binary libraries, run the ``strip`` program on the binary, saving space on the file system. See also ``executable-stripping``.h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKM)hLhhM]r(hVX*When installing binary libraries, run the rr}r(h6X*When installing binary libraries, run the h=NhKNhLhh7jubhr)r}r(h6X ``strip``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXstriprr}r(h6Uh7jubah?hzubhVXB program on the binary, saving space on the file system. See also rr}r(h6XB program on the binary, saving space on the file system. See also h=NhKNhLhh7jubhr)r}r(h6X``executable-stripping``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVXexecutable-strippingrr}r(h6Uh7jubah?hzubhVX.r}r(h6X.h=NhKNhLhh7jubeubhi)r}r(h6XlThe command line variant of this flag is ``--enable-library-stripping`` and ``--disable-library-stripping``.h7jh=h>h?hlhA}r(hC]hD]hE]hF]hI]uhKM-hLhhM]r(hVX)The command line variant of this flag is rr}r(h6X)The command line variant of this flag is h=NhKNhLhh7jubhr)r}r(h6X``--enable-library-stripping``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX--enable-library-strippingrr}r(h6Uh7jubah?hzubhVX and rr}r(h6X and h=NhKNhLhh7jubhr)r}r(h6X``--disable-library-stripping``hA}r(hC]hD]hE]hF]hI]uh7jhM]rhVX--disable-library-strippingrr}r(h6Uh7jubah?hzubhVX.r}r(h6X.h=NhKNhLhh7jubeubeubeubeubh8)r}r(h6Uh7jh=h>h?h@hA}r(hC]hD]hE]hF]rjahI]r hauhKM1hLhhM]r (hO)r }r (h6XExecutable optionsr h7jh=h>h?hShA}r (hC]hD]hE]hF]hI]uhKM1hLhhM]r hVXExecutable optionsr r }r (h6j h=NhKNhLhh7j ubaubjj )r }r (h6Uh7jh=h>h?jm hA}r (hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r }r (h6Uh7jh=h>h?jr hA}r (jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr jx j uhKNhLhhM]r (jz )r }r (h6Xprogram-prefix: prefixh7j h=h>h?j} hA}r (hF]r Xcfg-field-program-prefixr ahE]hC]hD]hI]j uhKNhLhhM]r (jj )r }r (h6Uh7j h=h>h?jm hA}r (hF]hE]hC]hD]hI]Uentries]r (j X%program-prefix ; cabal project optionj UNtr auhKNhLhhM]ubj )r }r (h6Xprogram-prefixr h7j h=h>h?j hA}r (jjhF]hE]hC]hD]hI]uhKNhLhhM]r! hVXprogram-prefixr" r# }r$ (h6Uh=NhKNhLhh7j ubaubj )r% }r& (h6j h7j h=h>h?j hA}r' (jjhF]hE]hC]hD]hI]uhKNhLhhM]r( hVX: r) r* }r+ (h6Uh=NhKNhLhh7j% ubaubj )r, }r- (h6Xprefixh7j h=h>h?j hA}r. (jjhF]hE]hC]hD]hI]uhKNhLhhM]r/ hVXprefixr0 r1 }r2 (h6Uh=NhKNhLhh7j, ubaubeubjz )r3 }r4 (h6X--program-prefix=prefixh7j h=h>h?j} hA}r5 (hF]r6 Xcfg-flag---program-prefixr7 ahE]hC]hD]hI]j uhKNhLhhM]r8 (jj )r9 }r: (h6Uh7j3 h=h>h?jm hA}r; (hF]hE]hC]hD]hI]Uentries]r< (j X&--program-prefix; cabal project optionj7 UNtr= auhKNhLhhM]ubj )r> }r? (h6X--program-prefixr@ h7j3 h=h>h?j hA}rA (jjhF]hE]hC]hD]hI]uhKNhLhhM]rB hVX--program-prefixrC rD }rE (h6Uh=NhKNhLhh7j> ubaubj )rF }rG (h6X=prefixh7j3 h=h>h?j hA}rH (jjhF]hE]hC]hD]hI]uhKNhLhhM]rI hVX=prefixrJ rK }rL (h6Uh=NhKNhLhh7jF ubaubeubj )rM }rN (h6Uh7j h=h>h?j hA}rO (hC]hD]hE]hF]hI]uhKNhLhhM]rP (hi)rQ }rR (h6X[STRIKEOUT:Prepend *prefix* to installed program names.] (Currently implemented in a silly and not useful way. If you need this to work give us a shout.)h7jM h=h>h?hlhA}rS (hC]hD]hE]hF]hI]uhKM7hLhhM]rT (hVX[STRIKEOUT:Prepend rU rV }rW (h6X[STRIKEOUT:Prepend h=NhKNhLhh7jQ ubjE)rX }rY (h6X*prefix*hA}rZ (hC]hD]hE]hF]hI]uh7jQ hM]r[ hVXprefixr\ r] }r^ (h6Uh7jX ubah?jMubhVX~ to installed program names.] (Currently implemented in a silly and not useful way. If you need this to work give us a shout.)r_ r` }ra (h6X~ to installed program names.] (Currently implemented in a silly and not useful way. If you need this to work give us a shout.)h=NhKNhLhh7jQ ubeubhi)rb }rc (h6X*prefix* may contain the following path variables: ``$pkgid``, ``$pkg``, ``$version``, ``$compiler``, ``$os``, ``$arch``, ``$abi``, ``$abitag``h7jM h=h>h?hlhA}rd (hC]hD]hE]hF]hI]uhKM;hLhhM]re (jE)rf }rg (h6X*prefix*hA}rh (hC]hD]hE]hF]hI]uh7jb hM]ri hVXprefixrj rk }rl (h6Uh7jf ubah?jMubhVX+ may contain the following path variables: rm rn }ro (h6X+ may contain the following path variables: h=NhKNhLhh7jb ubhr)rp }rq (h6X ``$pkgid``hA}rr (hC]hD]hE]hF]hI]uh7jb hM]rs hVX$pkgidrt ru }rv (h6Uh7jp ubah?hzubhVX, rw rx }ry (h6X, rz h=NhKNhLhh7jb ubhr)r{ }r| (h6X``$pkg``hA}r} (hC]hD]hE]hF]hI]uh7jb hM]r~ hVX$pkgr r }r (h6Uh7j{ ubah?hzubhVX, r r }r (h6X, r h=NhKNhLhh7jb ubhr)r }r (h6X ``$version``hA}r (hC]hD]hE]hF]hI]uh7jb hM]r hVX$versionr r }r (h6Uh7j ubah?hzubhVX, r r }r (h6X, h7jb ubhr)r }r (h6X ``$compiler``hA}r (hC]hD]hE]hF]hI]uh7jb hM]r hVX $compilerr r }r (h6Uh7j ubah?hzubhVX, r r }r (h6X, h7jb ubhr)r }r (h6X``$os``hA}r (hC]hD]hE]hF]hI]uh7jb hM]r hVX$osr r }r (h6Uh7j ubah?hzubhVX, r r }r (h6X, h7jb ubhr)r }r (h6X ``$arch``hA}r (hC]hD]hE]hF]hI]uh7jb hM]r hVX$archr r }r (h6Uh7j ubah?hzubhVX, r r }r (h6j h7jb ubhr)r }r (h6X``$abi``hA}r (hC]hD]hE]hF]hI]uh7jb hM]r hVX$abir r }r (h6Uh7j ubah?hzubhVX, r r }r (h6jz h7jb ubhr)r }r (h6X ``$abitag``hA}r (hC]hD]hE]hF]hI]uh7jb hM]r hVX$abitagr r }r (h6Uh7j ubah?hzubeubhi)r }r (h6XCThe command line variant of this flag is ``--program-prefix=foo-``.h7jM h=h>h?hlhA}r (hC]hD]hE]hF]hI]uhKM?hLhhM]r (hVX)The command line variant of this flag is r r }r (h6X)The command line variant of this flag is h=NhKNhLhh7j ubhr)r }r (h6X``--program-prefix=foo-``hA}r (hC]hD]hE]hF]hI]uh7j hM]r hVX--program-prefix=foo-r r }r (h6Uh7j ubah?hzubhVX.r }r (h6X.h=NhKNhLhh7j ubeubeubeubjj )r }r (h6Uh7jh=h>h?jm hA}r (hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r }r (h6Uh7jh=h>h?jr hA}r (jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr jx j uhKNhLhhM]r (jz )r }r (h6Xprogram-suffix: suffixh7j h=h>h?j} hA}r (hF]r Xcfg-field-program-suffixr ahE]hC]hD]hI]j uhKNhLhhM]r (jj )r }r (h6Uh7j h=h>h?jm hA}r (hF]hE]hC]hD]hI]Uentries]r (j X%program-suffix ; cabal project optionj UNtr auhKNhLhhM]ubj )r }r (h6Xprogram-suffixr h7j h=h>h?j hA}r (jjhF]hE]hC]hD]hI]uhKNhLhhM]r hVXprogram-suffixr r }r (h6Uh=NhKNhLhh7j ubaubj )r }r (h6j h7j h=h>h?j hA}r (jjhF]hE]hC]hD]hI]uhKNhLhhM]r hVX: r r }r (h6Uh=NhKNhLhh7j ubaubj )r }r (h6Xsuffixh7j h=h>h?j hA}r (jjhF]hE]hC]hD]hI]uhKNhLhhM]r hVXsuffixr r }r (h6Uh=NhKNhLhh7j ubaubeubjz )r }r (h6X--program-suffix=suffixh7j h=h>h?j} hA}r (hF]r Xcfg-flag---program-suffixr ahE]hC]hD]hI]j uhKNhLhhM]r (jj )r }r (h6Uh7j h=h>h?jm hA}r!(hF]hE]hC]hD]hI]Uentries]r!(j X&--program-suffix; cabal project optionj UNtr!auhKNhLhhM]ubj )r!}r!(h6X--program-suffixr!h7j h=h>h?j hA}r!(jjhF]hE]hC]hD]hI]uhKNhLhhM]r!hVX--program-suffixr!r !}r !(h6Uh=NhKNhLhh7j!ubaubj )r !}r !(h6X=suffixh7j h=h>h?j hA}r !(jjhF]hE]hC]hD]hI]uhKNhLhhM]r!hVX=suffixr!r!}r!(h6Uh=NhKNhLhh7j !ubaubeubj )r!}r!(h6Uh7j h=h>h?j hA}r!(hC]hD]hE]hF]hI]uhKNhLhhM]r!(hi)r!}r!(h6X[STRIKEOUT:Append *suffix* to installed program names.] (Currently implemented in a silly and not useful way. If you need this to work give us a shout.)h7j!h=h>h?hlhA}r!(hC]hD]hE]hF]hI]uhKMEhLhhM]r!(hVX[STRIKEOUT:Append r!r!}r!(h6X[STRIKEOUT:Append h=NhKNhLhh7j!ubjE)r!}r!(h6X*suffix*hA}r!(hC]hD]hE]hF]hI]uh7j!hM]r !hVXsuffixr!!r"!}r#!(h6Uh7j!ubah?jMubhVX~ to installed program names.] (Currently implemented in a silly and not useful way. If you need this to work give us a shout.)r$!r%!}r&!(h6X~ to installed program names.] (Currently implemented in a silly and not useful way. If you need this to work give us a shout.)h=NhKNhLhh7j!ubeubhi)r'!}r(!(h6XThe most obvious use for this is to append the program's version number to make it possible to install several versions of a program at once: ``program-suffix: $version``.h7j!h=h>h?hlhA}r)!(hC]hD]hE]hF]hI]uhKMIhLhhM]r*!(hVXThe most obvious use for this is to append the program’s version number to make it possible to install several versions of a program at once: r+!r,!}r-!(h6XThe most obvious use for this is to append the program's version number to make it possible to install several versions of a program at once: h=NhKNhLhh7j'!ubhr)r.!}r/!(h6X``program-suffix: $version``hA}r0!(hC]hD]hE]hF]hI]uh7j'!hM]r1!hVXprogram-suffix: $versionr2!r3!}r4!(h6Uh7j.!ubah?hzubhVX.r5!}r6!(h6X.h=NhKNhLhh7j'!ubeubhi)r7!}r8!(h6X*suffix* may contain the following path variables: ``$pkgid``, ``$pkg``, ``$version``, ``$compiler``, ``$os``, ``$arch``, ``$abi``, ``$abitag``h7j!h=h>h?hlhA}r9!(hC]hD]hE]hF]hI]uhKMMhLhhM]r:!(jE)r;!}r!hVXsuffixr?!r@!}rA!(h6Uh7j;!ubah?jMubhVX+ may contain the following path variables: rB!rC!}rD!(h6X+ may contain the following path variables: h=NhKNhLhh7j7!ubhr)rE!}rF!(h6X ``$pkgid``hA}rG!(hC]hD]hE]hF]hI]uh7j7!hM]rH!hVX$pkgidrI!rJ!}rK!(h6Uh7jE!ubah?hzubhVX, rL!rM!}rN!(h6X, rO!h=NhKNhLhh7j7!ubhr)rP!}rQ!(h6X``$pkg``hA}rR!(hC]hD]hE]hF]hI]uh7j7!hM]rS!hVX$pkgrT!rU!}rV!(h6Uh7jP!ubah?hzubhVX, rW!rX!}rY!(h6X, rZ!h=NhKNhLhh7j7!ubhr)r[!}r\!(h6X ``$version``hA}r]!(hC]hD]hE]hF]hI]uh7j7!hM]r^!hVX$versionr_!r`!}ra!(h6Uh7j[!ubah?hzubhVX, rb!rc!}rd!(h6X, h7j7!ubhr)re!}rf!(h6X ``$compiler``hA}rg!(hC]hD]hE]hF]hI]uh7j7!hM]rh!hVX $compilerri!rj!}rk!(h6Uh7je!ubah?hzubhVX, rl!rm!}rn!(h6X, h7j7!ubhr)ro!}rp!(h6X``$os``hA}rq!(hC]hD]hE]hF]hI]uh7j7!hM]rr!hVX$osrs!rt!}ru!(h6Uh7jo!ubah?hzubhVX, rv!rw!}rx!(h6X, h7j7!ubhr)ry!}rz!(h6X ``$arch``hA}r{!(hC]hD]hE]hF]hI]uh7j7!hM]r|!hVX$archr}!r~!}r!(h6Uh7jy!ubah?hzubhVX, r!r!}r!(h6jZ!h7j7!ubhr)r!}r!(h6X``$abi``hA}r!(hC]hD]hE]hF]hI]uh7j7!hM]r!hVX$abir!r!}r!(h6Uh7j!ubah?hzubhVX, r!r!}r!(h6jO!h7j7!ubhr)r!}r!(h6X ``$abitag``hA}r!(hC]hD]hE]hF]hI]uh7j7!hM]r!hVX$abitagr!r!}r!(h6Uh7j!ubah?hzubeubhi)r!}r!(h6XIThe command line variant of this flag is ``--program-suffix='$version'``.h7j!h=h>h?hlhA}r!(hC]hD]hE]hF]hI]uhKMQhLhhM]r!(hVX)The command line variant of this flag is r!r!}r!(h6X)The command line variant of this flag is h=NhKNhLhh7j!ubhr)r!}r!(h6X``--program-suffix='$version'``hA}r!(hC]hD]hE]hF]hI]uh7j!hM]r!hVX--program-suffix='$version'r!r!}r!(h6Uh7j!ubah?hzubhVX.r!}r!(h6X.h=NhKNhLhh7j!ubeubeubeubeubh8)r!}r!(h6Uh7jh=h>h?h@hA}r!(hC]hD]hE]hF]r!jahI]r!h auhKMUhLhhM]r!(hO)r!}r!(h6XDynamic linking optionsr!h7j!h=h>h?hShA}r!(hC]hD]hE]hF]hI]uhKMUhLhhM]r!hVXDynamic linking optionsr!r!}r!(h6j!h=NhKNhLhh7j!ubaubjj )r!}r!(h6Uh7j!h=h>h?jm hA}r!(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r!}r!(h6Uh7j!h=h>h?jr hA}r!(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr!jx j!uhKNhLhhM]r!(jz )r!}r!(h6Xshared: booleanh7j!h=h>h?j} hA}r!(hF]r!Xcfg-field-sharedr!ahE]hC]hD]hI]j uhKNhLhhM]r!(jj )r!}r!(h6Uh7j!h=h>h?jm hA}r!(hF]hE]hC]hD]hI]Uentries]r!(j Xshared ; cabal project optionj!UNtr!auhKNhLhhM]ubj )r!}r!(h6Xsharedr!h7j!h=h>h?j hA}r!(jjhF]hE]hC]hD]hI]uhKNhLhhM]r!hVXsharedr!r!}r!(h6Uh=NhKNhLhh7j!ubaubj )r!}r!(h6j h7j!h=h>h?j hA}r!(jjhF]hE]hC]hD]hI]uhKNhLhhM]r!hVX: r!r!}r!(h6Uh=NhKNhLhh7j!ubaubj )r!}r!(h6Xbooleanh7j!h=h>h?j hA}r!(jjhF]hE]hC]hD]hI]uhKNhLhhM]r!hVXbooleanr!r!}r!(h6Uh=NhKNhLhh7j!ubaubeubjz )r!}r!(h6X--enable-sharedr!h7j!h=h>h?j} hA}r!(hF]r!Xcfg-flag---enable-sharedr!ahE]hC]hD]hI]j uhKNhLhhM]r!(jj )r!}r!(h6Uh7j!h=h>h?jm hA}r!(hF]hE]hC]hD]hI]Uentries]r!(j X%--enable-shared; cabal project optionj!UNtr!auhKNhLhhM]ubj )r!}r!(h6j!h7j!h=h>h?j hA}r!(jjhF]hE]hC]hD]hI]uhKNhLhhM]r!hVX--enable-sharedr!r!}r!(h6Uh=NhKNhLhh7j!ubaubj )r!}r!(h6U h7j!h=h>h?j hA}r!(jjhF]hE]hC]hD]hI]uhKNhLhhM]r!hVX r!}r!(h6Uh=NhKNhLhh7j!ubaubeubjz )r!}r!(h6X--disable-sharedr!h7j!h=h>h?j} hA}r!(hF]r!Xcfg-flag---disable-sharedr!ahE]hC]hD]hI]j uhKNhLhhM]r!(jj )r!}r!(h6Uh7j!h=h>h?jm hA}r!(hF]hE]hC]hD]hI]Uentries]r!(j X&--disable-shared; cabal project optionj!UNtr!auhKNhLhhM]ubj )r"}r"(h6j!h7j!h=h>h?j hA}r"(jjhF]hE]hC]hD]hI]uhKNhLhhM]r"hVX--disable-sharedr"r"}r"(h6Uh=NhKNhLhh7j"ubaubj )r"}r"(h6U h7j!h=h>h?j hA}r "(jjhF]hE]hC]hD]hI]uhKNhLhhM]r "hVX r "}r "(h6Uh=NhKNhLhh7j"ubaubeubj )r "}r"(h6Uh7j!h=h>h?j hA}r"(hC]hD]hE]hF]hI]uhKNhLhhM]r"(j )r"}r"(h6Uh7j "h=h>h?j hA}r"(hC]hD]hE]hF]hI]uhKNhLhhM]r"j )r"}r"(h6UhA}r"(hC]hD]hE]hF]hI]uh7j"hM]r"(j )r"}r"(h6X Default valueh7j"h=h>h?j hA}r"(hC]hD]hE]hF]hI]uhKKhM]r"hVX Default valuer"r"}r"(h6Uh7j"ubaubj )r "}r!"(h6UhA}r""(hC]hD]hE]hF]hI]uh7j"hM]r#"hi)r$"}r%"(h6XFalsehA}r&"(hC]hD]hE]hF]hI]uh7j "hM]r'"hVXFalser("r)"}r*"(h6XFalseh=NhKNhLhh7j$"ubah?hlubah?j ubeh?j ubaubhi)r+"}r,"(h6XBuild shared library. This implies a separate compiler run to generate position independent code as required on most platforms.r-"h7j "h=h>h?hlhA}r."(hC]hD]hE]hF]hI]uhKM^hLhhM]r/"hVXBuild shared library. This implies a separate compiler run to generate position independent code as required on most platforms.r0"r1"}r2"(h6j-"h=NhKNhLhh7j+"ubaubhi)r3"}r4"(h6XVThe command line variant of this flag is ``--enable-shared`` and ``--disable-shared``.h7j "h=h>h?hlhA}r5"(hC]hD]hE]hF]hI]uhKMahLhhM]r6"(hVX)The command line variant of this flag is r7"r8"}r9"(h6X)The command line variant of this flag is h=NhKNhLhh7j3"ubhr)r:"}r;"(h6X``--enable-shared``hA}r<"(hC]hD]hE]hF]hI]uh7j3"hM]r="hVX--enable-sharedr>"r?"}r@"(h6Uh7j:"ubah?hzubhVX and rA"rB"}rC"(h6X and h=NhKNhLhh7j3"ubhr)rD"}rE"(h6X``--disable-shared``hA}rF"(hC]hD]hE]hF]hI]uh7j3"hM]rG"hVX--disable-sharedrH"rI"}rJ"(h6Uh7jD"ubah?hzubhVX.rK"}rL"(h6X.h=NhKNhLhh7j3"ubeubeubeubjj )rM"}rN"(h6Uh7j!h=h>h?jm hA}rO"(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )rP"}rQ"(h6Uh7j!h=h>h?jr hA}rR"(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldrS"jx jS"uhKNhLhhM]rT"(jz )rU"}rV"(h6Xexecutable-dynamic: booleanh7jP"h=h>h?j} hA}rW"(hF]rX"Xcfg-field-executable-dynamicrY"ahE]hC]hD]hI]j uhKNhLhhM]rZ"(jj )r["}r\"(h6Uh7jU"h=h>h?jm hA}r]"(hF]hE]hC]hD]hI]Uentries]r^"(j X)executable-dynamic ; cabal project optionjY"UNtr_"auhKNhLhhM]ubj )r`"}ra"(h6Xexecutable-dynamicrb"h7jU"h=h>h?j hA}rc"(jjhF]hE]hC]hD]hI]uhKNhLhhM]rd"hVXexecutable-dynamicre"rf"}rg"(h6Uh=NhKNhLhh7j`"ubaubj )rh"}ri"(h6j h7jU"h=h>h?j hA}rj"(jjhF]hE]hC]hD]hI]uhKNhLhhM]rk"hVX: rl"rm"}rn"(h6Uh=NhKNhLhh7jh"ubaubj )ro"}rp"(h6Xbooleanh7jU"h=h>h?j hA}rq"(jjhF]hE]hC]hD]hI]uhKNhLhhM]rr"hVXbooleanrs"rt"}ru"(h6Uh=NhKNhLhh7jo"ubaubeubjz )rv"}rw"(h6X--enable-executable-dynamicrx"h7jP"h=h>h?j} hA}ry"(hF]rz"X$cfg-flag---enable-executable-dynamicr{"ahE]hC]hD]hI]j uhKNhLhhM]r|"(jj )r}"}r~"(h6Uh7jv"h=h>h?jm hA}r"(hF]hE]hC]hD]hI]Uentries]r"(j X1--enable-executable-dynamic; cabal project optionj{"UNtr"auhKNhLhhM]ubj )r"}r"(h6jx"h7jv"h=h>h?j hA}r"(jjhF]hE]hC]hD]hI]uhKNhLhhM]r"hVX--enable-executable-dynamicr"r"}r"(h6Uh=NhKNhLhh7j"ubaubj )r"}r"(h6U h7jv"h=h>h?j hA}r"(jjhF]hE]hC]hD]hI]uhKNhLhhM]r"hVX r"}r"(h6Uh=NhKNhLhh7j"ubaubeubjz )r"}r"(h6X--disable-executable-dynamicr"h7jP"h=h>h?j} hA}r"(hF]r"X%cfg-flag---disable-executable-dynamicr"ahE]hC]hD]hI]j uhKNhLhhM]r"(jj )r"}r"(h6Uh7j"h=h>h?jm hA}r"(hF]hE]hC]hD]hI]Uentries]r"(j X2--disable-executable-dynamic; cabal project optionj"UNtr"auhKNhLhhM]ubj )r"}r"(h6j"h7j"h=h>h?j hA}r"(jjhF]hE]hC]hD]hI]uhKNhLhhM]r"hVX--disable-executable-dynamicr"r"}r"(h6Uh=NhKNhLhh7j"ubaubj )r"}r"(h6U h7j"h=h>h?j hA}r"(jjhF]hE]hC]hD]hI]uhKNhLhhM]r"hVX r"}r"(h6Uh=NhKNhLhh7j"ubaubeubj )r"}r"(h6Uh7jP"h=h>h?j hA}r"(hC]hD]hE]hF]hI]uhKNhLhhM]r"(j )r"}r"(h6Uh7j"h=h>h?j hA}r"(hC]hD]hE]hF]hI]uhKNhLhhM]r"j )r"}r"(h6UhA}r"(hC]hD]hE]hF]hI]uh7j"hM]r"(j )r"}r"(h6X Default valueh7j"h=h>h?j hA}r"(hC]hD]hE]hF]hI]uhKKhM]r"hVX Default valuer"r"}r"(h6Uh7j"ubaubj )r"}r"(h6UhA}r"(hC]hD]hE]hF]hI]uh7j"hM]r"hi)r"}r"(h6XFalsehA}r"(hC]hD]hE]hF]hI]uh7j"hM]r"hVXFalser"r"}r"(h6XFalseh=NhKNhLhh7j"ubah?hlubah?j ubeh?j ubaubhi)r"}r"(h6XLink executables dynamically. The executable's library dependencies should be built as shared objects. This implies ``shared: True`` unless ``shared: False`` is explicitly specified.h7j"h=h>h?hlhA}r"(hC]hD]hE]hF]hI]uhKMkhLhhM]r"(hVXvLink executables dynamically. The executable’s library dependencies should be built as shared objects. This implies r"r"}r"(h6XtLink executables dynamically. The executable's library dependencies should be built as shared objects. This implies h=NhKNhLhh7j"ubhr)r"}r"(h6X``shared: True``hA}r"(hC]hD]hE]hF]hI]uh7j"hM]r"hVX shared: Truer"r"}r"(h6Uh7j"ubah?hzubhVX unless r"r"}r"(h6X unless h=NhKNhLhh7j"ubhr)r"}r"(h6X``shared: False``hA}r"(hC]hD]hE]hF]hI]uh7j"hM]r"hVX shared: Falser"r"}r"(h6Uh7j"ubah?hzubhVX is explicitly specified.r"r"}r"(h6X is explicitly specified.h=NhKNhLhh7j"ubeubhi)r"}r"(h6XnThe command line variant of this flag is ``--enable-executable-dynamic`` and ``--disable-executable-dynamic``.h7j"h=h>h?hlhA}r"(hC]hD]hE]hF]hI]uhKMohLhhM]r"(hVX)The command line variant of this flag is r"r"}r"(h6X)The command line variant of this flag is h=NhKNhLhh7j"ubhr)r"}r"(h6X``--enable-executable-dynamic``hA}r"(hC]hD]hE]hF]hI]uh7j"hM]r"hVX--enable-executable-dynamicr"r"}r"(h6Uh7j"ubah?hzubhVX and r"r"}r"(h6X and h=NhKNhLhh7j"ubhr)r"}r"(h6X ``--disable-executable-dynamic``hA}r"(hC]hD]hE]hF]hI]uh7j"hM]r"hVX--disable-executable-dynamicr"r"}r"(h6Uh7j"ubah?hzubhVX.r"}r"(h6X.h=NhKNhLhh7j"ubeubeubeubjj )r"}r"(h6Uh7j!h=h>h?jm hA}r"(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r"}r"(h6Uh7j!h=h>h?jr hA}r#(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr#jx j#uhKNhLhhM]r#(jz )r#}r#(h6Xlibrary-for-ghci: booleanh7j"h=h>h?j} hA}r#(hF]r#Xcfg-field-library-for-ghcir#ahE]hC]hD]hI]j uhKNhLhhM]r#(jj )r #}r #(h6Uh7j#h=h>h?jm hA}r #(hF]hE]hC]hD]hI]Uentries]r #(j X'library-for-ghci ; cabal project optionj#UNtr #auhKNhLhhM]ubj )r#}r#(h6Xlibrary-for-ghcir#h7j#h=h>h?j hA}r#(jjhF]hE]hC]hD]hI]uhKNhLhhM]r#hVXlibrary-for-ghcir#r#}r#(h6Uh=NhKNhLhh7j#ubaubj )r#}r#(h6j h7j#h=h>h?j hA}r#(jjhF]hE]hC]hD]hI]uhKNhLhhM]r#hVX: r#r#}r#(h6Uh=NhKNhLhh7j#ubaubj )r#}r#(h6Xbooleanh7j#h=h>h?j hA}r#(jjhF]hE]hC]hD]hI]uhKNhLhhM]r #hVXbooleanr!#r"#}r##(h6Uh=NhKNhLhh7j#ubaubeubjz )r$#}r%#(h6X--enable-library-for-ghcir&#h7j"h=h>h?j} hA}r'#(hF]r(#X"cfg-flag---enable-library-for-ghcir)#ahE]hC]hD]hI]j uhKNhLhhM]r*#(jj )r+#}r,#(h6Uh7j$#h=h>h?jm hA}r-#(hF]hE]hC]hD]hI]Uentries]r.#(j X/--enable-library-for-ghci; cabal project optionj)#UNtr/#auhKNhLhhM]ubj )r0#}r1#(h6j&#h7j$#h=h>h?j hA}r2#(jjhF]hE]hC]hD]hI]uhKNhLhhM]r3#hVX--enable-library-for-ghcir4#r5#}r6#(h6Uh=NhKNhLhh7j0#ubaubj )r7#}r8#(h6U h7j$#h=h>h?j hA}r9#(jjhF]hE]hC]hD]hI]uhKNhLhhM]r:#hVX r;#}r<#(h6Uh=NhKNhLhh7j7#ubaubeubjz )r=#}r>#(h6X--disable-library-for-ghcir?#h7j"h=h>h?j} hA}r@#(hF]rA#X#cfg-flag---disable-library-for-ghcirB#ahE]hC]hD]hI]j uhKNhLhhM]rC#(jj )rD#}rE#(h6Uh7j=#h=h>h?jm hA}rF#(hF]hE]hC]hD]hI]Uentries]rG#(j X0--disable-library-for-ghci; cabal project optionjB#UNtrH#auhKNhLhhM]ubj )rI#}rJ#(h6j?#h7j=#h=h>h?j hA}rK#(jjhF]hE]hC]hD]hI]uhKNhLhhM]rL#hVX--disable-library-for-ghcirM#rN#}rO#(h6Uh=NhKNhLhh7jI#ubaubj )rP#}rQ#(h6U h7j=#h=h>h?j hA}rR#(jjhF]hE]hC]hD]hI]uhKNhLhhM]rS#hVX rT#}rU#(h6Uh=NhKNhLhh7jP#ubaubeubj )rV#}rW#(h6Uh7j"h=h>h?j hA}rX#(hC]hD]hE]hF]hI]uhKNhLhhM]rY#(j )rZ#}r[#(h6Uh7jV#h=h>h?j hA}r\#(hC]hD]hE]hF]hI]uhKNhLhhM]r]#j )r^#}r_#(h6UhA}r`#(hC]hD]hE]hF]hI]uh7jZ#hM]ra#(j )rb#}rc#(h6X Default valueh7j^#h=h>h?j hA}rd#(hC]hD]hE]hF]hI]uhKKhM]re#hVX Default valuerf#rg#}rh#(h6Uh7jb#ubaubj )ri#}rj#(h6UhA}rk#(hC]hD]hE]hF]hI]uh7j^#hM]rl#hi)rm#}rn#(h6XTruehA}ro#(hC]hD]hE]hF]hI]uh7ji#hM]rp#hVXTruerq#rr#}rs#(h6XTrueh=NhKNhLhh7jm#ubah?hlubah?j ubeh?j ubaubhi)rt#}ru#(h6X`Build libraries suitable for use with GHCi. This involves an extra linking step after the build.rv#h7jV#h=h>h?hlhA}rw#(hC]hD]hE]hF]hI]uhKMzhLhhM]rx#hVX`Build libraries suitable for use with GHCi. This involves an extra linking step after the build.ry#rz#}r{#(h6jv#h=NhKNhLhh7jt#ubaubhi)r|#}r}#(h6XNot all platforms support GHCi and indeed on some platforms, trying to build GHCi libs fails. In such cases, consider setting ``library-for-ghci: False``.h7jV#h=h>h?hlhA}r~#(hC]hD]hE]hF]hI]uhKM}hLhhM]r#(hVX~Not all platforms support GHCi and indeed on some platforms, trying to build GHCi libs fails. In such cases, consider setting r#r#}r#(h6X~Not all platforms support GHCi and indeed on some platforms, trying to build GHCi libs fails. In such cases, consider setting h=NhKNhLhh7j|#ubhr)r#}r#(h6X``library-for-ghci: False``hA}r#(hC]hD]hE]hF]hI]uh7j|#hM]r#hVXlibrary-for-ghci: Falser#r#}r#(h6Uh7j#ubah?hzubhVX.r#}r#(h6X.h=NhKNhLhh7j|#ubeubhi)r#}r#(h6XjThe command line variant of this flag is ``--enable-library-for-ghci`` and ``--disable-library-for-ghci``.h7jV#h=h>h?hlhA}r#(hC]hD]hE]hF]hI]uhKMhLhhM]r#(hVX)The command line variant of this flag is r#r#}r#(h6X)The command line variant of this flag is h=NhKNhLhh7j#ubhr)r#}r#(h6X``--enable-library-for-ghci``hA}r#(hC]hD]hE]hF]hI]uh7j#hM]r#hVX--enable-library-for-ghcir#r#}r#(h6Uh7j#ubah?hzubhVX and r#r#}r#(h6X and h=NhKNhLhh7j#ubhr)r#}r#(h6X``--disable-library-for-ghci``hA}r#(hC]hD]hE]hF]hI]uh7j#hM]r#hVX--disable-library-for-ghcir#r#}r#(h6Uh7j#ubah?hzubhVX.r#}r#(h6X.h=NhKNhLhh7j#ubeubeubeubjj )r#}r#(h6Uh7j!h=h>h?jm hA}r#(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r#}r#(h6Uh7j!h=h>h?jr hA}r#(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr#jx j#uhKNhLhhM]r#(jz )r#}r#(h6X relocatable:h7j#h=h>h?j} hA}r#(hF]r#Xcfg-field-relocatabler#ahE]hC]hD]hI]j uhKNhLhhM]r#(jj )r#}r#(h6Uh7j#h=h>h?jm hA}r#(hF]hE]hC]hD]hI]Uentries]r#(j X"relocatable ; cabal project optionj#UNtr#auhKNhLhhM]ubj )r#}r#(h6X relocatabler#h7j#h=h>h?j hA}r#(jjhF]hE]hC]hD]hI]uhKNhLhhM]r#hVX relocatabler#r#}r#(h6Uh=NhKNhLhh7j#ubaubj )r#}r#(h6j h7j#h=h>h?j hA}r#(jjhF]hE]hC]hD]hI]uhKNhLhhM]r#hVX: r#r#}r#(h6Uh=NhKNhLhh7j#ubaubj )r#}r#(h6Uh7j#h=h>h?j hA}r#(jjhF]hE]hC]hD]hI]uhKNhLhhM]ubeubjz )r#}r#(h6X --relocatabler#h7j#h=h>h?j} hA}r#(hF]r#Xcfg-flag---relocatabler#ahE]hC]hD]hI]j uhKNhLhhM]r#(jj )r#}r#(h6Uh7j#h=h>h?jm hA}r#(hF]hE]hC]hD]hI]Uentries]r#(j X#--relocatable; cabal project optionj#UNtr#auhKNhLhhM]ubj )r#}r#(h6j#h7j#h=h>h?j hA}r#(jjhF]hE]hC]hD]hI]uhKNhLhhM]r#hVX --relocatabler#r#}r#(h6Uh=NhKNhLhh7j#ubaubj )r#}r#(h6U h7j#h=h>h?j hA}r#(jjhF]hE]hC]hD]hI]uhKNhLhhM]r#hVX r#}r#(h6Uh=NhKNhLhh7j#ubaubeubj )r#}r#(h6Uh7j#h=h>h?j hA}r#(hC]hD]hE]hF]hI]uhKNhLhhM]r#(j )r#}r#(h6Uh7j#h=h>h?j hA}r#(hC]hD]hE]hF]hI]uhKNhLhhM]r#(j )r#}r#(h6Uh7j#h=h>h?j hA}r#(hC]hD]hE]hF]hI]uhKNhLhhM]r#(j )r#}r#(h6jh7j#h=h>h?j hA}r#(hC]hD]hE]hF]hI]uhKKhM]r#hVXSincer#r#}r#(h6Uh7j#ubaubj )r#}r#(h6U Cabal 1.21r#hA}r#(hC]hD]hE]hF]hI]uh7j#hM]r#hi)r#}r#(h6j#hA}r#(hC]hD]hE]hF]hI]uh7j#hM]r#hVX Cabal 1.21r$r$}r$(h6Uh7j#ubah?hlubah?j ubeubj )r$}r$(h6UhA}r$(hC]hD]hE]hF]hI]uh7j#hM]r$(j )r$}r$(h6X Default valueh7j$h=h>h?j hA}r $(hC]hD]hE]hF]hI]uhKKhM]r $hVX Default valuer $r $}r $(h6Uh7j$ubaubj )r$}r$(h6UhA}r$(hC]hD]hE]hF]hI]uh7j$hM]r$hi)r$}r$(h6XFalsehA}r$(hC]hD]hE]hF]hI]uh7j$hM]r$hVXFalser$r$}r$(h6XFalseh=NhKNhLhh7j$ubah?hlubah?j ubeh?j ubeubhi)r$}r$(h6Xy[STRIKEOUT:Build a package which is relocatable.] (TODO: It is not clear what this actually does, or if it works at all.)r$h7j#h=h>h?hlhA}r$(hC]hD]hE]hF]hI]uhKMhLhhM]r$hVXy[STRIKEOUT:Build a package which is relocatable.] (TODO: It is not clear what this actually does, or if it works at all.)r$r$}r $(h6j$h=NhKNhLhh7j$ubaubhi)r!$}r"$(h6X;The command line variant of this flag is ``--relocatable``.h7j#h=h>h?hlhA}r#$(hC]hD]hE]hF]hI]uhKMhLhhM]r$$(hVX)The command line variant of this flag is r%$r&$}r'$(h6X)The command line variant of this flag is h=NhKNhLhh7j!$ubhr)r($}r)$(h6X``--relocatable``hA}r*$(hC]hD]hE]hF]hI]uh7j!$hM]r+$hVX --relocatabler,$r-$}r.$(h6Uh7j($ubah?hzubhVX.r/$}r0$(h6X.h=NhKNhLhh7j!$ubeubeubeubeubh8)r1$}r2$(h6Uh7jh=h>h?h@hA}r3$(hC]hD]hE]hF]r4$jahI]r5$hauhKMhLhhM]r6$(hO)r7$}r8$(h6X"Foreign function interface optionsr9$h7j1$h=h>h?hShA}r:$(hC]hD]hE]hF]hI]uhKMhLhhM]r;$hVX"Foreign function interface optionsr<$r=$}r>$(h6j9$h=NhKNhLhh7j7$ubaubjj )r?$}r@$(h6Uh7j1$h=h>h?jm hA}rA$(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )rB$}rC$(h6Uh7j1$h=h>h?jr hA}rD$(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldrE$jx jE$uhKNhLhhM]rF$(jz )rG$}rH$(h6XAextra-include-dirs: directories (comma or newline separated list)h7jB$h=h>h?j} hA}rI$(hF]rJ$Xcfg-field-extra-include-dirsrK$ahE]hC]hD]hI]j uhKNhLhhM]rL$(jj )rM$}rN$(h6Uh7jG$h=h>h?jm hA}rO$(hF]hE]hC]hD]hI]Uentries]rP$(j X)extra-include-dirs ; cabal project optionjK$UNtrQ$auhKNhLhhM]ubj )rR$}rS$(h6Xextra-include-dirsrT$h7jG$h=h>h?j hA}rU$(jjhF]hE]hC]hD]hI]uhKNhLhhM]rV$hVXextra-include-dirsrW$rX$}rY$(h6Uh=NhKNhLhh7jR$ubaubj )rZ$}r[$(h6j h7jG$h=h>h?j hA}r\$(jjhF]hE]hC]hD]hI]uhKNhLhhM]r]$hVX: r^$r_$}r`$(h6Uh=NhKNhLhh7jZ$ubaubj )ra$}rb$(h6X-directories (comma or newline separated list)h7jG$h=h>h?j hA}rc$(jjhF]hE]hC]hD]hI]uhKNhLhhM]rd$hVX-directories (comma or newline separated list)re$rf$}rg$(h6Uh=NhKNhLhh7ja$ubaubeubjz )rh$}ri$(h6X--extra-include-dirs=DIRh7jB$h=h>h?j} hA}rj$(hF]rk$Xcfg-flag---extra-include-dirsrl$ahE]hC]hD]hI]j uhKNhLhhM]rm$(jj )rn$}ro$(h6Uh7jh$h=h>h?jm hA}rp$(hF]hE]hC]hD]hI]Uentries]rq$(j X*--extra-include-dirs; cabal project optionjl$UNtrr$auhKNhLhhM]ubj )rs$}rt$(h6X--extra-include-dirsru$h7jh$h=h>h?j hA}rv$(jjhF]hE]hC]hD]hI]uhKNhLhhM]rw$hVX--extra-include-dirsrx$ry$}rz$(h6Uh=NhKNhLhh7js$ubaubj )r{$}r|$(h6X=DIRh7jh$h=h>h?j hA}r}$(jjhF]hE]hC]hD]hI]uhKNhLhhM]r~$hVX=DIRr$r$}r$(h6Uh=NhKNhLhh7j{$ubaubeubj )r$}r$(h6Uh7jB$h=h>h?j hA}r$(hC]hD]hE]hF]hI]uhKNhLhhM]r$(hi)r$}r$(h6XsAn extra directory to search for C header files. You can use this flag multiple times to get a list of directories.r$h7j$h=h>h?hlhA}r$(hC]hD]hE]hF]hI]uhKMhLhhM]r$hVXsAn extra directory to search for C header files. You can use this flag multiple times to get a list of directories.r$r$}r$(h6j$h=NhKNhLhh7j$ubaubhi)r$}r$(h6XYYou might need to use this flag if you have standard system header files in a non-standard location that is not mentioned in the package's ``.cabal`` file. Using this option has the same affect as appending the directory *dir* to the :pkg-field:`include-dirs` field in each library and executable in the package's ``.cabal`` file. The advantage of course is that you do not have to modify the package at all. These extra directories will be used while building the package and for libraries it is also saved in the package registration information and used when compiling modules that use the library.h7j$h=h>h?hlhA}r$(hC]hD]hE]hF]hI]uhKMhLhhM]r$(hVXYou might need to use this flag if you have standard system header files in a non-standard location that is not mentioned in the package’s r$r$}r$(h6XYou might need to use this flag if you have standard system header files in a non-standard location that is not mentioned in the package's h=NhKNhLhh7j$ubhr)r$}r$(h6X ``.cabal``hA}r$(hC]hD]hE]hF]hI]uh7j$hM]r$hVX.cabalr$r$}r$(h6Uh7j$ubah?hzubhVXH file. Using this option has the same affect as appending the directory r$r$}r$(h6XH file. Using this option has the same affect as appending the directory h=NhKNhLhh7j$ubjE)r$}r$(h6X*dir*hA}r$(hC]hD]hE]hF]hI]uh7j$hM]r$hVXdirr$r$}r$(h6Uh7j$ubah?jMubhVX to the r$r$}r$(h6X to the h=NhKNhLhh7j$ubjl )r$}r$(h6X:pkg-field:`include-dirs`r$h7j$h=h>h?jp hA}r$(UreftypeX pkg-fieldjr js X include-dirsU refdomainXcabalr$hF]hE]U refexplicithC]hD]hI]ju jv jNuhKMhM]r$hr)r$}r$(h6j$hA}r$(hC]hD]r$(j} j$Xcabal-pkg-fieldr$ehE]hF]hI]uh7j$hM]r$hVX include-dirsr$r$}r$(h6Uh7j$ubah?hzubaubhVX9 field in each library and executable in the package’s r$r$}r$(h6X7 field in each library and executable in the package's h=NhKNhLhh7j$ubhr)r$}r$(h6X ``.cabal``hA}r$(hC]hD]hE]hF]hI]uh7j$hM]r$hVX.cabalr$r$}r$(h6Uh7j$ubah?hzubhVX file. The advantage of course is that you do not have to modify the package at all. These extra directories will be used while building the package and for libraries it is also saved in the package registration information and used when compiling modules that use the library.r$r$}r$(h6X file. The advantage of course is that you do not have to modify the package at all. These extra directories will be used while building the package and for libraries it is also saved in the package registration information and used when compiling modules that use the library.h=NhKNhLhh7j$ubeubhi)r$}r$(h6XmThe command line variant of this flag is ``--extra-include-dirs=DIR``, which can be specified multiple times.h7j$h=h>h?hlhA}r$(hC]hD]hE]hF]hI]uhKMhLhhM]r$(hVX)The command line variant of this flag is r$r$}r$(h6X)The command line variant of this flag is h=NhKNhLhh7j$ubhr)r$}r$(h6X``--extra-include-dirs=DIR``hA}r$(hC]hD]hE]hF]hI]uh7j$hM]r$hVX--extra-include-dirs=DIRr$r$}r$(h6Uh7j$ubah?hzubhVX(, which can be specified multiple times.r$r$}r$(h6X(, which can be specified multiple times.h=NhKNhLhh7j$ubeubeubeubjj )r$}r$(h6Uh7j1$h=h>h?jm hA}r$(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r$}r$(h6Uh7j1$h=h>h?jr hA}r$(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr$jx j$uhKNhLhhM]r$(jz )r$}r$(h6X=extra-lib-dirs: directories (comma or newline separated list)h7j$h=h>h?j} hA}r$(hF]r$Xcfg-field-extra-lib-dirsr$ahE]hC]hD]hI]j uhKNhLhhM]r$(jj )r$}r$(h6Uh7j$h=h>h?jm hA}r$(hF]hE]hC]hD]hI]Uentries]r$(j X%extra-lib-dirs ; cabal project optionj$UNtr$auhKNhLhhM]ubj )r$}r$(h6Xextra-lib-dirsr$h7j$h=h>h?j hA}r$(jjhF]hE]hC]hD]hI]uhKNhLhhM]r$hVXextra-lib-dirsr$r$}r$(h6Uh=NhKNhLhh7j$ubaubj )r$}r$(h6j h7j$h=h>h?j hA}r$(jjhF]hE]hC]hD]hI]uhKNhLhhM]r$hVX: r$r$}r$(h6Uh=NhKNhLhh7j$ubaubj )r$}r$(h6X-directories (comma or newline separated list)h7j$h=h>h?j hA}r$(jjhF]hE]hC]hD]hI]uhKNhLhhM]r$hVX-directories (comma or newline separated list)r$r$}r$(h6Uh=NhKNhLhh7j$ubaubeubjz )r$}r%(h6X--extra-lib-dirs=DIRh7j$h=h>h?j} hA}r%(hF]r%Xcfg-flag---extra-lib-dirsr%ahE]hC]hD]hI]j uhKNhLhhM]r%(jj )r%}r%(h6Uh7j$h=h>h?jm hA}r%(hF]hE]hC]hD]hI]Uentries]r%(j X&--extra-lib-dirs; cabal project optionj%UNtr %auhKNhLhhM]ubj )r %}r %(h6X--extra-lib-dirsr %h7j$h=h>h?j hA}r %(jjhF]hE]hC]hD]hI]uhKNhLhhM]r%hVX--extra-lib-dirsr%r%}r%(h6Uh=NhKNhLhh7j %ubaubj )r%}r%(h6X=DIRh7j$h=h>h?j hA}r%(jjhF]hE]hC]hD]hI]uhKNhLhhM]r%hVX=DIRr%r%}r%(h6Uh=NhKNhLhh7j%ubaubeubj )r%}r%(h6Uh7j$h=h>h?j hA}r%(hC]hD]hE]hF]hI]uhKNhLhhM]r%(hi)r%}r%(h6X8An extra directory to search for system libraries files.r%h7j%h=h>h?hlhA}r %(hC]hD]hE]hF]hI]uhKMhLhhM]r!%hVX8An extra directory to search for system libraries files.r"%r#%}r$%(h6j%h=NhKNhLhh7j%ubaubhi)r%%}r&%(h6XiThe command line variant of this flag is ``--extra-lib-dirs=DIR``, which can be specified multiple times.h7j%h=h>h?hlhA}r'%(hC]hD]hE]hF]hI]uhKMhLhhM]r(%(hVX)The command line variant of this flag is r)%r*%}r+%(h6X)The command line variant of this flag is h=NhKNhLhh7j%%ubhr)r,%}r-%(h6X``--extra-lib-dirs=DIR``hA}r.%(hC]hD]hE]hF]hI]uh7j%%hM]r/%hVX--extra-lib-dirs=DIRr0%r1%}r2%(h6Uh7j,%ubah?hzubhVX(, which can be specified multiple times.r3%r4%}r5%(h6X(, which can be specified multiple times.h=NhKNhLhh7j%%ubeubeubeubjj )r6%}r7%(h6Uh7j1$h=h>h?jm hA}r8%(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r9%}r:%(h6Uh7j1$h=h>h?jr hA}r;%(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr<%jx j<%uhKNhLhhM]r=%(jz )r>%}r?%(h6XCextra-framework-dirs: directories (comma or newline separated list)h7j9%h=h>h?j} hA}r@%(hF]rA%Xcfg-field-extra-framework-dirsrB%ahE]hC]hD]hI]j uhKNhLhhM]rC%(jj )rD%}rE%(h6Uh7j>%h=h>h?jm hA}rF%(hF]hE]hC]hD]hI]Uentries]rG%(j X+extra-framework-dirs ; cabal project optionjB%UNtrH%auhKNhLhhM]ubj )rI%}rJ%(h6Xextra-framework-dirsrK%h7j>%h=h>h?j hA}rL%(jjhF]hE]hC]hD]hI]uhKNhLhhM]rM%hVXextra-framework-dirsrN%rO%}rP%(h6Uh=NhKNhLhh7jI%ubaubj )rQ%}rR%(h6j h7j>%h=h>h?j hA}rS%(jjhF]hE]hC]hD]hI]uhKNhLhhM]rT%hVX: rU%rV%}rW%(h6Uh=NhKNhLhh7jQ%ubaubj )rX%}rY%(h6X-directories (comma or newline separated list)h7j>%h=h>h?j hA}rZ%(jjhF]hE]hC]hD]hI]uhKNhLhhM]r[%hVX-directories (comma or newline separated list)r\%r]%}r^%(h6Uh=NhKNhLhh7jX%ubaubeubjz )r_%}r`%(h6X--extra-framework-dirs=DIRh7j9%h=h>h?j} hA}ra%(hF]rb%Xcfg-flag---extra-framework-dirsrc%ahE]hC]hD]hI]j uhKNhLhhM]rd%(jj )re%}rf%(h6Uh7j_%h=h>h?jm hA}rg%(hF]hE]hC]hD]hI]Uentries]rh%(j X,--extra-framework-dirs; cabal project optionjc%UNtri%auhKNhLhhM]ubj )rj%}rk%(h6X--extra-framework-dirsrl%h7j_%h=h>h?j hA}rm%(jjhF]hE]hC]hD]hI]uhKNhLhhM]rn%hVX--extra-framework-dirsro%rp%}rq%(h6Uh=NhKNhLhh7jj%ubaubj )rr%}rs%(h6X=DIRh7j_%h=h>h?j hA}rt%(jjhF]hE]hC]hD]hI]uhKNhLhhM]ru%hVX=DIRrv%rw%}rx%(h6Uh=NhKNhLhh7jr%ubaubeubj )ry%}rz%(h6Uh7j9%h=h>h?j hA}r{%(hC]hD]hE]hF]hI]uhKNhLhhM]r|%(hi)r}%}r~%(h6X8An extra directory to search for frameworks (OS X only).r%h7jy%h=h>h?hlhA}r%(hC]hD]hE]hF]hI]uhKMhLhhM]r%hVX8An extra directory to search for frameworks (OS X only).r%r%}r%(h6j%h=NhKNhLhh7j}%ubaubhi)r%}r%(h6XXYou might need to use this flag if you have standard system libraries in a non-standard location that is not mentioned in the package's ``.cabal`` file. Using this option has the same affect as appending the directory *dir* to the :cfg-field:`extra-lib-dirs` field in each library and executable in the package's ``.cabal`` file. The advantage of course is that you do not have to modify the package at all. These extra directories will be used while building the package and for libraries it is also saved in the package registration information and used when compiling modules that use the library.h7jy%h=h>h?hlhA}r%(hC]hD]hE]hF]hI]uhKMhLhhM]r%(hVXYou might need to use this flag if you have standard system libraries in a non-standard location that is not mentioned in the package’s r%r%}r%(h6XYou might need to use this flag if you have standard system libraries in a non-standard location that is not mentioned in the package's h=NhKNhLhh7j%ubhr)r%}r%(h6X ``.cabal``hA}r%(hC]hD]hE]hF]hI]uh7j%hM]r%hVX.cabalr%r%}r%(h6Uh7j%ubah?hzubhVXH file. Using this option has the same affect as appending the directory r%r%}r%(h6XH file. Using this option has the same affect as appending the directory h=NhKNhLhh7j%ubjE)r%}r%(h6X*dir*hA}r%(hC]hD]hE]hF]hI]uh7j%hM]r%hVXdirr%r%}r%(h6Uh7j%ubah?jMubhVX to the r%r%}r%(h6X to the h=NhKNhLhh7j%ubjl )r%}r%(h6X:cfg-field:`extra-lib-dirs`r%h7j%h=h>h?jp hA}r%(UreftypeX cfg-fieldjr js Xextra-lib-dirsU refdomainXcabalr%hF]hE]U refexplicithC]hD]hI]ju jv jw NuhKMhM]r%hr)r%}r%(h6j%hA}r%(hC]hD]r%(j} j%Xcabal-cfg-fieldr%ehE]hF]hI]uh7j%hM]r%hVXextra-lib-dirsr%r%}r%(h6Uh7j%ubah?hzubaubhVX9 field in each library and executable in the package’s r%r%}r%(h6X7 field in each library and executable in the package's h=NhKNhLhh7j%ubhr)r%}r%(h6X ``.cabal``hA}r%(hC]hD]hE]hF]hI]uh7j%hM]r%hVX.cabalr%r%}r%(h6Uh7j%ubah?hzubhVX file. The advantage of course is that you do not have to modify the package at all. These extra directories will be used while building the package and for libraries it is also saved in the package registration information and used when compiling modules that use the library.r%r%}r%(h6X file. The advantage of course is that you do not have to modify the package at all. These extra directories will be used while building the package and for libraries it is also saved in the package registration information and used when compiling modules that use the library.h=NhKNhLhh7j%ubeubhi)r%}r%(h6XoThe command line variant of this flag is ``--extra-framework-dirs=DIR``, which can be specified multiple times.h7jy%h=h>h?hlhA}r%(hC]hD]hE]hF]hI]uhKMhLhhM]r%(hVX)The command line variant of this flag is r%r%}r%(h6X)The command line variant of this flag is h=NhKNhLhh7j%ubhr)r%}r%(h6X``--extra-framework-dirs=DIR``hA}r%(hC]hD]hE]hF]hI]uh7j%hM]r%hVX--extra-framework-dirs=DIRr%r%}r%(h6Uh7j%ubah?hzubhVX(, which can be specified multiple times.r%r%}r%(h6X(, which can be specified multiple times.h=NhKNhLhh7j%ubeubeubeubeubh8)r%}r%(h6Uh7jh=h>h?h@hA}r%(hC]hD]hE]hF]r%jahI]r%h.auhKMhLhhM]r%(hO)r%}r%(h6XProfiling optionsr%h7j%h=h>h?hShA}r%(hC]hD]hE]hF]hI]uhKMhLhhM]r%hVXProfiling optionsr%r%}r%(h6j%h=NhKNhLhh7j%ubaubjj )r%}r%(h6Uh7j%h=h>h?jm hA}r%(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r%}r%(h6Uh7j%h=h>h?jr hA}r%(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr%jx j%uhKNhLhhM]r%(jz )r%}r%(h6Xprofiling: booleanh7j%h=h>h?j} hA}r%(hF]r%Xcfg-field-profilingr%ahE]hC]hD]hI]j uhKNhLhhM]r%(jj )r%}r%(h6Uh7j%h=h>h?jm hA}r%(hF]hE]hC]hD]hI]Uentries]r%(j X profiling ; cabal project optionj%UNtr%auhKNhLhhM]ubj )r%}r%(h6X profilingr%h7j%h=h>h?j hA}r%(jjhF]hE]hC]hD]hI]uhKNhLhhM]r%hVX profilingr%r%}r%(h6Uh=NhKNhLhh7j%ubaubj )r%}r%(h6j h7j%h=h>h?j hA}r%(jjhF]hE]hC]hD]hI]uhKNhLhhM]r%hVX: r%r%}r%(h6Uh=NhKNhLhh7j%ubaubj )r%}r%(h6Xbooleanh7j%h=h>h?j hA}r%(jjhF]hE]hC]hD]hI]uhKNhLhhM]r&hVXbooleanr&r&}r&(h6Uh=NhKNhLhh7j%ubaubeubjz )r&}r&(h6X--enable-profilingr&h7j%h=h>h?j} hA}r&(hF]r&Xcfg-flag---enable-profilingr &ahE]hC]hD]hI]j uhKNhLhhM]r &(jj )r &}r &(h6Uh7j&h=h>h?jm hA}r &(hF]hE]hC]hD]hI]Uentries]r&(j X(--enable-profiling; cabal project optionj &UNtr&auhKNhLhhM]ubj )r&}r&(h6j&h7j&h=h>h?j hA}r&(jjhF]hE]hC]hD]hI]uhKNhLhhM]r&hVX--enable-profilingr&r&}r&(h6Uh=NhKNhLhh7j&ubaubj )r&}r&(h6U h7j&h=h>h?j hA}r&(jjhF]hE]hC]hD]hI]uhKNhLhhM]r&hVX r&}r&(h6Uh=NhKNhLhh7j&ubaubeubjz )r&}r&(h6X--disable-profilingr&h7j%h=h>h?j} hA}r &(hF]r!&Xcfg-flag---disable-profilingr"&ahE]hC]hD]hI]j uhKNhLhhM]r#&(jj )r$&}r%&(h6Uh7j&h=h>h?jm hA}r&&(hF]hE]hC]hD]hI]Uentries]r'&(j X)--disable-profiling; cabal project optionj"&UNtr(&auhKNhLhhM]ubj )r)&}r*&(h6j&h7j&h=h>h?j hA}r+&(jjhF]hE]hC]hD]hI]uhKNhLhhM]r,&hVX--disable-profilingr-&r.&}r/&(h6Uh=NhKNhLhh7j)&ubaubj )r0&}r1&(h6U h7j&h=h>h?j hA}r2&(jjhF]hE]hC]hD]hI]uhKNhLhhM]r3&hVX r4&}r5&(h6Uh=NhKNhLhh7j0&ubaubeubj )r6&}r7&(h6Uh7j%h=h>h?j hA}r8&(hC]hD]hE]hF]hI]uhKNhLhhM]r9&(j )r:&}r;&(h6Uh7j6&h=h>h?j hA}r<&(hC]hD]hE]hF]hI]uhKNhLhhM]r=&(j )r>&}r?&(h6Uh7j:&h=h>h?j hA}r@&(hC]hD]hE]hF]hI]uhKNhLhhM]rA&(j )rB&}rC&(h6jh7j>&h=h>h?j hA}rD&(hC]hD]hE]hF]hI]uhKKhM]rE&hVXSincerF&rG&}rH&(h6Uh7jB&ubaubj )rI&}rJ&(h6U Cabal 1.21rK&hA}rL&(hC]hD]hE]hF]hI]uh7j>&hM]rM&hi)rN&}rO&(h6jK&hA}rP&(hC]hD]hE]hF]hI]uh7jI&hM]rQ&hVX Cabal 1.21rR&rS&}rT&(h6Uh7jN&ubah?hlubah?j ubeubj )rU&}rV&(h6UhA}rW&(hC]hD]hE]hF]hI]uh7j:&hM]rX&(j )rY&}rZ&(h6X Default valueh7jU&h=h>h?j hA}r[&(hC]hD]hE]hF]hI]uhKKhM]r\&hVX Default valuer]&r^&}r_&(h6Uh7jY&ubaubj )r`&}ra&(h6UhA}rb&(hC]hD]hE]hF]hI]uh7jU&hM]rc&hi)rd&}re&(h6XFalsehA}rf&(hC]hD]hE]hF]hI]uh7j`&hM]rg&hVXFalserh&ri&}rj&(h6XFalseh=NhKNhLhh7jd&ubah?hlubah?j ubeh?j ubeubhi)rk&}rl&(h6X@Build libraries and executables with profiling enabled (for compilers that support profiling as a separate mode). It is only necessary to specify :cfg-field:`profiling` for the specific package you want to profile; ``cabal new-build`` will ensure that all of its transitive dependencies are built with profiling enabled.h7j6&h=h>h?hlhA}rm&(hC]hD]hE]hF]hI]uhKMhLhhM]rn&(hVXBuild libraries and executables with profiling enabled (for compilers that support profiling as a separate mode). It is only necessary to specify ro&rp&}rq&(h6XBuild libraries and executables with profiling enabled (for compilers that support profiling as a separate mode). It is only necessary to specify h=NhKNhLhh7jk&ubjl )rr&}rs&(h6X:cfg-field:`profiling`rt&h7jk&h=h>h?jp hA}ru&(UreftypeX cfg-fieldjr js X profilingU refdomainXcabalrv&hF]hE]U refexplicithC]hD]hI]ju jv jw NuhKMhM]rw&hr)rx&}ry&(h6jt&hA}rz&(hC]hD]r{&(j} jv&Xcabal-cfg-fieldr|&ehE]hF]hI]uh7jr&hM]r}&hVX profilingr~&r&}r&(h6Uh7jx&ubah?hzubaubhVX/ for the specific package you want to profile; r&r&}r&(h6X/ for the specific package you want to profile; h=NhKNhLhh7jk&ubhr)r&}r&(h6X``cabal new-build``hA}r&(hC]hD]hE]hF]hI]uh7jk&hM]r&hVXcabal new-buildr&r&}r&(h6Uh7j&ubah?hzubhVXV will ensure that all of its transitive dependencies are built with profiling enabled.r&r&}r&(h6XV will ensure that all of its transitive dependencies are built with profiling enabled.h=NhKNhLhh7jk&ubeubhi)r&}r&(h6XTo enable profiling for only libraries or executables, see :cfg-field:`library-profiling` and :cfg-field:`executable-profiling`.h7j6&h=h>h?hlhA}r&(hC]hD]hE]hF]hI]uhKMhLhhM]r&(hVX;To enable profiling for only libraries or executables, see r&r&}r&(h6X;To enable profiling for only libraries or executables, see h=NhKNhLhh7j&ubjl )r&}r&(h6X:cfg-field:`library-profiling`r&h7j&h=h>h?jp hA}r&(UreftypeX cfg-fieldjr js Xlibrary-profilingU refdomainXcabalr&hF]hE]U refexplicithC]hD]hI]ju jv jw NuhKMhM]r&hr)r&}r&(h6j&hA}r&(hC]hD]r&(j} j&Xcabal-cfg-fieldr&ehE]hF]hI]uh7j&hM]r&hVXlibrary-profilingr&r&}r&(h6Uh7j&ubah?hzubaubhVX and r&r&}r&(h6X and h=NhKNhLhh7j&ubjl )r&}r&(h6X!:cfg-field:`executable-profiling`r&h7j&h=h>h?jp hA}r&(UreftypeX cfg-fieldjr js Xexecutable-profilingU refdomainXcabalr&hF]hE]U refexplicithC]hD]hI]ju jv jw NuhKMhM]r&hr)r&}r&(h6j&hA}r&(hC]hD]r&(j} j&Xcabal-cfg-fieldr&ehE]hF]hI]uh7j&hM]r&hVXexecutable-profilingr&r&}r&(h6Uh7j&ubah?hzubaubhVX.r&}r&(h6X.h=NhKNhLhh7j&ubeubhi)r&}r&(h6XFor useful profiling, it can be important to control precisely what cost centers are allocated; see :cfg-field:`profiling-detail`.h7j6&h=h>h?hlhA}r&(hC]hD]hE]hF]hI]uhKMhLhhM]r&(hVXdFor useful profiling, it can be important to control precisely what cost centers are allocated; see r&r&}r&(h6XdFor useful profiling, it can be important to control precisely what cost centers are allocated; see h=NhKNhLhh7j&ubjl )r&}r&(h6X:cfg-field:`profiling-detail`r&h7j&h=h>h?jp hA}r&(UreftypeX cfg-fieldjr js Xprofiling-detailU refdomainXcabalr&hF]hE]U refexplicithC]hD]hI]ju jv jw NuhKMhM]r&hr)r&}r&(h6j&hA}r&(hC]hD]r&(j} j&Xcabal-cfg-fieldr&ehE]hF]hI]uh7j&hM]r&hVXprofiling-detailr&r&}r&(h6Uh7j&ubah?hzubaubhVX.r&}r&(h6X.h=NhKNhLhh7j&ubeubhi)r&}r&(h6X\The command line variant of this flag is ``--enable-profiling`` and ``--disable-profiling``.h7j6&h=h>h?hlhA}r&(hC]hD]hE]hF]hI]uhKMhLhhM]r&(hVX)The command line variant of this flag is r&r&}r&(h6X)The command line variant of this flag is h=NhKNhLhh7j&ubhr)r&}r&(h6X``--enable-profiling``hA}r&(hC]hD]hE]hF]hI]uh7j&hM]r&hVX--enable-profilingr&r&}r&(h6Uh7j&ubah?hzubhVX and r&r&}r&(h6X and h=NhKNhLhh7j&ubhr)r&}r&(h6X``--disable-profiling``hA}r&(hC]hD]hE]hF]hI]uh7j&hM]r&hVX--disable-profilingr&r&}r&(h6Uh7j&ubah?hzubhVX.r&}r&(h6X.h=NhKNhLhh7j&ubeubeubeubjj )r&}r&(h6Uh7j%h=h>h?jm hA}r&(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r&}r&(h6Uh7j%h=h>h?jr hA}r&(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr&jx j&uhKNhLhhM]r&(jz )r&}r&(h6Xprofiling-detail: levelh7j&h=h>h?j} hA}r&(hF]r&Xcfg-field-profiling-detailr&ahE]hC]hD]hI]j uhKNhLhhM]r&(jj )r&}r&(h6Uh7j&h=h>h?jm hA}r&(hF]hE]hC]hD]hI]Uentries]r&(j X'profiling-detail ; cabal project optionj&UNtr&auhKNhLhhM]ubj )r&}r&(h6Xprofiling-detailr&h7j&h=h>h?j hA}r'(jjhF]hE]hC]hD]hI]uhKNhLhhM]r'hVXprofiling-detailr'r'}r'(h6Uh=NhKNhLhh7j&ubaubj )r'}r'(h6j h7j&h=h>h?j hA}r'(jjhF]hE]hC]hD]hI]uhKNhLhhM]r'hVX: r 'r '}r '(h6Uh=NhKNhLhh7j'ubaubj )r '}r '(h6Xlevelh7j&h=h>h?j hA}r'(jjhF]hE]hC]hD]hI]uhKNhLhhM]r'hVXlevelr'r'}r'(h6Uh=NhKNhLhh7j 'ubaubeubjz )r'}r'(h6X--profiling-detail=levelh7j&h=h>h?j} hA}r'(hF]r'Xcfg-flag---profiling-detailr'ahE]hC]hD]hI]j uhKNhLhhM]r'(jj )r'}r'(h6Uh7j'h=h>h?jm hA}r'(hF]hE]hC]hD]hI]Uentries]r'(j X(--profiling-detail; cabal project optionj'UNtr'auhKNhLhhM]ubj )r'}r'(h6X--profiling-detailr 'h7j'h=h>h?j hA}r!'(jjhF]hE]hC]hD]hI]uhKNhLhhM]r"'hVX--profiling-detailr#'r$'}r%'(h6Uh=NhKNhLhh7j'ubaubj )r&'}r''(h6X=levelh7j'h=h>h?j hA}r('(jjhF]hE]hC]hD]hI]uhKNhLhhM]r)'hVX=levelr*'r+'}r,'(h6Uh=NhKNhLhh7j&'ubaubeubj )r-'}r.'(h6Uh7j&h=h>h?j hA}r/'(hC]hD]hE]hF]hI]uhKNhLhhM]r0'(j )r1'}r2'(h6Uh7j-'h=h>h?j hA}r3'(hC]hD]hE]hF]hI]uhKNhLhhM]r4'j )r5'}r6'(h6Uh7j1'h=h>h?j hA}r7'(hC]hD]hE]hF]hI]uhKNhLhhM]r8'(j )r9'}r:'(h6jh7j5'h=h>h?j hA}r;'(hC]hD]hE]hF]hI]uhKKhM]r<'hVXSincer='r>'}r?'(h6Uh7j9'ubaubj )r@'}rA'(h6U Cabal 1.23rB'hA}rC'(hC]hD]hE]hF]hI]uh7j5'hM]rD'hi)rE'}rF'(h6jB'hA}rG'(hC]hD]hE]hF]hI]uh7j@'hM]rH'hVX Cabal 1.23rI'rJ'}rK'(h6Uh7jE'ubah?hlubah?j ubeubaubhi)rL'}rM'(h6XGSome compilers that support profiling, notably GHC, can allocate costs to different parts of the program and there are different levels of granularity or detail with which this can be done. In particular for GHC this concept is called "cost centers", and GHC can automatically add cost centers, and can do so in different ways.rN'h7j-'h=h>h?hlhA}rO'(hC]hD]hE]hF]hI]uhKMhLhhM]rP'hVXKSome compilers that support profiling, notably GHC, can allocate costs to different parts of the program and there are different levels of granularity or detail with which this can be done. In particular for GHC this concept is called “cost centers”, and GHC can automatically add cost centers, and can do so in different ways.rQ'rR'}rS'(h6jN'h=NhKNhLhh7jL'ubaubhi)rT'}rU'(h6XqThis flag covers both libraries and executables, but can be overridden by the ``library-profiling-detail`` field.h7j-'h=h>h?hlhA}rV'(hC]hD]hE]hF]hI]uhKMhLhhM]rW'(hVXNThis flag covers both libraries and executables, but can be overridden by the rX'rY'}rZ'(h6XNThis flag covers both libraries and executables, but can be overridden by the h=NhKNhLhh7jT'ubhr)r['}r\'(h6X``library-profiling-detail``hA}r]'(hC]hD]hE]hF]hI]uh7jT'hM]r^'hVXlibrary-profiling-detailr_'r`'}ra'(h6Uh7j['ubah?hzubhVX field.rb'rc'}rd'(h6X field.h=NhKNhLhh7jT'ubeubhi)re'}rf'(h6XmCurrently this setting is ignored for compilers other than GHC. The levels that cabal currently supports are:rg'h7j-'h=h>h?hlhA}rh'(hC]hD]hE]hF]hI]uhKMhLhhM]ri'hVXmCurrently this setting is ignored for compilers other than GHC. The levels that cabal currently supports are:rj'rk'}rl'(h6jg'h=NhKNhLhh7je'ubaubjB)rm'}rn'(h6Uh7j-'h=h>h?jEhA}ro'(hC]hD]hE]hF]hI]uhKNhLhhM]rp'(jH)rq'}rr'(h6Xjdefault For GHC this uses ``exported-functions`` for libraries and ``toplevel-functions`` for executables.h7jm'h=h>h?jKhA}rs'(hC]hD]hE]hF]hI]uhKMhM]rt'(jN)ru'}rv'(h6Xdefaultrw'h7jq'h=h>h?jRhA}rx'(hC]hD]hE]hF]hI]uhKMhM]ry'hVXdefaultrz'r{'}r|'(h6jw'h7ju'ubaubj_)r}'}r~'(h6UhA}r'(hC]hD]hE]hF]hI]uh7jq'hM]r'hi)r'}r'(h6XbFor GHC this uses ``exported-functions`` for libraries and ``toplevel-functions`` for executables.h7j}'h=h>h?hlhA}r'(hC]hD]hE]hF]hI]uhKMhM]r'(hVXFor GHC this uses r'r'}r'(h6XFor GHC this uses h7j'ubhr)r'}r'(h6X``exported-functions``hA}r'(hC]hD]hE]hF]hI]uh7j'hM]r'hVXexported-functionsr'r'}r'(h6Uh7j'ubah?hzubhVX for libraries and r'r'}r'(h6X for libraries and h7j'ubhr)r'}r'(h6X``toplevel-functions``hA}r'(hC]hD]hE]hF]hI]uh7j'hM]r'hVXtoplevel-functionsr'r'}r'(h6Uh7j'ubah?hzubhVX for executables.r'r'}r'(h6X for executables.h7j'ubeubah?jubeubjH)r'}r'(h6XAnone No costs will be assigned to any code within this component.h7jm'h=h>h?jKhA}r'(hC]hD]hE]hF]hI]uhKMhLhhM]r'(jN)r'}r'(h6Xnoner'h7j'h=h>h?jRhA}r'(hC]hD]hE]hF]hI]uhKMhM]r'hVXnoner'r'}r'(h6j'h7j'ubaubj_)r'}r'(h6UhA}r'(hC]hD]hE]hF]hI]uh7j'hM]r'hi)r'}r'(h6X<No costs will be assigned to any code within this component.r'h7j'h=h>h?hlhA}r'(hC]hD]hE]hF]hI]uhKMhM]r'hVX<No costs will be assigned to any code within this component.r'r'}r'(h6j'h7j'ubaubah?jubeubjH)r'}r'(h6Xexported-functions Costs will be assigned at the granularity of all top level functions exported from each module. In GHC, this is for non-inline functions. Corresponds to ``-fprof-auto-exported``.h7jm'h=h>h?jKhA}r'(hC]hD]hE]hF]hI]uhKMhLhhM]r'(jN)r'}r'(h6Xexported-functionsr'h7j'h=h>h?jRhA}r'(hC]hD]hE]hF]hI]uhKMhM]r'hVXexported-functionsr'r'}r'(h6j'h7j'ubaubj_)r'}r'(h6UhA}r'(hC]hD]hE]hF]hI]uh7j'hM]r'hi)r'}r'(h6XCosts will be assigned at the granularity of all top level functions exported from each module. In GHC, this is for non-inline functions. Corresponds to ``-fprof-auto-exported``.h7j'h=h>h?hlhA}r'(hC]hD]hE]hF]hI]uhKMhM]r'(hVXCosts will be assigned at the granularity of all top level functions exported from each module. In GHC, this is for non-inline functions. Corresponds to r'r'}r'(h6XCosts will be assigned at the granularity of all top level functions exported from each module. In GHC, this is for non-inline functions. Corresponds to h7j'ubhr)r'}r'(h6X``-fprof-auto-exported``hA}r'(hC]hD]hE]hF]hI]uh7j'hM]r'hVX-fprof-auto-exportedr'r'}r'(h6Uh7j'ubah?hzubhVX.r'}r'(h6X.h7j'ubeubah?jubeubjH)r'}r'(h6Xtoplevel-functions Costs will be assigned at the granularity of all top level functions in each module, whether they are exported from the module or not. In GHC specifically, this is for non-inline functions. Corresponds to ``-fprof-auto-top``.h7jm'h=h>h?jKhA}r'(hC]hD]hE]hF]hI]uhKMhLhhM]r'(jN)r'}r'(h6Xtoplevel-functionsr'h7j'h=h>h?jRhA}r'(hC]hD]hE]hF]hI]uhKMhM]r'hVXtoplevel-functionsr'r'}r'(h6j'h7j'ubaubj_)r'}r'(h6UhA}r'(hC]hD]hE]hF]hI]uh7j'hM]r'hi)r'}r'(h6XCosts will be assigned at the granularity of all top level functions in each module, whether they are exported from the module or not. In GHC specifically, this is for non-inline functions. Corresponds to ``-fprof-auto-top``.h7j'h=h>h?hlhA}r'(hC]hD]hE]hF]hI]uhKMhM]r'(hVXCosts will be assigned at the granularity of all top level functions in each module, whether they are exported from the module or not. In GHC specifically, this is for non-inline functions. Corresponds to r'r'}r'(h6XCosts will be assigned at the granularity of all top level functions in each module, whether they are exported from the module or not. In GHC specifically, this is for non-inline functions. Corresponds to h7j'ubhr)r'}r'(h6X``-fprof-auto-top``hA}r'(hC]hD]hE]hF]hI]uh7j'hM]r'hVX-fprof-auto-topr'r'}r'(h6Uh7j'ubah?hzubhVX.r'}r'(h6X.h7j'ubeubah?jubeubjH)r'}r'(h6Xall-functions Costs will be assigned at the granularity of all functions in each module, whether top level or local. In GHC specifically, this is for non-inline toplevel or where-bound functions or values. Corresponds to ``-fprof-auto``. h7jm'h=h>h?jKhA}r'(hC]hD]hE]hF]hI]uhKMhLhhM]r'(jN)r'}r'(h6X all-functionsr'h7j'h=h>h?jRhA}r'(hC]hD]hE]hF]hI]uhKMhM]r'hVX all-functionsr'r'}r'(h6j'h7j'ubaubj_)r(}r((h6UhA}r((hC]hD]hE]hF]hI]uh7j'hM]r(hi)r(}r((h6XCosts will be assigned at the granularity of all functions in each module, whether top level or local. In GHC specifically, this is for non-inline toplevel or where-bound functions or values. Corresponds to ``-fprof-auto``.h7j(h=h>h?hlhA}r((hC]hD]hE]hF]hI]uhKMhM]r((hVXCosts will be assigned at the granularity of all functions in each module, whether top level or local. In GHC specifically, this is for non-inline toplevel or where-bound functions or values. Corresponds to r(r (}r ((h6XCosts will be assigned at the granularity of all functions in each module, whether top level or local. In GHC specifically, this is for non-inline toplevel or where-bound functions or values. Corresponds to h7j(ubhr)r (}r ((h6X``-fprof-auto``hA}r ((hC]hD]hE]hF]hI]uh7j(hM]r(hVX -fprof-autor(r(}r((h6Uh7j (ubah?hzubhVX.r(}r((h6X.h7j(ubeubah?jubeubeubhi)r(}r((h6XEThe command line variant of this flag is ``--profiling-detail=none``.h7j-'h=h>h?hlhA}r((hC]hD]hE]hF]hI]uhKMhLhhM]r((hVX)The command line variant of this flag is r(r(}r((h6X)The command line variant of this flag is h=NhKNhLhh7j(ubhr)r(}r((h6X``--profiling-detail=none``hA}r((hC]hD]hE]hF]hI]uh7j(hM]r(hVX--profiling-detail=noner(r (}r!((h6Uh7j(ubah?hzubhVX.r"(}r#((h6X.h=NhKNhLhh7j(ubeubeubeubjj )r$(}r%((h6Uh7j%h=h>h?jm hA}r&((hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r'(}r(((h6Uh7j%h=h>h?jr hA}r)((jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr*(jx j*(uhKNhLhhM]r+((jz )r,(}r-((h6Xlibrary-profiling-detail: levelh7j'(h=h>h?j} hA}r.((hF]r/(X"cfg-field-library-profiling-detailr0(ahE]hC]hD]hI]j uhKNhLhhM]r1((jj )r2(}r3((h6Uh7j,(h=h>h?jm hA}r4((hF]hE]hC]hD]hI]Uentries]r5((j X/library-profiling-detail ; cabal project optionj0(UNtr6(auhKNhLhhM]ubj )r7(}r8((h6Xlibrary-profiling-detailr9(h7j,(h=h>h?j hA}r:((jjhF]hE]hC]hD]hI]uhKNhLhhM]r;(hVXlibrary-profiling-detailr<(r=(}r>((h6Uh=NhKNhLhh7j7(ubaubj )r?(}r@((h6j h7j,(h=h>h?j hA}rA((jjhF]hE]hC]hD]hI]uhKNhLhhM]rB(hVX: rC(rD(}rE((h6Uh=NhKNhLhh7j?(ubaubj )rF(}rG((h6Xlevelh7j,(h=h>h?j hA}rH((jjhF]hE]hC]hD]hI]uhKNhLhhM]rI(hVXlevelrJ(rK(}rL((h6Uh=NhKNhLhh7jF(ubaubeubjz )rM(}rN((h6X --library-profiling-detail=levelh7j'(h=h>h?j} hA}rO((hF]rP(X#cfg-flag---library-profiling-detailrQ(ahE]hC]hD]hI]j uhKNhLhhM]rR((jj )rS(}rT((h6Uh7jM(h=h>h?jm hA}rU((hF]hE]hC]hD]hI]Uentries]rV((j X0--library-profiling-detail; cabal project optionjQ(UNtrW(auhKNhLhhM]ubj )rX(}rY((h6X--library-profiling-detailrZ(h7jM(h=h>h?j hA}r[((jjhF]hE]hC]hD]hI]uhKNhLhhM]r\(hVX--library-profiling-detailr](r^(}r_((h6Uh=NhKNhLhh7jX(ubaubj )r`(}ra((h6X=levelh7jM(h=h>h?j hA}rb((jjhF]hE]hC]hD]hI]uhKNhLhhM]rc(hVX=levelrd(re(}rf((h6Uh=NhKNhLhh7j`(ubaubeubj )rg(}rh((h6Uh7j'(h=h>h?j hA}ri((hC]hD]hE]hF]hI]uhKNhLhhM]rj((j )rk(}rl((h6Uh7jg(h=h>h?j hA}rm((hC]hD]hE]hF]hI]uhKNhLhhM]rn(j )ro(}rp((h6Uh7jk(h=h>h?j hA}rq((hC]hD]hE]hF]hI]uhKNhLhhM]rr((j )rs(}rt((h6jh7jo(h=h>h?j hA}ru((hC]hD]hE]hF]hI]uhKKhM]rv(hVXSincerw(rx(}ry((h6Uh7js(ubaubj )rz(}r{((h6U Cabal 1.23r|(hA}r}((hC]hD]hE]hF]hI]uh7jo(hM]r~(hi)r(}r((h6j|(hA}r((hC]hD]hE]hF]hI]uh7jz(hM]r(hVX Cabal 1.23r(r(}r((h6Uh7j(ubah?hlubah?j ubeubaubhi)r(}r((h6XALike :cfg-field:`profiling-detail`, but applied only to librariesh7jg(h=h>h?hlhA}r((hC]hD]hE]hF]hI]uhKM hLhhM]r((hVXLike r(r(}r((h6XLike h=NhKNhLhh7j(ubjl )r(}r((h6X:cfg-field:`profiling-detail`r(h7j(h=h>h?jp hA}r((UreftypeX cfg-fieldjr js Xprofiling-detailU refdomainXcabalr(hF]hE]U refexplicithC]hD]hI]ju jv jw NuhKM hM]r(hr)r(}r((h6j(hA}r((hC]hD]r((j} j(Xcabal-cfg-fieldr(ehE]hF]hI]uh7j(hM]r(hVXprofiling-detailr(r(}r((h6Uh7j(ubah?hzubaubhVX, but applied only to librariesr(r(}r((h6X, but applied only to librariesh=NhKNhLhh7j(ubeubhi)r(}r((h6XMThe command line variant of this flag is ``--library-profiling-detail=none``.h7jg(h=h>h?hlhA}r((hC]hD]hE]hF]hI]uhKM hLhhM]r((hVX)The command line variant of this flag is r(r(}r((h6X)The command line variant of this flag is h=NhKNhLhh7j(ubhr)r(}r((h6X#``--library-profiling-detail=none``hA}r((hC]hD]hE]hF]hI]uh7j(hM]r(hVX--library-profiling-detail=noner(r(}r((h6Uh7j(ubah?hzubhVX.r(}r((h6X.h=NhKNhLhh7j(ubeubeubeubjj )r(}r((h6Uh7j%h=h>h?jm hA}r((hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r(}r((h6Uh7j%h=h>h?jr hA}r((jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr(jx j(uhKNhLhhM]r((jz )r(}r((h6Xlibrary-vanilla: booleanh7j(h=h>h?j} hA}r((hF]r(Xcfg-field-library-vanillar(ahE]hC]hD]hI]j uhKNhLhhM]r((jj )r(}r((h6Uh7j(h=h>h?jm hA}r((hF]hE]hC]hD]hI]Uentries]r((j X&library-vanilla ; cabal project optionj(UNtr(auhKNhLhhM]ubj )r(}r((h6Xlibrary-vanillar(h7j(h=h>h?j hA}r((jjhF]hE]hC]hD]hI]uhKNhLhhM]r(hVXlibrary-vanillar(r(}r((h6Uh=NhKNhLhh7j(ubaubj )r(}r((h6j h7j(h=h>h?j hA}r((jjhF]hE]hC]hD]hI]uhKNhLhhM]r(hVX: r(r(}r((h6Uh=NhKNhLhh7j(ubaubj )r(}r((h6Xbooleanh7j(h=h>h?j hA}r((jjhF]hE]hC]hD]hI]uhKNhLhhM]r(hVXbooleanr(r(}r((h6Uh=NhKNhLhh7j(ubaubeubjz )r(}r((h6X--enable-library-vanillar(h7j(h=h>h?j} hA}r((hF]r(X!cfg-flag---enable-library-vanillar(ahE]hC]hD]hI]j uhKNhLhhM]r((jj )r(}r((h6Uh7j(h=h>h?jm hA}r((hF]hE]hC]hD]hI]Uentries]r((j X.--enable-library-vanilla; cabal project optionj(UNtr(auhKNhLhhM]ubj )r(}r((h6j(h7j(h=h>h?j hA}r((jjhF]hE]hC]hD]hI]uhKNhLhhM]r(hVX--enable-library-vanillar(r(}r((h6Uh=NhKNhLhh7j(ubaubj )r(}r((h6U h7j(h=h>h?j hA}r((jjhF]hE]hC]hD]hI]uhKNhLhhM]r(hVX r(}r((h6Uh=NhKNhLhh7j(ubaubeubjz )r(}r((h6X--disable-library-vanillar(h7j(h=h>h?j} hA}r((hF]r(X"cfg-flag---disable-library-vanillar(ahE]hC]hD]hI]j uhKNhLhhM]r((jj )r(}r((h6Uh7j(h=h>h?jm hA}r((hF]hE]hC]hD]hI]Uentries]r((j X/--disable-library-vanilla; cabal project optionj(UNtr(auhKNhLhhM]ubj )r(}r((h6j(h7j(h=h>h?j hA}r((jjhF]hE]hC]hD]hI]uhKNhLhhM]r)hVX--disable-library-vanillar)r)}r)(h6Uh=NhKNhLhh7j(ubaubj )r)}r)(h6U h7j(h=h>h?j hA}r)(jjhF]hE]hC]hD]hI]uhKNhLhhM]r)hVX r)}r )(h6Uh=NhKNhLhh7j)ubaubeubj )r )}r )(h6Uh7j(h=h>h?j hA}r )(hC]hD]hE]hF]hI]uhKNhLhhM]r )(j )r)}r)(h6Uh7j )h=h>h?j hA}r)(hC]hD]hE]hF]hI]uhKNhLhhM]r)j )r)}r)(h6UhA}r)(hC]hD]hE]hF]hI]uh7j)hM]r)(j )r)}r)(h6X Default valueh7j)h=h>h?j hA}r)(hC]hD]hE]hF]hI]uhKKhM]r)hVX Default valuer)r)}r)(h6Uh7j)ubaubj )r)}r)(h6UhA}r)(hC]hD]hE]hF]hI]uh7j)hM]r )hi)r!)}r")(h6XTruehA}r#)(hC]hD]hE]hF]hI]uh7j)hM]r$)hVXTruer%)r&)}r')(h6XTrueh=NhKNhLhh7j!)ubah?hlubah?j ubeh?j ubaubhi)r()}r))(h6XBuild ordinary libraries (as opposed to profiling libraries). Mostly, you can set this to False to avoid building ordinary libraries when you are profiling.r*)h7j )h=h>h?hlhA}r+)(hC]hD]hE]hF]hI]uhKMhLhhM]r,)hVXBuild ordinary libraries (as opposed to profiling libraries). Mostly, you can set this to False to avoid building ordinary libraries when you are profiling.r-)r.)}r/)(h6j*)h=NhKNhLhh7j()ubaubhi)r0)}r1)(h6XhThe command line variant of this flag is ``--enable-library-vanilla`` and ``--disable-library-vanilla``.h7j )h=h>h?hlhA}r2)(hC]hD]hE]hF]hI]uhKMhLhhM]r3)(hVX)The command line variant of this flag is r4)r5)}r6)(h6X)The command line variant of this flag is h=NhKNhLhh7j0)ubhr)r7)}r8)(h6X``--enable-library-vanilla``hA}r9)(hC]hD]hE]hF]hI]uh7j0)hM]r:)hVX--enable-library-vanillar;)r<)}r=)(h6Uh7j7)ubah?hzubhVX and r>)r?)}r@)(h6X and h=NhKNhLhh7j0)ubhr)rA)}rB)(h6X``--disable-library-vanilla``hA}rC)(hC]hD]hE]hF]hI]uh7j0)hM]rD)hVX--disable-library-vanillarE)rF)}rG)(h6Uh7jA)ubah?hzubhVX.rH)}rI)(h6X.h=NhKNhLhh7j0)ubeubeubeubjj )rJ)}rK)(h6Uh7j%h=h>h?jm hA}rL)(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )rM)}rN)(h6Uh7j%h=h>h?jr hA}rO)(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldrP)jx jP)uhKNhLhhM]rQ)(jz )rR)}rS)(h6Xlibrary-profiling: booleanh7jM)h=h>h?j} hA}rT)(hF]rU)Xcfg-field-library-profilingrV)ahE]hC]hD]hI]j uhKNhLhhM]rW)(jj )rX)}rY)(h6Uh7jR)h=h>h?jm hA}rZ)(hF]hE]hC]hD]hI]Uentries]r[)(j X(library-profiling ; cabal project optionjV)UNtr\)auhKNhLhhM]ubj )r])}r^)(h6Xlibrary-profilingr_)h7jR)h=h>h?j hA}r`)(jjhF]hE]hC]hD]hI]uhKNhLhhM]ra)hVXlibrary-profilingrb)rc)}rd)(h6Uh=NhKNhLhh7j])ubaubj )re)}rf)(h6j h7jR)h=h>h?j hA}rg)(jjhF]hE]hC]hD]hI]uhKNhLhhM]rh)hVX: ri)rj)}rk)(h6Uh=NhKNhLhh7je)ubaubj )rl)}rm)(h6Xbooleanh7jR)h=h>h?j hA}rn)(jjhF]hE]hC]hD]hI]uhKNhLhhM]ro)hVXbooleanrp)rq)}rr)(h6Uh=NhKNhLhh7jl)ubaubeubjz )rs)}rt)(h6X--enable-library-profilingru)h7jM)h=h>h?j} hA}rv)(hF]rw)X#cfg-flag---enable-library-profilingrx)ahE]hC]hD]hI]j uhKNhLhhM]ry)(jj )rz)}r{)(h6Uh7js)h=h>h?jm hA}r|)(hF]hE]hC]hD]hI]Uentries]r})(j X0--enable-library-profiling; cabal project optionjx)UNtr~)auhKNhLhhM]ubj )r)}r)(h6ju)h7js)h=h>h?j hA}r)(jjhF]hE]hC]hD]hI]uhKNhLhhM]r)hVX--enable-library-profilingr)r)}r)(h6Uh=NhKNhLhh7j)ubaubj )r)}r)(h6U h7js)h=h>h?j hA}r)(jjhF]hE]hC]hD]hI]uhKNhLhhM]r)hVX r)}r)(h6Uh=NhKNhLhh7j)ubaubeubjz )r)}r)(h6X--disable-library-profilingr)h7jM)h=h>h?j} hA}r)(hF]r)X$cfg-flag---disable-library-profilingr)ahE]hC]hD]hI]j uhKNhLhhM]r)(jj )r)}r)(h6Uh7j)h=h>h?jm hA}r)(hF]hE]hC]hD]hI]Uentries]r)(j X1--disable-library-profiling; cabal project optionj)UNtr)auhKNhLhhM]ubj )r)}r)(h6j)h7j)h=h>h?j hA}r)(jjhF]hE]hC]hD]hI]uhKNhLhhM]r)hVX--disable-library-profilingr)r)}r)(h6Uh=NhKNhLhh7j)ubaubj )r)}r)(h6U h7j)h=h>h?j hA}r)(jjhF]hE]hC]hD]hI]uhKNhLhhM]r)hVX r)}r)(h6Uh=NhKNhLhh7j)ubaubeubj )r)}r)(h6Uh7jM)h=h>h?j hA}r)(hC]hD]hE]hF]hI]uhKNhLhhM]r)(j )r)}r)(h6Uh7j)h=h>h?j hA}r)(hC]hD]hE]hF]hI]uhKNhLhhM]r)(j )r)}r)(h6Uh7j)h=h>h?j hA}r)(hC]hD]hE]hF]hI]uhKNhLhhM]r)(j )r)}r)(h6jh7j)h=h>h?j hA}r)(hC]hD]hE]hF]hI]uhKKhM]r)hVXSincer)r)}r)(h6Uh7j)ubaubj )r)}r)(h6U Cabal 1.21r)hA}r)(hC]hD]hE]hF]hI]uh7j)hM]r)hi)r)}r)(h6j)hA}r)(hC]hD]hE]hF]hI]uh7j)hM]r)hVX Cabal 1.21r)r)}r)(h6Uh7j)ubah?hlubah?j ubeubj )r)}r)(h6UhA}r)(hC]hD]hE]hF]hI]uh7j)hM]r)(j )r)}r)(h6X Default valueh7j)h=h>h?j hA}r)(hC]hD]hE]hF]hI]uhKKhM]r)hVX Default valuer)r)}r)(h6Uh7j)ubaubj )r)}r)(h6UhA}r)(hC]hD]hE]hF]hI]uh7j)hM]r)hi)r)}r)(h6XFalsehA}r)(hC]hD]hE]hF]hI]uh7j)hM]r)hVXFalser)r)}r)(h6XFalseh=NhKNhLhh7j)ubah?hlubah?j ubeh?j ubeubhi)r)}r)(h6XaBuild libraries with profiling enabled. You probably want to use :cfg-field:`profiling` instead.h7j)h=h>h?hlhA}r)(hC]hD]hE]hF]hI]uhKM&hLhhM]r)(hVXBBuild libraries with profiling enabled. You probably want to use r)r)}r)(h6XBBuild libraries with profiling enabled. You probably want to use h=NhKNhLhh7j)ubjl )r)}r)(h6X:cfg-field:`profiling`r)h7j)h=h>h?jp hA}r)(UreftypeX cfg-fieldjr js X profilingU refdomainXcabalr)hF]hE]U refexplicithC]hD]hI]ju jv jw NuhKM&hM]r)hr)r)}r)(h6j)hA}r)(hC]hD]r)(j} j)Xcabal-cfg-fieldr)ehE]hF]hI]uh7j)hM]r)hVX profilingr)r)}r)(h6Uh7j)ubah?hzubaubhVX instead.r)r)}r)(h6X instead.h=NhKNhLhh7j)ubeubhi)r)}r)(h6XlThe command line variant of this flag is ``--enable-library-profiling`` and ``--disable-library-profiling``.h7j)h=h>h?hlhA}r)(hC]hD]hE]hF]hI]uhKM)hLhhM]r)(hVX)The command line variant of this flag is r)r)}r)(h6X)The command line variant of this flag is h=NhKNhLhh7j)ubhr)r)}r)(h6X``--enable-library-profiling``hA}r)(hC]hD]hE]hF]hI]uh7j)hM]r)hVX--enable-library-profilingr)r)}r*(h6Uh7j)ubah?hzubhVX and r*r*}r*(h6X and h=NhKNhLhh7j)ubhr)r*}r*(h6X``--disable-library-profiling``hA}r*(hC]hD]hE]hF]hI]uh7j)hM]r*hVX--disable-library-profilingr*r *}r *(h6Uh7j*ubah?hzubhVX.r *}r *(h6X.h=NhKNhLhh7j)ubeubeubeubjj )r *}r*(h6Uh7j%h=h>h?jm hA}r*(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r*}r*(h6Uh7j%h=h>h?jr hA}r*(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr*jx j*uhKNhLhhM]r*(jz )r*}r*(h6Xexecutable-profiling: booleanh7j*h=h>h?j} hA}r*(hF]r*Xcfg-field-executable-profilingr*ahE]hC]hD]hI]j uhKNhLhhM]r*(jj )r*}r*(h6Uh7j*h=h>h?jm hA}r*(hF]hE]hC]hD]hI]Uentries]r*(j X+executable-profiling ; cabal project optionj*UNtr*auhKNhLhhM]ubj )r *}r!*(h6Xexecutable-profilingr"*h7j*h=h>h?j hA}r#*(jjhF]hE]hC]hD]hI]uhKNhLhhM]r$*hVXexecutable-profilingr%*r&*}r'*(h6Uh=NhKNhLhh7j *ubaubj )r(*}r)*(h6j h7j*h=h>h?j hA}r**(jjhF]hE]hC]hD]hI]uhKNhLhhM]r+*hVX: r,*r-*}r.*(h6Uh=NhKNhLhh7j(*ubaubj )r/*}r0*(h6Xbooleanh7j*h=h>h?j hA}r1*(jjhF]hE]hC]hD]hI]uhKNhLhhM]r2*hVXbooleanr3*r4*}r5*(h6Uh=NhKNhLhh7j/*ubaubeubjz )r6*}r7*(h6X--enable-executable-profilingr8*h7j*h=h>h?j} hA}r9*(hF]r:*X&cfg-flag---enable-executable-profilingr;*ahE]hC]hD]hI]j uhKNhLhhM]r<*(jj )r=*}r>*(h6Uh7j6*h=h>h?jm hA}r?*(hF]hE]hC]hD]hI]Uentries]r@*(j X3--enable-executable-profiling; cabal project optionj;*UNtrA*auhKNhLhhM]ubj )rB*}rC*(h6j8*h7j6*h=h>h?j hA}rD*(jjhF]hE]hC]hD]hI]uhKNhLhhM]rE*hVX--enable-executable-profilingrF*rG*}rH*(h6Uh=NhKNhLhh7jB*ubaubj )rI*}rJ*(h6U h7j6*h=h>h?j hA}rK*(jjhF]hE]hC]hD]hI]uhKNhLhhM]rL*hVX rM*}rN*(h6Uh=NhKNhLhh7jI*ubaubeubjz )rO*}rP*(h6X--disable-executable-profilingrQ*h7j*h=h>h?j} hA}rR*(hF]rS*X'cfg-flag---disable-executable-profilingrT*ahE]hC]hD]hI]j uhKNhLhhM]rU*(jj )rV*}rW*(h6Uh7jO*h=h>h?jm hA}rX*(hF]hE]hC]hD]hI]Uentries]rY*(j X4--disable-executable-profiling; cabal project optionjT*UNtrZ*auhKNhLhhM]ubj )r[*}r\*(h6jQ*h7jO*h=h>h?j hA}r]*(jjhF]hE]hC]hD]hI]uhKNhLhhM]r^*hVX--disable-executable-profilingr_*r`*}ra*(h6Uh=NhKNhLhh7j[*ubaubj )rb*}rc*(h6U h7jO*h=h>h?j hA}rd*(jjhF]hE]hC]hD]hI]uhKNhLhhM]re*hVX rf*}rg*(h6Uh=NhKNhLhh7jb*ubaubeubj )rh*}ri*(h6Uh7j*h=h>h?j hA}rj*(hC]hD]hE]hF]hI]uhKNhLhhM]rk*(j )rl*}rm*(h6Uh7jh*h=h>h?j hA}rn*(hC]hD]hE]hF]hI]uhKNhLhhM]ro*(j )rp*}rq*(h6Uh7jl*h=h>h?j hA}rr*(hC]hD]hE]hF]hI]uhKNhLhhM]rs*(j )rt*}ru*(h6jh7jp*h=h>h?j hA}rv*(hC]hD]hE]hF]hI]uhKKhM]rw*hVXSincerx*ry*}rz*(h6Uh7jt*ubaubj )r{*}r|*(h6U Cabal 1.21r}*hA}r~*(hC]hD]hE]hF]hI]uh7jp*hM]r*hi)r*}r*(h6j}*hA}r*(hC]hD]hE]hF]hI]uh7j{*hM]r*hVX Cabal 1.21r*r*}r*(h6Uh7j*ubah?hlubah?j ubeubj )r*}r*(h6UhA}r*(hC]hD]hE]hF]hI]uh7jl*hM]r*(j )r*}r*(h6X Default valueh7j*h=h>h?j hA}r*(hC]hD]hE]hF]hI]uhKKhM]r*hVX Default valuer*r*}r*(h6Uh7j*ubaubj )r*}r*(h6UhA}r*(hC]hD]hE]hF]hI]uh7j*hM]r*hi)r*}r*(h6XFalsehA}r*(hC]hD]hE]hF]hI]uh7j*hM]r*hVXFalser*r*}r*(h6XFalseh=NhKNhLhh7j*ubah?hlubah?j ubeh?j ubeubhi)r*}r*(h6XbBuild executables with profiling enabled. You probably want to use :cfg-field:`profiling` instead.h7jh*h=h>h?hlhA}r*(hC]hD]hE]hF]hI]uhKM4hLhhM]r*(hVXCBuild executables with profiling enabled. You probably want to use r*r*}r*(h6XCBuild executables with profiling enabled. You probably want to use h=NhKNhLhh7j*ubjl )r*}r*(h6X:cfg-field:`profiling`r*h7j*h=h>h?jp hA}r*(UreftypeX cfg-fieldjr js X profilingU refdomainXcabalr*hF]hE]U refexplicithC]hD]hI]ju jv jw NuhKM4hM]r*hr)r*}r*(h6j*hA}r*(hC]hD]r*(j} j*Xcabal-cfg-fieldr*ehE]hF]hI]uh7j*hM]r*hVX profilingr*r*}r*(h6Uh7j*ubah?hzubaubhVX instead.r*r*}r*(h6X instead.h=NhKNhLhh7j*ubeubhi)r*}r*(h6XrThe command line variant of this flag is ``--enable-executable-profiling`` and ``--disable-executable-profiling``.h7jh*h=h>h?hlhA}r*(hC]hD]hE]hF]hI]uhKM7hLhhM]r*(hVX)The command line variant of this flag is r*r*}r*(h6X)The command line variant of this flag is h=NhKNhLhh7j*ubhr)r*}r*(h6X!``--enable-executable-profiling``hA}r*(hC]hD]hE]hF]hI]uh7j*hM]r*hVX--enable-executable-profilingr*r*}r*(h6Uh7j*ubah?hzubhVX and r*r*}r*(h6X and h=NhKNhLhh7j*ubhr)r*}r*(h6X"``--disable-executable-profiling``hA}r*(hC]hD]hE]hF]hI]uh7j*hM]r*hVX--disable-executable-profilingr*r*}r*(h6Uh7j*ubah?hzubhVX.r*}r*(h6X.h=NhKNhLhh7j*ubeubeubeubeubh8)r*}r*(h6Uh7jh=h>h?h@hA}r*(hC]hD]hE]hF]r*jahI]r*h"auhKM<hLhhM]r*(hO)r*}r*(h6XCoverage optionsr*h7j*h=h>h?hShA}r*(hC]hD]hE]hF]hI]uhKM<hLhhM]r*hVXCoverage optionsr*r*}r*(h6j*h=NhKNhLhh7j*ubaubjj )r*}r*(h6Uh7j*h=h>h?jm hA}r*(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r*}r*(h6Uh7j*h=h>h?jr hA}r*(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr*jx j*uhKNhLhhM]r*(jz )r*}r*(h6Xcoverage: booleanh7j*h=h>h?j} hA}r*(hF]r*Xcfg-field-coverager*ahE]hC]hD]hI]j uhKNhLhhM]r*(jj )r*}r*(h6Uh7j*h=h>h?jm hA}r*(hF]hE]hC]hD]hI]Uentries]r*(j Xcoverage ; cabal project optionj*UNtr*auhKNhLhhM]ubj )r*}r*(h6Xcoverager*h7j*h=h>h?j hA}r*(jjhF]hE]hC]hD]hI]uhKNhLhhM]r*hVXcoverager*r*}r*(h6Uh=NhKNhLhh7j*ubaubj )r*}r*(h6j h7j*h=h>h?j hA}r*(jjhF]hE]hC]hD]hI]uhKNhLhhM]r*hVX: r*r*}r*(h6Uh=NhKNhLhh7j*ubaubj )r+}r+(h6Xbooleanh7j*h=h>h?j hA}r+(jjhF]hE]hC]hD]hI]uhKNhLhhM]r+hVXbooleanr+r+}r+(h6Uh=NhKNhLhh7j+ubaubeubjz )r+}r+(h6X--enable-coverager +h7j*h=h>h?j} hA}r +(hF]r +Xcfg-flag---enable-coverager +ahE]hC]hD]hI]j uhKNhLhhM]r +(jj )r+}r+(h6Uh7j+h=h>h?jm hA}r+(hF]hE]hC]hD]hI]Uentries]r+(j X'--enable-coverage; cabal project optionj +UNtr+auhKNhLhhM]ubj )r+}r+(h6j +h7j+h=h>h?j hA}r+(jjhF]hE]hC]hD]hI]uhKNhLhhM]r+hVX--enable-coverager+r+}r+(h6Uh=NhKNhLhh7j+ubaubj )r+}r+(h6U h7j+h=h>h?j hA}r+(jjhF]hE]hC]hD]hI]uhKNhLhhM]r+hVX r+}r+(h6Uh=NhKNhLhh7j+ubaubeubjz )r +}r!+(h6X--disable-coverager"+h7j*h=h>h?j} hA}r#+(hF]r$+Xcfg-flag---disable-coverager%+ahE]hC]hD]hI]j uhKNhLhhM]r&+(jj )r'+}r(+(h6Uh7j +h=h>h?jm hA}r)+(hF]hE]hC]hD]hI]Uentries]r*+(j X(--disable-coverage; cabal project optionj%+UNtr++auhKNhLhhM]ubj )r,+}r-+(h6j"+h7j +h=h>h?j hA}r.+(jjhF]hE]hC]hD]hI]uhKNhLhhM]r/+hVX--disable-coverager0+r1+}r2+(h6Uh=NhKNhLhh7j,+ubaubj )r3+}r4+(h6U h7j +h=h>h?j hA}r5+(jjhF]hE]hC]hD]hI]uhKNhLhhM]r6+hVX r7+}r8+(h6Uh=NhKNhLhh7j3+ubaubeubj )r9+}r:+(h6Uh7j*h=h>h?j hA}r;+(hC]hD]hE]hF]hI]uhKNhLhhM]r<+(j )r=+}r>+(h6Uh7j9+h=h>h?j hA}r?+(hC]hD]hE]hF]hI]uhKNhLhhM]r@+(j )rA+}rB+(h6Uh7j=+h=h>h?j hA}rC+(hC]hD]hE]hF]hI]uhKNhLhhM]rD+(j )rE+}rF+(h6jh7jA+h=h>h?j hA}rG+(hC]hD]hE]hF]hI]uhKKhM]rH+hVXSincerI+rJ+}rK+(h6Uh7jE+ubaubj )rL+}rM+(h6U Cabal 1.21rN+hA}rO+(hC]hD]hE]hF]hI]uh7jA+hM]rP+hi)rQ+}rR+(h6jN+hA}rS+(hC]hD]hE]hF]hI]uh7jL+hM]rT+hVX Cabal 1.21rU+rV+}rW+(h6Uh7jQ+ubah?hlubah?j ubeubj )rX+}rY+(h6UhA}rZ+(hC]hD]hE]hF]hI]uh7j=+hM]r[+(j )r\+}r]+(h6X Default valueh7jX+h=h>h?j hA}r^+(hC]hD]hE]hF]hI]uhKKhM]r_+hVX Default valuer`+ra+}rb+(h6Uh7j\+ubaubj )rc+}rd+(h6UhA}re+(hC]hD]hE]hF]hI]uh7jX+hM]rf+hi)rg+}rh+(h6XFalsehA}ri+(hC]hD]hE]hF]hI]uh7jc+hM]rj+hVXFalserk+rl+}rm+(h6XFalseh=NhKNhLhh7jg+ubah?hlubah?j ubeh?j ubeubhi)rn+}ro+(h6XBuild libraries and executables (including test suites) with Haskell Program Coverage enabled. Running the test suites will automatically generate coverage reports with HPC.rp+h7j9+h=h>h?hlhA}rq+(hC]hD]hE]hF]hI]uhKMFhLhhM]rr+hVXBuild libraries and executables (including test suites) with Haskell Program Coverage enabled. Running the test suites will automatically generate coverage reports with HPC.rs+rt+}ru+(h6jp+h=NhKNhLhh7jn+ubaubhi)rv+}rw+(h6XZThe command line variant of this flag is ``--enable-coverage`` and ``--disable-coverage``.h7j9+h=h>h?hlhA}rx+(hC]hD]hE]hF]hI]uhKMJhLhhM]ry+(hVX)The command line variant of this flag is rz+r{+}r|+(h6X)The command line variant of this flag is h=NhKNhLhh7jv+ubhr)r}+}r~+(h6X``--enable-coverage``hA}r+(hC]hD]hE]hF]hI]uh7jv+hM]r+hVX--enable-coverager+r+}r+(h6Uh7j}+ubah?hzubhVX and r+r+}r+(h6X and h=NhKNhLhh7jv+ubhr)r+}r+(h6X``--disable-coverage``hA}r+(hC]hD]hE]hF]hI]uh7jv+hM]r+hVX--disable-coverager+r+}r+(h6Uh7j+ubah?hzubhVX.r+}r+(h6X.h=NhKNhLhh7jv+ubeubeubeubjj )r+}r+(h6Uh7j*h=h>h?jm hA}r+(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r+}r+(h6Uh7j*h=h>h?jr hA}r+(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr+jx j+uhKNhLhhM]r+(jz )r+}r+(h6Xlibrary-coverage: booleanh7j+h=h>h?j} hA}r+(hF]r+Xcfg-field-library-coverager+ahE]hC]hD]hI]j uhKNhLhhM]r+(jj )r+}r+(h6Uh7j+h=h>h?jm hA}r+(hF]hE]hC]hD]hI]Uentries]r+(j X'library-coverage ; cabal project optionj+UNtr+auhKNhLhhM]ubj )r+}r+(h6Xlibrary-coverager+h7j+h=h>h?j hA}r+(jjhF]hE]hC]hD]hI]uhKNhLhhM]r+hVXlibrary-coverager+r+}r+(h6Uh=NhKNhLhh7j+ubaubj )r+}r+(h6j h7j+h=h>h?j hA}r+(jjhF]hE]hC]hD]hI]uhKNhLhhM]r+hVX: r+r+}r+(h6Uh=NhKNhLhh7j+ubaubj )r+}r+(h6Xbooleanh7j+h=h>h?j hA}r+(jjhF]hE]hC]hD]hI]uhKNhLhhM]r+hVXbooleanr+r+}r+(h6Uh=NhKNhLhh7j+ubaubeubjz )r+}r+(h6X--enable-library-coverager+h7j+h=h>h?j} hA}r+(hF]r+X"cfg-flag---enable-library-coverager+ahE]hC]hD]hI]j uhKNhLhhM]r+(jj )r+}r+(h6Uh7j+h=h>h?jm hA}r+(hF]hE]hC]hD]hI]Uentries]r+(j X/--enable-library-coverage; cabal project optionj+UNtr+auhKNhLhhM]ubj )r+}r+(h6j+h7j+h=h>h?j hA}r+(jjhF]hE]hC]hD]hI]uhKNhLhhM]r+hVX--enable-library-coverager+r+}r+(h6Uh=NhKNhLhh7j+ubaubj )r+}r+(h6U h7j+h=h>h?j hA}r+(jjhF]hE]hC]hD]hI]uhKNhLhhM]r+hVX r+}r+(h6Uh=NhKNhLhh7j+ubaubeubjz )r+}r+(h6X--disable-library-coverager+h7j+h=h>h?j} hA}r+(hF]r+X#cfg-flag---disable-library-coverager+ahE]hC]hD]hI]j uhKNhLhhM]r+(jj )r+}r+(h6Uh7j+h=h>h?jm hA}r+(hF]hE]hC]hD]hI]Uentries]r+(j X0--disable-library-coverage; cabal project optionj+UNtr+auhKNhLhhM]ubj )r+}r+(h6j+h7j+h=h>h?j hA}r+(jjhF]hE]hC]hD]hI]uhKNhLhhM]r+hVX--disable-library-coverager+r+}r+(h6Uh=NhKNhLhh7j+ubaubj )r+}r+(h6U h7j+h=h>h?j hA}r+(jjhF]hE]hC]hD]hI]uhKNhLhhM]r+hVX r+}r+(h6Uh=NhKNhLhh7j+ubaubeubj )r+}r+(h6Uh7j+h=h>h?j hA}r+(hC]hD]hE]hF]hI]uhKNhLhhM]r+(j )r+}r+(h6Uh7j+h=h>h?j hA}r+(hC]hD]hE]hF]hI]uhKNhLhhM]r+(j )r+}r+(h6Uh7j+h=h>h?j hA}r+(hC]hD]hE]hF]hI]uhKNhLhhM]r+(j )r+}r+(h6U Deprecatedr+h7j+h=h>h?j hA}r+(hC]hD]hE]hF]hI]uhKKhM]r+hVX Deprecatedr+r+}r+(h6Uh7j+ubaubj )r+}r,(h6UhA}r,(hC]hD]hE]hF]hI]uh7j+hM]r,hi)r,}r,(h6UhA}r,(hC]hD]hE]hF]hI]uh7j+hM]h?hlubah?j ubeubj )r,}r,(h6Uh7j+h=h>h?j hA}r,(hC]hD]hE]hF]hI]uhKNhLhhM]r ,(j )r ,}r ,(h6jh7j,h=h>h?j hA}r ,(hC]hD]hE]hF]hI]uhKKhM]r ,hVXSincer,r,}r,(h6Uh7j ,ubaubj )r,}r,(h6U Cabal 1.21r,hA}r,(hC]hD]hE]hF]hI]uh7j,hM]r,hi)r,}r,(h6j,hA}r,(hC]hD]hE]hF]hI]uh7j,hM]r,hVX Cabal 1.21r,r,}r,(h6Uh7j,ubah?hlubah?j ubeubj )r,}r,(h6UhA}r,(hC]hD]hE]hF]hI]uh7j+hM]r ,(j )r!,}r",(h6X Default valueh7j,h=h>h?j hA}r#,(hC]hD]hE]hF]hI]uhKKhM]r$,hVX Default valuer%,r&,}r',(h6Uh7j!,ubaubj )r(,}r),(h6UhA}r*,(hC]hD]hE]hF]hI]uh7j,hM]r+,hi)r,,}r-,(h6XFalsehA}r.,(hC]hD]hE]hF]hI]uh7j(,hM]r/,hVXFalser0,r1,}r2,(h6XFalseh=NhKNhLhh7j,,ubah?hlubah?j ubeh?j ubeubhi)r3,}r4,(h6X&Deprecated, use :cfg-field:`coverage`.h7j+h=h>h?hlhA}r5,(hC]hD]hE]hF]hI]uhKMUhLhhM]r6,(hVXDeprecated, use r7,r8,}r9,(h6XDeprecated, use h=NhKNhLhh7j3,ubjl )r:,}r;,(h6X:cfg-field:`coverage`r<,h7j3,h=h>h?jp hA}r=,(UreftypeX cfg-fieldjr js XcoverageU refdomainXcabalr>,hF]hE]U refexplicithC]hD]hI]ju jv jw NuhKMUhM]r?,hr)r@,}rA,(h6j<,hA}rB,(hC]hD]rC,(j} j>,Xcabal-cfg-fieldrD,ehE]hF]hI]uh7j:,hM]rE,hVXcoveragerF,rG,}rH,(h6Uh7j@,ubah?hzubaubhVX.rI,}rJ,(h6X.h=NhKNhLhh7j3,ubeubhi)rK,}rL,(h6XjThe command line variant of this flag is ``--enable-library-coverage`` and ``--disable-library-coverage``.h7j+h=h>h?hlhA}rM,(hC]hD]hE]hF]hI]uhKMWhLhhM]rN,(hVX)The command line variant of this flag is rO,rP,}rQ,(h6X)The command line variant of this flag is h=NhKNhLhh7jK,ubhr)rR,}rS,(h6X``--enable-library-coverage``hA}rT,(hC]hD]hE]hF]hI]uh7jK,hM]rU,hVX--enable-library-coveragerV,rW,}rX,(h6Uh7jR,ubah?hzubhVX and rY,rZ,}r[,(h6X and h=NhKNhLhh7jK,ubhr)r\,}r],(h6X``--disable-library-coverage``hA}r^,(hC]hD]hE]hF]hI]uh7jK,hM]r_,hVX--disable-library-coverager`,ra,}rb,(h6Uh7j\,ubah?hzubhVX.rc,}rd,(h6X.h=NhKNhLhh7jK,ubeubeubeubeubh8)re,}rf,(h6Uh7jh=h>h?h@hA}rg,(hC]hD]hE]hF]rh,jahI]ri,h auhKM[hLhhM]rj,(hO)rk,}rl,(h6XHaddock optionsrm,h7je,h=h>h?hShA}rn,(hC]hD]hE]hF]hI]uhKM[hLhhM]ro,hVXHaddock optionsrp,rq,}rr,(h6jm,h=NhKNhLhh7jk,ubaubhi)rs,}rt,(h6XfDocumentation building support is fairly sparse at the moment. Let us know if it's a priority for you!ru,h7je,h=h>h?hlhA}rv,(hC]hD]hE]hF]hI]uhKM]hLhhM]rw,hVXhDocumentation building support is fairly sparse at the moment. Let us know if it’s a priority for you!rx,ry,}rz,(h6ju,h=NhKNhLhh7js,ubaubjj )r{,}r|,(h6Uh7je,h=h>h?jm hA}r},(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r~,}r,(h6Uh7je,h=h>h?jr hA}r,(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr,jx j,uhKNhLhhM]r,(jz )r,}r,(h6Xdocumentation: booleanh7j~,h=h>h?j} hA}r,(hF]r,Xcfg-field-documentationr,ahE]hC]hD]hI]j uhKNhLhhM]r,(jj )r,}r,(h6Uh7j,h=h>h?jm hA}r,(hF]hE]hC]hD]hI]Uentries]r,(j X$documentation ; cabal project optionj,UNtr,auhKNhLhhM]ubj )r,}r,(h6X documentationr,h7j,h=h>h?j hA}r,(jjhF]hE]hC]hD]hI]uhKNhLhhM]r,hVX documentationr,r,}r,(h6Uh=NhKNhLhh7j,ubaubj )r,}r,(h6j h7j,h=h>h?j hA}r,(jjhF]hE]hC]hD]hI]uhKNhLhhM]r,hVX: r,r,}r,(h6Uh=NhKNhLhh7j,ubaubj )r,}r,(h6Xbooleanh7j,h=h>h?j hA}r,(jjhF]hE]hC]hD]hI]uhKNhLhhM]r,hVXbooleanr,r,}r,(h6Uh=NhKNhLhh7j,ubaubeubjz )r,}r,(h6X--enable-documentationr,h7j~,h=h>h?j} hA}r,(hF]r,Xcfg-flag---enable-documentationr,ahE]hC]hD]hI]j uhKNhLhhM]r,(jj )r,}r,(h6Uh7j,h=h>h?jm hA}r,(hF]hE]hC]hD]hI]Uentries]r,(j X,--enable-documentation; cabal project optionj,UNtr,auhKNhLhhM]ubj )r,}r,(h6j,h7j,h=h>h?j hA}r,(jjhF]hE]hC]hD]hI]uhKNhLhhM]r,hVX--enable-documentationr,r,}r,(h6Uh=NhKNhLhh7j,ubaubj )r,}r,(h6U h7j,h=h>h?j hA}r,(jjhF]hE]hC]hD]hI]uhKNhLhhM]r,hVX r,}r,(h6Uh=NhKNhLhh7j,ubaubeubjz )r,}r,(h6X--disable-documentationr,h7j~,h=h>h?j} hA}r,(hF]r,X cfg-flag---disable-documentationr,ahE]hC]hD]hI]j uhKNhLhhM]r,(jj )r,}r,(h6Uh7j,h=h>h?jm hA}r,(hF]hE]hC]hD]hI]Uentries]r,(j X---disable-documentation; cabal project optionj,UNtr,auhKNhLhhM]ubj )r,}r,(h6j,h7j,h=h>h?j hA}r,(jjhF]hE]hC]hD]hI]uhKNhLhhM]r,hVX--disable-documentationr,r,}r,(h6Uh=NhKNhLhh7j,ubaubj )r,}r,(h6U h7j,h=h>h?j hA}r,(jjhF]hE]hC]hD]hI]uhKNhLhhM]r,hVX r,}r,(h6Uh=NhKNhLhh7j,ubaubeubj )r,}r,(h6Uh7j~,h=h>h?j hA}r,(hC]hD]hE]hF]hI]uhKNhLhhM]r,(j )r,}r,(h6Uh7j,h=h>h?j hA}r,(hC]hD]hE]hF]hI]uhKNhLhhM]r,j )r,}r,(h6UhA}r,(hC]hD]hE]hF]hI]uh7j,hM]r,(j )r,}r,(h6X Default valueh7j,h=h>h?j hA}r,(hC]hD]hE]hF]hI]uhKKhM]r,hVX Default valuer,r,}r,(h6Uh7j,ubaubj )r,}r,(h6UhA}r,(hC]hD]hE]hF]hI]uh7j,hM]r,hi)r,}r,(h6XFalsehA}r,(hC]hD]hE]hF]hI]uh7j,hM]r,hVXFalser,r,}r,(h6XFalseh=NhKNhLhh7j,ubah?hlubah?j ubeh?j ubaubhi)r,}r,(h6X)Enables building of Haddock documentationr,h7j,h=h>h?hlhA}r,(hC]hD]hE]hF]hI]uhKMghLhhM]r,hVX)Enables building of Haddock documentationr,r,}r,(h6j,h=NhKNhLhh7j,ubaubhi)r,}r,(h6XdThe command line variant of this flag is ``--enable-documentation`` and ``--disable-documentation``.h7j,h=h>h?hlhA}r,(hC]hD]hE]hF]hI]uhKMihLhhM]r,(hVX)The command line variant of this flag is r-r-}r-(h6X)The command line variant of this flag is h=NhKNhLhh7j,ubhr)r-}r-(h6X``--enable-documentation``hA}r-(hC]hD]hE]hF]hI]uh7j,hM]r-hVX--enable-documentationr-r-}r -(h6Uh7j-ubah?hzubhVX and r -r -}r -(h6X and h=NhKNhLhh7j,ubhr)r -}r-(h6X``--disable-documentation``hA}r-(hC]hD]hE]hF]hI]uh7j,hM]r-hVX--disable-documentationr-r-}r-(h6Uh7j -ubah?hzubhVX.r-}r-(h6X.h=NhKNhLhh7j,ubeubeubeubjj )r-}r-(h6Uh7je,h=h>h?jm hA}r-(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r-}r-(h6Uh7je,h=h>h?jr hA}r-(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr-jx j-uhKNhLhhM]r-(jz )r-}r-(h6Xdoc-index-file: templated pathh7j-h=h>h?j} hA}r -(hF]r!-Xcfg-field-doc-index-filer"-ahE]hC]hD]hI]j uhKNhLhhM]r#-(jj )r$-}r%-(h6Uh7j-h=h>h?jm hA}r&-(hF]hE]hC]hD]hI]Uentries]r'-(j X%doc-index-file ; cabal project optionj"-UNtr(-auhKNhLhhM]ubj )r)-}r*-(h6Xdoc-index-filer+-h7j-h=h>h?j hA}r,-(jjhF]hE]hC]hD]hI]uhKNhLhhM]r--hVXdoc-index-filer.-r/-}r0-(h6Uh=NhKNhLhh7j)-ubaubj )r1-}r2-(h6j h7j-h=h>h?j hA}r3-(jjhF]hE]hC]hD]hI]uhKNhLhhM]r4-hVX: r5-r6-}r7-(h6Uh=NhKNhLhh7j1-ubaubj )r8-}r9-(h6Xtemplated pathh7j-h=h>h?j hA}r:-(jjhF]hE]hC]hD]hI]uhKNhLhhM]r;-hVXtemplated pathr<-r=-}r>-(h6Uh=NhKNhLhh7j8-ubaubeubjz )r?-}r@-(h6X--doc-index-file=TEMPLATEh7j-h=h>h?j} hA}rA-(hF]rB-Xcfg-flag---doc-index-filerC-ahE]hC]hD]hI]j uhKNhLhhM]rD-(jj )rE-}rF-(h6Uh7j?-h=h>h?jm hA}rG-(hF]hE]hC]hD]hI]Uentries]rH-(j X&--doc-index-file; cabal project optionjC-UNtrI-auhKNhLhhM]ubj )rJ-}rK-(h6X--doc-index-filerL-h7j?-h=h>h?j hA}rM-(jjhF]hE]hC]hD]hI]uhKNhLhhM]rN-hVX--doc-index-filerO-rP-}rQ-(h6Uh=NhKNhLhh7jJ-ubaubj )rR-}rS-(h6X =TEMPLATEh7j?-h=h>h?j hA}rT-(jjhF]hE]hC]hD]hI]uhKNhLhhM]rU-hVX =TEMPLATErV-rW-}rX-(h6Uh=NhKNhLhh7jR-ubaubeubj )rY-}rZ-(h6Uh7j-h=h>h?j hA}r[-(hC]hD]hE]hF]hI]uhKNhLhhM]r\-(hi)r]-}r^-(h6XA central index of Haddock API documentation (template cannot use ``$pkgid``), which should be updated as documentation is built.h7jY-h=h>h?hlhA}r_-(hC]hD]hE]hF]hI]uhKMphLhhM]r`-(hVXBA central index of Haddock API documentation (template cannot use ra-rb-}rc-(h6XBA central index of Haddock API documentation (template cannot use h=NhKNhLhh7j]-ubhr)rd-}re-(h6X ``$pkgid``hA}rf-(hC]hD]hE]hF]hI]uh7j]-hM]rg-hVX$pkgidrh-ri-}rj-(h6Uh7jd-ubah?hzubhVX5), which should be updated as documentation is built.rk-rl-}rm-(h6X5), which should be updated as documentation is built.h=NhKNhLhh7j]-ubeubhi)rn-}ro-(h6XFThe command line variant of this flag is ``--doc-index-file=TEMPLATE``h7jY-h=h>h?hlhA}rp-(hC]hD]hE]hF]hI]uhKMshLhhM]rq-(hVX)The command line variant of this flag is rr-rs-}rt-(h6X)The command line variant of this flag is h=NhKNhLhh7jn-ubhr)ru-}rv-(h6X``--doc-index-file=TEMPLATE``hA}rw-(hC]hD]hE]hF]hI]uh7jn-hM]rx-hVX--doc-index-file=TEMPLATEry-rz-}r{-(h6Uh7ju-ubah?hzubeubeubeubhi)r|-}r}-(h6XThe following commands are equivalent to ones that would be passed when running ``setup haddock``. (TODO: Where does the documentation get put.)h7je,h=h>h?hlhA}r~-(hC]hD]hE]hF]hI]uhKMvhLhhM]r-(hVXPThe following commands are equivalent to ones that would be passed when running r-r-}r-(h6XPThe following commands are equivalent to ones that would be passed when running h=NhKNhLhh7j|-ubhr)r-}r-(h6X``setup haddock``hA}r-(hC]hD]hE]hF]hI]uh7j|-hM]r-hVX setup haddockr-r-}r-(h6Uh7j-ubah?hzubhVX/. (TODO: Where does the documentation get put.)r-r-}r-(h6X/. (TODO: Where does the documentation get put.)h=NhKNhLhh7j|-ubeubjj )r-}r-(h6Uh7je,h=h>h?jm hA}r-(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r-}r-(h6Uh7je,h=h>h?jr hA}r-(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr-jx j-uhKNhLhhM]r-(jz )r-}r-(h6Xhaddock-hoogle: booleanh7j-h=h>h?j} hA}r-(hF]r-Xcfg-field-haddock-hoogler-ahE]hC]hD]hI]j uhKNhLhhM]r-(jj )r-}r-(h6Uh7j-h=h>h?jm hA}r-(hF]hE]hC]hD]hI]Uentries]r-(j X%haddock-hoogle ; cabal project optionj-UNtr-auhKNhLhhM]ubj )r-}r-(h6Xhaddock-hoogler-h7j-h=h>h?j hA}r-(jjhF]hE]hC]hD]hI]uhKNhLhhM]r-hVXhaddock-hoogler-r-}r-(h6Uh=NhKNhLhh7j-ubaubj )r-}r-(h6j h7j-h=h>h?j hA}r-(jjhF]hE]hC]hD]hI]uhKNhLhhM]r-hVX: r-r-}r-(h6Uh=NhKNhLhh7j-ubaubj )r-}r-(h6Xbooleanh7j-h=h>h?j hA}r-(jjhF]hE]hC]hD]hI]uhKNhLhhM]r-hVXbooleanr-r-}r-(h6Uh=NhKNhLhh7j-ubaubeubj )r-}r-(h6Uh7j-h=h>h?j hA}r-(hC]hD]hE]hF]hI]uhKNhLhhM]r-(j )r-}r-(h6Uh7j-h=h>h?j hA}r-(hC]hD]hE]hF]hI]uhKNhLhhM]r-j )r-}r-(h6UhA}r-(hC]hD]hE]hF]hI]uh7j-hM]r-(j )r-}r-(h6X Default valueh7j-h=h>h?j hA}r-(hC]hD]hE]hF]hI]uhKKhM]r-hVX Default valuer-r-}r-(h6Uh7j-ubaubj )r-}r-(h6UhA}r-(hC]hD]hE]hF]hI]uh7j-hM]r-hi)r-}r-(h6XFalsehA}r-(hC]hD]hE]hF]hI]uh7j-hM]r-hVXFalser-r-}r-(h6XFalseh=NhKNhLhh7j-ubah?hlubah?j ubeh?j ubaubhi)r-}r-(h6XGenerate a text file which can be converted by Hoogle_ into a database for searching. This is equivalent to running ``haddock`` with the ``--hoogle`` flag.h7j-h=h>h?hlhA}r-(hC]hD]hE]hF]hI]uhKM~hLhhM]r-(hVX/Generate a text file which can be converted by r-r-}r-(h6X/Generate a text file which can be converted by h=NhKNhLhh7j-ubjl)r-}r-(h6XHoogle_Uresolvedr-Kh7j-h?juhA}r-(UnameXHooglejpXhttp://www.haskell.org/hoogle/r-hF]hE]hC]hD]hI]uhM]r-hVXHoogler-r-}r-(h6Uh7j-ubaubhVX> into a database for searching. This is equivalent to running r-r-}r-(h6X> into a database for searching. This is equivalent to running h=NhKNhLhh7j-ubhr)r-}r-(h6X ``haddock``hA}r-(hC]hD]hE]hF]hI]uh7j-hM]r-hVXhaddockr-r-}r-(h6Uh7j-ubah?hzubhVX with the r-r-}r-(h6X with the h=NhKNhLhh7j-ubhr)r-}r-(h6X ``--hoogle``hA}r-(hC]hD]hE]hF]hI]uh7j-hM]r-hVX--hoogler-r-}r-(h6Uh7j-ubah?hzubhVX flag.r-r-}r-(h6X flag.h=NhKNhLhh7j-ubeubhi)r-}r-(h6XTThe command line variant of this flag is ``--hoogle`` (for the ``haddock`` command).h7j-h=h>h?hlhA}r-(hC]hD]hE]hF]hI]uhKMhLhhM]r-(hVX)The command line variant of this flag is r-r.}r.(h6X)The command line variant of this flag is h=NhKNhLhh7j-ubhr)r.}r.(h6X ``--hoogle``hA}r.(hC]hD]hE]hF]hI]uh7j-hM]r.hVX--hoogler.r.}r.(h6Uh7j.ubah?hzubhVX (for the r .r .}r .(h6X (for the h=NhKNhLhh7j-ubhr)r .}r .(h6X ``haddock``hA}r.(hC]hD]hE]hF]hI]uh7j-hM]r.hVXhaddockr.r.}r.(h6Uh7j .ubah?hzubhVX command).r.r.}r.(h6X command).h=NhKNhLhh7j-ubeubeubeubjj )r.}r.(h6Uh7je,h=h>h?jm hA}r.(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r.}r.(h6Uh7je,h=h>h?jr hA}r.(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr.jx j.uhKNhLhhM]r.(jz )r.}r.(h6Xhaddock-html: booleanh7j.h=h>h?j} hA}r .(hF]r!.Xcfg-field-haddock-htmlr".ahE]hC]hD]hI]j uhKNhLhhM]r#.(jj )r$.}r%.(h6Uh7j.h=h>h?jm hA}r&.(hF]hE]hC]hD]hI]Uentries]r'.(j X#haddock-html ; cabal project optionj".UNtr(.auhKNhLhhM]ubj )r).}r*.(h6X haddock-htmlr+.h7j.h=h>h?j hA}r,.(jjhF]hE]hC]hD]hI]uhKNhLhhM]r-.hVX haddock-htmlr..r/.}r0.(h6Uh=NhKNhLhh7j).ubaubj )r1.}r2.(h6j h7j.h=h>h?j hA}r3.(jjhF]hE]hC]hD]hI]uhKNhLhhM]r4.hVX: r5.r6.}r7.(h6Uh=NhKNhLhh7j1.ubaubj )r8.}r9.(h6Xbooleanh7j.h=h>h?j hA}r:.(jjhF]hE]hC]hD]hI]uhKNhLhhM]r;.hVXbooleanr<.r=.}r>.(h6Uh=NhKNhLhh7j8.ubaubeubj )r?.}r@.(h6Uh7j.h=h>h?j hA}rA.(hC]hD]hE]hF]hI]uhKNhLhhM]rB.(j )rC.}rD.(h6Uh7j?.h=h>h?j hA}rE.(hC]hD]hE]hF]hI]uhKNhLhhM]rF.j )rG.}rH.(h6UhA}rI.(hC]hD]hE]hF]hI]uh7jC.hM]rJ.(j )rK.}rL.(h6X Default valueh7jG.h=h>h?j hA}rM.(hC]hD]hE]hF]hI]uhKKhM]rN.hVX Default valuerO.rP.}rQ.(h6Uh7jK.ubaubj )rR.}rS.(h6UhA}rT.(hC]hD]hE]hF]hI]uh7jG.hM]rU.hi)rV.}rW.(h6XTruehA}rX.(hC]hD]hE]hF]hI]uh7jR.hM]rY.hVXTruerZ.r[.}r\.(h6XTrueh=NhKNhLhh7jV.ubah?hlubah?j ubeh?j ubaubhi)r].}r^.(h6XBuild HTML documentation.r_.h7j?.h=h>h?hlhA}r`.(hC]hD]hE]hF]hI]uhKMhLhhM]ra.hVXBuild HTML documentation.rb.rc.}rd.(h6j_.h=NhKNhLhh7j].ubaubhi)re.}rf.(h6XRThe command line variant of this flag is ``--html`` (for the ``haddock`` command).h7j?.h=h>h?hlhA}rg.(hC]hD]hE]hF]hI]uhKMhLhhM]rh.(hVX)The command line variant of this flag is ri.rj.}rk.(h6X)The command line variant of this flag is h=NhKNhLhh7je.ubhr)rl.}rm.(h6X ``--html``hA}rn.(hC]hD]hE]hF]hI]uh7je.hM]ro.hVX--htmlrp.rq.}rr.(h6Uh7jl.ubah?hzubhVX (for the rs.rt.}ru.(h6X (for the h=NhKNhLhh7je.ubhr)rv.}rw.(h6X ``haddock``hA}rx.(hC]hD]hE]hF]hI]uh7je.hM]ry.hVXhaddockrz.r{.}r|.(h6Uh7jv.ubah?hzubhVX command).r}.r~.}r.(h6X command).h=NhKNhLhh7je.ubeubeubeubjj )r.}r.(h6Uh7je,h=h>h?jm hA}r.(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r.}r.(h6Uh7je,h=h>h?jr hA}r.(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr.jx j.uhKNhLhhM]r.(jz )r.}r.(h6X%haddock-html-location: templated pathh7j.h=h>h?j} hA}r.(hF]r.Xcfg-field-haddock-html-locationr.ahE]hC]hD]hI]j uhKNhLhhM]r.(jj )r.}r.(h6Uh7j.h=h>h?jm hA}r.(hF]hE]hC]hD]hI]Uentries]r.(j X,haddock-html-location ; cabal project optionj.UNtr.auhKNhLhhM]ubj )r.}r.(h6Xhaddock-html-locationr.h7j.h=h>h?j hA}r.(jjhF]hE]hC]hD]hI]uhKNhLhhM]r.hVXhaddock-html-locationr.r.}r.(h6Uh=NhKNhLhh7j.ubaubj )r.}r.(h6j h7j.h=h>h?j hA}r.(jjhF]hE]hC]hD]hI]uhKNhLhhM]r.hVX: r.r.}r.(h6Uh=NhKNhLhh7j.ubaubj )r.}r.(h6Xtemplated pathh7j.h=h>h?j hA}r.(jjhF]hE]hC]hD]hI]uhKNhLhhM]r.hVXtemplated pathr.r.}r.(h6Uh=NhKNhLhh7j.ubaubeubj )r.}r.(h6Uh7j.h=h>h?j hA}r.(hC]hD]hE]hF]hI]uhKNhLhhM]r.(hi)r.}r.(h6X:Specify a template for the location of HTML documentation for prerequisite packages. The substitutions are applied to the template to obtain a location for each package, which will be used by hyperlinks in the generated documentation. For example, the following command generates links pointing at [Hackage] pages:r.h7j.h=h>h?hlhA}r.(hC]hD]hE]hF]hI]uhKMhLhhM]r.hVX:Specify a template for the location of HTML documentation for prerequisite packages. The substitutions are applied to the template to obtain a location for each package, which will be used by hyperlinks in the generated documentation. For example, the following command generates links pointing at [Hackage] pages:r.r.}r.(h6j.h=NhKNhLhh7j.ubaubj)r.}r.(h6XQhtml-location: 'http://hackage.haskell.org/packages/archive/$pkg/latest/doc/html'h7j.h=h>h?jhA}r.(jjhF]hE]hC]hD]hI]uhKMhLhhM]r.hVXQhtml-location: 'http://hackage.haskell.org/packages/archive/$pkg/latest/doc/html'r.r.}r.(h6Uh7j.ubaubhi)r.}r.(h6XHere the argument is quoted to prevent substitution by the shell. If this option is omitted, the location for each package is obtained using the package tool (e.g. ``ghc-pkg``).h7j.h=h>h?hlhA}r.(hC]hD]hE]hF]hI]uhKMhLhhM]r.(hVXHere the argument is quoted to prevent substitution by the shell. If this option is omitted, the location for each package is obtained using the package tool (e.g. r.r.}r.(h6XHere the argument is quoted to prevent substitution by the shell. If this option is omitted, the location for each package is obtained using the package tool (e.g. h=NhKNhLhh7j.ubhr)r.}r.(h6X ``ghc-pkg``hA}r.(hC]hD]hE]hF]hI]uh7j.hM]r.hVXghc-pkgr.r.}r.(h6Uh7j.ubah?hzubhVX).r.r.}r.(h6X).h=NhKNhLhh7j.ubeubhi)r.}r.(h6X^The command line variant of this flag is ``--html-location`` (for the ``haddock`` subcommand).h7j.h=h>h?hlhA}r.(hC]hD]hE]hF]hI]uhKMhLhhM]r.(hVX)The command line variant of this flag is r.r.}r.(h6X)The command line variant of this flag is h=NhKNhLhh7j.ubhr)r.}r.(h6X``--html-location``hA}r.(hC]hD]hE]hF]hI]uh7j.hM]r.hVX--html-locationr.r.}r.(h6Uh7j.ubah?hzubhVX (for the r.r.}r.(h6X (for the h=NhKNhLhh7j.ubhr)r.}r.(h6X ``haddock``hA}r.(hC]hD]hE]hF]hI]uh7j.hM]r.hVXhaddockr.r.}r.(h6Uh7j.ubah?hzubhVX subcommand).r.r.}r.(h6X subcommand).h=NhKNhLhh7j.ubeubeubeubjj )r.}r.(h6Uh7je,h=h>h?jm hA}r.(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r.}r.(h6Uh7je,h=h>h?jr hA}r.(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr.jx j.uhKNhLhhM]r.(jz )r.}r.(h6Xhaddock-executables: booleanh7j.h=h>h?j} hA}r.(hF]r.Xcfg-field-haddock-executablesr.ahE]hC]hD]hI]j uhKNhLhhM]r.(jj )r.}r.(h6Uh7j.h=h>h?jm hA}r.(hF]hE]hC]hD]hI]Uentries]r.(j X*haddock-executables ; cabal project optionj.UNtr.auhKNhLhhM]ubj )r.}r.(h6Xhaddock-executablesr.h7j.h=h>h?j hA}r.(jjhF]hE]hC]hD]hI]uhKNhLhhM]r.hVXhaddock-executablesr/r/}r/(h6Uh=NhKNhLhh7j.ubaubj )r/}r/(h6j h7j.h=h>h?j hA}r/(jjhF]hE]hC]hD]hI]uhKNhLhhM]r/hVX: r/r/}r /(h6Uh=NhKNhLhh7j/ubaubj )r /}r /(h6Xbooleanh7j.h=h>h?j hA}r /(jjhF]hE]hC]hD]hI]uhKNhLhhM]r /hVXbooleanr/r/}r/(h6Uh=NhKNhLhh7j /ubaubeubj )r/}r/(h6Uh7j.h=h>h?j hA}r/(hC]hD]hE]hF]hI]uhKNhLhhM]r/(j )r/}r/(h6Uh7j/h=h>h?j hA}r/(hC]hD]hE]hF]hI]uhKNhLhhM]r/j )r/}r/(h6UhA}r/(hC]hD]hE]hF]hI]uh7j/hM]r/(j )r/}r/(h6X Default valueh7j/h=h>h?j hA}r/(hC]hD]hE]hF]hI]uhKKhM]r /hVX Default valuer!/r"/}r#/(h6Uh7j/ubaubj )r$/}r%/(h6UhA}r&/(hC]hD]hE]hF]hI]uh7j/hM]r'/hi)r(/}r)/(h6XFalsehA}r*/(hC]hD]hE]hF]hI]uh7j$/hM]r+/hVXFalser,/r-/}r./(h6XFalseh=NhKNhLhh7j(/ubah?hlubah?j ubeh?j ubaubhi)r//}r0/(h6X'Run haddock on all executable programs.r1/h7j/h=h>h?hlhA}r2/(hC]hD]hE]hF]hI]uhKMhLhhM]r3/hVX'Run haddock on all executable programs.r4/r5/}r6/(h6j1/h=NhKNhLhh7j//ubaubhi)r7/}r8/(h6X\The command line variant of this flag is ``--executables`` (for the ``haddock`` subcommand).h7j/h=h>h?hlhA}r9/(hC]hD]hE]hF]hI]uhKMhLhhM]r:/(hVX)The command line variant of this flag is r;/r/}r?/(h6X``--executables``hA}r@/(hC]hD]hE]hF]hI]uh7j7/hM]rA/hVX --executablesrB/rC/}rD/(h6Uh7j>/ubah?hzubhVX (for the rE/rF/}rG/(h6X (for the h=NhKNhLhh7j7/ubhr)rH/}rI/(h6X ``haddock``hA}rJ/(hC]hD]hE]hF]hI]uh7j7/hM]rK/hVXhaddockrL/rM/}rN/(h6Uh7jH/ubah?hzubhVX subcommand).rO/rP/}rQ/(h6X subcommand).h=NhKNhLhh7j7/ubeubeubeubjj )rR/}rS/(h6Uh7je,h=h>h?jm hA}rT/(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )rU/}rV/(h6Uh7je,h=h>h?jr hA}rW/(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldrX/jx jX/uhKNhLhhM]rY/(jz )rZ/}r[/(h6Xhaddock-tests: booleanh7jU/h=h>h?j} hA}r\/(hF]r]/Xcfg-field-haddock-testsr^/ahE]hC]hD]hI]j uhKNhLhhM]r_/(jj )r`/}ra/(h6Uh7jZ/h=h>h?jm hA}rb/(hF]hE]hC]hD]hI]Uentries]rc/(j X$haddock-tests ; cabal project optionj^/UNtrd/auhKNhLhhM]ubj )re/}rf/(h6X haddock-testsrg/h7jZ/h=h>h?j hA}rh/(jjhF]hE]hC]hD]hI]uhKNhLhhM]ri/hVX haddock-testsrj/rk/}rl/(h6Uh=NhKNhLhh7je/ubaubj )rm/}rn/(h6j h7jZ/h=h>h?j hA}ro/(jjhF]hE]hC]hD]hI]uhKNhLhhM]rp/hVX: rq/rr/}rs/(h6Uh=NhKNhLhh7jm/ubaubj )rt/}ru/(h6Xbooleanh7jZ/h=h>h?j hA}rv/(jjhF]hE]hC]hD]hI]uhKNhLhhM]rw/hVXbooleanrx/ry/}rz/(h6Uh=NhKNhLhh7jt/ubaubeubj )r{/}r|/(h6Uh7jU/h=h>h?j hA}r}/(hC]hD]hE]hF]hI]uhKNhLhhM]r~/(j )r/}r/(h6Uh7j{/h=h>h?j hA}r/(hC]hD]hE]hF]hI]uhKNhLhhM]r/j )r/}r/(h6UhA}r/(hC]hD]hE]hF]hI]uh7j/hM]r/(j )r/}r/(h6X Default valueh7j/h=h>h?j hA}r/(hC]hD]hE]hF]hI]uhKKhM]r/hVX Default valuer/r/}r/(h6Uh7j/ubaubj )r/}r/(h6UhA}r/(hC]hD]hE]hF]hI]uh7j/hM]r/hi)r/}r/(h6XFalsehA}r/(hC]hD]hE]hF]hI]uh7j/hM]r/hVXFalser/r/}r/(h6XFalseh=NhKNhLhh7j/ubah?hlubah?j ubeh?j ubaubhi)r/}r/(h6XRun haddock on all test suites.r/h7j{/h=h>h?hlhA}r/(hC]hD]hE]hF]hI]uhKMhLhhM]r/hVXRun haddock on all test suites.r/r/}r/(h6j/h=NhKNhLhh7j/ubaubhi)r/}r/(h6XVThe command line variant of this flag is ``--tests`` (for the ``haddock`` subcommand).h7j{/h=h>h?hlhA}r/(hC]hD]hE]hF]hI]uhKMhLhhM]r/(hVX)The command line variant of this flag is r/r/}r/(h6X)The command line variant of this flag is h=NhKNhLhh7j/ubhr)r/}r/(h6X ``--tests``hA}r/(hC]hD]hE]hF]hI]uh7j/hM]r/hVX--testsr/r/}r/(h6Uh7j/ubah?hzubhVX (for the r/r/}r/(h6X (for the h=NhKNhLhh7j/ubhr)r/}r/(h6X ``haddock``hA}r/(hC]hD]hE]hF]hI]uh7j/hM]r/hVXhaddockr/r/}r/(h6Uh7j/ubah?hzubhVX subcommand).r/r/}r/(h6X subcommand).h=NhKNhLhh7j/ubeubeubeubjj )r/}r/(h6Uh7je,h=h>h?jm hA}r/(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r/}r/(h6Uh7je,h=h>h?jr hA}r/(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr/jx j/uhKNhLhhM]r/(jz )r/}r/(h6Xhaddock-benchmarks: booleanh7j/h=h>h?j} hA}r/(hF]r/Xcfg-field-haddock-benchmarksr/ahE]hC]hD]hI]j uhKNhLhhM]r/(jj )r/}r/(h6Uh7j/h=h>h?jm hA}r/(hF]hE]hC]hD]hI]Uentries]r/(j X)haddock-benchmarks ; cabal project optionj/UNtr/auhKNhLhhM]ubj )r/}r/(h6Xhaddock-benchmarksr/h7j/h=h>h?j hA}r/(jjhF]hE]hC]hD]hI]uhKNhLhhM]r/hVXhaddock-benchmarksr/r/}r/(h6Uh=NhKNhLhh7j/ubaubj )r/}r/(h6j h7j/h=h>h?j hA}r/(jjhF]hE]hC]hD]hI]uhKNhLhhM]r/hVX: r/r/}r/(h6Uh=NhKNhLhh7j/ubaubj )r/}r/(h6Xbooleanh7j/h=h>h?j hA}r/(jjhF]hE]hC]hD]hI]uhKNhLhhM]r/hVXbooleanr/r/}r/(h6Uh=NhKNhLhh7j/ubaubeubj )r/}r/(h6Uh7j/h=h>h?j hA}r/(hC]hD]hE]hF]hI]uhKNhLhhM]r/(j )r/}r/(h6Uh7j/h=h>h?j hA}r/(hC]hD]hE]hF]hI]uhKNhLhhM]r/j )r/}r/(h6UhA}r/(hC]hD]hE]hF]hI]uh7j/hM]r/(j )r/}r/(h6X Default valueh7j/h=h>h?j hA}r/(hC]hD]hE]hF]hI]uhKKhM]r/hVX Default valuer/r/}r/(h6Uh7j/ubaubj )r/}r/(h6UhA}r/(hC]hD]hE]hF]hI]uh7j/hM]r/hi)r/}r/(h6XFalsehA}r/(hC]hD]hE]hF]hI]uh7j/hM]r/hVXFalser0r0}r0(h6XFalseh=NhKNhLhh7j/ubah?hlubah?j ubeh?j ubaubhi)r0}r0(h6XRun haddock on all benchmarks.r0h7j/h=h>h?hlhA}r0(hC]hD]hE]hF]hI]uhKMhLhhM]r0hVXRun haddock on all benchmarks.r0r 0}r 0(h6j0h=NhKNhLhh7j0ubaubhi)r 0}r 0(h6X[The command line variant of this flag is ``--benchmarks`` (for the ``haddock`` subcommand).h7j/h=h>h?hlhA}r 0(hC]hD]hE]hF]hI]uhKMhLhhM]r0(hVX)The command line variant of this flag is r0r0}r0(h6X)The command line variant of this flag is h=NhKNhLhh7j 0ubhr)r0}r0(h6X``--benchmarks``hA}r0(hC]hD]hE]hF]hI]uh7j 0hM]r0hVX --benchmarksr0r0}r0(h6Uh7j0ubah?hzubhVX (for the r0r0}r0(h6X (for the h=NhKNhLhh7j 0ubhr)r0}r0(h6X ``haddock``hA}r0(hC]hD]hE]hF]hI]uh7j 0hM]r0hVXhaddockr 0r!0}r"0(h6Uh7j0ubah?hzubhVX subcommand).r#0r$0}r%0(h6X subcommand).h=NhKNhLhh7j 0ubeubeubeubjj )r&0}r'0(h6Uh7je,h=h>h?jm hA}r(0(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r)0}r*0(h6Uh7je,h=h>h?jr hA}r+0(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr,0jx j,0uhKNhLhhM]r-0(jz )r.0}r/0(h6Xhaddock-all: booleanh7j)0h=h>h?j} hA}r00(hF]r10Xcfg-field-haddock-allr20ahE]hC]hD]hI]j uhKNhLhhM]r30(jj )r40}r50(h6Uh7j.0h=h>h?jm hA}r60(hF]hE]hC]hD]hI]Uentries]r70(j X"haddock-all ; cabal project optionj20UNtr80auhKNhLhhM]ubj )r90}r:0(h6X haddock-allr;0h7j.0h=h>h?j hA}r<0(jjhF]hE]hC]hD]hI]uhKNhLhhM]r=0hVX haddock-allr>0r?0}r@0(h6Uh=NhKNhLhh7j90ubaubj )rA0}rB0(h6j h7j.0h=h>h?j hA}rC0(jjhF]hE]hC]hD]hI]uhKNhLhhM]rD0hVX: rE0rF0}rG0(h6Uh=NhKNhLhh7jA0ubaubj )rH0}rI0(h6Xbooleanh7j.0h=h>h?j hA}rJ0(jjhF]hE]hC]hD]hI]uhKNhLhhM]rK0hVXbooleanrL0rM0}rN0(h6Uh=NhKNhLhh7jH0ubaubeubj )rO0}rP0(h6Uh7j)0h=h>h?j hA}rQ0(hC]hD]hE]hF]hI]uhKNhLhhM]rR0(j )rS0}rT0(h6Uh7jO0h=h>h?j hA}rU0(hC]hD]hE]hF]hI]uhKNhLhhM]rV0j )rW0}rX0(h6UhA}rY0(hC]hD]hE]hF]hI]uh7jS0hM]rZ0(j )r[0}r\0(h6X Default valueh7jW0h=h>h?j hA}r]0(hC]hD]hE]hF]hI]uhKKhM]r^0hVX Default valuer_0r`0}ra0(h6Uh7j[0ubaubj )rb0}rc0(h6UhA}rd0(hC]hD]hE]hF]hI]uh7jW0hM]re0hi)rf0}rg0(h6XFalsehA}rh0(hC]hD]hE]hF]hI]uh7jb0hM]ri0hVXFalserj0rk0}rl0(h6XFalseh=NhKNhLhh7jf0ubah?hlubah?j ubeh?j ubaubhi)rm0}rn0(h6XRun haddock on all components.ro0h7jO0h=h>h?hlhA}rp0(hC]hD]hE]hF]hI]uhKMhLhhM]rq0hVXRun haddock on all components.rr0rs0}rt0(h6jo0h=NhKNhLhh7jm0ubaubhi)ru0}rv0(h6XTThe command line variant of this flag is ``--all`` (for the ``haddock`` subcommand).h7jO0h=h>h?hlhA}rw0(hC]hD]hE]hF]hI]uhKMhLhhM]rx0(hVX)The command line variant of this flag is ry0rz0}r{0(h6X)The command line variant of this flag is h=NhKNhLhh7ju0ubhr)r|0}r}0(h6X ``--all``hA}r~0(hC]hD]hE]hF]hI]uh7ju0hM]r0hVX--allr0r0}r0(h6Uh7j|0ubah?hzubhVX (for the r0r0}r0(h6X (for the h=NhKNhLhh7ju0ubhr)r0}r0(h6X ``haddock``hA}r0(hC]hD]hE]hF]hI]uh7ju0hM]r0hVXhaddockr0r0}r0(h6Uh7j0ubah?hzubhVX subcommand).r0r0}r0(h6X subcommand).h=NhKNhLhh7ju0ubeubeubeubjj )r0}r0(h6Uh7je,h=h>h?jm hA}r0(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r0}r0(h6Uh7je,h=h>h?jr hA}r0(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr0jx j0uhKNhLhhM]r0(jz )r0}r0(h6Xhaddock-internal: booleanh7j0h=h>h?j} hA}r0(hF]r0Xcfg-field-haddock-internalr0ahE]hC]hD]hI]j uhKNhLhhM]r0(jj )r0}r0(h6Uh7j0h=h>h?jm hA}r0(hF]hE]hC]hD]hI]Uentries]r0(j X'haddock-internal ; cabal project optionj0UNtr0auhKNhLhhM]ubj )r0}r0(h6Xhaddock-internalr0h7j0h=h>h?j hA}r0(jjhF]hE]hC]hD]hI]uhKNhLhhM]r0hVXhaddock-internalr0r0}r0(h6Uh=NhKNhLhh7j0ubaubj )r0}r0(h6j h7j0h=h>h?j hA}r0(jjhF]hE]hC]hD]hI]uhKNhLhhM]r0hVX: r0r0}r0(h6Uh=NhKNhLhh7j0ubaubj )r0}r0(h6Xbooleanh7j0h=h>h?j hA}r0(jjhF]hE]hC]hD]hI]uhKNhLhhM]r0hVXbooleanr0r0}r0(h6Uh=NhKNhLhh7j0ubaubeubj )r0}r0(h6Uh7j0h=h>h?j hA}r0(hC]hD]hE]hF]hI]uhKNhLhhM]r0(j )r0}r0(h6Uh7j0h=h>h?j hA}r0(hC]hD]hE]hF]hI]uhKNhLhhM]r0j )r0}r0(h6UhA}r0(hC]hD]hE]hF]hI]uh7j0hM]r0(j )r0}r0(h6X Default valueh7j0h=h>h?j hA}r0(hC]hD]hE]hF]hI]uhKKhM]r0hVX Default valuer0r0}r0(h6Uh7j0ubaubj )r0}r0(h6UhA}r0(hC]hD]hE]hF]hI]uh7j0hM]r0hi)r0}r0(h6XFalsehA}r0(hC]hD]hE]hF]hI]uh7j0hM]r0hVXFalser0r0}r0(h6XFalseh=NhKNhLhh7j0ubah?hlubah?j ubeh?j ubaubhi)r0}r0(h6XIBuild haddock documentation which includes unexposed modules and symbols.r0h7j0h=h>h?hlhA}r0(hC]hD]hE]hF]hI]uhKMhLhhM]r0hVXIBuild haddock documentation which includes unexposed modules and symbols.r0r0}r0(h6j0h=NhKNhLhh7j0ubaubhi)r0}r0(h6XYThe command line variant of this flag is ``--internal`` (for the ``haddock`` subcommand).h7j0h=h>h?hlhA}r0(hC]hD]hE]hF]hI]uhKMhLhhM]r0(hVX)The command line variant of this flag is r0r0}r0(h6X)The command line variant of this flag is h=NhKNhLhh7j0ubhr)r0}r0(h6X``--internal``hA}r0(hC]hD]hE]hF]hI]uh7j0hM]r0hVX --internalr0r0}r0(h6Uh7j0ubah?hzubhVX (for the r0r0}r0(h6X (for the h=NhKNhLhh7j0ubhr)r0}r0(h6X ``haddock``hA}r0(hC]hD]hE]hF]hI]uh7j0hM]r0hVXhaddockr0r0}r0(h6Uh7j0ubah?hzubhVX subcommand).r0r0}r0(h6X subcommand).h=NhKNhLhh7j0ubeubeubeubjj )r0}r0(h6Uh7je,h=h>h?jm hA}r0(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r0}r0(h6Uh7je,h=h>h?jr hA}r0(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr1jx j1uhKNhLhhM]r1(jz )r1}r1(h6Xhaddock-css: pathh7j0h=h>h?j} hA}r1(hF]r1Xcfg-field-haddock-cssr1ahE]hC]hD]hI]j uhKNhLhhM]r1(jj )r1}r 1(h6Uh7j1h=h>h?jm hA}r 1(hF]hE]hC]hD]hI]Uentries]r 1(j X"haddock-css ; cabal project optionj1UNtr 1auhKNhLhhM]ubj )r 1}r1(h6X haddock-cssr1h7j1h=h>h?j hA}r1(jjhF]hE]hC]hD]hI]uhKNhLhhM]r1hVX haddock-cssr1r1}r1(h6Uh=NhKNhLhh7j 1ubaubj )r1}r1(h6j h7j1h=h>h?j hA}r1(jjhF]hE]hC]hD]hI]uhKNhLhhM]r1hVX: r1r1}r1(h6Uh=NhKNhLhh7j1ubaubj )r1}r1(h6Xpathh7j1h=h>h?j hA}r1(jjhF]hE]hC]hD]hI]uhKNhLhhM]r1hVXpathr 1r!1}r"1(h6Uh=NhKNhLhh7j1ubaubeubj )r#1}r$1(h6Uh7j0h=h>h?j hA}r%1(hC]hD]hE]hF]hI]uhKNhLhhM]r&1(hi)r'1}r(1(h6XeThe CSS file that should be used to style the generated documentation (overriding haddock's default.)r)1h7j#1h=h>h?hlhA}r*1(hC]hD]hE]hF]hI]uhKMhLhhM]r+1hVXgThe CSS file that should be used to style the generated documentation (overriding haddock’s default.)r,1r-1}r.1(h6j)1h=NhKNhLhh7j'1ubaubhi)r/1}r01(h6XTThe command line variant of this flag is ``--css`` (for the ``haddock`` subcommand).h7j#1h=h>h?hlhA}r11(hC]hD]hE]hF]hI]uhKMhLhhM]r21(hVX)The command line variant of this flag is r31r41}r51(h6X)The command line variant of this flag is h=NhKNhLhh7j/1ubhr)r61}r71(h6X ``--css``hA}r81(hC]hD]hE]hF]hI]uh7j/1hM]r91hVX--cssr:1r;1}r<1(h6Uh7j61ubah?hzubhVX (for the r=1r>1}r?1(h6X (for the h=NhKNhLhh7j/1ubhr)r@1}rA1(h6X ``haddock``hA}rB1(hC]hD]hE]hF]hI]uh7j/1hM]rC1hVXhaddockrD1rE1}rF1(h6Uh7j@1ubah?hzubhVX subcommand).rG1rH1}rI1(h6X subcommand).h=NhKNhLhh7j/1ubeubeubeubjj )rJ1}rK1(h6Uh7je,h=h>h?jm hA}rL1(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )rM1}rN1(h6Uh7je,h=h>h?jr hA}rO1(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldrP1jx jP1uhKNhLhhM]rQ1(jz )rR1}rS1(h6X!haddock-hyperlink-source: booleanh7jM1h=h>h?j} hA}rT1(hF]rU1X"cfg-field-haddock-hyperlink-sourcerV1ahE]hC]hD]hI]j uhKNhLhhM]rW1(jj )rX1}rY1(h6Uh7jR1h=h>h?jm hA}rZ1(hF]hE]hC]hD]hI]Uentries]r[1(j X/haddock-hyperlink-source ; cabal project optionjV1UNtr\1auhKNhLhhM]ubj )r]1}r^1(h6Xhaddock-hyperlink-sourcer_1h7jR1h=h>h?j hA}r`1(jjhF]hE]hC]hD]hI]uhKNhLhhM]ra1hVXhaddock-hyperlink-sourcerb1rc1}rd1(h6Uh=NhKNhLhh7j]1ubaubj )re1}rf1(h6j h7jR1h=h>h?j hA}rg1(jjhF]hE]hC]hD]hI]uhKNhLhhM]rh1hVX: ri1rj1}rk1(h6Uh=NhKNhLhh7je1ubaubj )rl1}rm1(h6Xbooleanh7jR1h=h>h?j hA}rn1(jjhF]hE]hC]hD]hI]uhKNhLhhM]ro1hVXbooleanrp1rq1}rr1(h6Uh=NhKNhLhh7jl1ubaubeubj )rs1}rt1(h6Uh7jM1h=h>h?j hA}ru1(hC]hD]hE]hF]hI]uhKNhLhhM]rv1(j )rw1}rx1(h6Uh7js1h=h>h?j hA}ry1(hC]hD]hE]hF]hI]uhKNhLhhM]rz1j )r{1}r|1(h6UhA}r}1(hC]hD]hE]hF]hI]uh7jw1hM]r~1(j )r1}r1(h6X Default valueh7j{1h=h>h?j hA}r1(hC]hD]hE]hF]hI]uhKKhM]r1hVX Default valuer1r1}r1(h6Uh7j1ubaubj )r1}r1(h6UhA}r1(hC]hD]hE]hF]hI]uh7j{1hM]r1hi)r1}r1(h6XFalsehA}r1(hC]hD]hE]hF]hI]uh7j1hM]r1hVXFalser1r1}r1(h6XFalseh=NhKNhLhh7j1ubah?hlubah?j ubeh?j ubaubhi)r1}r1(h6X_Generated hyperlinked source code using `HsColour`_, and have Haddock documentation link to it.h7js1h=h>h?hlhA}r1(hC]hD]hE]hF]hI]uhKMhLhhM]r1(hVX(Generated hyperlinked source code using r1r1}r1(h6X(Generated hyperlinked source code using h=NhKNhLhh7j1ubjl)r1}r1(h6X `HsColour`_j-Kh7j1h?juhA}r1(UnameXHsColourjpX+http://www.cs.york.ac.uk/fp/darcs/hscolour/r1hF]hE]hC]hD]hI]uhM]r1hVXHsColourr1r1}r1(h6Uh7j1ubaubhVX,, and have Haddock documentation link to it.r1r1}r1(h6X,, and have Haddock documentation link to it.h=NhKNhLhh7j1ubeubhi)r1}r1(h6XaThe command line variant of this flag is ``--hyperlink-source`` (for the ``haddock`` subcommand).h7js1h=h>h?hlhA}r1(hC]hD]hE]hF]hI]uhKMhLhhM]r1(hVX)The command line variant of this flag is r1r1}r1(h6X)The command line variant of this flag is h=NhKNhLhh7j1ubhr)r1}r1(h6X``--hyperlink-source``hA}r1(hC]hD]hE]hF]hI]uh7j1hM]r1hVX--hyperlink-sourcer1r1}r1(h6Uh7j1ubah?hzubhVX (for the r1r1}r1(h6X (for the h=NhKNhLhh7j1ubhr)r1}r1(h6X ``haddock``hA}r1(hC]hD]hE]hF]hI]uh7j1hM]r1hVXhaddockr1r1}r1(h6Uh7j1ubah?hzubhVX subcommand).r1r1}r1(h6X subcommand).h=NhKNhLhh7j1ubeubeubeubjj )r1}r1(h6Uh7je,h=h>h?jm hA}r1(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r1}r1(h6Uh7je,h=h>h?jr hA}r1(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr1jx j1uhKNhLhhM]r1(jz )r1}r1(h6Xhaddock-hscolour-css: pathh7j1h=h>h?j} hA}r1(hF]r1Xcfg-field-haddock-hscolour-cssr1ahE]hC]hD]hI]j uhKNhLhhM]r1(jj )r1}r1(h6Uh7j1h=h>h?jm hA}r1(hF]hE]hC]hD]hI]Uentries]r1(j X+haddock-hscolour-css ; cabal project optionj1UNtr1auhKNhLhhM]ubj )r1}r1(h6Xhaddock-hscolour-cssr1h7j1h=h>h?j hA}r1(jjhF]hE]hC]hD]hI]uhKNhLhhM]r1hVXhaddock-hscolour-cssr1r1}r1(h6Uh=NhKNhLhh7j1ubaubj )r1}r1(h6j h7j1h=h>h?j hA}r1(jjhF]hE]hC]hD]hI]uhKNhLhhM]r1hVX: r1r1}r1(h6Uh=NhKNhLhh7j1ubaubj )r1}r1(h6Xpathh7j1h=h>h?j hA}r1(jjhF]hE]hC]hD]hI]uhKNhLhhM]r1hVXpathr1r1}r1(h6Uh=NhKNhLhh7j1ubaubeubj )r1}r1(h6Uh7j1h=h>h?j hA}r1(hC]hD]hE]hF]hI]uhKNhLhhM]r1(hi)r1}r1(h6XcThe CSS file that should be used to style the generated hyperlinked source code (from `HsColour`_).h7j1h=h>h?hlhA}r1(hC]hD]hE]hF]hI]uhKMhLhhM]r1(hVXVThe CSS file that should be used to style the generated hyperlinked source code (from r1r1}r1(h6XVThe CSS file that should be used to style the generated hyperlinked source code (from h=NhKNhLhh7j1ubjl)r1}r1(h6X `HsColour`_j-Kh7j1h?juhA}r1(UnameXHsColourjpj1hF]hE]hC]hD]hI]uhM]r1hVXHsColourr1r1}r1(h6Uh7j1ubaubhVX).r1r1}r1(h6X).h=NhKNhLhh7j1ubeubhi)r1}r1(h6X]The command line variant of this flag is ``--hscolour-css`` (for the ``haddock`` subcommand).h7j1h=h>h?hlhA}r1(hC]hD]hE]hF]hI]uhKMhLhhM]r1(hVX)The command line variant of this flag is r2r2}r2(h6X)The command line variant of this flag is h=NhKNhLhh7j1ubhr)r2}r2(h6X``--hscolour-css``hA}r2(hC]hD]hE]hF]hI]uh7j1hM]r2hVX--hscolour-cssr2r2}r 2(h6Uh7j2ubah?hzubhVX (for the r 2r 2}r 2(h6X (for the h=NhKNhLhh7j1ubhr)r 2}r2(h6X ``haddock``hA}r2(hC]hD]hE]hF]hI]uh7j1hM]r2hVXhaddockr2r2}r2(h6Uh7j 2ubah?hzubhVX subcommand).r2r2}r2(h6X subcommand).h=NhKNhLhh7j1ubeubeubeubjj )r2}r2(h6Uh7je,h=h>h?jm hA}r2(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r2}r2(h6Uh7je,h=h>h?jr hA}r2(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr2jx j2uhKNhLhhM]r2(jz )r2}r 2(h6Xhaddock-contents-location: URLh7j2h=h>h?j} hA}r!2(hF]r"2X#cfg-field-haddock-contents-locationr#2ahE]hC]hD]hI]j uhKNhLhhM]r$2(jj )r%2}r&2(h6Uh7j2h=h>h?jm hA}r'2(hF]hE]hC]hD]hI]Uentries]r(2(j X0haddock-contents-location ; cabal project optionj#2UNtr)2auhKNhLhhM]ubj )r*2}r+2(h6Xhaddock-contents-locationr,2h7j2h=h>h?j hA}r-2(jjhF]hE]hC]hD]hI]uhKNhLhhM]r.2hVXhaddock-contents-locationr/2r02}r12(h6Uh=NhKNhLhh7j*2ubaubj )r22}r32(h6j h7j2h=h>h?j hA}r42(jjhF]hE]hC]hD]hI]uhKNhLhhM]r52hVX: r62r72}r82(h6Uh=NhKNhLhh7j22ubaubj )r92}r:2(h6XURLh7j2h=h>h?j hA}r;2(jjhF]hE]hC]hD]hI]uhKNhLhhM]r<2hVXURLr=2r>2}r?2(h6Uh=NhKNhLhh7j92ubaubeubj )r@2}rA2(h6Uh7j2h=h>h?j hA}rB2(hC]hD]hE]hF]hI]uhKNhLhhM]rC2(hi)rD2}rE2(h6X@A baked-in URL to be used as the location for the contents page.rF2h7j@2h=h>h?hlhA}rG2(hC]hD]hE]hF]hI]uhKMhLhhM]rH2hVX@A baked-in URL to be used as the location for the contents page.rI2rJ2}rK2(h6jF2h=NhKNhLhh7jD2ubaubhi)rL2}rM2(h6XbThe command line variant of this flag is ``--contents-location`` (for the ``haddock`` subcommand).h7j@2h=h>h?hlhA}rN2(hC]hD]hE]hF]hI]uhKMhLhhM]rO2(hVX)The command line variant of this flag is rP2rQ2}rR2(h6X)The command line variant of this flag is h=NhKNhLhh7jL2ubhr)rS2}rT2(h6X``--contents-location``hA}rU2(hC]hD]hE]hF]hI]uh7jL2hM]rV2hVX--contents-locationrW2rX2}rY2(h6Uh7jS2ubah?hzubhVX (for the rZ2r[2}r\2(h6X (for the h=NhKNhLhh7jL2ubhr)r]2}r^2(h6X ``haddock``hA}r_2(hC]hD]hE]hF]hI]uh7jL2hM]r`2hVXhaddockra2rb2}rc2(h6Uh7j]2ubah?hzubhVX subcommand).rd2re2}rf2(h6X subcommand).h=NhKNhLhh7jL2ubeubeubeubjj )rg2}rh2(h6Uh7je,h=h>h?jm hA}ri2(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )rj2}rk2(h6Uh7je,h=h>h?jr hA}rl2(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldrm2jx jm2uhKNhLhhM]rn2(jz )ro2}rp2(h6X haddock-keep-temp-files: booleanh7jj2h=h>h?j} hA}rq2(hF]rr2X!cfg-field-haddock-keep-temp-filesrs2ahE]hC]hD]hI]j uhKNhLhhM]rt2(jj )ru2}rv2(h6Uh7jo2h=h>h?jm hA}rw2(hF]hE]hC]hD]hI]Uentries]rx2(j X.haddock-keep-temp-files ; cabal project optionjs2UNtry2auhKNhLhhM]ubj )rz2}r{2(h6Xhaddock-keep-temp-filesr|2h7jo2h=h>h?j hA}r}2(jjhF]hE]hC]hD]hI]uhKNhLhhM]r~2hVXhaddock-keep-temp-filesr2r2}r2(h6Uh=NhKNhLhh7jz2ubaubj )r2}r2(h6j h7jo2h=h>h?j hA}r2(jjhF]hE]hC]hD]hI]uhKNhLhhM]r2hVX: r2r2}r2(h6Uh=NhKNhLhh7j2ubaubj )r2}r2(h6Xbooleanh7jo2h=h>h?j hA}r2(jjhF]hE]hC]hD]hI]uhKNhLhhM]r2hVXbooleanr2r2}r2(h6Uh=NhKNhLhh7j2ubaubeubj )r2}r2(h6Uh7jj2h=h>h?j hA}r2(hC]hD]hE]hF]hI]uhKNhLhhM]r2(hi)r2}r2(h6XKeep temporary files.r2h7j2h=h>h?hlhA}r2(hC]hD]hE]hF]hI]uhKMhLhhM]r2hVXKeep temporary files.r2r2}r2(h6j2h=NhKNhLhh7j2ubaubhi)r2}r2(h6X`The command line variant of this flag is ``--keep-temp-files`` (for the ``haddock`` subcommand).h7j2h=h>h?hlhA}r2(hC]hD]hE]hF]hI]uhKMhLhhM]r2(hVX)The command line variant of this flag is r2r2}r2(h6X)The command line variant of this flag is h=NhKNhLhh7j2ubhr)r2}r2(h6X``--keep-temp-files``hA}r2(hC]hD]hE]hF]hI]uh7j2hM]r2hVX--keep-temp-filesr2r2}r2(h6Uh7j2ubah?hzubhVX (for the r2r2}r2(h6X (for the h=NhKNhLhh7j2ubhr)r2}r2(h6X ``haddock``hA}r2(hC]hD]hE]hF]hI]uh7j2hM]r2hVXhaddockr2r2}r2(h6Uh7j2ubah?hzubhVX subcommand).r2r2}r2(h6X subcommand).h=NhKNhLhh7j2ubeubeubeubeubeubh8)r2}r2(h6Uh7j h=h>h?h@hA}r2(hC]hD]hE]hF]r2jahI]r2hauhKMhLhhM]r2(hO)r2}r2(h6X%Advanced global configuration optionsr2h7j2h=h>h?hShA}r2(hC]hD]hE]hF]hI]uhKMhLhhM]r2hVX%Advanced global configuration optionsr2r2}r2(h6j2h=NhKNhLhh7j2ubaubjj )r2}r2(h6Uh7j2h=h>h?jm hA}r2(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r2}r2(h6Uh7j2h=h>h?jr hA}r2(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr2jx j2uhKNhLhhM]r2(jz )r2}r2(h6X5http-transport: curl, wget, powershell, or plain-httph7j2h=h>h?j} hA}r2(hF]r2Xcfg-field-http-transportr2ahE]hC]hD]hI]j uhKNhLhhM]r2(jj )r2}r2(h6Uh7j2h=h>h?jm hA}r2(hF]hE]hC]hD]hI]Uentries]r2(j X%http-transport ; cabal project optionj2UNtr2auhKNhLhhM]ubj )r2}r2(h6Xhttp-transportr2h7j2h=h>h?j hA}r2(jjhF]hE]hC]hD]hI]uhKNhLhhM]r2hVXhttp-transportr2r2}r2(h6Uh=NhKNhLhh7j2ubaubj )r2}r2(h6j h7j2h=h>h?j hA}r2(jjhF]hE]hC]hD]hI]uhKNhLhhM]r2hVX: r2r2}r2(h6Uh=NhKNhLhh7j2ubaubj )r2}r2(h6X%curl, wget, powershell, or plain-httph7j2h=h>h?j hA}r2(jjhF]hE]hC]hD]hI]uhKNhLhhM]r2hVX%curl, wget, powershell, or plain-httpr2r2}r2(h6Uh=NhKNhLhh7j2ubaubeubjz )r2}r2(h6X--http-transport=transporth7j2h=h>h?j} hA}r2(hF]r2Xcfg-flag---http-transportr2ahE]hC]hD]hI]j uhKNhLhhM]r2(jj )r2}r2(h6Uh7j2h=h>h?jm hA}r2(hF]hE]hC]hD]hI]Uentries]r2(j X&--http-transport; cabal project optionj2UNtr2auhKNhLhhM]ubj )r2}r2(h6X--http-transportr2h7j2h=h>h?j hA}r2(jjhF]hE]hC]hD]hI]uhKNhLhhM]r2hVX--http-transportr2r2}r3(h6Uh=NhKNhLhh7j2ubaubj )r3}r3(h6X =transporth7j2h=h>h?j hA}r3(jjhF]hE]hC]hD]hI]uhKNhLhhM]r3hVX =transportr3r3}r3(h6Uh=NhKNhLhh7j3ubaubeubj )r3}r 3(h6Uh7j2h=h>h?j hA}r 3(hC]hD]hE]hF]hI]uhKNhLhhM]r 3(j )r 3}r 3(h6Uh7j3h=h>h?j hA}r3(hC]hD]hE]hF]hI]uhKNhLhhM]r3j )r3}r3(h6UhA}r3(hC]hD]hE]hF]hI]uh7j 3hM]r3(j )r3}r3(h6X Default valueh7j3h=h>h?j hA}r3(hC]hD]hE]hF]hI]uhKKhM]r3hVX Default valuer3r3}r3(h6Uh7j3ubaubj )r3}r3(h6UhA}r3(hC]hD]hE]hF]hI]uh7j3hM]r3hi)r3}r 3(h6XcurlhA}r!3(hC]hD]hE]hF]hI]uh7j3hM]r"3hr)r#3}r$3(h6X``curl``h7j3h=h>h?hzhA}r%3(hC]hD]hE]hF]hI]uhKNhLhhM]r&3hVXcurlr'3r(3}r)3(h6Uh=NhKNhLhh7j#3ubaubah?hlubah?j ubeh?j ubaubhi)r*3}r+3(h6X8Set a transport to be used when making http(s) requests.r,3h7j3h=h>h?hlhA}r-3(hC]hD]hE]hF]hI]uhKM hLhhM]r.3hVX8Set a transport to be used when making http(s) requests.r/3r03}r13(h6j,3h=NhKNhLhh7j*3ubaubhi)r23}r33(h6XDThe command line variant of this field is ``--http-transport=curl``.h7j3h=h>h?hlhA}r43(hC]hD]hE]hF]hI]uhKMhLhhM]r53(hVX*The command line variant of this field is r63r73}r83(h6X*The command line variant of this field is h=NhKNhLhh7j23ubhr)r93}r:3(h6X``--http-transport=curl``hA}r;3(hC]hD]hE]hF]hI]uh7j23hM]r<3hVX--http-transport=curlr=3r>3}r?3(h6Uh7j93ubah?hzubhVX.r@3}rA3(h6X.h=NhKNhLhh7j23ubeubeubeubjj )rB3}rC3(h6Uh7j2h=h>h?jm hA}rD3(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )rE3}rF3(h6Uh7j2h=h>h?jr hA}rG3(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldrH3jx jH3uhKNhLhhM]rI3(jz )rJ3}rK3(h6Xignore-expiry: booleanh7jE3h=h>h?j} hA}rL3(hF]rM3Xcfg-field-ignore-expiryrN3ahE]hC]hD]hI]j uhKNhLhhM]rO3(jj )rP3}rQ3(h6Uh7jJ3h=h>h?jm hA}rR3(hF]hE]hC]hD]hI]Uentries]rS3(j X$ignore-expiry ; cabal project optionjN3UNtrT3auhKNhLhhM]ubj )rU3}rV3(h6X ignore-expiryrW3h7jJ3h=h>h?j hA}rX3(jjhF]hE]hC]hD]hI]uhKNhLhhM]rY3hVX ignore-expiryrZ3r[3}r\3(h6Uh=NhKNhLhh7jU3ubaubj )r]3}r^3(h6j h7jJ3h=h>h?j hA}r_3(jjhF]hE]hC]hD]hI]uhKNhLhhM]r`3hVX: ra3rb3}rc3(h6Uh=NhKNhLhh7j]3ubaubj )rd3}re3(h6Xbooleanh7jJ3h=h>h?j hA}rf3(jjhF]hE]hC]hD]hI]uhKNhLhhM]rg3hVXbooleanrh3ri3}rj3(h6Uh=NhKNhLhh7jd3ubaubeubjz )rk3}rl3(h6X--ignore-expiryrm3h7jE3h=h>h?j} hA}rn3(hF]ro3Xcfg-flag---ignore-expiryrp3ahE]hC]hD]hI]j uhKNhLhhM]rq3(jj )rr3}rs3(h6Uh7jk3h=h>h?jm hA}rt3(hF]hE]hC]hD]hI]Uentries]ru3(j X%--ignore-expiry; cabal project optionjp3UNtrv3auhKNhLhhM]ubj )rw3}rx3(h6jm3h7jk3h=h>h?j hA}ry3(jjhF]hE]hC]hD]hI]uhKNhLhhM]rz3hVX--ignore-expiryr{3r|3}r}3(h6Uh=NhKNhLhh7jw3ubaubj )r~3}r3(h6U h7jk3h=h>h?j hA}r3(jjhF]hE]hC]hD]hI]uhKNhLhhM]r3hVX r3}r3(h6Uh=NhKNhLhh7j~3ubaubeubj )r3}r3(h6Uh7jE3h=h>h?j hA}r3(hC]hD]hE]hF]hI]uhKNhLhhM]r3(j )r3}r3(h6Uh7j3h=h>h?j hA}r3(hC]hD]hE]hF]hI]uhKNhLhhM]r3j )r3}r3(h6UhA}r3(hC]hD]hE]hF]hI]uh7j3hM]r3(j )r3}r3(h6X Default valueh7j3h=h>h?j hA}r3(hC]hD]hE]hF]hI]uhKKhM]r3hVX Default valuer3r3}r3(h6Uh7j3ubaubj )r3}r3(h6UhA}r3(hC]hD]hE]hF]hI]uh7j3hM]r3hi)r3}r3(h6XFalsehA}r3(hC]hD]hE]hF]hI]uh7j3hM]r3hVXFalser3r3}r3(h6XFalseh=NhKNhLhh7j3ubah?hlubah?j ubeh?j ubaubhi)r3}r3(h6XBIf ``True``, we will ignore expiry dates on metadata from Hackage.h7j3h=h>h?hlhA}r3(hC]hD]hE]hF]hI]uhKMhLhhM]r3(hVXIf r3r3}r3(h6XIf h=NhKNhLhh7j3ubhr)r3}r3(h6X``True``hA}r3(hC]hD]hE]hF]hI]uh7j3hM]r3hVXTruer3r3}r3(h6Uh7j3ubah?hzubhVX7, we will ignore expiry dates on metadata from Hackage.r3r3}r3(h6X7, we will ignore expiry dates on metadata from Hackage.h=NhKNhLhh7j3ubeubhi)r3}r3(h6X In general, you should not set this to ``True`` as it will leave you vulnerable to stale cache attacks. However, it may be temporarily useful if the main Hackage server is down, and we need to rely on mirrors which have not been updated for longer than the expiry period on the timestamp.h7j3h=h>h?hlhA}r3(hC]hD]hE]hF]hI]uhKMhLhhM]r3(hVX'In general, you should not set this to r3r3}r3(h6X'In general, you should not set this to h=NhKNhLhh7j3ubhr)r3}r3(h6X``True``hA}r3(hC]hD]hE]hF]hI]uh7j3hM]r3hVXTruer3r3}r3(h6Uh7j3ubah?hzubhVX as it will leave you vulnerable to stale cache attacks. However, it may be temporarily useful if the main Hackage server is down, and we need to rely on mirrors which have not been updated for longer than the expiry period on the timestamp.r3r3}r3(h6X as it will leave you vulnerable to stale cache attacks. However, it may be temporarily useful if the main Hackage server is down, and we need to rely on mirrors which have not been updated for longer than the expiry period on the timestamp.h=NhKNhLhh7j3ubeubhi)r3}r3(h6X>The command line variant of this field is ``--ignore-expiry``.h7j3h=h>h?hlhA}r3(hC]hD]hE]hF]hI]uhKMhLhhM]r3(hVX*The command line variant of this field is r3r3}r3(h6X*The command line variant of this field is h=NhKNhLhh7j3ubhr)r3}r3(h6X``--ignore-expiry``hA}r3(hC]hD]hE]hF]hI]uh7j3hM]r3hVX--ignore-expiryr3r3}r3(h6Uh7j3ubah?hzubhVX.r3}r3(h6X.h=NhKNhLhh7j3ubeubeubeubjj )r3}r3(h6Uh7j2h=h>h?jm hA}r3(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r3}r3(h6Uh7j2h=h>h?jr hA}r3(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr3jx j3uhKNhLhhM]r3(jz )r3}r3(h6Xremote-repo-cache: directoryh7j3h=h>h?j} hA}r3(hF]r3Xcfg-field-remote-repo-cacher3ahE]hC]hD]hI]j uhKNhLhhM]r3(jj )r3}r3(h6Uh7j3h=h>h?jm hA}r3(hF]hE]hC]hD]hI]Uentries]r3(j X(remote-repo-cache ; cabal project optionj3UNtr3auhKNhLhhM]ubj )r3}r3(h6Xremote-repo-cacher3h7j3h=h>h?j hA}r3(jjhF]hE]hC]hD]hI]uhKNhLhhM]r3hVXremote-repo-cacher3r3}r3(h6Uh=NhKNhLhh7j3ubaubj )r3}r3(h6j h7j3h=h>h?j hA}r3(jjhF]hE]hC]hD]hI]uhKNhLhhM]r3hVX: r3r3}r3(h6Uh=NhKNhLhh7j3ubaubj )r3}r3(h6X directoryh7j3h=h>h?j hA}r3(jjhF]hE]hC]hD]hI]uhKNhLhhM]r3hVX directoryr3r3}r3(h6Uh=NhKNhLhh7j3ubaubeubjz )r3}r3(h6X--remote-repo-cache=DIRh7j3h=h>h?j} hA}r3(hF]r4Xcfg-flag---remote-repo-cacher4ahE]hC]hD]hI]j uhKNhLhhM]r4(jj )r4}r4(h6Uh7j3h=h>h?jm hA}r4(hF]hE]hC]hD]hI]Uentries]r4(j X)--remote-repo-cache; cabal project optionj4UNtr4auhKNhLhhM]ubj )r4}r 4(h6X--remote-repo-cacher 4h7j3h=h>h?j hA}r 4(jjhF]hE]hC]hD]hI]uhKNhLhhM]r 4hVX--remote-repo-cacher 4r4}r4(h6Uh=NhKNhLhh7j4ubaubj )r4}r4(h6X=DIRh7j3h=h>h?j hA}r4(jjhF]hE]hC]hD]hI]uhKNhLhhM]r4hVX=DIRr4r4}r4(h6Uh=NhKNhLhh7j4ubaubeubj )r4}r4(h6Uh7j3h=h>h?j hA}r4(hC]hD]hE]hF]hI]uhKNhLhhM]r4(j )r4}r4(h6Uh7j4h=h>h?j hA}r4(hC]hD]hE]hF]hI]uhKNhLhhM]r4j )r4}r 4(h6UhA}r!4(hC]hD]hE]hF]hI]uh7j4hM]r"4(j )r#4}r$4(h6X Default valueh7j4h=h>h?j hA}r%4(hC]hD]hE]hF]hI]uhKKhM]r&4hVX Default valuer'4r(4}r)4(h6Uh7j#4ubaubj )r*4}r+4(h6UhA}r,4(hC]hD]hE]hF]hI]uh7j4hM]r-4hi)r.4}r/4(h6X~/.cabal/packageshA}r04(hC]hD]hE]hF]hI]uh7j*4hM]r14hr)r24}r34(h6X``~/.cabal/packages``h7j.4h=h>h?hzhA}r44(hC]hD]hE]hF]hI]uhKNhLhhM]r54hVX~/.cabal/packagesr64r74}r84(h6Uh=NhKNhLhh7j24ubaubah?hlubah?j ubeh?j ubaubhi)r94}r:4(h6Xp[STRIKEOUT:The location where packages downloaded from remote repositories will be cached.] Not implemented yet.r;4h7j4h=h>h?hlhA}r<4(hC]hD]hE]hF]hI]uhKM&hLhhM]r=4hVXp[STRIKEOUT:The location where packages downloaded from remote repositories will be cached.] Not implemented yet.r>4r?4}r@4(h6j;4h=NhKNhLhh7j94ubaubhi)rA4}rB4(h6XEThe command line variant of this flag is ``--remote-repo-cache=DIR``.h7j4h=h>h?hlhA}rC4(hC]hD]hE]hF]hI]uhKM)hLhhM]rD4(hVX)The command line variant of this flag is rE4rF4}rG4(h6X)The command line variant of this flag is h=NhKNhLhh7jA4ubhr)rH4}rI4(h6X``--remote-repo-cache=DIR``hA}rJ4(hC]hD]hE]hF]hI]uh7jA4hM]rK4hVX--remote-repo-cache=DIRrL4rM4}rN4(h6Uh7jH4ubah?hzubhVX.rO4}rP4(h6X.h=NhKNhLhh7jA4ubeubeubeubjj )rQ4}rR4(h6Uh7j2h=h>h?jm hA}rS4(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )rT4}rU4(h6Uh7j2h=h>h?jr hA}rV4(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldrW4jx jW4uhKNhLhhM]rX4(jz )rY4}rZ4(h6Xlogs-dir: directoryh7jT4h=h>h?j} hA}r[4(hF]r\4Xcfg-field-logs-dirr]4ahE]hC]hD]hI]j uhKNhLhhM]r^4(jj )r_4}r`4(h6Uh7jY4h=h>h?jm hA}ra4(hF]hE]hC]hD]hI]Uentries]rb4(j Xlogs-dir ; cabal project optionj]4UNtrc4auhKNhLhhM]ubj )rd4}re4(h6Xlogs-dirrf4h7jY4h=h>h?j hA}rg4(jjhF]hE]hC]hD]hI]uhKNhLhhM]rh4hVXlogs-dirri4rj4}rk4(h6Uh=NhKNhLhh7jd4ubaubj )rl4}rm4(h6j h7jY4h=h>h?j hA}rn4(jjhF]hE]hC]hD]hI]uhKNhLhhM]ro4hVX: rp4rq4}rr4(h6Uh=NhKNhLhh7jl4ubaubj )rs4}rt4(h6X directoryh7jY4h=h>h?j hA}ru4(jjhF]hE]hC]hD]hI]uhKNhLhhM]rv4hVX directoryrw4rx4}ry4(h6Uh=NhKNhLhh7js4ubaubeubjz )rz4}r{4(h6X--logs-dir=DIRh7jT4h=h>h?j} hA}r|4(hF]r}4Xcfg-flag---logs-dirr~4ahE]hC]hD]hI]j uhKNhLhhM]r4(jj )r4}r4(h6Uh7jz4h=h>h?jm hA}r4(hF]hE]hC]hD]hI]Uentries]r4(j X --logs-dir; cabal project optionj~4UNtr4auhKNhLhhM]ubj )r4}r4(h6X --logs-dirr4h7jz4h=h>h?j hA}r4(jjhF]hE]hC]hD]hI]uhKNhLhhM]r4hVX --logs-dirr4r4}r4(h6Uh=NhKNhLhh7j4ubaubj )r4}r4(h6X=DIRh7jz4h=h>h?j hA}r4(jjhF]hE]hC]hD]hI]uhKNhLhhM]r4hVX=DIRr4r4}r4(h6Uh=NhKNhLhh7j4ubaubeubj )r4}r4(h6Uh7jT4h=h>h?j hA}r4(hC]hD]hE]hF]hI]uhKNhLhhM]r4(j )r4}r4(h6Uh7j4h=h>h?j hA}r4(hC]hD]hE]hF]hI]uhKNhLhhM]r4j )r4}r4(h6UhA}r4(hC]hD]hE]hF]hI]uh7j4hM]r4(j )r4}r4(h6X Default valueh7j4h=h>h?j hA}r4(hC]hD]hE]hF]hI]uhKKhM]r4hVX Default valuer4r4}r4(h6Uh7j4ubaubj )r4}r4(h6UhA}r4(hC]hD]hE]hF]hI]uh7j4hM]r4hi)r4}r4(h6X ~/.cabal/logshA}r4(hC]hD]hE]hF]hI]uh7j4hM]r4hr)r4}r4(h6X``~/.cabal/logs``h7j4h=h>h?hzhA}r4(hC]hD]hE]hF]hI]uhKNhLhhM]r4hVX ~/.cabal/logsr4r4}r4(h6Uh=NhKNhLhh7j4ubaubah?hlubah?j ubeh?j ubaubhi)r4}r4(h6XW[STRIKEOUT:The location where build logs for packages are stored.] Not implemented yet.r4h7j4h=h>h?hlhA}r4(hC]hD]hE]hF]hI]uhKM2hLhhM]r4hVXW[STRIKEOUT:The location where build logs for packages are stored.] Not implemented yet.r4r4}r4(h6j4h=NhKNhLhh7j4ubaubhi)r4}r4(h6X<The command line variant of this flag is ``--logs-dir=DIR``.h7j4h=h>h?hlhA}r4(hC]hD]hE]hF]hI]uhKM5hLhhM]r4(hVX)The command line variant of this flag is r4r4}r4(h6X)The command line variant of this flag is h=NhKNhLhh7j4ubhr)r4}r4(h6X``--logs-dir=DIR``hA}r4(hC]hD]hE]hF]hI]uh7j4hM]r4hVX--logs-dir=DIRr4r4}r4(h6Uh7j4ubah?hzubhVX.r4}r4(h6X.h=NhKNhLhh7j4ubeubeubeubjj )r4}r4(h6Uh7j2h=h>h?jm hA}r4(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r4}r4(h6Uh7j2h=h>h?jr hA}r4(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr4jx j4uhKNhLhhM]r4(jz )r4}r4(h6X build-summary: template filepathh7j4h=h>h?j} hA}r4(hF]r4Xcfg-field-build-summaryr4ahE]hC]hD]hI]j uhKNhLhhM]r4(jj )r4}r4(h6Uh7j4h=h>h?jm hA}r4(hF]hE]hC]hD]hI]Uentries]r4(j X$build-summary ; cabal project optionj4UNtr4auhKNhLhhM]ubj )r4}r4(h6X build-summaryr4h7j4h=h>h?j hA}r4(jjhF]hE]hC]hD]hI]uhKNhLhhM]r4hVX build-summaryr4r4}r4(h6Uh=NhKNhLhh7j4ubaubj )r4}r4(h6j h7j4h=h>h?j hA}r4(jjhF]hE]hC]hD]hI]uhKNhLhhM]r4hVX: r4r4}r4(h6Uh=NhKNhLhh7j4ubaubj )r4}r4(h6Xtemplate filepathh7j4h=h>h?j hA}r4(jjhF]hE]hC]hD]hI]uhKNhLhhM]r4hVXtemplate filepathr4r4}r4(h6Uh=NhKNhLhh7j4ubaubeubjz )r4}r4(h6X--build-summary=TEMPLATEh7j4h=h>h?j} hA}r4(hF]r4Xcfg-flag---build-summaryr4ahE]hC]hD]hI]j uhKNhLhhM]r4(jj )r4}r4(h6Uh7j4h=h>h?jm hA}r4(hF]hE]hC]hD]hI]Uentries]r5(j X%--build-summary; cabal project optionj4UNtr5auhKNhLhhM]ubj )r5}r5(h6X--build-summaryr5h7j4h=h>h?j hA}r5(jjhF]hE]hC]hD]hI]uhKNhLhhM]r5hVX--build-summaryr5r5}r 5(h6Uh=NhKNhLhh7j5ubaubj )r 5}r 5(h6X =TEMPLATEh7j4h=h>h?j hA}r 5(jjhF]hE]hC]hD]hI]uhKNhLhhM]r 5hVX =TEMPLATEr5r5}r5(h6Uh=NhKNhLhh7j 5ubaubeubj )r5}r5(h6Uh7j4h=h>h?j hA}r5(hC]hD]hE]hF]hI]uhKNhLhhM]r5(j )r5}r5(h6Uh7j5h=h>h?j hA}r5(hC]hD]hE]hF]hI]uhKNhLhhM]r5j )r5}r5(h6UhA}r5(hC]hD]hE]hF]hI]uh7j5hM]r5(j )r5}r5(h6X Default valueh7j5h=h>h?j hA}r5(hC]hD]hE]hF]hI]uhKKhM]r 5hVX Default valuer!5r"5}r#5(h6Uh7j5ubaubj )r$5}r%5(h6UhA}r&5(hC]hD]hE]hF]hI]uh7j5hM]r'5hi)r(5}r)5(h6X~/.cabal/logs/build.loghA}r*5(hC]hD]hE]hF]hI]uh7j$5hM]r+5hr)r,5}r-5(h6X``~/.cabal/logs/build.log``h7j(5h=h>h?hzhA}r.5(hC]hD]hE]hF]hI]uhKNhLhhM]r/5hVX~/.cabal/logs/build.logr05r15}r25(h6Uh=NhKNhLhh7j,5ubaubah?hlubah?j ubeh?j ubaubhi)r35}r45(h6X[STRIKEOUT:The file to save build summaries. Valid variables which can be used in the path are ``$pkgid``, ``$compiler``, ``$os`` and ``$arch``.] Not implemented yet.h7j5h=h>h?hlhA}r55(hC]hD]hE]hF]hI]uhKM=hLhhM]r65(hVX_[STRIKEOUT:The file to save build summaries. Valid variables which can be used in the path are r75r85}r95(h6X_[STRIKEOUT:The file to save build summaries. Valid variables which can be used in the path are h=NhKNhLhh7j35ubhr)r:5}r;5(h6X ``$pkgid``hA}r<5(hC]hD]hE]hF]hI]uh7j35hM]r=5hVX$pkgidr>5r?5}r@5(h6Uh7j:5ubah?hzubhVX, rA5rB5}rC5(h6X, rD5h=NhKNhLhh7j35ubhr)rE5}rF5(h6X ``$compiler``hA}rG5(hC]hD]hE]hF]hI]uh7j35hM]rH5hVX $compilerrI5rJ5}rK5(h6Uh7jE5ubah?hzubhVX, rL5rM5}rN5(h6jD5h7j35ubhr)rO5}rP5(h6X``$os``hA}rQ5(hC]hD]hE]hF]hI]uh7j35hM]rR5hVX$osrS5rT5}rU5(h6Uh7jO5ubah?hzubhVX and rV5rW5}rX5(h6X and h=NhKNhLhh7j35ubhr)rY5}rZ5(h6X ``$arch``hA}r[5(hC]hD]hE]hF]hI]uh7j35hM]r\5hVX$archr]5r^5}r_5(h6Uh7jY5ubah?hzubhVX.] Not implemented yet.r`5ra5}rb5(h6X.] Not implemented yet.h=NhKNhLhh7j35ubeubhi)rc5}rd5(h6XFThe command line variant of this flag is ``--build-summary=TEMPLATE``.h7j5h=h>h?hlhA}re5(hC]hD]hE]hF]hI]uhKMAhLhhM]rf5(hVX)The command line variant of this flag is rg5rh5}ri5(h6X)The command line variant of this flag is h=NhKNhLhh7jc5ubhr)rj5}rk5(h6X``--build-summary=TEMPLATE``hA}rl5(hC]hD]hE]hF]hI]uh7jc5hM]rm5hVX--build-summary=TEMPLATErn5ro5}rp5(h6Uh7jj5ubah?hzubhVX.rq5}rr5(h6X.h=NhKNhLhh7jc5ubeubeubeubjj )rs5}rt5(h6Uh7j2h=h>h?jm hA}ru5(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )rv5}rw5(h6Uh7j2h=h>h?jr hA}rx5(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldry5jx jy5uhKNhLhhM]rz5(jz )r{5}r|5(h6Xlocal-repo: directoryh7jv5h=h>h?j} hA}r}5(hF]r~5Xcfg-field-local-repor5ahE]hC]hD]hI]j uhKNhLhhM]r5(jj )r5}r5(h6Uh7j{5h=h>h?jm hA}r5(hF]hE]hC]hD]hI]Uentries]r5(j X!local-repo ; cabal project optionj5UNtr5auhKNhLhhM]ubj )r5}r5(h6X local-repor5h7j{5h=h>h?j hA}r5(jjhF]hE]hC]hD]hI]uhKNhLhhM]r5hVX local-repor5r5}r5(h6Uh=NhKNhLhh7j5ubaubj )r5}r5(h6j h7j{5h=h>h?j hA}r5(jjhF]hE]hC]hD]hI]uhKNhLhhM]r5hVX: r5r5}r5(h6Uh=NhKNhLhh7j5ubaubj )r5}r5(h6X directoryh7j{5h=h>h?j hA}r5(jjhF]hE]hC]hD]hI]uhKNhLhhM]r5hVX directoryr5r5}r5(h6Uh=NhKNhLhh7j5ubaubeubjz )r5}r5(h6X--local-repo=DIRh7jv5h=h>h?j} hA}r5(hF]r5Xcfg-flag---local-repor5ahE]hC]hD]hI]j uhKNhLhhM]r5(jj )r5}r5(h6Uh7j5h=h>h?jm hA}r5(hF]hE]hC]hD]hI]Uentries]r5(j X"--local-repo; cabal project optionj5UNtr5auhKNhLhhM]ubj )r5}r5(h6X --local-repor5h7j5h=h>h?j hA}r5(jjhF]hE]hC]hD]hI]uhKNhLhhM]r5hVX --local-repor5r5}r5(h6Uh=NhKNhLhh7j5ubaubj )r5}r5(h6X=DIRh7j5h=h>h?j hA}r5(jjhF]hE]hC]hD]hI]uhKNhLhhM]r5hVX=DIRr5r5}r5(h6Uh=NhKNhLhh7j5ubaubeubj )r5}r5(h6Uh7jv5h=h>h?j hA}r5(hC]hD]hE]hF]hI]uhKNhLhhM]r5(j )r5}r5(h6Uh7j5h=h>h?j hA}r5(hC]hD]hE]hF]hI]uhKNhLhhM]r5j )r5}r5(h6Uh7j5h=h>h?j hA}r5(hC]hD]hE]hF]hI]uhKNhLhhM]r5(j )r5}r5(h6j+h7j5h=h>h?j hA}r5(hC]hD]hE]hF]hI]uhKKhM]r5hVX Deprecatedr5r5}r5(h6Uh7j5ubaubj )r5}r5(h6UhA}r5(hC]hD]hE]hF]hI]uh7j5hM]r5hi)r5}r5(h6UhA}r5(hC]hD]hE]hF]hI]uh7j5hM]h?hlubah?j ubeubaubhi)r5}r5(h6XV[STRIKEOUT:The location of a local repository.] Deprecated. See "Legacy repositories."r5h7j5h=h>h?hlhA}r5(hC]hD]hE]hF]hI]uhKMHhLhhM]r5hVXZ[STRIKEOUT:The location of a local repository.] Deprecated. See “Legacy repositories.”r5r5}r5(h6j5h=NhKNhLhh7j5ubaubhi)r5}r5(h6X>The command line variant of this flag is ``--local-repo=DIR``.h7j5h=h>h?hlhA}r5(hC]hD]hE]hF]hI]uhKMKhLhhM]r5(hVX)The command line variant of this flag is r5r5}r5(h6X)The command line variant of this flag is h=NhKNhLhh7j5ubhr)r5}r5(h6X``--local-repo=DIR``hA}r5(hC]hD]hE]hF]hI]uh7j5hM]r5hVX--local-repo=DIRr5r5}r5(h6Uh7j5ubah?hzubhVX.r5}r5(h6X.h=NhKNhLhh7j5ubeubeubeubjj )r5}r5(h6Uh7j2h=h>h?jm hA}r5(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r5}r5(h6Uh7j2h=h>h?jr hA}r5(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr5jx j5uhKNhLhhM]r5(jz )r5}r5(h6Xworld-file: pathh7j5h=h>h?j} hA}r5(hF]r5Xcfg-field-world-filer5ahE]hC]hD]hI]j uhKNhLhhM]r5(jj )r5}r5(h6Uh7j5h=h>h?jm hA}r5(hF]hE]hC]hD]hI]Uentries]r5(j X!world-file ; cabal project optionj5UNtr5auhKNhLhhM]ubj )r5}r5(h6X world-filer5h7j5h=h>h?j hA}r5(jjhF]hE]hC]hD]hI]uhKNhLhhM]r5hVX world-filer6r6}r6(h6Uh=NhKNhLhh7j5ubaubj )r6}r6(h6j h7j5h=h>h?j hA}r6(jjhF]hE]hC]hD]hI]uhKNhLhhM]r6hVX: r6r6}r 6(h6Uh=NhKNhLhh7j6ubaubj )r 6}r 6(h6Xpathh7j5h=h>h?j hA}r 6(jjhF]hE]hC]hD]hI]uhKNhLhhM]r 6hVXpathr6r6}r6(h6Uh=NhKNhLhh7j 6ubaubeubjz )r6}r6(h6X--world-file=FILEh7j5h=h>h?j} hA}r6(hF]r6Xcfg-flag---world-filer6ahE]hC]hD]hI]j uhKNhLhhM]r6(jj )r6}r6(h6Uh7j6h=h>h?jm hA}r6(hF]hE]hC]hD]hI]Uentries]r6(j X"--world-file; cabal project optionj6UNtr6auhKNhLhhM]ubj )r6}r6(h6X --world-filer6h7j6h=h>h?j hA}r6(jjhF]hE]hC]hD]hI]uhKNhLhhM]r 6hVX --world-filer!6r"6}r#6(h6Uh=NhKNhLhh7j6ubaubj )r$6}r%6(h6X=FILEh7j6h=h>h?j hA}r&6(jjhF]hE]hC]hD]hI]uhKNhLhhM]r'6hVX=FILEr(6r)6}r*6(h6Uh=NhKNhLhh7j$6ubaubeubj )r+6}r,6(h6Uh7j5h=h>h?j hA}r-6(hC]hD]hE]hF]hI]uhKNhLhhM]r.6(j )r/6}r06(h6Uh7j+6h=h>h?j hA}r16(hC]hD]hE]hF]hI]uhKNhLhhM]r26j )r36}r46(h6Uh7j/6h=h>h?j hA}r56(hC]hD]hE]hF]hI]uhKNhLhhM]r66(j )r76}r86(h6j+h7j36h=h>h?j hA}r96(hC]hD]hE]hF]hI]uhKKhM]r:6hVX Deprecatedr;6r<6}r=6(h6Uh7j76ubaubj )r>6}r?6(h6UhA}r@6(hC]hD]hE]hF]hI]uh7j36hM]rA6hi)rB6}rC6(h6UhA}rD6(hC]hD]hE]hF]hI]uh7j>6hM]h?hlubah?j ubeubaubhi)rE6}rF6(h6X7[STRIKEOUT:The location of the world file.] Deprecated.rG6h7j+6h=h>h?hlhA}rH6(hC]hD]hE]hF]hI]uhKMQhLhhM]rI6hVX7[STRIKEOUT:The location of the world file.] Deprecated.rJ6rK6}rL6(h6jG6h=NhKNhLhh7jE6ubaubhi)rM6}rN6(h6X?The command line variant of this flag is ``--world-file=FILE``.h7j+6h=h>h?hlhA}rO6(hC]hD]hE]hF]hI]uhKMShLhhM]rP6(hVX)The command line variant of this flag is rQ6rR6}rS6(h6X)The command line variant of this flag is h=NhKNhLhh7jM6ubhr)rT6}rU6(h6X``--world-file=FILE``hA}rV6(hC]hD]hE]hF]hI]uh7jM6hM]rW6hVX--world-file=FILErX6rY6}rZ6(h6Uh7jT6ubah?hzubhVX.r[6}r\6(h6X.h=NhKNhLhh7jM6ubeubeubeubhi)r]6}r^6(h6XUndocumented fields: ``root-cmd``, ``symlink-bindir``, ``build-log``, ``remote-build-reporting``, ``report-planned-failure``, ``one-shot``, ``offline``.h7j2h=h>h?hlhA}r_6(hC]hD]hE]hF]hI]uhKMUhLhhM]r`6(hVXUndocumented fields: ra6rb6}rc6(h6XUndocumented fields: h=NhKNhLhh7j]6ubhr)rd6}re6(h6X ``root-cmd``hA}rf6(hC]hD]hE]hF]hI]uh7j]6hM]rg6hVXroot-cmdrh6ri6}rj6(h6Uh7jd6ubah?hzubhVX, rk6rl6}rm6(h6X, rn6h=NhKNhLhh7j]6ubhr)ro6}rp6(h6X``symlink-bindir``hA}rq6(hC]hD]hE]hF]hI]uh7j]6hM]rr6hVXsymlink-bindirrs6rt6}ru6(h6Uh7jo6ubah?hzubhVX, rv6rw6}rx6(h6X, h7j]6ubhr)ry6}rz6(h6X ``build-log``hA}r{6(hC]hD]hE]hF]hI]uh7j]6hM]r|6hVX build-logr}6r~6}r6(h6Uh7jy6ubah?hzubhVX, r6r6}r6(h6X, r6h=NhKNhLhh7j]6ubhr)r6}r6(h6X``remote-build-reporting``hA}r6(hC]hD]hE]hF]hI]uh7j]6hM]r6hVXremote-build-reportingr6r6}r6(h6Uh7j6ubah?hzubhVX, r6r6}r6(h6X, h7j]6ubhr)r6}r6(h6X``report-planned-failure``hA}r6(hC]hD]hE]hF]hI]uh7j]6hM]r6hVXreport-planned-failurer6r6}r6(h6Uh7j6ubah?hzubhVX, r6r6}r6(h6jn6h7j]6ubhr)r6}r6(h6X ``one-shot``hA}r6(hC]hD]hE]hF]hI]uh7j]6hM]r6hVXone-shotr6r6}r6(h6Uh7j6ubah?hzubhVX, r6r6}r6(h6j6h7j]6ubhr)r6}r6(h6X ``offline``hA}r6(hC]hD]hE]hF]hI]uh7j]6hM]r6hVXoffliner6r6}r6(h6Uh7j6ubah?hzubhVX.r6}r6(h6X.h=NhKNhLhh7j]6ubeubh8)r6}r6(h6Uh7j2h=h>h?h@hA}r6(hC]hD]hE]hF]r6jahI]r6h,auhKMZhLhhM]r6(hO)r6}r6(h6XAdvanced solver optionsr6h7j6h=h>h?hShA}r6(hC]hD]hE]hF]hI]uhKMZhLhhM]r6hVXAdvanced solver optionsr6r6}r6(h6j6h=NhKNhLhh7j6ubaubhi)r6}r6(h6X&Most users generally won't need these.r6h7j6h=h>h?hlhA}r6(hC]hD]hE]hF]hI]uhKM\hLhhM]r6hVX(Most users generally won’t need these.r6r6}r6(h6j6h=NhKNhLhh7j6ubaubjj )r6}r6(h6Uh7j6h=h>h?jm hA}r6(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r6}r6(h6Uh7j6h=h>h?jr hA}r6(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr6jx j6uhKNhLhhM]r6(jz )r6}r6(h6Xsolver: modularh7j6h=h>h?j} hA}r6(hF]r6Xcfg-field-solverr6ahE]hC]hD]hI]j uhKNhLhhM]r6(jj )r6}r6(h6Uh7j6h=h>h?jm hA}r6(hF]hE]hC]hD]hI]Uentries]r6(j Xsolver ; cabal project optionj6UNtr6auhKNhLhhM]ubj )r6}r6(h6Xsolverr6h7j6h=h>h?j hA}r6(jjhF]hE]hC]hD]hI]uhKNhLhhM]r6hVXsolverr6r6}r6(h6Uh=NhKNhLhh7j6ubaubj )r6}r6(h6j h7j6h=h>h?j hA}r6(jjhF]hE]hC]hD]hI]uhKNhLhhM]r6hVX: r6r6}r6(h6Uh=NhKNhLhh7j6ubaubj )r6}r6(h6Xmodularh7j6h=h>h?j hA}r6(jjhF]hE]hC]hD]hI]uhKNhLhhM]r6hVXmodularr6r6}r6(h6Uh=NhKNhLhh7j6ubaubeubjz )r6}r6(h6X--solver=modularh7j6h=h>h?j} hA}r6(hF]r6Xcfg-flag---solverr6ahE]hC]hD]hI]j uhKNhLhhM]r6(jj )r6}r6(h6Uh7j6h=h>h?jm hA}r6(hF]hE]hC]hD]hI]Uentries]r6(j X--solver; cabal project optionj6UNtr6auhKNhLhhM]ubj )r6}r6(h6X--solverr6h7j6h=h>h?j hA}r6(jjhF]hE]hC]hD]hI]uhKNhLhhM]r6hVX--solverr6r6}r6(h6Uh=NhKNhLhh7j6ubaubj )r6}r6(h6X=modularh7j6h=h>h?j hA}r6(jjhF]hE]hC]hD]hI]uhKNhLhhM]r7hVX=modularr7r7}r7(h6Uh=NhKNhLhh7j6ubaubeubj )r7}r7(h6Uh7j6h=h>h?j hA}r7(hC]hD]hE]hF]hI]uhKNhLhhM]r7(hi)r7}r 7(h6XThis field is reserved to allow the specification of alternative dependency solvers. At the moment, the only accepted option is ``modular``.h7j7h=h>h?hlhA}r 7(hC]hD]hE]hF]hI]uhKMbhLhhM]r 7(hVXThis field is reserved to allow the specification of alternative dependency solvers. At the moment, the only accepted option is r 7r 7}r7(h6XThis field is reserved to allow the specification of alternative dependency solvers. At the moment, the only accepted option is h=NhKNhLhh7j7ubhr)r7}r7(h6X ``modular``hA}r7(hC]hD]hE]hF]hI]uh7j7hM]r7hVXmodularr7r7}r7(h6Uh7j7ubah?hzubhVX.r7}r7(h6X.h=NhKNhLhh7j7ubeubhi)r7}r7(h6X?The command line variant of this field is ``--solver=modular``.h7j7h=h>h?hlhA}r7(hC]hD]hE]hF]hI]uhKMfhLhhM]r7(hVX*The command line variant of this field is r7r7}r7(h6X*The command line variant of this field is h=NhKNhLhh7j7ubhr)r7}r 7(h6X``--solver=modular``hA}r!7(hC]hD]hE]hF]hI]uh7j7hM]r"7hVX--solver=modularr#7r$7}r%7(h6Uh7j7ubah?hzubhVX.r&7}r'7(h6X.h=NhKNhLhh7j7ubeubeubeubjj )r(7}r)7(h6Uh7j6h=h>h?jm hA}r*7(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r+7}r,7(h6Uh7j6h=h>h?jr hA}r-7(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr.7jx j.7uhKNhLhhM]r/7(jz )r07}r17(h6Xmax-backjumps: nath7j+7h=h>h?j} hA}r27(hF]r37Xcfg-field-max-backjumpsr47ahE]hC]hD]hI]j uhKNhLhhM]r57(jj )r67}r77(h6Uh7j07h=h>h?jm hA}r87(hF]hE]hC]hD]hI]Uentries]r97(j X$max-backjumps ; cabal project optionj47UNtr:7auhKNhLhhM]ubj )r;7}r<7(h6X max-backjumpsr=7h7j07h=h>h?j hA}r>7(jjhF]hE]hC]hD]hI]uhKNhLhhM]r?7hVX max-backjumpsr@7rA7}rB7(h6Uh=NhKNhLhh7j;7ubaubj )rC7}rD7(h6j h7j07h=h>h?j hA}rE7(jjhF]hE]hC]hD]hI]uhKNhLhhM]rF7hVX: rG7rH7}rI7(h6Uh=NhKNhLhh7jC7ubaubj )rJ7}rK7(h6Xnath7j07h=h>h?j hA}rL7(jjhF]hE]hC]hD]hI]uhKNhLhhM]rM7hVXnatrN7rO7}rP7(h6Uh=NhKNhLhh7jJ7ubaubeubjz )rQ7}rR7(h6X--max-backjumps=Nh7j+7h=h>h?j} hA}rS7(hF]rT7Xcfg-flag---max-backjumpsrU7ahE]hC]hD]hI]j uhKNhLhhM]rV7(jj )rW7}rX7(h6Uh7jQ7h=h>h?jm hA}rY7(hF]hE]hC]hD]hI]Uentries]rZ7(j X%--max-backjumps; cabal project optionjU7UNtr[7auhKNhLhhM]ubj )r\7}r]7(h6X--max-backjumpsr^7h7jQ7h=h>h?j hA}r_7(jjhF]hE]hC]hD]hI]uhKNhLhhM]r`7hVX--max-backjumpsra7rb7}rc7(h6Uh=NhKNhLhh7j\7ubaubj )rd7}re7(h6X=Nh7jQ7h=h>h?j hA}rf7(jjhF]hE]hC]hD]hI]uhKNhLhhM]rg7hVX=Nrh7ri7}rj7(h6Uh=NhKNhLhh7jd7ubaubeubj )rk7}rl7(h6Uh7j+7h=h>h?j hA}rm7(hC]hD]hE]hF]hI]uhKNhLhhM]rn7(j )ro7}rp7(h6Uh7jk7h=h>h?j hA}rq7(hC]hD]hE]hF]hI]uhKNhLhhM]rr7j )rs7}rt7(h6UhA}ru7(hC]hD]hE]hF]hI]uh7jo7hM]rv7(j )rw7}rx7(h6X Default valueh7js7h=h>h?j hA}ry7(hC]hD]hE]hF]hI]uhKKhM]rz7hVX Default valuer{7r|7}r}7(h6Uh7jw7ubaubj )r~7}r7(h6UhA}r7(hC]hD]hE]hF]hI]uh7js7hM]r7hi)r7}r7(h6X2000hA}r7(hC]hD]hE]hF]hI]uh7j~7hM]r7hVX2000r7r7}r7(h6X2000h=NhKNhLhh7j7ubah?hlubah?j ubeh?j ubaubhi)r7}r7(h6XMaximum number of backjumps (backtracking multiple steps) allowed while solving. Set -1 to allow unlimited backtracking, and 0 to disable backtracking completely.r7h7jk7h=h>h?hlhA}r7(hC]hD]hE]hF]hI]uhKMnhLhhM]r7hVXMaximum number of backjumps (backtracking multiple steps) allowed while solving. Set -1 to allow unlimited backtracking, and 0 to disable backtracking completely.r7r7}r7(h6j7h=NhKNhLhh7j7ubaubhi)r7}r7(h6XCThe command line variant of this field is ``--max-backjumps=2000``.h7jk7h=h>h?hlhA}r7(hC]hD]hE]hF]hI]uhKMrhLhhM]r7(hVX*The command line variant of this field is r7r7}r7(h6X*The command line variant of this field is h=NhKNhLhh7j7ubhr)r7}r7(h6X``--max-backjumps=2000``hA}r7(hC]hD]hE]hF]hI]uh7j7hM]r7hVX--max-backjumps=2000r7r7}r7(h6Uh7j7ubah?hzubhVX.r7}r7(h6X.h=NhKNhLhh7j7ubeubeubeubjj )r7}r7(h6Uh7j6h=h>h?jm hA}r7(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r7}r7(h6Uh7j6h=h>h?jr hA}r7(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr7jx j7uhKNhLhhM]r7(jz )r7}r7(h6Xreorder-goals: booleanh7j7h=h>h?j} hA}r7(hF]r7Xcfg-field-reorder-goalsr7ahE]hC]hD]hI]j uhKNhLhhM]r7(jj )r7}r7(h6Uh7j7h=h>h?jm hA}r7(hF]hE]hC]hD]hI]Uentries]r7(j X$reorder-goals ; cabal project optionj7UNtr7auhKNhLhhM]ubj )r7}r7(h6X reorder-goalsr7h7j7h=h>h?j hA}r7(jjhF]hE]hC]hD]hI]uhKNhLhhM]r7hVX reorder-goalsr7r7}r7(h6Uh=NhKNhLhh7j7ubaubj )r7}r7(h6j h7j7h=h>h?j hA}r7(jjhF]hE]hC]hD]hI]uhKNhLhhM]r7hVX: r7r7}r7(h6Uh=NhKNhLhh7j7ubaubj )r7}r7(h6Xbooleanh7j7h=h>h?j hA}r7(jjhF]hE]hC]hD]hI]uhKNhLhhM]r7hVXbooleanr7r7}r7(h6Uh=NhKNhLhh7j7ubaubeubjz )r7}r7(h6X--reorder-goalsr7h7j7h=h>h?j} hA}r7(hF]r7Xcfg-flag---reorder-goalsr7ahE]hC]hD]hI]j uhKNhLhhM]r7(jj )r7}r7(h6Uh7j7h=h>h?jm hA}r7(hF]hE]hC]hD]hI]Uentries]r7(j X%--reorder-goals; cabal project optionj7UNtr7auhKNhLhhM]ubj )r7}r7(h6j7h7j7h=h>h?j hA}r7(jjhF]hE]hC]hD]hI]uhKNhLhhM]r7hVX--reorder-goalsr7r7}r7(h6Uh=NhKNhLhh7j7ubaubj )r7}r7(h6U h7j7h=h>h?j hA}r7(jjhF]hE]hC]hD]hI]uhKNhLhhM]r7hVX r7}r7(h6Uh=NhKNhLhh7j7ubaubeubjz )r7}r7(h6X--no-reorder-goalsr7h7j7h=h>h?j} hA}r7(hF]r7Xcfg-flag---no-reorder-goalsr7ahE]hC]hD]hI]j uhKNhLhhM]r7(jj )r7}r7(h6Uh7j7h=h>h?jm hA}r7(hF]hE]hC]hD]hI]Uentries]r7(j X(--no-reorder-goals; cabal project optionj7UNtr7auhKNhLhhM]ubj )r7}r7(h6j7h7j7h=h>h?j hA}r7(jjhF]hE]hC]hD]hI]uhKNhLhhM]r7hVX--no-reorder-goalsr7r7}r7(h6Uh=NhKNhLhh7j7ubaubj )r7}r7(h6U h7j7h=h>h?j hA}r7(jjhF]hE]hC]hD]hI]uhKNhLhhM]r7hVX r7}r7(h6Uh=NhKNhLhh7j7ubaubeubj )r7}r7(h6Uh7j7h=h>h?j hA}r7(hC]hD]hE]hF]hI]uhKNhLhhM]r7(j )r8}r8(h6Uh7j7h=h>h?j hA}r8(hC]hD]hE]hF]hI]uhKNhLhhM]r8j )r8}r8(h6UhA}r8(hC]hD]hE]hF]hI]uh7j8hM]r8(j )r8}r 8(h6X Default valueh7j8h=h>h?j hA}r 8(hC]hD]hE]hF]hI]uhKKhM]r 8hVX Default valuer 8r 8}r8(h6Uh7j8ubaubj )r8}r8(h6UhA}r8(hC]hD]hE]hF]hI]uh7j8hM]r8hi)r8}r8(h6XFalsehA}r8(hC]hD]hE]hF]hI]uh7j8hM]r8hVXFalser8r8}r8(h6XFalseh=NhKNhLhh7j8ubah?hlubah?j ubeh?j ubaubhi)r8}r8(h6XJWhen enabled, the solver will reorder goals according to certain heuristics. Slows things down on average, but may make backtracking faster for some packages. It's unlikely to help for small projects, but for big install plans it may help you find a plan when otherwise this is not possible. See :issue:`1780` for more commentary.h7j7h=h>h?hlhA}r8(hC]hD]hE]hF]hI]uhKM{hLhhM]r8(hVX*When enabled, the solver will reorder goals according to certain heuristics. Slows things down on average, but may make backtracking faster for some packages. It’s unlikely to help for small projects, but for big install plans it may help you find a plan when otherwise this is not possible. See r8r8}r 8(h6X(When enabled, the solver will reorder goals according to certain heuristics. Slows things down on average, but may make backtracking faster for some packages. It's unlikely to help for small projects, but for big install plans it may help you find a plan when otherwise this is not possible. See h=NhKNhLhh7j8ubjl)r!8}r"8(h6X#1780hA}r#8(UrefuriX,https://github.com/haskell/cabal/issues/1780hF]hE]hC]hD]hI]Uinternaluh7j8hM]r$8hVX#1780r%8r&8}r'8(h6Uh7j!8ubah?juubhVX for more commentary.r(8r)8}r*8(h6X for more commentary.h=NhKNhLhh7j8ubeubhi)r+8}r,8(h6XCThe command line variant of this field is ``--(no-)reorder-goals``.h7j7h=h>h?hlhA}r-8(hC]hD]hE]hF]hI]uhKMhLhhM]r.8(hVX*The command line variant of this field is r/8r08}r18(h6X*The command line variant of this field is h=NhKNhLhh7j+8ubhr)r28}r38(h6X``--(no-)reorder-goals``hA}r48(hC]hD]hE]hF]hI]uh7j+8hM]r58hVX--(no-)reorder-goalsr68r78}r88(h6Uh7j28ubah?hzubhVX.r98}r:8(h6X.h=NhKNhLhh7j+8ubeubeubeubjj )r;8}r<8(h6Uh7j6h=h>h?jm hA}r=8(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r>8}r?8(h6Uh7j6h=h>h?jr hA}r@8(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldrA8jx jA8uhKNhLhhM]rB8(jz )rC8}rD8(h6Xcount-conflicts: booleanh7j>8h=h>h?j} hA}rE8(hF]rF8Xcfg-field-count-conflictsrG8ahE]hC]hD]hI]j uhKNhLhhM]rH8(jj )rI8}rJ8(h6Uh7jC8h=h>h?jm hA}rK8(hF]hE]hC]hD]hI]Uentries]rL8(j X&count-conflicts ; cabal project optionjG8UNtrM8auhKNhLhhM]ubj )rN8}rO8(h6Xcount-conflictsrP8h7jC8h=h>h?j hA}rQ8(jjhF]hE]hC]hD]hI]uhKNhLhhM]rR8hVXcount-conflictsrS8rT8}rU8(h6Uh=NhKNhLhh7jN8ubaubj )rV8}rW8(h6j h7jC8h=h>h?j hA}rX8(jjhF]hE]hC]hD]hI]uhKNhLhhM]rY8hVX: rZ8r[8}r\8(h6Uh=NhKNhLhh7jV8ubaubj )r]8}r^8(h6Xbooleanh7jC8h=h>h?j hA}r_8(jjhF]hE]hC]hD]hI]uhKNhLhhM]r`8hVXbooleanra8rb8}rc8(h6Uh=NhKNhLhh7j]8ubaubeubjz )rd8}re8(h6X--count-conflictsrf8h7j>8h=h>h?j} hA}rg8(hF]rh8Xcfg-flag---count-conflictsri8ahE]hC]hD]hI]j uhKNhLhhM]rj8(jj )rk8}rl8(h6Uh7jd8h=h>h?jm hA}rm8(hF]hE]hC]hD]hI]Uentries]rn8(j X'--count-conflicts; cabal project optionji8UNtro8auhKNhLhhM]ubj )rp8}rq8(h6jf8h7jd8h=h>h?j hA}rr8(jjhF]hE]hC]hD]hI]uhKNhLhhM]rs8hVX--count-conflictsrt8ru8}rv8(h6Uh=NhKNhLhh7jp8ubaubj )rw8}rx8(h6U h7jd8h=h>h?j hA}ry8(jjhF]hE]hC]hD]hI]uhKNhLhhM]rz8hVX r{8}r|8(h6Uh=NhKNhLhh7jw8ubaubeubjz )r}8}r~8(h6X--no-count-conflictsr8h7j>8h=h>h?j} hA}r8(hF]r8Xcfg-flag---no-count-conflictsr8ahE]hC]hD]hI]j uhKNhLhhM]r8(jj )r8}r8(h6Uh7j}8h=h>h?jm hA}r8(hF]hE]hC]hD]hI]Uentries]r8(j X*--no-count-conflicts; cabal project optionj8UNtr8auhKNhLhhM]ubj )r8}r8(h6j8h7j}8h=h>h?j hA}r8(jjhF]hE]hC]hD]hI]uhKNhLhhM]r8hVX--no-count-conflictsr8r8}r8(h6Uh=NhKNhLhh7j8ubaubj )r8}r8(h6U h7j}8h=h>h?j hA}r8(jjhF]hE]hC]hD]hI]uhKNhLhhM]r8hVX r8}r8(h6Uh=NhKNhLhh7j8ubaubeubj )r8}r8(h6Uh7j>8h=h>h?j hA}r8(hC]hD]hE]hF]hI]uhKNhLhhM]r8(j )r8}r8(h6Uh7j8h=h>h?j hA}r8(hC]hD]hE]hF]hI]uhKNhLhhM]r8j )r8}r8(h6UhA}r8(hC]hD]hE]hF]hI]uh7j8hM]r8(j )r8}r8(h6X Default valueh7j8h=h>h?j hA}r8(hC]hD]hE]hF]hI]uhKKhM]r8hVX Default valuer8r8}r8(h6Uh7j8ubaubj )r8}r8(h6UhA}r8(hC]hD]hE]hF]hI]uh7j8hM]r8hi)r8}r8(h6XTruehA}r8(hC]hD]hE]hF]hI]uh7j8hM]r8hVXTruer8r8}r8(h6XTrueh=NhKNhLhh7j8ubah?hlubah?j ubeh?j ubaubhi)r8}r8(h6XTTry to speed up solving by preferring goals that are involved in a lot of conflicts.r8h7j8h=h>h?hlhA}r8(hC]hD]hE]hF]hI]uhKMhLhhM]r8hVXTTry to speed up solving by preferring goals that are involved in a lot of conflicts.r8r8}r8(h6j8h=NhKNhLhh7j8ubaubhi)r8}r8(h6XEThe command line variant of this field is ``--(no-)count-conflicts``.h7j8h=h>h?hlhA}r8(hC]hD]hE]hF]hI]uhKMhLhhM]r8(hVX*The command line variant of this field is r8r8}r8(h6X*The command line variant of this field is h=NhKNhLhh7j8ubhr)r8}r8(h6X``--(no-)count-conflicts``hA}r8(hC]hD]hE]hF]hI]uh7j8hM]r8hVX--(no-)count-conflictsr8r8}r8(h6Uh7j8ubah?hzubhVX.r8}r8(h6X.h=NhKNhLhh7j8ubeubeubeubjj )r8}r8(h6Uh7j6h=h>h?jm hA}r8(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r8}r8(h6Uh7j6h=h>h?jr hA}r8(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr8jx j8uhKNhLhhM]r8(jz )r8}r8(h6Xstrong-flags: booleanh7j8h=h>h?j} hA}r8(hF]r8Xcfg-field-strong-flagsr8ahE]hC]hD]hI]j uhKNhLhhM]r8(jj )r8}r8(h6Uh7j8h=h>h?jm hA}r8(hF]hE]hC]hD]hI]Uentries]r8(j X#strong-flags ; cabal project optionj8UNtr8auhKNhLhhM]ubj )r8}r8(h6X strong-flagsr8h7j8h=h>h?j hA}r8(jjhF]hE]hC]hD]hI]uhKNhLhhM]r8hVX strong-flagsr8r8}r8(h6Uh=NhKNhLhh7j8ubaubj )r8}r8(h6j h7j8h=h>h?j hA}r8(jjhF]hE]hC]hD]hI]uhKNhLhhM]r8hVX: r8r8}r8(h6Uh=NhKNhLhh7j8ubaubj )r8}r8(h6Xbooleanh7j8h=h>h?j hA}r8(jjhF]hE]hC]hD]hI]uhKNhLhhM]r8hVXbooleanr8r8}r8(h6Uh=NhKNhLhh7j8ubaubeubjz )r8}r8(h6X--strong-flagsr8h7j8h=h>h?j} hA}r8(hF]r8Xcfg-flag---strong-flagsr8ahE]hC]hD]hI]j uhKNhLhhM]r8(jj )r8}r8(h6Uh7j8h=h>h?jm hA}r8(hF]hE]hC]hD]hI]Uentries]r8(j X$--strong-flags; cabal project optionj8UNtr9auhKNhLhhM]ubj )r9}r9(h6j8h7j8h=h>h?j hA}r9(jjhF]hE]hC]hD]hI]uhKNhLhhM]r9hVX--strong-flagsr9r9}r9(h6Uh=NhKNhLhh7j9ubaubj )r9}r 9(h6U h7j8h=h>h?j hA}r 9(jjhF]hE]hC]hD]hI]uhKNhLhhM]r 9hVX r 9}r 9(h6Uh=NhKNhLhh7j9ubaubeubjz )r9}r9(h6X--no-strong-flagsr9h7j8h=h>h?j} hA}r9(hF]r9Xcfg-flag---no-strong-flagsr9ahE]hC]hD]hI]j uhKNhLhhM]r9(jj )r9}r9(h6Uh7j9h=h>h?jm hA}r9(hF]hE]hC]hD]hI]Uentries]r9(j X'--no-strong-flags; cabal project optionj9UNtr9auhKNhLhhM]ubj )r9}r9(h6j9h7j9h=h>h?j hA}r9(jjhF]hE]hC]hD]hI]uhKNhLhhM]r9hVX--no-strong-flagsr9r9}r 9(h6Uh=NhKNhLhh7j9ubaubj )r!9}r"9(h6U h7j9h=h>h?j hA}r#9(jjhF]hE]hC]hD]hI]uhKNhLhhM]r$9hVX r%9}r&9(h6Uh=NhKNhLhh7j!9ubaubeubj )r'9}r(9(h6Uh7j8h=h>h?j hA}r)9(hC]hD]hE]hF]hI]uhKNhLhhM]r*9(j )r+9}r,9(h6Uh7j'9h=h>h?j hA}r-9(hC]hD]hE]hF]hI]uhKNhLhhM]r.9j )r/9}r09(h6UhA}r19(hC]hD]hE]hF]hI]uh7j+9hM]r29(j )r39}r49(h6X Default valueh7j/9h=h>h?j hA}r59(hC]hD]hE]hF]hI]uhKKhM]r69hVX Default valuer79r89}r99(h6Uh7j39ubaubj )r:9}r;9(h6UhA}r<9(hC]hD]hE]hF]hI]uh7j/9hM]r=9hi)r>9}r?9(h6XFalsehA}r@9(hC]hD]hE]hF]hI]uh7j:9hM]rA9hVXFalserB9rC9}rD9(h6XFalseh=NhKNhLhh7j>9ubah?hlubah?j ubeh?j ubaubhi)rE9}rF9(h6X8Do not defer flag choices. (TODO: Better documentation.)rG9h7j'9h=h>h?hlhA}rH9(hC]hD]hE]hF]hI]uhKMhLhhM]rI9hVX8Do not defer flag choices. (TODO: Better documentation.)rJ9rK9}rL9(h6jG9h=NhKNhLhh7jE9ubaubhi)rM9}rN9(h6XBThe command line variant of this field is ``--(no-)strong-flags``.h7j'9h=h>h?hlhA}rO9(hC]hD]hE]hF]hI]uhKMhLhhM]rP9(hVX*The command line variant of this field is rQ9rR9}rS9(h6X*The command line variant of this field is h=NhKNhLhh7jM9ubhr)rT9}rU9(h6X``--(no-)strong-flags``hA}rV9(hC]hD]hE]hF]hI]uh7jM9hM]rW9hVX--(no-)strong-flagsrX9rY9}rZ9(h6Uh7jT9ubah?hzubhVX.r[9}r\9(h6X.h=NhKNhLhh7jM9ubeubeubeubjj )r]9}r^9(h6Uh7j6h=h>h?jm hA}r_9(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r`9}ra9(h6Uh7j6h=h>h?jr hA}rb9(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldrc9jx jc9uhKNhLhhM]rd9(jz )re9}rf9(h6X$allow-boot-library-installs: booleanh7j`9h=h>h?j} hA}rg9(hF]rh9X%cfg-field-allow-boot-library-installsri9ahE]hC]hD]hI]j uhKNhLhhM]rj9(jj )rk9}rl9(h6Uh7je9h=h>h?jm hA}rm9(hF]hE]hC]hD]hI]Uentries]rn9(j X2allow-boot-library-installs ; cabal project optionji9UNtro9auhKNhLhhM]ubj )rp9}rq9(h6Xallow-boot-library-installsrr9h7je9h=h>h?j hA}rs9(jjhF]hE]hC]hD]hI]uhKNhLhhM]rt9hVXallow-boot-library-installsru9rv9}rw9(h6Uh=NhKNhLhh7jp9ubaubj )rx9}ry9(h6j h7je9h=h>h?j hA}rz9(jjhF]hE]hC]hD]hI]uhKNhLhhM]r{9hVX: r|9r}9}r~9(h6Uh=NhKNhLhh7jx9ubaubj )r9}r9(h6Xbooleanh7je9h=h>h?j hA}r9(jjhF]hE]hC]hD]hI]uhKNhLhhM]r9hVXbooleanr9r9}r9(h6Uh=NhKNhLhh7j9ubaubeubjz )r9}r9(h6X--allow-boot-library-installsr9h7j`9h=h>h?j} hA}r9(hF]r9X&cfg-flag---allow-boot-library-installsr9ahE]hC]hD]hI]j uhKNhLhhM]r9(jj )r9}r9(h6Uh7j9h=h>h?jm hA}r9(hF]hE]hC]hD]hI]Uentries]r9(j X3--allow-boot-library-installs; cabal project optionj9UNtr9auhKNhLhhM]ubj )r9}r9(h6j9h7j9h=h>h?j hA}r9(jjhF]hE]hC]hD]hI]uhKNhLhhM]r9hVX--allow-boot-library-installsr9r9}r9(h6Uh=NhKNhLhh7j9ubaubj )r9}r9(h6U h7j9h=h>h?j hA}r9(jjhF]hE]hC]hD]hI]uhKNhLhhM]r9hVX r9}r9(h6Uh=NhKNhLhh7j9ubaubeubjz )r9}r9(h6X --no-allow-boot-library-installsr9h7j`9h=h>h?j} hA}r9(hF]r9X)cfg-flag---no-allow-boot-library-installsr9ahE]hC]hD]hI]j uhKNhLhhM]r9(jj )r9}r9(h6Uh7j9h=h>h?jm hA}r9(hF]hE]hC]hD]hI]Uentries]r9(j X6--no-allow-boot-library-installs; cabal project optionj9UNtr9auhKNhLhhM]ubj )r9}r9(h6j9h7j9h=h>h?j hA}r9(jjhF]hE]hC]hD]hI]uhKNhLhhM]r9hVX --no-allow-boot-library-installsr9r9}r9(h6Uh=NhKNhLhh7j9ubaubj )r9}r9(h6U h7j9h=h>h?j hA}r9(jjhF]hE]hC]hD]hI]uhKNhLhhM]r9hVX r9}r9(h6Uh=NhKNhLhh7j9ubaubeubj )r9}r9(h6Uh7j`9h=h>h?j hA}r9(hC]hD]hE]hF]hI]uhKNhLhhM]r9(j )r9}r9(h6Uh7j9h=h>h?j hA}r9(hC]hD]hE]hF]hI]uhKNhLhhM]r9j )r9}r9(h6UhA}r9(hC]hD]hE]hF]hI]uh7j9hM]r9(j )r9}r9(h6X Default valueh7j9h=h>h?j hA}r9(hC]hD]hE]hF]hI]uhKKhM]r9hVX Default valuer9r9}r9(h6Uh7j9ubaubj )r9}r9(h6UhA}r9(hC]hD]hE]hF]hI]uh7j9hM]r9hi)r9}r9(h6XFalsehA}r9(hC]hD]hE]hF]hI]uh7j9hM]r9hVXFalser9r9}r9(h6XFalser9h=NhKNhLhh7j9ubah?hlubah?j ubeh?j ubaubhi)r9}r9(h6XBy default, the dependency solver doesn't allow ``base``, ``ghc-prim``, ``integer-simple``, ``integer-gmp``, and ``template-haskell`` to be installed or upgraded. This flag removes the restriction.h7j9h=h>h?hlhA}r9(hC]hD]hE]hF]hI]uhKMhLhhM]r9(hVX2By default, the dependency solver doesn’t allow r9r9}r9(h6X0By default, the dependency solver doesn't allow h=NhKNhLhh7j9ubhr)r9}r9(h6X``base``hA}r9(hC]hD]hE]hF]hI]uh7j9hM]r9hVXbaser9r9}r9(h6Uh7j9ubah?hzubhVX, r9r9}r9(h6X, h=NhKNhLhh7j9ubhr)r9}r9(h6X ``ghc-prim``hA}r9(hC]hD]hE]hF]hI]uh7j9hM]r9hVXghc-primr9r9}r9(h6Uh7j9ubah?hzubhVX, r9r9}r9(h6X, r9h=NhKNhLhh7j9ubhr)r9}r9(h6X``integer-simple``hA}r9(hC]hD]hE]hF]hI]uh7j9hM]r9hVXinteger-simpler9r9}r9(h6Uh7j9ubah?hzubhVX, r9r9}r9(h6j9h7j9ubhr)r9}r9(h6X``integer-gmp``hA}r9(hC]hD]hE]hF]hI]uh7j9hM]r:hVX integer-gmpr:r:}r:(h6Uh7j9ubah?hzubhVX, and r:r:}r:(h6X, and h=NhKNhLhh7j9ubhr)r:}r:(h6X``template-haskell``hA}r :(hC]hD]hE]hF]hI]uh7j9hM]r :hVXtemplate-haskellr :r :}r :(h6Uh7j:ubah?hzubhVX@ to be installed or upgraded. This flag removes the restriction.r:r:}r:(h6X@ to be installed or upgraded. This flag removes the restriction.h=NhKNhLhh7j9ubeubhi)r:}r:(h6XQThe command line variant of this field is ``--(no-)allow-boot-library-installs``.h7j9h=h>h?hlhA}r:(hC]hD]hE]hF]hI]uhKMhLhhM]r:(hVX*The command line variant of this field is r:r:}r:(h6X*The command line variant of this field is h=NhKNhLhh7j:ubhr)r:}r:(h6X&``--(no-)allow-boot-library-installs``hA}r:(hC]hD]hE]hF]hI]uh7j:hM]r:hVX"--(no-)allow-boot-library-installsr:r:}r:(h6Uh7j:ubah?hzubhVX.r:}r :(h6X.h=NhKNhLhh7j:ubeubeubeubjj )r!:}r":(h6Uh7j6h=h>h?jm hA}r#:(hF]hE]hC]hD]hI]Uentries]uhKNhLhhM]ubjo )r$:}r%:(h6Uh7j6h=h>h?jr hA}r&:(jt ju XcabalhF]hE]hC]hD]hI]jv X cfg-fieldr':jx j':uhKNhLhhM]r(:(jz )r):}r*:(h6Xcabal-lib-version: versionh7j$:h=h>h?j} hA}r+:(hF]r,:Xcfg-field-cabal-lib-versionr-:ahE]hC]hD]hI]j uhKNhLhhM]r.:(jj )r/:}r0:(h6Uh7j):h=h>h?jm hA}r1:(hF]hE]hC]hD]hI]Uentries]r2:(j X(cabal-lib-version ; cabal project optionj-:UNtr3:auhKNhLhhM]ubj )r4:}r5:(h6Xcabal-lib-versionr6:h7j):h=h>h?j hA}r7:(jjhF]hE]hC]hD]hI]uhKNhLhhM]r8:hVXcabal-lib-versionr9:r::}r;:(h6Uh=NhKNhLhh7j4:ubaubj )r<:}r=:(h6j h7j):h=h>h?j hA}r>:(jjhF]hE]hC]hD]hI]uhKNhLhhM]r?:hVX: r@:rA:}rB:(h6Uh=NhKNhLhh7j<:ubaubj )rC:}rD:(h6Xversionh7j):h=h>h?j hA}rE:(jjhF]hE]hC]hD]hI]uhKNhLhhM]rF:hVXversionrG:rH:}rI:(h6Uh=NhKNhLhh7jC:ubaubeubjz )rJ:}rK:(h6X--cabal-lib-version=versionh7j$:h=h>h?j} hA}rL:(hF]rM:Xcfg-flag---cabal-lib-versionrN:ahE]hC]hD]hI]j uhKNhLhhM]rO:(jj )rP:}rQ:(h6Uh7jJ:h=h>h?jm hA}rR:(hF]hE]hC]hD]hI]Uentries]rS:(j X)--cabal-lib-version; cabal project optionjN:UNtrT:auhKNhLhhM]ubj )rU:}rV:(h6X--cabal-lib-versionrW:h7jJ:h=h>h?j hA}rX:(jjhF]hE]hC]hD]hI]uhKNhLhhM]rY:hVX--cabal-lib-versionrZ:r[:}r\:(h6Uh=NhKNhLhh7jU:ubaubj )r]:}r^:(h6X=versionh7jJ:h=h>h?j hA}r_:(jjhF]hE]hC]hD]hI]uhKNhLhhM]r`:hVX=versionra:rb:}rc:(h6Uh=NhKNhLhh7j]:ubaubeubj )rd:}re:(h6Uh7j$:h=h>h?j hA}rf:(hC]hD]hE]hF]hI]uhKNhLhhM]rg:(hi)rh:}ri:(h6X(This field selects the version of the Cabal library which should be used to build packages. This option is intended primarily for internal development use (e.g., forcing a package to build with a newer version of Cabal, to test a new version of Cabal.) (TODO: Specify its semantics more clearly.)rj:h7jd:h=h>h?hlhA}rk:(hC]hD]hE]hF]hI]uhKMhLhhM]rl:hVX(This field selects the version of the Cabal library which should be used to build packages. This option is intended primarily for internal development use (e.g., forcing a package to build with a newer version of Cabal, to test a new version of Cabal.) (TODO: Specify its semantics more clearly.)rm:rn:}ro:(h6jj:h=NhKNhLhh7jh:ubaubhi)rp:}rq:(h6XKThe command line variant of this field is ``--cabal-lib-version=1.24.0.1``.h7jd:h=h>h?hlhA}rr:(hC]hD]hE]hF]hI]uhKMhLhhM]rs:(hVX*The command line variant of this field is rt:ru:}rv:(h6X*The command line variant of this field is h=NhKNhLhh7jp:ubhr)rw:}rx:(h6X ``--cabal-lib-version=1.24.0.1``hA}ry:(hC]hD]hE]hF]hI]uh7jp:hM]rz:hVX--cabal-lib-version=1.24.0.1r{:r|:}r}:(h6Uh7jw:ubah?hzubhVX.r~:}r:(h6X.h=NhKNhLhh7jp:ubeubeubeubcdocutils.nodes comment r:)r:}r:(h6X[-*- rst -*- This file contains commonly used link-references See also "extlinks" in conf.pyh7j6h=cdocutils.nodes reprunicode r:Xdoc/references.incr:r:}r:bh?Ucommentr:hA}r:(jjhF]hE]hC]hD]hI]uhKKhLhhM]r:hVX[-*- rst -*- This file contains commonly used link-references See also "extlinks" in conf.pyr:r:}r:(h6Uh7j:ubaubj)r:}r:(h6X .. _`Package Versioning Policy`:h7j6h=j:h?j hA}r:(hF]hE]hC]hD]hI]Urefidr:juhKMhLhhM]ubj)r:}r:(h6X .. _PVP: http://pvp.haskell.org/h7j6h=j:Uexpect_referenced_by_namer:}r:h j:sh?j hA}r:(jpXhttp://pvp.haskell.org/hF]r:(jjehE]hC]hD]hI]r:(hh euhKMhLhUexpect_referenced_by_idr:}r:jj:shM]ubj)r:}r:(h6X(.. _Hackage: http://hackage.haskell.org/h7j6h=j:h?j hA}r:(jpXhttp://hackage.haskell.org/hF]r:jahE]hC]hD]hI]r:hauhKMhLhhM]ubj)r:}r:(h6X$.. _Haskell: http://www.haskell.org/h7j6h=j:h?j hA}r:(jpXhttp://www.haskell.org/hF]r:jahE]hC]hD]hI]r:hauhKMhLhhM]ubj)r:}r:(h6X,.. _Haddock: http://www.haskell.org/haddock/h7j6h=j:h?j hA}r:(jpXhttp://www.haskell.org/haddock/hF]r:jahE]hC]hD]hI]r:h'auhKMhLhhM]ubj)r:}r:(h6X&.. _Alex: http://www.haskell.org/alex/h7j6h=j:h?j hA}r:(jpXhttp://www.haskell.org/alex/hF]r:jahE]hC]hD]hI]r:h$auhKMhLhhM]ubj)r:}r:(h6X(.. _Happy: http://www.haskell.org/happy/h7j6h=j:h?j hA}r:(jpXhttp://www.haskell.org/happy/hF]r:jahE]hC]hD]hI]r:hauhKMhLhhM]ubj)r:}r:(h6X*.. _Hoogle: http://www.haskell.org/hoogle/U referencedr:Kh7j6h=j:h?j hA}r:(jpj-hF]r:jahE]hC]hD]hI]r:hauhKMhLhhM]ubj)r:}r:(h6X9.. _HsColour: http://www.cs.york.ac.uk/fp/darcs/hscolour/j:Kh7j6h=j:h?j hA}r:(jpj1hF]r:jahE]hC]hD]hI]r:hauhKMhLhhM]ubj)r:}r:(h6X-.. _cpphs: http://projects.haskell.org/cpphs/h7j6h=j:h?j hA}r:(jpX"http://projects.haskell.org/cpphs/hF]r:jahE]hC]hD]hI]r:hauhKMhLhhM]ubeubeubeubeh6UU transformerr:NU footnote_refsr:}r:Urefnamesr:}r:(Xhscolour]r:(j1j1eXhoogle]r:j-auUsymbol_footnotesr:]r:Uautofootnote_refsr:]r:Usymbol_footnote_refsr:]r:U citationsr:]r:hLhU current_liner:NUtransform_messagesr:]r:(h3)r:}r:(h6UhA}r:(hC]UlevelKhF]hE]Usourceh>hD]hI]UlineMGUtypej{uhM]r:hi)r:}r:(h6UhA}r:(hC]hD]hE]hF]hI]uh7j:hM]r:hVX-Hyperlink target "index-0" is not referenced.r:r:}r:(h6Uh7j:ubah?hlubah?jyubh3)r:}r:(h6UhA}r:(hC]UlevelKhF]hE]Usourcej:hD]hI]UlineMUtypej{uhM]r:hi)r:}r:(h6UhA}r:(hC]hD]hE]hF]hI]uh7j:hM]r:hVX?Hyperlink target "package-versioning-policy" is not referenced.r:r:}r:(h6Uh7j:ubah?hlubah?jyubh3)r:}r:(h6UhA}r:(hC]UlevelKhF]hE]Usourcej:hD]hI]UlineMUtypej{uhM]r:hi)r:}r:(h6UhA}r:(hC]hD]hE]hF]hI]uh7j:hM]r:hVX)Hyperlink target "pvp" is not referenced.r:r:}r:(h6Uh7j:ubah?hlubah?jyubh3)r:}r:(h6UhA}r:(hC]UlevelKhF]hE]Usourcej:hD]hI]UlineMUtypej{uhM]r:hi)r:}r:(h6UhA}r:(hC]hD]hE]hF]hI]uh7j:hM]r:hVX-Hyperlink target "hackage" is not referenced.r:r:}r;(h6Uh7j:ubah?hlubah?jyubh3)r;}r;(h6UhA}r;(hC]UlevelKhF]hE]Usourcej:hD]hI]UlineMUtypej{uhM]r;hi)r;}r;(h6UhA}r;(hC]hD]hE]hF]hI]uh7j;hM]r;hVX-Hyperlink target "haskell" is not referenced.r ;r ;}r ;(h6Uh7j;ubah?hlubah?jyubh3)r ;}r ;(h6UhA}r;(hC]UlevelKhF]hE]Usourcej:hD]hI]UlineMUtypej{uhM]r;hi)r;}r;(h6UhA}r;(hC]hD]hE]hF]hI]uh7j ;hM]r;hVX-Hyperlink target "haddock" is not referenced.r;r;}r;(h6Uh7j;ubah?hlubah?jyubh3)r;}r;(h6UhA}r;(hC]UlevelKhF]hE]Usourcej:hD]hI]UlineMUtypej{uhM]r;hi)r;}r;(h6UhA}r;(hC]hD]hE]hF]hI]uh7j;hM]r;hVX*Hyperlink target "alex" is not referenced.r;r ;}r!;(h6Uh7j;ubah?hlubah?jyubh3)r";}r#;(h6UhA}r$;(hC]UlevelKhF]hE]Usourcej:hD]hI]UlineMUtypej{uhM]r%;hi)r&;}r';(h6UhA}r(;(hC]hD]hE]hF]hI]uh7j";hM]r);hVX+Hyperlink target "happy" is not referenced.r*;r+;}r,;(h6Uh7j&;ubah?hlubah?jyubh3)r-;}r.;(h6UhA}r/;(hC]UlevelKhF]hE]Usourcej:hD]hI]UlineMUtypej{uhM]r0;hi)r1;}r2;(h6UhA}r3;(hC]hD]hE]hF]hI]uh7j-;hM]r4;hVX+Hyperlink target "cpphs" is not referenced.r5;r6;}r7;(h6Uh7j1;ubah?hlubah?jyubeUreporterr8;NUid_startr9;KU autofootnotesr:;]r;;U citation_refsr<;}r=;Uindirect_targetsr>;]r?;Usettingsr@;(cdocutils.frontend Values rA;orB;}rC;(Ufootnote_backlinksrD;KUrecord_dependenciesrE;NU language_coderF;UenrG;U tracebackrH;Upep_referencesrI;NUstrip_commentsrJ;NU toc_backlinksrK;UentryrL;U rfc_base_urlrM;Uhttps://tools.ietf.org/html/rN;U datestamprO;NU report_levelrP;KUsmartquotes_localesrQ;NU _destinationrR;NU halt_levelrS;KU strip_classesrT;NhSNUerror_encoding_error_handlerrU;UbackslashreplacerV;UdebugrW;NUembed_stylesheetrX;Uoutput_encoding_error_handlerrY;UstrictrZ;U sectnum_xformr[;KUdump_transformsr\;NU docinfo_xformr];KUwarning_streamr^;NUpep_file_url_templater_;Upep-%04dr`;Uexit_status_levelra;KUconfigrb;NUstrict_visitorrc;NUcloak_email_addressesrd;Utrim_footnote_reference_spacere;Uenvrf;NUdump_pseudo_xmlrg;NUexpose_internalsrh;NUsectsubtitle_xformri;U source_linkrj;NUrfc_referencesrk;NUoutput_encodingrl;Uutf-8rm;U source_urlrn;NUinput_encodingro;U utf-8-sigrp;U_disable_configrq;NU id_prefixrr;UUcharacter_level_inline_markuprs;U tab_widthrt;KUerror_encodingru;UUTF-8rv;U_sourcerw;h>Ugettext_compactrx;U generatorry;NUdump_internalsrz;NU smart_quotesr{;U pep_base_urlr|;U https://www.python.org/dev/peps/r};Usyntax_highlightr~;Ulongr;Uinput_encoding_error_handlerr;jZ;Uauto_id_prefixr;Uidr;Udoctitle_xformr;Ustrip_elements_with_classesr;NU _config_filesr;]Ufile_insertion_enabledr;U raw_enabledr;KU dump_settingsr;NubUsymbol_footnote_startr;KUidsr;}r;(j1j1jU7jQ7jje,jbj]j6j6jjj%j!jj!j}jyjjjjjj1$j-:j):jN3jJ3j+j+j5j5j20j.0jjjjjjjjj~4jz4j+j+j2j2jZjVj%+j +jjjjj)#j$#j6j6jjjj:j2j2j4j/jjjj:jjj!j!jj%j j jjj%j%jj:j9j9jgjbj#j#jjj-j-jj:jFjBjjjjjjj9j9j*j*j7j7jjjjjjjj j4j3j,j,jjjIjDjjjQ(jM(h^hZjjjY"jU"jjjj:jjjNjIj`j\j j j?j;j$j$jx)js)j.j.jjj]4jY4jzjvjC-j?-jjjjT j j jjbjjjjjkh9ji9je9jgjcjj:j5j{5j.j.jj:jj*js2jo2j)j)j7 j3 j4j4j#j#jN:jJ:jjj8j8j#j#j j j9j9j&j&j;*j6*j47j07jj:jjjB#j=#jq jm jp3jk3jjj7j7jjj +j+jV1jR1jjj'j'jjj1j1jT*jO*j(j(jc%j_%j|jwj(j(jj j#2j2jj2jj:jjjjji8jd8j+j+jj$ jjjjjK$jG$j3j3j{"jv"j?j;j"&j&jXjTj!j!jB%j>%j &j&j8j}8j"j"j".j.j'j#jl$jh$jjjjjj j/j/jG8jC8j*j*j^/jZ/j%j$jjj0j0jV)jR)j0(j,(j!j!jjj,j,j,j,jj{j4j4jj6j7j7j,j(j j{ j(j(j8j8jjj6j6j"-j-j jhHh;jj jjjj:j5j5uUsubstitution_namesr;}r;h?hLhA}r;(hC]hF]hE]Usourceh>hD]hI]uU footnotesr;]r;Urefidsr;}r;j]r;j:asub.