name: Cabal
version: 1.18.1.3
copyright: 2003-2006, Isaac Jones
           2005-2011, Duncan Coutts
license: BSD3
license-file: LICENSE
author: Isaac Jones <ijones@syntaxpolice.org>
        Duncan Coutts <duncan@community.haskell.org>
maintainer: cabal-devel@haskell.org
homepage: http://www.haskell.org/cabal/
bug-reports: https://github.com/haskell/cabal/issues
synopsis: A framework for packaging Haskell software
description:
  The Haskell Common Architecture for Building Applications and
  Libraries: a framework defining a common interface for authors to more
  easily build their Haskell applications in a portable way.
  .
  The Haskell Cabal is part of a larger infrastructure for distributing,
  organizing, and cataloging Haskell libraries and tools.
category: Distribution
cabal-version: >=1.10
build-type: Custom
-- Even though we do use the default Setup.lhs it's vital to bootstrapping
-- that we build Setup.lhs using our own local Cabal source code.

extra-source-files:
  README tests/README changelog

  -- Generated with
  --
  -- find tests -type f -name '*.hs' -or -name '*.c' -or -name '*.sh' -or -name '*.cabal' -or name '*.hsc'
  -- | awk '/Check.hs$|UnitTests|PackageTester|autogen|PackageTests.hs|CreatePipe/
  -- { next } { print }'

  tests/PackageTests/BenchmarkExeV10/Foo.hs
  tests/PackageTests/BenchmarkExeV10/benchmarks/bench-Foo.hs
  tests/PackageTests/BenchmarkExeV10/my.cabal
  tests/PackageTests/BenchmarkOptions/BenchmarkOptions.cabal
  tests/PackageTests/BenchmarkOptions/test-BenchmarkOptions.hs
  tests/PackageTests/BenchmarkStanza/my.cabal
  tests/PackageTests/BuildDeps/GlobalBuildDepsNotAdditive1/GlobalBuildDepsNotAdditive1.cabal
  tests/PackageTests/BuildDeps/GlobalBuildDepsNotAdditive1/MyLibrary.hs
  tests/PackageTests/BuildDeps/GlobalBuildDepsNotAdditive2/GlobalBuildDepsNotAdditive2.cabal
  tests/PackageTests/BuildDeps/GlobalBuildDepsNotAdditive2/lemon.hs
  tests/PackageTests/BuildDeps/InternalLibrary0/MyLibrary.hs
  tests/PackageTests/BuildDeps/InternalLibrary0/my.cabal
  tests/PackageTests/BuildDeps/InternalLibrary0/programs/lemon.hs
  tests/PackageTests/BuildDeps/InternalLibrary1/MyLibrary.hs
  tests/PackageTests/BuildDeps/InternalLibrary1/my.cabal
  tests/PackageTests/BuildDeps/InternalLibrary1/programs/lemon.hs
  tests/PackageTests/BuildDeps/InternalLibrary2/MyLibrary.hs
  tests/PackageTests/BuildDeps/InternalLibrary2/my.cabal
  tests/PackageTests/BuildDeps/InternalLibrary2/programs/lemon.hs
  tests/PackageTests/BuildDeps/InternalLibrary2/to-install/MyLibrary.hs
  tests/PackageTests/BuildDeps/InternalLibrary2/to-install/my.cabal
  tests/PackageTests/BuildDeps/InternalLibrary3/MyLibrary.hs
  tests/PackageTests/BuildDeps/InternalLibrary3/my.cabal
  tests/PackageTests/BuildDeps/InternalLibrary3/programs/lemon.hs
  tests/PackageTests/BuildDeps/InternalLibrary3/to-install/MyLibrary.hs
  tests/PackageTests/BuildDeps/InternalLibrary3/to-install/my.cabal
  tests/PackageTests/BuildDeps/InternalLibrary4/MyLibrary.hs
  tests/PackageTests/BuildDeps/InternalLibrary4/my.cabal
  tests/PackageTests/BuildDeps/InternalLibrary4/programs/lemon.hs
  tests/PackageTests/BuildDeps/InternalLibrary4/to-install/MyLibrary.hs
  tests/PackageTests/BuildDeps/InternalLibrary4/to-install/my.cabal
  tests/PackageTests/BuildDeps/SameDepsAllRound/MyLibrary.hs
  tests/PackageTests/BuildDeps/SameDepsAllRound/SameDepsAllRound.cabal
  tests/PackageTests/BuildDeps/SameDepsAllRound/lemon.hs
  tests/PackageTests/BuildDeps/SameDepsAllRound/pineapple.hs
  tests/PackageTests/BuildDeps/TargetSpecificDeps1/MyLibrary.hs
  tests/PackageTests/BuildDeps/TargetSpecificDeps1/lemon.hs
  tests/PackageTests/BuildDeps/TargetSpecificDeps1/my.cabal
  tests/PackageTests/BuildDeps/TargetSpecificDeps2/MyLibrary.hs
  tests/PackageTests/BuildDeps/TargetSpecificDeps2/lemon.hs
  tests/PackageTests/BuildDeps/TargetSpecificDeps2/my.cabal
  tests/PackageTests/BuildDeps/TargetSpecificDeps3/MyLibrary.hs
  tests/PackageTests/BuildDeps/TargetSpecificDeps3/lemon.hs
  tests/PackageTests/BuildDeps/TargetSpecificDeps3/my.cabal
  tests/PackageTests/BuildTestSuiteDetailedV09/Dummy.hs
  tests/PackageTests/BuildTestSuiteDetailedV09/my.cabal
  tests/PackageTests/CMain/Bar.hs
  tests/PackageTests/CMain/Setup.hs
  tests/PackageTests/CMain/foo.c
  tests/PackageTests/CMain/my.cabal
  tests/PackageTests/EmptyLib/empty/empty.cabal
  tests/PackageTests/OrderFlags/Foo.hs
  tests/PackageTests/OrderFlags/my.cabal
  tests/PackageTests/PathsModule/Executable/Main.hs
  tests/PackageTests/PathsModule/Executable/my.cabal
  tests/PackageTests/PathsModule/Library/my.cabal
  tests/PackageTests/PreProcess/Foo.hsc
  tests/PackageTests/PreProcess/Main.hs
  tests/PackageTests/PreProcess/my.cabal
  tests/PackageTests/TemplateHaskell/vanilla/Exe.hs
  tests/PackageTests/TemplateHaskell/vanilla/Lib.hs
  tests/PackageTests/TemplateHaskell/vanilla/TH.hs
  tests/PackageTests/TemplateHaskell/vanilla/my.cabal
  tests/PackageTests/TemplateHaskell/dynamic/Exe.hs
  tests/PackageTests/TemplateHaskell/dynamic/Lib.hs
  tests/PackageTests/TemplateHaskell/dynamic/TH.hs
  tests/PackageTests/TemplateHaskell/dynamic/my.cabal
  tests/PackageTests/TemplateHaskell/profiling/Exe.hs
  tests/PackageTests/TemplateHaskell/profiling/Lib.hs
  tests/PackageTests/TemplateHaskell/profiling/TH.hs
  tests/PackageTests/TemplateHaskell/profiling/my.cabal
  tests/PackageTests/TestOptions/TestOptions.cabal
  tests/PackageTests/TestOptions/test-TestOptions.hs
  tests/PackageTests/TestStanza/my.cabal
  tests/PackageTests/TestSuiteExeV10/Foo.hs
  tests/PackageTests/TestSuiteExeV10/my.cabal
  tests/PackageTests/TestSuiteExeV10/tests/test-Foo.hs
  tests/Setup.hs
  tests/hackage/check.sh
  tests/hackage/download.sh
  tests/hackage/unpack.sh
  tests/misc/ghc-supported-languages.hs

