Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > 1f2b142b9d2ef4849a6f5316fa1c5b12 > files > 1199

ghc-6.10.4-1mdv2010.0.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--Rendered using the Haskell Html Library v0.2-->
<HTML
><HEAD
><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"
><TITLE
>Distribution.Simple</TITLE
><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"
><SCRIPT SRC="haddock-util.js" TYPE="text/javascript"
></SCRIPT
><SCRIPT TYPE="text/javascript"
>window.onload = function () {setSynopsis("mini_Distribution-Simple.html")};</SCRIPT
></HEAD
><BODY
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="topbar"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD
><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "
></TD
><TD CLASS="title"
>Cabal-1.6.0.3: A framework for packaging Haskell software</TD
><TD CLASS="topbut"
><A HREF="index.html"
>Contents</A
></TD
><TD CLASS="topbut"
><A HREF="doc-index.html"
>Index</A
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="modulebar"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD
><FONT SIZE="6"
>Distribution.Simple</FONT
></TD
><TD ALIGN="right"
><TABLE CLASS="narrow" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="infohead"
>Portability</TD
><TD CLASS="infoval"
>portable</TD
></TR
><TR
><TD CLASS="infohead"
>Maintainer</TD
><TD CLASS="infoval"
>cabal-devel@haskell.org</TD
></TR
></TABLE
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="section4"
><B
>Contents</B
></TD
></TR
><TR
><TD
><DL
><DT
><A HREF="#1"
>Simple interface
</A
></DT
><DT
><A HREF="#2"
>Customization
</A
></DT
><DD
><DL
><DT
><A HREF="#3"
>Standard sets of hooks
</A
></DT
><DT
><A HREF="#4"
>Utils
</A
></DT
></DL
></DD
></DL
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="section1"
>Description</TD
></TR
><TR
><TD 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 <TT
><A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
></TT
> type, the standard entry points like
 <TT
><A HREF="Distribution-Simple.html#v%3AdefaultMain"
>defaultMain</A
></TT
> and <TT
><A HREF="Distribution-Simple.html#v%3AdefaultMainWithHooks"
>defaultMainWithHooks</A
></TT
> and the predefined sets of
 <TT
