Sophie

Sophie

distrib > Mageia > 5 > i586 > media > core-release > by-pkgid > 6e204a966e8c42d976f99a1700ce5f20 > files > 2068

ghc-7.4.2-4.mga5.i586.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Distribution.Simple</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
window.onload = function () {pageLoad();setSynopsis("mini_Distribution-Simple.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">Cabal-1.14.0: A framework for packaging Haskell software</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Portability</th><td>portable</td></tr><tr><th>Maintainer</th><td>cabal-devel@haskell.org</td></tr><tr><th>Safe Haskell</th><td>None</td></tr></table><p class="caption">Distribution.Simple</p></div><div id="table-of-contents"><p class="caption">Contents</p><ul><li><a href="#g:1">Simple interface
</a></li><li><a href="#g:2">Customization
</a><ul><li><a href="#g:3">Standard sets of hooks
</a></li><li><a href="#g:4">Utils
</a></li></ul></li></ul></div><div id="description"><p class="caption">Description</p><div class="doc"><p>This is the command line front end to the Simple build system. When given
 the parsed command-line args and package information, is able to perform
 basic commands like configure, build, install, register, etc.
</p><p>This module exports the main functions that Setup.hs scripts use. It
 re-exports the <code><a href="Distribution-Simple.html#t:UserHooks">UserHooks</a></code> type, the standard entry points like
 <code><a href="Distribution-Simple.html#v:defaultMain">defaultMain</a></code> and <code><a href="Distribution-Simple.html#v:defaultMainWithHooks">defaultMainWithHooks</a></code> and the predefined sets of
 <code><a href="Distribution-Simple.html#t:UserHooks">UserHooks</a></code> that custom <code>Setup.hs</code> scripts can extend to add their own
 behaviour.
</p><p>This module isn't called &quot;Simple&quot; because it's simple.  Far from
 it.  It's called &quot;Simple&quot; because it does complicated things to
 simple software.
</p><p>The original idea was that there could be different build systems that all
 presented the same compatible command line interfaces. There is still a
 <a href="Distribution-Make.html">Distribution.Make</a> system but in practice no packages use it.
</p></div></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short">module <a href="Distribution-Package.html">Distribution.Package</a></li><li class="src short">module <a href="Distribution-Version.html">Distribution.Version</a></li><li class="src short">module <a href="Distribution-License.html">Distribution.License</a></li><li class="src short">module <a href="Distribution-Simple-Compiler.html">Distribution.Simple.Compiler</a></li><li class="src short">module <a href="Language-Haskell-Extension.html">Language.Haskell.Extension</a></li><li class="src short"><a href="#v:defaultMain">defaultMain</a> :: <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</li><li class="src short"><a href="#v:defaultMainNoRead">defaultMainNoRead</a> :: <a href="Distribution-PackageDescription.html#t:GenericPackageDescription">GenericPackageDescription</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</li><li class="src short"><a href="#v:defaultMainArgs">defaultMainArgs</a> :: [<a href="../base-4.5.1.0/Data-String.html#t:String">String</a>] -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</li><li class="src short"><span class="keyword">data</span>  <a href="#t:UserHooks">UserHooks</a>  = <a href="#v:UserHooks">UserHooks</a> {<ul class="subs"><li><a href="#v:runTests">runTests</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</li><li><a href="#v:readDesc">readDesc</a> :: <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> (<a href="../base-4.5.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Distribution-PackageDescription.html#t:GenericPackageDescription">GenericPackageDescription</a>)</li><li><a href="#v:hookedPreProcessors">hookedPreProcessors</a> :: [<a href="Distribution-Simple-PreProcess.html#t:PPSuffixHandler">PPSuffixHandler</a>]</li><li><a href="#v:hookedPrograms">hookedPrograms</a> :: [<a href="Distribution-Simple-Program-Types.html#t:Program">Program</a>]</li><li><a href="#v:preConf">preConf</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:ConfigFlags">ConfigFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> <a href="Distribution-PackageDescription.html#t:HookedBuildInfo">HookedBuildInfo</a></li><li><a href="#v:confHook">confHook</a> :: (<a href="Distribution-PackageDescription.html#t:GenericPackageDescription">GenericPackageDescription</a>, <a href="Distribution-PackageDescription.html#t:HookedBuildInfo">HookedBuildInfo</a>) -&gt; <a href="Distribution-Simple-Setup.html#t:ConfigFlags">ConfigFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a></li><li><a href="#v:postConf">postConf</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:ConfigFlags">ConfigFlags</a> -&gt; <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</li><li><a href="#v:preBuild">preBuild</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:BuildFlags">BuildFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> <a href="Distribution-PackageDescription.html#t:HookedBuildInfo">HookedBuildInfo</a></li><li><a href="#v:buildHook">buildHook</a> :: <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a> -&gt; <a href="Distribution-Simple-Setup.html#t:BuildFlags">BuildFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</li><li><a href="#v:postBuild">postBuild</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:BuildFlags">BuildFlags</a> -&gt; <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</li><li><a href="#v:preClean">preClean</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:CleanFlags">CleanFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> <a href="Distribution-PackageDescription.html#t:HookedBuildInfo">HookedBuildInfo</a></li><li><a href="#v:cleanHook">cleanHook</a> :: <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; () -&gt; <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a> -&gt; <a href="Distribution-Simple-Setup.html#t:CleanFlags">CleanFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</li><li><a href="#v:postClean">postClean</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:CleanFlags">CleanFlags</a> -&gt; <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; () -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</li><li><a href="#v:preCopy">preCopy</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:CopyFlags">CopyFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> <a href="Distribution-PackageDescription.html#t:HookedBuildInfo">HookedBuildInfo</a></li><li><a href="#v:copyHook">copyHook</a> :: <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a> -&gt; <a href="Distribution-Simple-Setup.html#t:CopyFlags">CopyFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</li><li><a href="#v:postCopy">postCopy</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:CopyFlags">CopyFlags</a> -&gt; <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</li><li><a href="#v:preInst">preInst</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:InstallFlags">InstallFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> <a href="Distribution-PackageDescription.html#t:HookedBuildInfo">HookedBuildInfo</a></li><li><a href="#v:instHook">instHook</a> :: <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a> -&gt; <a href="Distribution-Simple-Setup.html#t:InstallFlags">InstallFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</li><li><a href="#v:postInst">postInst</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:InstallFlags">InstallFlags</a> -&gt; <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</li><li><a href="#v:preSDist">preSDist</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:SDistFlags">SDistFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> <a href="Distribution-PackageDescription.html#t:HookedBuildInfo">HookedBuildInfo</a></li><li><a href="#v:sDistHook">sDistHook</a> :: <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="../base-4.5.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a> -&gt; <a href="Distribution-Simple-Setup.html#t:SDistFlags">SDistFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</li><li><a href="#v:postSDist">postSDist</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:SDistFlags">SDistFlags</a> -&gt; <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="../base-4.5.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</li><li><a href="#v:preReg">preReg</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:RegisterFlags">RegisterFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> <a href="Distribution-PackageDescription.html#t:HookedBuildInfo">HookedBuildInfo</a></li><li><a href="#v:regHook">regHook</a> :: <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a> -&gt; <a href="Distribution-Simple-Setup.html#t:RegisterFlags">RegisterFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</li><li><a href="#v:postReg">postReg</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:RegisterFlags">RegisterFlags</a> -&gt; <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</li><li><a href="#v:preUnreg">preUnreg</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:RegisterFlags">RegisterFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> <a href="Distribution-PackageDescription.html#t:HookedBuildInfo">HookedBuildInfo</a></li><li><a href="#v:unregHook">unregHook</a> :: <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a> -&gt; <a href="Distribution-Simple-Setup.html#t:RegisterFlags">RegisterFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</li><li><a href="#v:postUnreg">postUnreg</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:RegisterFlags">RegisterFlags</a> -&gt; <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</li><li><a href="#v:preHscolour">preHscolour</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:HscolourFlags">HscolourFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> <a href="Distribution-PackageDescription.html#t:HookedBuildInfo">HookedBuildInfo</a></li><li><a href="#v:hscolourHook">hscolourHook</a> :: <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a> -&gt; <a href="Distribution-Simple-Setup.html#t:HscolourFlags">HscolourFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</li><li><a href="#v:postHscolour">postHscolour</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:HscolourFlags">HscolourFlags</a> -&gt; <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</li><li><a href="#v:preHaddock">preHaddock</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:HaddockFlags">HaddockFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> <a href="Distribution-PackageDescription.html#t:HookedBuildInfo">HookedBuildInfo</a></li><li><a href="#v:haddockHook">haddockHook</a> :: <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a> -&gt; <a href="Distribution-Simple-Setup.html#t:HaddockFlags">HaddockFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</li><li><a href="#v:postHaddock">postHaddock</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:HaddockFlags">HaddockFlags</a> -&gt; <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</li><li><a href="#v:preTest">preTest</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:TestFlags">TestFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> <a href="Distribution-PackageDescription.html#t:HookedBuildInfo">HookedBuildInfo</a></li><li><a href="#v:testHook">testHook</a> :: <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a> -&gt; <a href="Distribution-Simple-Setup.html#t:TestFlags">TestFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</li><li><a href="#v:postTest">postTest</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:TestFlags">TestFlags</a> -&gt; <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</li><li><a href="#v:preBench">preBench</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:BenchmarkFlags">BenchmarkFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> <a href="Distribution-PackageDescription.html#t:HookedBuildInfo">HookedBuildInfo</a></li><li><a href="#v:benchHook">benchHook</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a> -&gt; <a href="Distribution-Simple-Setup.html#t:BenchmarkFlags">BenchmarkFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</li><li><a href="#v:postBench">postBench</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:BenchmarkFlags">BenchmarkFlags</a> -&gt; <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</li></ul>}</li><li class="src short"><span class="keyword">type</span> <a href="#t:Args">Args</a> = [<a href="../base-4.5.1.0/Data-String.html#t:String">String</a>]</li><li class="src short"><a href="#v:defaultMainWithHooks">defaultMainWithHooks</a> :: <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</li><li class="src short"><a href="#v:defaultMainWithHooksArgs">defaultMainWithHooksArgs</a> :: <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a> -&gt; [<a href="../base-4.5.1.0/Data-String.html#t:String">String</a>] -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</li><li class="src short"><a href="#v:simpleUserHooks">simpleUserHooks</a> :: <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a></li><li class="src short"><a href="#v:autoconfUserHooks">autoconfUserHooks</a> :: <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a></li><li class="src short"><a href="#v:defaultUserHooks">defaultUserHooks</a> :: <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a></li><li class="src short"><a href="#v:emptyUserHooks">emptyUserHooks</a> :: <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a></li><li class="src short"><a href="#v:defaultHookedPackageDesc">defaultHookedPackageDesc</a> :: <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> (<a href="../base-4.5.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="../base-4.5.1.0/System-IO.html#t:FilePath">FilePath</a>)</li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src">module <a href="Distribution-Package.html">Distribution.Package</a></p></div><div class="top"><p class="src">module <a href="Distribution-Version.html">Distribution.Version</a></p></div><div class="top"><p class="src">module <a href="Distribution-License.html">Distribution.License</a></p></div><div class="top"><p class="src">module <a href="Distribution-Simple-Compiler.html">Distribution.Simple.Compiler</a></p></div><div class="top"><p class="src">module <a href="Language-Haskell-Extension.html">Language.Haskell.Extension</a></p></div><h1 id="g:1">Simple interface
</h1><div class="top"><p class="src"><a name="v:defaultMain" class="def">defaultMain</a> :: <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</p><div class="doc"><p>A simple implementation of <code>main</code> for a Cabal setup script.
 It reads the package description file using IO, and performs the
 action specified on the command line.
</p></div></div><div class="top"><p class="src"><a name="v:defaultMainNoRead" class="def">defaultMainNoRead</a> :: <a href="Distribution-PackageDescription.html#t:GenericPackageDescription">GenericPackageDescription</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</p><div class="doc"><p>Like <code><a href="Distribution-Simple.html#v:defaultMain">defaultMain</a></code>, but accepts the package description as input
 rather than using IO to read it.
</p></div></div><div class="top"><p class="src"><a name="v:defaultMainArgs" class="def">defaultMainArgs</a> :: [<a href="../base-4.5.1.0/Data-String.html#t:String">String</a>] -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</p><div class="doc"><p>A version of <code><a href="Distribution-Simple.html#v:defaultMain">defaultMain</a></code> that is passed the command line
 arguments, rather than getting them from the environment.
</p></div></div><h1 id="g:2">Customization
</h1><div class="top"><p class="src"><span class="keyword">data</span>  <a name="t:UserHooks" class="def">UserHooks</a>  </p><div class="doc"><p>Hooks allow authors to add specific functionality before and after a
 command is run, and also to specify additional preprocessors.
</p><ul><li> WARNING: The hooks interface is under rather constant flux as we try to
 understand users needs. Setup files that depend on this interface may
 break in future releases.
</li></ul></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:UserHooks" class="def">UserHooks</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><dl><dt class="src"><a name="v:runTests" class="def">runTests</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</dt><dd class="doc"><p>Used for <code>./setup test</code>
</p></dd><dt class="src"><a name="v:readDesc" class="def">readDesc</a> :: <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> (<a href="../base-4.5.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Distribution-PackageDescription.html#t:GenericPackageDescription">GenericPackageDescription</a>)</dt><dd class="doc"><p>Read the description file
</p></dd><dt class="src"><a name="v:hookedPreProcessors" class="def">hookedPreProcessors</a> :: [<a href="Distribution-Simple-PreProcess.html#t:PPSuffixHandler">PPSuffixHandler</a>]</dt><dd class="doc"><p>Custom preprocessors in addition to and overriding <code>knownSuffixHandlers</code>.
</p></dd><dt class="src"><a name="v:hookedPrograms" class="def">hookedPrograms</a> :: [<a href="Distribution-Simple-Program-Types.html#t:Program">Program</a>]</dt><dd class="doc"><p>These programs are detected at configure time.  Arguments for them are
 added to the configure command.
</p></dd><dt class="src"><a name="v:preConf" class="def">preConf</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:ConfigFlags">ConfigFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> <a href="Distribution-PackageDescription.html#t:HookedBuildInfo">HookedBuildInfo</a></dt><dd class="doc"><p>Hook to run before configure command
</p></dd><dt class="src"><a name="v:confHook" class="def">confHook</a> :: (<a href="Distribution-PackageDescription.html#t:GenericPackageDescription">GenericPackageDescription</a>, <a href="Distribution-PackageDescription.html#t:HookedBuildInfo">HookedBuildInfo</a>) -&gt; <a href="Distribution-Simple-Setup.html#t:ConfigFlags">ConfigFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a></dt><dd class="doc"><p>Over-ride this hook to get different behavior during configure.
</p></dd><dt class="src"><a name="v:postConf" class="def">postConf</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:ConfigFlags">ConfigFlags</a> -&gt; <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</dt><dd class="doc"><p>Hook to run after configure command
</p></dd><dt class="src"><a name="v:preBuild" class="def">preBuild</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:BuildFlags">BuildFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> <a href="Distribution-PackageDescription.html#t:HookedBuildInfo">HookedBuildInfo</a></dt><dd class="doc"><p>Hook to run before build command.  Second arg indicates verbosity level.
</p></dd><dt class="src"><a name="v:buildHook" class="def">buildHook</a> :: <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a> -&gt; <a href="Distribution-Simple-Setup.html#t:BuildFlags">BuildFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</dt><dd class="doc"><p>Over-ride this hook to gbet different behavior during build.
</p></dd><dt class="src"><a name="v:postBuild" class="def">postBuild</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:BuildFlags">BuildFlags</a> -&gt; <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</dt><dd class="doc"><p>Hook to run after build command.  Second arg indicates verbosity level.
</p></dd><dt class="src"><a name="v:preClean" class="def">preClean</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:CleanFlags">CleanFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> <a href="Distribution-PackageDescription.html#t:HookedBuildInfo">HookedBuildInfo</a></dt><dd class="doc"><p>Hook to run before clean command.  Second arg indicates verbosity level.
</p></dd><dt class="src"><a name="v:cleanHook" class="def">cleanHook</a> :: <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; () -&gt; <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a> -&gt; <a href="Distribution-Simple-Setup.html#t:CleanFlags">CleanFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</dt><dd class="doc"><p>Over-ride this hook to get different behavior during clean.
</p></dd><dt class="src"><a name="v:postClean" class="def">postClean</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:CleanFlags">CleanFlags</a> -&gt; <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; () -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</dt><dd class="doc"><p>Hook to run after clean command.  Second arg indicates verbosity level.
</p></dd><dt class="src"><a name="v:preCopy" class="def">preCopy</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:CopyFlags">CopyFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> <a href="Distribution-PackageDescription.html#t:HookedBuildInfo">HookedBuildInfo</a></dt><dd class="doc"><p>Hook to run before copy command
</p></dd><dt class="src"><a name="v:copyHook" class="def">copyHook</a> :: <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a> -&gt; <a href="Distribution-Simple-Setup.html#t:CopyFlags">CopyFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</dt><dd class="doc"><p>Over-ride this hook to get different behavior during copy.
</p></dd><dt class="src"><a name="v:postCopy" class="def">postCopy</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:CopyFlags">CopyFlags</a> -&gt; <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</dt><dd class="doc"><p>Hook to run after copy command
</p></dd><dt class="src"><a name="v:preInst" class="def">preInst</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:InstallFlags">InstallFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> <a href="Distribution-PackageDescription.html#t:HookedBuildInfo">HookedBuildInfo</a></dt><dd class="doc"><p>Hook to run before install command
</p></dd><dt class="src"><a name="v:instHook" class="def">instHook</a> :: <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a> -&gt; <a href="Distribution-Simple-Setup.html#t:InstallFlags">InstallFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</dt><dd class="doc"><p>Over-ride this hook to get different behavior during install.
</p></dd><dt class="src"><a name="v:postInst" class="def">postInst</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:InstallFlags">InstallFlags</a> -&gt; <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</dt><dd class="doc"><p>Hook to run after install command.  postInst should be run
 on the target, not on the build machine.
</p></dd><dt class="src"><a name="v:preSDist" class="def">preSDist</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:SDistFlags">SDistFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> <a href="Distribution-PackageDescription.html#t:HookedBuildInfo">HookedBuildInfo</a></dt><dd class="doc"><p>Hook to run before sdist command.  Second arg indicates verbosity level.
</p></dd><dt class="src"><a name="v:sDistHook" class="def">sDistHook</a> :: <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="../base-4.5.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a> -&gt; <a href="Distribution-Simple-Setup.html#t:SDistFlags">SDistFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</dt><dd class="doc"><p>Over-ride this hook to get different behavior during sdist.
</p></dd><dt class="src"><a name="v:postSDist" class="def">postSDist</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:SDistFlags">SDistFlags</a> -&gt; <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="../base-4.5.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</dt><dd class="doc"><p>Hook to run after sdist command.  Second arg indicates verbosity level.
</p></dd><dt class="src"><a name="v:preReg" class="def">preReg</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:RegisterFlags">RegisterFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> <a href="Distribution-PackageDescription.html#t:HookedBuildInfo">HookedBuildInfo</a></dt><dd class="doc"><p>Hook to run before register command
</p></dd><dt class="src"><a name="v:regHook" class="def">regHook</a> :: <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a> -&gt; <a href="Distribution-Simple-Setup.html#t:RegisterFlags">RegisterFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</dt><dd class="doc"><p>Over-ride this hook to get different behavior during registration.
</p></dd><dt class="src"><a name="v:postReg" class="def">postReg</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:RegisterFlags">RegisterFlags</a> -&gt; <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</dt><dd class="doc"><p>Hook to run after register command
</p></dd><dt class="src"><a name="v:preUnreg" class="def">preUnreg</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:RegisterFlags">RegisterFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> <a href="Distribution-PackageDescription.html#t:HookedBuildInfo">HookedBuildInfo</a></dt><dd class="doc"><p>Hook to run before unregister command
</p></dd><dt class="src"><a name="v:unregHook" class="def">unregHook</a> :: <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a> -&gt; <a href="Distribution-Simple-Setup.html#t:RegisterFlags">RegisterFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</dt><dd class="doc"><p>Over-ride this hook to get different behavior during registration.
</p></dd><dt class="src"><a name="v:postUnreg" class="def">postUnreg</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:RegisterFlags">RegisterFlags</a> -&gt; <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</dt><dd class="doc"><p>Hook to run after unregister command
</p></dd><dt class="src"><a name="v:preHscolour" class="def">preHscolour</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:HscolourFlags">HscolourFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> <a href="Distribution-PackageDescription.html#t:HookedBuildInfo">HookedBuildInfo</a></dt><dd class="doc"><p>Hook to run before hscolour command.  Second arg indicates verbosity level.
</p></dd><dt class="src"><a name="v:hscolourHook" class="def">hscolourHook</a> :: <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a> -&gt; <a href="Distribution-Simple-Setup.html#t:HscolourFlags">HscolourFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</dt><dd class="doc"><p>Over-ride this hook to get different behavior during hscolour.
</p></dd><dt class="src"><a name="v:postHscolour" class="def">postHscolour</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:HscolourFlags">HscolourFlags</a> -&gt; <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</dt><dd class="doc"><p>Hook to run after hscolour command.  Second arg indicates verbosity level.
</p></dd><dt class="src"><a name="v:preHaddock" class="def">preHaddock</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:HaddockFlags">HaddockFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> <a href="Distribution-PackageDescription.html#t:HookedBuildInfo">HookedBuildInfo</a></dt><dd class="doc"><p>Hook to run before haddock command.  Second arg indicates verbosity level.
</p></dd><dt class="src"><a name="v:haddockHook" class="def">haddockHook</a> :: <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a> -&gt; <a href="Distribution-Simple-Setup.html#t:HaddockFlags">HaddockFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</dt><dd class="doc"><p>Over-ride this hook to get different behavior during haddock.
</p></dd><dt class="src"><a name="v:postHaddock" class="def">postHaddock</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:HaddockFlags">HaddockFlags</a> -&gt; <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</dt><dd class="doc"><p>Hook to run after haddock command.  Second arg indicates verbosity level.
</p></dd><dt class="src"><a name="v:preTest" class="def">preTest</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:TestFlags">TestFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> <a href="Distribution-PackageDescription.html#t:HookedBuildInfo">HookedBuildInfo</a></dt><dd class="doc"><p>Hook to run before test command.
</p></dd><dt class="src"><a name="v:testHook" class="def">testHook</a> :: <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a> -&gt; <a href="Distribution-Simple-Setup.html#t:TestFlags">TestFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</dt><dd class="doc"><p>Over-ride this hook to get different behavior during test.
</p></dd><dt class="src"><a name="v:postTest" class="def">postTest</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:TestFlags">TestFlags</a> -&gt; <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</dt><dd class="doc"><p>Hook to run after test command.
</p></dd><dt class="src"><a name="v:preBench" class="def">preBench</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:BenchmarkFlags">BenchmarkFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> <a href="Distribution-PackageDescription.html#t:HookedBuildInfo">HookedBuildInfo</a></dt><dd class="doc"><p>Hook to run before bench command.
</p></dd><dt class="src"><a name="v:benchHook" class="def">benchHook</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a> -&gt; <a href="Distribution-Simple-Setup.html#t:BenchmarkFlags">BenchmarkFlags</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</dt><dd class="doc"><p>Over-ride this hook to get different behavior during bench.
</p></dd><dt class="src"><a name="v:postBench" class="def">postBench</a> :: <a href="Distribution-Simple.html#t:Args">Args</a> -&gt; <a href="Distribution-Simple-Setup.html#t:BenchmarkFlags">BenchmarkFlags</a> -&gt; <a href="Distribution-PackageDescription.html#t:PackageDescription">PackageDescription</a> -&gt; <a href="Distribution-Simple-LocalBuildInfo.html#t:LocalBuildInfo">LocalBuildInfo</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</dt><dd class="doc"><p>Hook to run after bench command.
</p></dd></dl><div class="clear"></div></div></td></tr></table></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a name="t:Args" class="def">Args</a> = [<a href="../base-4.5.1.0/Data-String.html#t:String">String</a>]</p></div><div class="top"><p class="src"><a name="v:defaultMainWithHooks" class="def">defaultMainWithHooks</a> :: <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a> -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</p><div class="doc"><p>A customizable version of <code><a href="Distribution-Simple.html#v:defaultMain">defaultMain</a></code>.
</p></div></div><div class="top"><p class="src"><a name="v:defaultMainWithHooksArgs" class="def">defaultMainWithHooksArgs</a> :: <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a> -&gt; [<a href="../base-4.5.1.0/Data-String.html#t:String">String</a>] -&gt; <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</p><div class="doc"><p>A customizable version of <code><a href="Distribution-Simple.html#v:defaultMain">defaultMain</a></code> that also takes the command
 line arguments.
</p></div></div><h2 id="g:3">Standard sets of hooks
</h2><div class="top"><p class="src"><a name="v:simpleUserHooks" class="def">simpleUserHooks</a> :: <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a></p><div class="doc"><p>Hooks that correspond to a plain instantiation of the
 &quot;simple&quot; build system
</p></div></div><div class="top"><p class="src"><a name="v:autoconfUserHooks" class="def">autoconfUserHooks</a> :: <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a></p></div><div class="top"><p class="src"><a name="v:defaultUserHooks" class="def">defaultUserHooks</a> :: <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a></p><div class="doc"><div class="warning"><p>Deprecated: Use simpleUserHooks or autoconfUserHooks, unless you need Cabal-1.2
             compatibility in which case you must stick with defaultUserHooks</p></div><p>Basic autoconf <code><a href="Distribution-Simple.html#t:UserHooks">UserHooks</a></code>:
</p><ul><li> <code><a href="Distribution-Simple.html#v:postConf">postConf</a></code> runs <code>./configure</code>, if present.
</li><li> the pre-hooks <code><a href="Distribution-Simple.html#v:preBuild">preBuild</a></code>, <code><a href="Distribution-Simple.html#v:preClean">preClean</a></code>, <code><a href="Distribution-Simple.html#v:preCopy">preCopy</a></code>, <code><a href="Distribution-Simple.html#v:preInst">preInst</a></code>,
   <code><a href="Distribution-Simple.html#v:preReg">preReg</a></code> and <code><a href="Distribution-Simple.html#v:preUnreg">preUnreg</a></code> read additional build information from
   <em>package</em><code>.buildinfo</code>, if present.
</li></ul><p>Thus <code>configure</code> can use local system information to generate
 <em>package</em><code>.buildinfo</code> and possibly other files.
</p></div></div><div class="top"><p class="src"><a name="v:emptyUserHooks" class="def">emptyUserHooks</a> :: <a href="Distribution-Simple.html#t:UserHooks">UserHooks</a></p><div class="doc"><p>Empty <code><a href="Distribution-Simple.html#t:UserHooks">UserHooks</a></code> which do nothing.
</p></div></div><h2 id="g:4">Utils
</h2><div class="top"><p class="src"><a name="v:defaultHookedPackageDesc" class="def">defaultHookedPackageDesc</a> :: <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> (<a href="../base-4.5.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="../base-4.5.1.0/System-IO.html#t:FilePath">FilePath</a>)</p><div class="doc"><p>Optional auxiliary package information file (<em>pkgname</em><code>.buildinfo</code>)
</p></div></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.11.0</p></div></body></html>