Prepare to build the package.

Usage: cabal configure [FLAGS]

Configure how the package is built by setting package (and other) flags.

The configuration affects several other commands, including build, test,
bench, run, repl.

Flags for configure:
 -h, --help                   # Show this help text
 -v[n], --verbose[=n]         # Control verbosity (n is 0--3, default
                                verbosity level is 1)
 --builddir=DIR               # The directory where Cabal puts generated build
                                files (default dist)
 --cabal-file=PATH            # use this Cabal file
 --keep-temp-files            # Keep temporary files.
 -g, --ghc                    # Compile with GHC
 --ghcjs                      # Compile with GHCJS
 --uhc                        # Compile with UHC
 -w PATH or -wPATH, --with-compiler=PATH
                              # Give the path to a particular compiler
 --with-hc-pkg=PATH           # Give the path to the package tool
 --prefix=DIR                 # Bake this prefix in preparation of
                                installation
 --bindir=DIR                 # Installation directory for executables
 --libdir=DIR                 # Installation directory for libraries
 --libsubdir=DIR              # Subdirectory of libdir in which libs are
                                installed
 --dynlibdir=DIR              # Installation directory for dynamic libraries
 --bytecodelibdir=DIR         # Installation directory for bytecode libraries
 --libexecdir=DIR             # Installation directory for program executables
 --libexecsubdir=DIR          # Subdirectory of libexecdir in which private
                                executables are installed
 --datadir=DIR                # Installation directory for read-only data
 --datasubdir=DIR             # Subdirectory of datadir in which data files
                                are installed
 --docdir=DIR                 # Installation directory for documentation
 --htmldir=DIR                # Installation directory for HTML documentation
 --haddockdir=DIR             # Installation directory for haddock interfaces
 --sysconfdir=DIR             # Installation directory for configuration files
 --program-prefix=PREFIX      # Prefix to be applied to installed executables
 --program-suffix=SUFFIX      # Suffix to be applied to installed executables
 --enable-library-vanilla     # Enable Vanilla libraries
 --disable-library-vanilla    # Disable Vanilla libraries
 -p, --enable-library-profiling
                              # Enable Library profiling
 --disable-library-profiling  # Disable Library profiling
 --enable-shared              # Enable Shared library
 --disable-shared             # Disable Shared library
 --enable-static              # Enable Static library
 --disable-static             # Disable Static library
 --enable-library-bytecode    # Enable Bytecode library
 --disable-library-bytecode   # Disable Bytecode library
 --enable-executable-dynamic  # Enable Executable dynamic linking
 --disable-executable-dynamic # Disable Executable dynamic linking
 --enable-executable-static   # Enable Executable fully static linking
 --disable-executable-static  # Disable Executable fully static linking
 --enable-profiling           # Enable Executable and library profiling
 --disable-profiling          # Disable Executable and library profiling
 --enable-profiling-shared    # Enable Build profiling shared libraries
 --disable-profiling-shared   # Disable Build profiling shared libraries
 --enable-executable-profiling
                              # Enable Executable profiling (DEPRECATED)
 --disable-executable-profiling
                              # Disable Executable profiling (DEPRECATED)
 --profiling-detail=level     # Profiling detail level for executable and
                                library (default, none, exported-functions,
                                toplevel-functions, all-functions, late).
 --library-profiling-detail=level
                              # Profiling detail level for libraries only.
 -O[n], --enable-optimization[=n]
                              # Build with optimization (n is 0--2, default is
                                1)
 --disable-optimization       # Build without optimization
 --enable-debug-info[=n]      # Emit debug info (n is 0--3, default is 0)
 --disable-debug-info         # Don't emit debug info
 --enable-build-info          # Enable build information generation during
                                project building
 --disable-build-info         # Disable build information generation during
                                project building
 --enable-library-for-ghci    # Enable compile library for use with GHCi
 --disable-library-for-ghci   # Disable compile library for use with GHCi
 --enable-split-sections      # Enable compile library code such that unneeded
                                definitions can be dropped from the final
                                executable (GHC 7.8+)
 --disable-split-sections     # Disable compile library code such that
                                unneeded definitions can be dropped from the
                                final executable (GHC 7.8+)
 --enable-split-objs          # Enable split library into smaller objects to
                                reduce binary sizes (GHC 6.6+)
 --disable-split-objs         # Disable split library into smaller objects to
                                reduce binary sizes (GHC 6.6+)
 --enable-executable-stripping
                              # Enable strip executables upon installation to
                                reduce binary sizes
 --disable-executable-stripping
                              # Disable strip executables upon installation to
                                reduce binary sizes
 --enable-library-stripping   # Enable strip libraries upon installation to
                                reduce binary sizes
 --disable-library-stripping  # Disable strip libraries upon installation to
                                reduce binary sizes
 --configure-option=OPT       # Extra option for configure
 --user                       # Enable doing a per-user installation
 --global                     # Disable doing a per-user installation
 --package-db=DB              # Append the given package database to the list
                                of package databases used (to satisfy
                                dependencies and register into). May be a
                                specific file, 'global' or 'user'. The initial
                                list is ['global'], ['global', 'user'], or
                                ['global', $sandbox], depending on context.
                                Use 'clear' to reset the list to empty. See
                                the user guide for details.
 -f FLAGS or -fFLAGS, --flags=FLAGS
                              # Force values for the given flags in Cabal
                                conditionals in the .cabal file. E.g.,
                                --flags="debug -usebytestrings" forces the
                                flag "debug" to true and "usebytestrings" to
                                false.
 --extra-include-dirs=PATH    # A list of directories to search for header
                                files
 --enable-deterministic       # Enable Try to be as deterministic as possible
                                (used by the test suite)
 --disable-deterministic      # Disable Try to be as deterministic as possible
                                (used by the test suite)
 --ipid=IPID                  # Installed package ID to compile this package
                                as
 --cid=CID                    # Installed component ID to compile this
                                component as
 --extra-lib-dirs=PATH        # A list of directories to search for external
                                libraries
 --extra-lib-dirs-static=PATH # A list of directories to search for external
                                libraries when linking fully static
                                executables
 --extra-framework-dirs=PATH  # A list of directories to search for external
                                frameworks (OS X only)
 --extra-prog-path=PATH       # A list of directories to search for required
                                programs (in addition to the normal search
                                locations)
 --constraint=DEPENDENCY      # A list of additional constraints on the
                                dependencies.
 --dependency=NAME[:COMPONENT_NAME]=CID
                              # A list of exact dependencies. E.g.,
                                --dependency="void=void-0.5.8-177d5cdf20962d0581fe2e4932a6c309"
 --promised-dependency=NAME-VER[:COMPONENT_NAME]=CID
                              # A list of promised dependencies. E.g.,
                                --promised-dependency="void-0.5.8=void-0.5.8-177d5cdf20962d0581fe2e4932a6c309"
 --instantiate-with=NAME=MOD  # A mapping of signature names to concrete
                                module instantiations.
 --enable-tests               # Enable dependency checking and compilation for
                                test suites listed in the package description
                                file.
 --disable-tests              # Disable dependency checking and compilation
                                for test suites listed in the package
                                description file.
 --enable-coverage            # Enable build package with Haskell Program
                                Coverage. (GHC only)
 --disable-coverage           # Disable build package with Haskell Program
                                Coverage. (GHC only)
 --enable-library-coverage    # Enable build package with Haskell Program
                                Coverage. (GHC only) (DEPRECATED)
 --disable-library-coverage   # Disable build package with Haskell Program
                                Coverage. (GHC only) (DEPRECATED)
 --exact-configuration        # All direct dependencies and flags are provided
                                on the command line.
 --enable-benchmarks          # Enable dependency checking and compilation for
                                benchmarks listed in the package description
                                file.
 --disable-benchmarks         # Disable dependency checking and compilation
                                for benchmarks listed in the package
                                description file.
 --enable-relocatable         # Enable building a package that is relocatable.
                                (GHC only)
 --disable-relocatable        # Disable building a package that is
                                relocatable. (GHC only)
 --disable-response-files     # Enable workaround for old versions of programs
                                like "ar" that do not support @file arguments
 --allow-depending-on-private-libs
                              # Allow depending on private libraries. If set,
                                the library visibility check MUST be done
                                externally.
 --coverage-for=UNITID        # A list of unit-ids of libraries to include in
                                the Haskell Program Coverage report.
 --ignore-build-tools         # Ignore build tool dependencies. If set,
                                declared build tools needn't be found for
                                compilation to proceed.
 --with-PROG=PATH             # Give the path to PROG
 --PROG-option=OPT            # Give an extra option to PROG (passed directly
                                to PROG as a single argument)
 --PROG-options=OPTS          # Give extra options to PROG (split on spaces,
                                use "" to prevent splitting)

The flags --with-PROG and --PROG-option(s) can be used with the following programs:
  alex ar c2hs cpphs doctest gcc ghc ghc-pkg ghcjs ghcjs-pkg haddock happy hpc
  hsc2hs hscolour jhc ld pkg-config runghc strip tar uhc