><A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
></TT
> that custom <TT
>Setup.hs</TT
> 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
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="section1"
>Synopsis</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="decl"
>module <A HREF="Distribution-Package.html"
>Distribution.Package</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
>module <A HREF="Distribution-Version.html"
>Distribution.Version</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
>module <A HREF="Distribution-License.html"
>Distribution.License</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
>module <A HREF="Distribution-Simple-Compiler.html"
>Distribution.Simple.Compiler</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
>module <A HREF="Language-Haskell-Extension.html"
>Language.Haskell.Extension</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AdefaultMain"
>defaultMain</A
> :: <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AdefaultMainNoRead"
>defaultMainNoRead</A
> :: <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AdefaultMainArgs"
>defaultMainArgs</A
> :: [<A HREF="../base/Data-Char.html#t%3AString"
>String</A
>] -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A HREF="#t%3AUserHooks"
>UserHooks</A
>  = <A HREF="#v%3AUserHooks"
>UserHooks</A
> {<TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="recfield"
><A HREF="#v%3ArunTests"
>runTests</A
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="../ghc-prim/GHC-Bool.html#t%3ABool"
>Bool</A
> -&gt; <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3AreadDesc"
>readDesc</A
> :: <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> (<A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
>)</TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3AhookedPreProcessors"
>hookedPreProcessors</A
> :: [<A HREF="Distribution-Simple-PreProcess.html#t%3APPSuffixHandler"
>PPSuffixHandler</A
>]</TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3AhookedPrograms"
>hookedPrograms</A
> :: [<A HREF="Distribution-Simple-Program.html#t%3AProgram"
>Program</A
>]</TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3ApreConf"
>preConf</A
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3AConfigFlags"
>ConfigFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="Distribution-PackageDescription.html#t%3AHookedBuildInfo"
>HookedBuildInfo</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3AconfHook"
>confHook</A
> :: (<A HREF="../base/Data-Either.html#t%3AEither"
>Either</A
> <A HREF="Distribution-PackageDescription.html#t%3AGenericPackageDescription"
>GenericPackageDescription</A
> <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
>, <A HREF="Distribution-PackageDescription.html#t%3AHookedBuildInfo"
>HookedBuildInfo</A
>) -&gt; <A HREF="Distribution-Simple-Setup.html#t%3AConfigFlags"
>ConfigFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3ApostConf"
>postConf</A
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3AConfigFlags"
>ConfigFlags</A
> -&gt; <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3ApreBuild"
>preBuild</A
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ABuildFlags"
>BuildFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="Distribution-PackageDescription.html#t%3AHookedBuildInfo"
>HookedBuildInfo</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3AbuildHook"
>buildHook</A
> :: <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ABuildFlags"
>BuildFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3ApostBuild"
>postBuild</A
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ABuildFlags"
>BuildFlags</A
> -&gt; <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3ApreMakefile"
>preMakefile</A
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3AMakefileFlags"
>MakefileFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="Distribution-PackageDescription.html#t%3AHookedBuildInfo"
>HookedBuildInfo</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3AmakefileHook"
>makefileHook</A
> :: <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3AMakefileFlags"
>MakefileFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3ApostMakefile"
>postMakefile</A
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3AMakefileFlags"
>MakefileFlags</A
> -&gt; <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3ApreClean"
>preClean</A
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ACleanFlags"
>CleanFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="Distribution-PackageDescription.html#t%3AHookedBuildInfo"
>HookedBuildInfo</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3AcleanHook"
>cleanHook</A
> :: <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ACleanFlags"
>CleanFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3ApostClean"
>postClean</A
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ACleanFlags"
>CleanFlags</A
> -&gt; <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3ApreCopy"
>preCopy</A
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ACopyFlags"
>CopyFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="Distribution-PackageDescription.html#t%3AHookedBuildInfo"
>HookedBuildInfo</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3AcopyHook"
>copyHook</A
> :: <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ACopyFlags"
>CopyFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3ApostCopy"
>postCopy</A
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ACopyFlags"
>CopyFlags</A
> -&gt; <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3ApreInst"
>preInst</A
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3AInstallFlags"
>InstallFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="Distribution-PackageDescription.html#t%3AHookedBuildInfo"
>HookedBuildInfo</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3AinstHook"
>instHook</A
> :: <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3AInstallFlags"
>InstallFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3ApostInst"
>postInst</A
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3AInstallFlags"
>InstallFlags</A
> -&gt; <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3ApreSDist"
>preSDist</A
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ASDistFlags"
>SDistFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="Distribution-PackageDescription.html#t%3AHookedBuildInfo"
>HookedBuildInfo</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3AsDistHook"
>sDistHook</A
> :: <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ASDistFlags"
>SDistFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3ApostSDist"
>postSDist</A
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ASDistFlags"
>SDistFlags</A
> -&gt; <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3ApreReg"
>preReg</A
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ARegisterFlags"
>RegisterFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="Distribution-PackageDescription.html#t%3AHookedBuildInfo"
>HookedBuildInfo</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3AregHook"
>regHook</A
> :: <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ARegisterFlags"
>RegisterFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3ApostReg"
>postReg</A
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ARegisterFlags"
>RegisterFlags</A
> -&gt; <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3ApreUnreg"
>preUnreg</A
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ARegisterFlags"
>RegisterFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="Distribution-PackageDescription.html#t%3AHookedBuildInfo"
>HookedBuildInfo</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3AunregHook"
>unregHook</A
> :: <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ARegisterFlags"
>RegisterFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3ApostUnreg"
>postUnreg</A
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ARegisterFlags"
>RegisterFlags</A
> -&gt; <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3ApreHscolour"
>preHscolour</A
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3AHscolourFlags"
>HscolourFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="Distribution-PackageDescription.html#t%3AHookedBuildInfo"
>HookedBuildInfo</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3AhscolourHook"
>hscolourHook</A
> :: <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3AHscolourFlags"
>HscolourFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3ApostHscolour"
>postHscolour</A
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3AHscolourFlags"
>HscolourFlags</A
> -&gt; <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3ApreHaddock"
>preHaddock</A
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3AHaddockFlags"
>HaddockFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="Distribution-PackageDescription.html#t%3AHookedBuildInfo"
>HookedBuildInfo</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3AhaddockHook"
>haddockHook</A
> :: <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3AHaddockFlags"
>HaddockFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3ApostHaddock"
>postHaddock</A
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3AHaddockFlags"
>HaddockFlags</A
> -&gt; <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
></TABLE
>}</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A HREF="#t%3AArgs"
>Args</A
> = [<A HREF="../base/Data-Char.html#t%3AString"
>String</A
>]</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AdefaultMainWithHooks"
>defaultMainWithHooks</A
> :: <A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AdefaultMainWithHooksArgs"
>defaultMainWithHooksArgs</A
> :: <A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
> -&gt; [<A HREF="../base/Data-Char.html#t%3AString"
>String</A
>] -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AsimpleUserHooks"
>simpleUserHooks</A
> :: <A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AautoconfUserHooks"
>autoconfUserHooks</A
> :: <A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AdefaultUserHooks"
>defaultUserHooks</A
> :: <A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AemptyUserHooks"
>emptyUserHooks</A
> :: <A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AdefaultHookedPackageDesc"
>defaultHookedPackageDesc</A
> :: <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> (<A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="../base/System-IO.html#t%3AFilePath"
>FilePath</A
>)</TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="section1"
>Documentation</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
>module <A HREF="Distribution-Package.html"
>Distribution.Package</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
>module <A HREF="Distribution-Version.html"
>Distribution.Version</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
>module <A HREF="Distribution-License.html"
>Distribution.License</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
>module <A HREF="Distribution-Simple-Compiler.html"
>Distribution.Simple.Compiler</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
>module <A HREF="Language-Haskell-Extension.html"
>Language.Haskell.Extension</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="section1"
><A NAME="1"
><A NAME="1"
>Simple interface
</A
></A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:defaultMain"
><A NAME="v%3AdefaultMain"
></A
></A
><B
>defaultMain</B
> :: <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="doc"
>A simple implementation of <TT
>main</TT
> for a Cabal setup script.
 It reads the package description file using IO, and performs the
 action specified on the command line.
