conf package:Cabal

Over-ride this hook to get different behavior during configure.
Configure the compiler ONLY.
Configure the compiler and associated programs such as hc-pkg, haddock and toolchain program such as ar, ld.
Configure programs associated to the compiler, such as hc-pkg, haddock and toolchain program such as ar, ld.
Perform the "./setup configure" action. Returns the .setup-config file.
Configure GHC, and then auxiliary programs such as ghc-pkg, haddock as well as toolchain programs such as ar, @ld.
Configure GHC.
Configure GHCJS, and then auxiliary programs such as ghc-pkg, haddock as well as toolchain programs such as ar, @ld.
Configure GHCJS.
Try to configure all the known programs that have not yet been configured.
Try to configure a specific program and add it to the program database. If the program is already included in the collection of unconfigured programs, then we use any user-supplied location and arguments. If the program gets configured successfully, it gets added to the configured collection. Note that it is not a failure if the program cannot be configured. It's only a failure if the user supplied a location and the program could not be found at that location. The reason for it not being a failure at this stage is that we don't know up front all the programs we will need, so we try to configure them all. To verify that a program was actually successfully configured use requireProgram.
Try to configure a specific program. If the program is already included in the collection of unconfigured programs then we use any user-supplied location and arguments.
List all configured programs.
Allow depending on private sublibraries. This is used by external tools (like cabal-install) so they can add multiple-public-libraries compatibility to older ghcs by checking visibility externally.
Enable benchmark compilation
explicit CID to be used
Extra arguments to configure
Additional constraints for dependencies.
Enable program coverage