source-repository head
  type:     git
  location: https://github.com/haskell/cabal/
  subdir:   Cabal

library
  build-depends:
    base       >= 4       && < 5,
    deepseq    >= 1.3     && < 1.4,
    filepath   >= 1       && < 1.4,
    directory  >= 1       && < 1.3,
    process    >= 1.0.1.1 && < 1.3,
    time       >= 1.1     && < 1.5,
    containers >= 0.1     && < 0.6,
    array      >= 0.1     && < 0.6,
    pretty     >= 1       && < 1.2,
    bytestring >= 0.9

  if !os(windows)
    build-depends:
      unix >= 2.0 && < 2.8

  ghc-options: -Wall -fno-ignore-asserts -fwarn-tabs

  exposed-modules:
    Distribution.Compat.Environment
    Distribution.Compat.Exception
    Distribution.Compat.ReadP
    Distribution.Compiler
    Distribution.InstalledPackageInfo
    Distribution.License
    Distribution.Make
    Distribution.ModuleName
    Distribution.Package
    Distribution.PackageDescription
    Distribution.PackageDescription.Check
    Distribution.PackageDescription.Configuration
    Distribution.PackageDescription.Parse
    Distribution.PackageDescription.PrettyPrint
    Distribution.PackageDescription.Utils
    Distribution.ParseUtils
    Distribution.ReadE
    Distribution.Simple
    Distribution.Simple.Bench
    Distribution.Simple.Build
    Distribution.Simple.Build.Macros
    Distribution.Simple.Build.PathsModule
    Distribution.Simple.BuildPaths
    Distribution.Simple.BuildTarget
    Distribution.Simple.CCompiler
    Distribution.Simple.Command
    Distribution.Simple.Compiler
    Distribution.Simple.Configure
    Distribution.Simple.GHC
    Distribution.Simple.Haddock
    Distribution.Simple.Hpc
    Distribution.Simple.Hugs
    Distribution.Simple.Install
    Distribution.Simple.InstallDirs
    Distribution.Simple.JHC
    Distribution.Simple.LHC
    Distribution.Simple.LocalBuildInfo
    Distribution.Simple.NHC
    Distribution.Simple.PackageIndex
    Distribution.Simple.PreProcess
    Distribution.Simple.PreProcess.Unlit
    Distribution.Simple.Program
    Distribution.Simple.Program.Ar
    Distribution.Simple.Program.Builtin
    Distribution.Simple.Program.Db
    Distribution.Simple.Program.Find
    Distribution.Simple.Program.GHC
    Distribution.Simple.Program.HcPkg
    Distribution.Simple.Program.Hpc
    Distribution.Simple.Program.Ld
    Distribution.Simple.Program.Run
    Distribution.Simple.Program.Script
    Distribution.Simple.Program.Types
    Distribution.Simple.Register
    Distribution.Simple.Setup
    Distribution.Simple.SrcDist
    Distribution.Simple.Test
    Distribution.Simple.UHC
    Distribution.Simple.UserHooks
    Distribution.Simple.Utils
    Distribution.System
    Distribution.TestSuite
    Distribution.Text
    Distribution.Verbosity
    Distribution.Version
    Language.Haskell.Extension

  other-modules:
    Distribution.Compat.CopyFile
    Distribution.Compat.TempFile
    Distribution.GetOpt
    Distribution.Simple.GHC.IPI641
    Distribution.Simple.GHC.IPI642
    Paths_Cabal

  default-language: Haskell98
  default-extensions: CPP