</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:defaultMainNoRead"
><A NAME="v%3AdefaultMainNoRead"
></A
></A
><B
>defaultMainNoRead</B
> :: <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="doc"
>Like <TT
><A HREF="Distribution-Simple.html#v%3AdefaultMain"
>defaultMain</A
></TT
>, but accepts the package description as input
 rather than using IO to read it.
</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:defaultMainArgs"
><A NAME="v%3AdefaultMainArgs"
></A
></A
><B
>defaultMainArgs</B
> :: [<A HREF="../base/Data-Char.html#t%3AString"
>String</A
>] -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="doc"
>A version of <TT
><A HREF="Distribution-Simple.html#v%3AdefaultMain"
>defaultMain</A
></TT
> that is passed the command line
 arguments, rather than getting them from the environment.
</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="section1"
><A NAME="2"
><A NAME="2"
>Customization
</A
></A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A NAME="t:UserHooks"
><A NAME="t%3AUserHooks"
></A
></A
><B
>UserHooks</B
>  </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="ndoc"
><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
></TD
></TR
><TR
><TD CLASS="section4"
>Constructors</TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="5" CELLPADDING="0"
><TR
><TD CLASS="arg"
><A NAME="v:UserHooks"
><A NAME="v%3AUserHooks"
></A
></A
><B
>UserHooks</B
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="body" COLSPAN="2"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
><A NAME="v:runTests"
><A NAME="v%3ArunTests"
></A
></A
><B
>runTests</B
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="../ghc-prim/GHC-Bool.html#t%3ABool"
>Bool</A
> -&gt; <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
><TD CLASS="rdoc"
>Used for <TT
>./setup test</TT
>
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:readDesc"
><A NAME="v%3AreadDesc"
></A
></A
><B
>readDesc</B
> :: <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> (<A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
>)</TD
><TD CLASS="rdoc"
>Read the description file
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:hookedPreProcessors"
><A NAME="v%3AhookedPreProcessors"
></A
></A
><B
>hookedPreProcessors</B
> :: [<A HREF="Distribution-Simple-PreProcess.html#t%3APPSuffixHandler"
>PPSuffixHandler</A
>]</TD
><TD CLASS="rdoc"
>Custom preprocessors in addition to and overriding knownSuffixHandlers.
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:hookedPrograms"
><A NAME="v%3AhookedPrograms"
></A
></A
><B
>hookedPrograms</B
> :: [<A HREF="Distribution-Simple-Program.html#t%3AProgram"
>Program</A
>]</TD
><TD CLASS="rdoc"
>These programs are detected at configure time.  Arguments for them are
 added to the configure command.
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:preConf"
><A NAME="v%3ApreConf"
></A
></A
><B
>preConf</B
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3AConfigFlags"
>ConfigFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="Distribution-PackageDescription.html#t%3AHookedBuildInfo"
>HookedBuildInfo</A
></TD
><TD CLASS="rdoc"
>Hook to run before configure command
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:confHook"
><A NAME="v%3AconfHook"
></A
></A
><B
>confHook</B
> :: (<A HREF="../base/Data-Either.html#t%3AEither"
>Either</A
> <A HREF="Distribution-PackageDescription.html#t%3AGenericPackageDescription"
>GenericPackageDescription</A
> <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
>, <A HREF="Distribution-PackageDescription.html#t%3AHookedBuildInfo"
>HookedBuildInfo</A
>) -&gt; <A HREF="Distribution-Simple-Setup.html#t%3AConfigFlags"
>ConfigFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
></TD
><TD CLASS="rdoc"
>Over-ride this hook to get different behavior during configure.
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:postConf"
><A NAME="v%3ApostConf"
></A
></A
><B
>postConf</B
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3AConfigFlags"
>ConfigFlags</A
> -&gt; <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
><TD CLASS="rdoc"
>Hook to run after configure command
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:preBuild"
><A NAME="v%3ApreBuild"
></A
></A
><B
>preBuild</B
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ABuildFlags"
>BuildFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="Distribution-PackageDescription.html#t%3AHookedBuildInfo"
>HookedBuildInfo</A
></TD
><TD CLASS="rdoc"
>Hook to run before build command.  Second arg indicates verbosity level.
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:buildHook"
><A NAME="v%3AbuildHook"
></A
></A
><B
>buildHook</B
> :: <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ABuildFlags"
>BuildFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
><TD CLASS="rdoc"
>Over-ride this hook to gbet different behavior during build.
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:postBuild"
><A NAME="v%3ApostBuild"
></A
></A
><B
>postBuild</B
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ABuildFlags"
>BuildFlags</A
> -&gt; <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
><TD CLASS="rdoc"
>Hook to run after build command.  Second arg indicates verbosity level.
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:preMakefile"
><A NAME="v%3ApreMakefile"
></A
></A
><B
>preMakefile</B
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3AMakefileFlags"
>MakefileFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="Distribution-PackageDescription.html#t%3AHookedBuildInfo"
>HookedBuildInfo</A
></TD
><TD CLASS="rdoc"
>Hook to run before makefile command.  Second arg indicates verbosity level.
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:makefileHook"
><A NAME="v%3AmakefileHook"
></A
></A
><B
>makefileHook</B
> :: <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3AMakefileFlags"
>MakefileFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
><TD CLASS="rdoc"
>Over-ride this hook to get different behavior during makefile.
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:postMakefile"
><A NAME="v%3ApostMakefile"
></A
></A
><B
>postMakefile</B
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3AMakefileFlags"
>MakefileFlags</A
> -&gt; <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
><TD CLASS="rdoc"
>Hook to run after makefile command.  Second arg indicates verbosity level.
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:preClean"
><A NAME="v%3ApreClean"
></A
></A
><B
>preClean</B
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ACleanFlags"
>CleanFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="Distribution-PackageDescription.html#t%3AHookedBuildInfo"
>HookedBuildInfo</A
></TD
><TD CLASS="rdoc"
>Hook to run before clean command.  Second arg indicates verbosity level.
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:cleanHook"
><A NAME="v%3AcleanHook"
></A
></A
><B
>cleanHook</B
> :: <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ACleanFlags"
>CleanFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
><TD CLASS="rdoc"
>Over-ride this hook to get different behavior during clean.
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:postClean"
><A NAME="v%3ApostClean"
></A
></A
><B
>postClean</B
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ACleanFlags"
>CleanFlags</A
> -&gt; <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
><TD CLASS="rdoc"
>Hook to run after clean command.  Second arg indicates verbosity level.
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:preCopy"
><A NAME="v%3ApreCopy"
></A
></A
><B
>preCopy</B
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ACopyFlags"
>CopyFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="Distribution-PackageDescription.html#t%3AHookedBuildInfo"
>HookedBuildInfo</A
></TD
><TD CLASS="rdoc"
>Hook to run before copy command
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:copyHook"
><A NAME="v%3AcopyHook"
></A
></A
><B
>copyHook</B
> :: <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ACopyFlags"
>CopyFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
><TD CLASS="rdoc"
>Over-ride this hook to get different behavior during copy.
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:postCopy"
><A NAME="v%3ApostCopy"
></A
></A
><B
>postCopy</B
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ACopyFlags"
>CopyFlags</A
> -&gt; <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
><TD CLASS="rdoc"
>Hook to run after copy command
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:preInst"
><A NAME="v%3ApreInst"
></A
></A
><B
>preInst</B
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3AInstallFlags"
>InstallFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="Distribution-PackageDescription.html#t%3AHookedBuildInfo"
>HookedBuildInfo</A
></TD
><TD CLASS="rdoc"
>Hook to run before install command
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:instHook"
><A NAME="v%3AinstHook"
></A
></A
><B
>instHook</B
> :: <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3AInstallFlags"
>InstallFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
><TD CLASS="rdoc"
>Over-ride this hook to get different behavior during install.
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:postInst"
><A NAME="v%3ApostInst"
></A
></A
><B
>postInst</B
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3AInstallFlags"
>InstallFlags</A
> -&gt; <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
><TD CLASS="rdoc"
>Hook to run after install command.  postInst should be run
 on the target, not on the build machine.
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:preSDist"
><A NAME="v%3ApreSDist"
></A
></A
><B
>preSDist</B
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ASDistFlags"
>SDistFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="Distribution-PackageDescription.html#t%3AHookedBuildInfo"
>HookedBuildInfo</A
></TD
><TD CLASS="rdoc"
>Hook to run before sdist command.  Second arg indicates verbosity level.
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:sDistHook"
><A NAME="v%3AsDistHook"
></A
></A
><B
>sDistHook</B
> :: <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ASDistFlags"
>SDistFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
><TD CLASS="rdoc"
>Over-ride this hook to get different behavior during sdist.
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:postSDist"
><A NAME="v%3ApostSDist"
></A
></A
><B
>postSDist</B
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ASDistFlags"
>SDistFlags</A
> -&gt; <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
><TD CLASS="rdoc"
>Hook to run after sdist command.  Second arg indicates verbosity level.
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:preReg"
><A NAME="v%3ApreReg"
></A
></A
><B
>preReg</B
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ARegisterFlags"
>RegisterFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="Distribution-PackageDescription.html#t%3AHookedBuildInfo"
>HookedBuildInfo</A
></TD
><TD CLASS="rdoc"
>Hook to run before register command
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:regHook"
><A NAME="v%3AregHook"
></A
></A
><B
>regHook</B
> :: <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ARegisterFlags"
>RegisterFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
><TD CLASS="rdoc"
>Over-ride this hook to get different behavior during registration.
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:postReg"
><A NAME="v%3ApostReg"
></A
></A
><B
>postReg</B
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ARegisterFlags"
>RegisterFlags</A
> -&gt; <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
><TD CLASS="rdoc"
>Hook to run after register command
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:preUnreg"
><A NAME="v%3ApreUnreg"
></A
></A
><B
>preUnreg</B
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ARegisterFlags"
>RegisterFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="Distribution-PackageDescription.html#t%3AHookedBuildInfo"
>HookedBuildInfo</A
></TD
><TD CLASS="rdoc"
>Hook to run before unregister command
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:unregHook"
><A NAME="v%3AunregHook"
></A
></A
><B
>unregHook</B
> :: <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ARegisterFlags"
>RegisterFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
><TD CLASS="rdoc"
>Over-ride this hook to get different behavior during registration.
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:postUnreg"
><A NAME="v%3ApostUnreg"
></A
></A
><B
>postUnreg</B
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3ARegisterFlags"
>RegisterFlags</A
> -&gt; <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
><TD CLASS="rdoc"
>Hook to run after unregister command
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:preHscolour"
><A NAME="v%3ApreHscolour"
></A
></A
><B
>preHscolour</B
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3AHscolourFlags"
>HscolourFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="Distribution-PackageDescription.html#t%3AHookedBuildInfo"
>HookedBuildInfo</A
></TD
><TD CLASS="rdoc"
>Hook to run before hscolour command.  Second arg indicates verbosity level.
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:hscolourHook"
><A NAME="v%3AhscolourHook"
></A
></A
><B
>hscolourHook</B
> :: <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3AHscolourFlags"
>HscolourFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
><TD CLASS="rdoc"
>Over-ride this hook to get different behavior during hscolour.
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:postHscolour"
><A NAME="v%3ApostHscolour"
></A
></A
><B
>postHscolour</B
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3AHscolourFlags"
>HscolourFlags</A
> -&gt; <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
><TD CLASS="rdoc"
>Hook to run after hscolour command.  Second arg indicates verbosity level.
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:preHaddock"
><A NAME="v%3ApreHaddock"
></A
></A
><B
>preHaddock</B
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3AHaddockFlags"
>HaddockFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="Distribution-PackageDescription.html#t%3AHookedBuildInfo"
>HookedBuildInfo</A
></TD
><TD CLASS="rdoc"
>Hook to run before haddock command.  Second arg indicates verbosity level.
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:haddockHook"
><A NAME="v%3AhaddockHook"
></A
></A
><B
>haddockHook</B
> :: <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3AHaddockFlags"
>HaddockFlags</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
><TD CLASS="rdoc"
>Over-ride this hook to get different behavior during haddock.
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:postHaddock"
><A NAME="v%3ApostHaddock"
></A
></A
><B
>postHaddock</B
> :: <A HREF="Distribution-Simple.html#t%3AArgs"
>Args</A
> -&gt; <A HREF="Distribution-Simple-Setup.html#t%3AHaddockFlags"
>HaddockFlags</A
> -&gt; <A HREF="Distribution-PackageDescription.html#t%3APackageDescription"
>PackageDescription</A
> -&gt; <A HREF="Distribution-Simple-LocalBuildInfo.html#t%3ALocalBuildInfo"
>LocalBuildInfo</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
><TD CLASS="rdoc"
>Hook to run after haddock command.  Second arg indicates verbosity level.
</TD
></TR
></TABLE
></TD
></TR
></TABLE
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A NAME="t:Args"
><A NAME="t%3AArgs"
></A
></A
><B
>Args</B
> = [<A HREF="../base/Data-Char.html#t%3AString"
>String</A
>]</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:defaultMainWithHooks"
><A NAME="v%3AdefaultMainWithHooks"
></A
></A
><B
>defaultMainWithHooks</B
> :: <A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="doc"
>A customizable version of <TT
><A HREF="Distribution-Simple.html#v%3AdefaultMain"
>defaultMain</A
></TT
>.
</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:defaultMainWithHooksArgs"
><A NAME="v%3AdefaultMainWithHooksArgs"
></A
></A
><B
>defaultMainWithHooksArgs</B
> :: <A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
> -&gt; [<A HREF="../base/Data-Char.html#t%3AString"
>String</A
>] -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="doc"
>A customizable version of <TT
><A HREF="Distribution-Simple.html#v%3AdefaultMain"
>defaultMain</A
></TT
> that also takes the command
 line arguments.
</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="section2"
><A NAME="3"
><A NAME="3"
>Standard sets of hooks
</A
></A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:simpleUserHooks"
><A NAME="v%3AsimpleUserHooks"
></A
></A
><B
>simpleUserHooks</B
> :: <A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
></TD
></TR
><TR
><TD CLASS="doc"
>Hooks that correspond to a plain instantiation of the
 &quot;simple&quot; build system
</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:autoconfUserHooks"
><A NAME="v%3AautoconfUserHooks"
></A
></A
><B
>autoconfUserHooks</B
> :: <A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:defaultUserHooks"
><A NAME="v%3AdefaultUserHooks"
></A
></A
><B
>defaultUserHooks</B
> :: <A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
></TD
></TR
><TR
><TD CLASS="doc"
><P
>Basic autoconf <TT
><A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
></TT
>:
</P
><UL
><LI
> on non-Windows systems, <TT
><A HREF="Distribution-Simple.html#v%3ApostConf"
>postConf</A
></TT
> runs <TT
>./configure</TT
>, if present.
</LI
><LI
> the pre-hooks <TT
><A HREF="Distribution-Simple.html#v%3ApreBuild"
>preBuild</A
></TT
>, <TT
><A HREF="Distribution-Simple.html#v%3ApreClean"
>preClean</A
></TT
>, <TT
><A HREF="Distribution-Simple.html#v%3ApreCopy"
>preCopy</A
></TT
>, <TT
><A HREF="Distribution-Simple.html#v%3ApreInst"
>preInst</A
></TT
>,
   <TT