-- Small, fast running tests.
test-suite unit-tests
  type: exitcode-stdio-1.0
  hs-source-dirs: tests
  other-modules: UnitTests.Distribution.Compat.ReadP
  main-is: UnitTests.hs
  build-depends:
    base,
    test-framework,
    test-framework-hunit,
    test-framework-quickcheck2,
    HUnit,
    QuickCheck,
    Cabal
  ghc-options: -Wall
  default-language: Haskell98

-- Large, system tests that build packages.
test-suite package-tests
  type: exitcode-stdio-1.0
  main-is: PackageTests.hs
  other-modules:
    Distribution.Compat.CreatePipe
    PackageTests.BenchmarkExeV10.Check
    PackageTests.BenchmarkOptions.Check
    PackageTests.BenchmarkStanza.Check
    PackageTests.BuildDeps.GlobalBuildDepsNotAdditive1.Check
    PackageTests.BuildDeps.GlobalBuildDepsNotAdditive2.Check
    PackageTests.BuildDeps.InternalLibrary0.Check
    PackageTests.BuildDeps.InternalLibrary1.Check
    PackageTests.BuildDeps.InternalLibrary2.Check
    PackageTests.BuildDeps.InternalLibrary3.Check
    PackageTests.BuildDeps.InternalLibrary4.Check
    PackageTests.BuildDeps.SameDepsAllRound.Check
    PackageTests.BuildDeps.TargetSpecificDeps1.Check
    PackageTests.BuildDeps.TargetSpecificDeps2.Check
    PackageTests.BuildDeps.TargetSpecificDeps3.Check
    PackageTests.BuildTestSuiteDetailedV09.Check
    PackageTests.CMain.Check
    PackageTests.EmptyLib.Check
    PackageTests.OrderFlags.Check
    PackageTests.PackageTester
    PackageTests.PathsModule.Executable.Check
    PackageTests.PathsModule.Library.Check
    PackageTests.PreProcess.Check
    PackageTests.TemplateHaskell.Check
    PackageTests.TestOptions.Check
    PackageTests.TestStanza.Check
    PackageTests.TestSuiteExeV10.Check
  hs-source-dirs: tests
  build-depends:
    base,
    test-framework,
    test-framework-quickcheck2 >= 0.2.12,
    test-framework-hunit,
    HUnit,
    QuickCheck >= 2.1.0.1,
    Cabal,
    process,
    directory,
    filepath,
    extensible-exceptions,
    bytestring,
    regex-posix
  if !os(windows)
    build-depends: unix
  ghc-options: -Wall
  default-extensions: CPP
  default-language: Haskell98