><A HREF="Distribution-Simple.html#v%3ApreReg"
>preReg</A
></TT
> and <TT
><A HREF="Distribution-Simple.html#v%3ApreUnreg"
>preUnreg</A
></TT
> read additional build information from
   <EM
>package</EM
><TT
>.buildinfo</TT
>, if present.
</LI
></UL
><P
>Thus <TT
>configure</TT
> can use local system information to generate
 <EM
>package</EM
><TT
>.buildinfo</TT
> and possibly other files.
</P
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:emptyUserHooks"
><A NAME="v%3AemptyUserHooks"
></A
></A
><B
>emptyUserHooks</B
> :: <A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
></TD
></TR
><TR
><TD CLASS="doc"
>Empty <TT
><A HREF="Distribution-Simple.html#t%3AUserHooks"
>UserHooks</A
></TT
> which do nothing.
</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="section2"
><A NAME="4"
><A NAME="4"
>Utils
</A
></A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:defaultHookedPackageDesc"
><A NAME="v%3AdefaultHookedPackageDesc"
></A
></A
><B
>defaultHookedPackageDesc</B
> :: <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> (<A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="../base/System-IO.html#t%3AFilePath"
>FilePath</A
>)</TD
></TR
><TR
><TD CLASS="doc"
>Optional auxiliary package information file (<EM
>pkgname</EM
><TT
>.buildinfo</TT
>)
</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="botbar"
>Produced by <A HREF="http://www.haskell.org/haddock/"
>Haddock</A
> version 2.4.2</TD
></TR
></TABLE
></BODY
></HTML
>