packages feed

Cabal revisions of Cabal-2.0.1.0

Hackage metadata revisions edit the .cabal file after upload; each diff below is one revision.

revision 1
-name:          Cabal-version:       2.0.1.0-copyright:     2003-2017, Cabal Development Team (see AUTHORS file)-license:       BSD3-license-file:  LICENSE-author:        Cabal Development Team <cabal-devel@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:     Simple--- If we use a new Cabal feature, this needs to be changed to Custom so--- we can bootstrap.--extra-source-files:-  README.md tests/README.md changelog-  doc/bugs-and-stability.rst doc/concepts-and-development.rst-  doc/conf.py doc/config-and-install.rst doc/developing-packages.rst-  doc/images/Cabal-dark.png doc/index.rst doc/installing-packages.rst-  doc/intro.rst doc/misc.rst doc/nix-local-build-overview.rst-  doc/nix-local-build.rst doc/README.md doc/references.inc--  -- Generated with 'misc/gen-extra-source-files.sh'-  -- Do NOT edit this section manually; instead, run the script.-  -- BEGIN gen-extra-source-files-  tests/ParserTests/warnings/bom.cabal-  tests/ParserTests/warnings/bool.cabal-  tests/ParserTests/warnings/deprecatedfield.cabal-  tests/ParserTests/warnings/extratestmodule.cabal-  tests/ParserTests/warnings/gluedop.cabal-  tests/ParserTests/warnings/nbsp.cabal-  tests/ParserTests/warnings/newsyntax.cabal-  tests/ParserTests/warnings/oldsyntax.cabal-  tests/ParserTests/warnings/subsection.cabal-  tests/ParserTests/warnings/trailingfield.cabal-  tests/ParserTests/warnings/unknownfield.cabal-  tests/ParserTests/warnings/unknownsection.cabal-  tests/ParserTests/warnings/utf8.cabal-  tests/ParserTests/warnings/versiontag.cabal-  tests/hackage/check.sh-  tests/hackage/download.sh-  tests/hackage/unpack.sh-  tests/misc/ghc-supported-languages.hs-  -- END gen-extra-source-files--source-repository head-  type:     git-  location: https://github.com/haskell/cabal/-  subdir:   Cabal--flag bundled-binary-generic-  default: False--flag old-directory-  description:  Use directory < 1.2 and old-time-  default:      False--flag parsec-  description:  Use parsec parser-  default:      False-  manual:       True--flag parsec-struct-diff-  description:  Use StructDiff in parsec tests. Affects only parsec tests.-  default:      False-  manual:       True--library-  build-depends:-    array      >= 0.1 && < 0.6,-    base       >= 4.5 && < 5,-    bytestring >= 0.9 && < 1,-    containers >= 0.4 && < 0.6,-    deepseq    >= 1.3 && < 1.5,-    filepath   >= 1.3 && < 1.5,-    pretty     >= 1.1 && < 1.2,-    process    >= 1.1.0.1 && < 1.7,-    time       >= 1.4 && < 1.9--  if flag(old-directory)-    build-depends: directory >= 1.1 && < 1.2, old-time >= 1 && < 1.2,-                   process   >= 1.0.1.1  && < 1.1.0.2-  else-    build-depends: directory >= 1.2 && < 1.4,-                   process   >= 1.1.0.2  && < 1.7--  if flag(bundled-binary-generic)-    build-depends: binary >= 0.5 && < 0.7-  else-    build-depends: binary >= 0.7 && < 0.9--  -- Needed for GHC.Generics before GHC 7.6-  if impl(ghc < 7.6)-    build-depends: ghc-prim >= 0.2 && < 0.3--  if !os(windows)-    build-depends:-      unix >= 2.5 && < 2.8--  if os(windows)-    build-depends:-      Win32 >= 2.2 && < 2.7--  ghc-options: -Wall -fno-ignore-asserts -fwarn-tabs-  if impl(ghc >= 8.0)-    ghc-options: -Wcompat -Wnoncanonical-monad-instances-                 -Wnoncanonical-monadfail-instances--  exposed-modules:-    Distribution.Backpack-    Distribution.Backpack.Configure-    Distribution.Backpack.ComponentsGraph-    Distribution.Backpack.ConfiguredComponent-    Distribution.Backpack.DescribeUnitId-    Distribution.Backpack.FullUnitId-    Distribution.Backpack.LinkedComponent-    Distribution.Backpack.ModSubst-    Distribution.Backpack.ModuleShape-    Distribution.Utils.LogProgress-    Distribution.Utils.MapAccum-    Distribution.Compat.CreatePipe-    Distribution.Compat.Environment-    Distribution.Compat.Exception-    Distribution.Compat.Graph-    Distribution.Compat.Internal.TempFile-    Distribution.Compat.Map.Strict-    Distribution.Compat.Prelude.Internal-    Distribution.Compat.ReadP-    Distribution.Compat.Semigroup-    Distribution.Compat.Stack-    Distribution.Compat.Time-    Distribution.Compat.DList-    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.PrettyUtils-    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.BuildToolDepends-    Distribution.Simple.CCompiler-    Distribution.Simple.Command-    Distribution.Simple.Compiler-    Distribution.Simple.Configure-    Distribution.Simple.GHC-    Distribution.Simple.GHCJS-    Distribution.Simple.Haddock-    Distribution.Simple.Doctest-    Distribution.Simple.HaskellSuite-    Distribution.Simple.Hpc-    Distribution.Simple.Install-    Distribution.Simple.InstallDirs-    Distribution.Simple.JHC-    Distribution.Simple.LHC-    Distribution.Simple.LocalBuildInfo-    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.Internal-    Distribution.Simple.Program.Ld-    Distribution.Simple.Program.Run-    Distribution.Simple.Program.Script-    Distribution.Simple.Program.Strip-    Distribution.Simple.Program.Types-    Distribution.Simple.Register-    Distribution.Simple.Setup-    Distribution.Simple.SrcDist-    Distribution.Simple.Test-    Distribution.Simple.Test.ExeV10-    Distribution.Simple.Test.LibV09-    Distribution.Simple.Test.Log-    Distribution.Simple.UHC-    Distribution.Simple.UserHooks-    Distribution.Simple.Utils-    Distribution.System-    Distribution.TestSuite-    Distribution.Text-    Distribution.Types.AbiHash-    Distribution.Types.AnnotatedId-    Distribution.Types.Benchmark-    Distribution.Types.BenchmarkInterface-    Distribution.Types.BenchmarkType-    Distribution.Types.BuildInfo-    Distribution.Types.BuildType-    Distribution.Types.ComponentInclude-    Distribution.Types.Dependency-    Distribution.Types.ExeDependency-    Distribution.Types.LegacyExeDependency-    Distribution.Types.PkgconfigDependency-    Distribution.Types.DependencyMap-    Distribution.Types.ComponentId-    Distribution.Types.MungedPackageId-    Distribution.Types.PackageId-    Distribution.Types.UnitId-    Distribution.Types.Executable-    Distribution.Types.ExecutableScope-    Distribution.Types.Library-    Distribution.Types.ForeignLib-    Distribution.Types.ForeignLibType-    Distribution.Types.ForeignLibOption-    Distribution.Types.Module-    Distribution.Types.ModuleReexport-    Distribution.Types.ModuleRenaming-    Distribution.Types.ComponentName-    Distribution.Types.MungedPackageName-    Distribution.Types.PackageName-    Distribution.Types.PkgconfigName-    Distribution.Types.UnqualComponentName-    Distribution.Types.IncludeRenaming-    Distribution.Types.Mixin-    Distribution.Types.SetupBuildInfo-    Distribution.Types.TestSuite-    Distribution.Types.TestSuiteInterface-    Distribution.Types.TestType-    Distribution.Types.GenericPackageDescription-    Distribution.Types.Condition-    Distribution.Types.CondTree-    Distribution.Types.HookedBuildInfo-    Distribution.Types.PackageDescription-    Distribution.Types.SourceRepo-    Distribution.Types.Component-    Distribution.Types.ComponentLocalBuildInfo-    Distribution.Types.LocalBuildInfo-    Distribution.Types.ComponentRequestedSpec-    Distribution.Types.TargetInfo-    Distribution.Utils.Generic-    Distribution.Utils.NubList-    Distribution.Utils.ShortText-    Distribution.Utils.Progress-    Distribution.Verbosity-    Distribution.Version-    Language.Haskell.Extension-    Distribution.Compat.Binary--  if flag(parsec)-    cpp-options: -DCABAL_PARSEC-    build-depends:-      transformers,-      parsec >= 3.1.9 && <3.2-    build-tools:-      alex >=3.1.4 && <3.3-    exposed-modules:-      Distribution.Compat.Parsec-      Distribution.PackageDescription.Parsec-      Distribution.PackageDescription.Parsec.FieldDescr-      Distribution.Parsec.Class-      Distribution.Parsec.ConfVar-      Distribution.Parsec.Lexer-      Distribution.Parsec.LexerMonad-      Distribution.Parsec.Parser-      Distribution.Parsec.Types.Common-      Distribution.Parsec.Types.Field-      Distribution.Parsec.Types.FieldDescr-      Distribution.Parsec.Types.ParseResult--  other-modules:-    Distribution.Backpack.PreExistingComponent-    Distribution.Backpack.ReadyComponent-    Distribution.Backpack.MixLink-    Distribution.Backpack.ModuleScope-    Distribution.Backpack.UnifyM-    Distribution.Backpack.Id-    Distribution.Utils.UnionFind-    Distribution.Utils.Base62-    Distribution.Compat.CopyFile-    Distribution.Compat.GetShortPathName-    Distribution.Compat.MonadFail-    Distribution.Compat.Prelude-    Distribution.Compat.SnocList-    Distribution.GetOpt-    Distribution.Lex-    Distribution.Utils.String-    Distribution.Simple.GHC.Internal-    Distribution.Simple.GHC.IPI642-    Distribution.Simple.GHC.IPIConvert-    Distribution.Simple.GHC.ImplInfo-    Paths_Cabal--  if flag(bundled-binary-generic)-    other-modules:-      Distribution.Compat.Binary.Class-      Distribution.Compat.Binary.Generic--  default-language: Haskell2010-  other-extensions:-    BangPatterns-    CPP-    DefaultSignatures-    DeriveDataTypeable-    DeriveFoldable-    DeriveFunctor-    DeriveGeneric-    DeriveTraversable-    ExistentialQuantification-    FlexibleContexts-    FlexibleInstances-    GeneralizedNewtypeDeriving-    ImplicitParams-    KindSignatures-    NondecreasingIndentation-    OverloadedStrings-    RankNTypes-    RecordWildCards-    ScopedTypeVariables-    StandaloneDeriving-    Trustworthy-    TypeFamilies-    TypeOperators-    TypeSynonymInstances-    UndecidableInstances--  if impl(ghc >= 7.11)-    other-extensions: PatternSynonyms---- Small, fast running tests.-test-suite unit-tests-  type: exitcode-stdio-1.0-  hs-source-dirs: tests-  other-modules:-    Test.Laws-    Test.QuickCheck.Utils-    UnitTests.Distribution.Compat.CreatePipe-    UnitTests.Distribution.Compat.ReadP-    UnitTests.Distribution.Compat.Time-    UnitTests.Distribution.Compat.Graph-    UnitTests.Distribution.Simple.Program.Internal-    UnitTests.Distribution.Simple.Utils-    UnitTests.Distribution.System-    UnitTests.Distribution.Utils.NubList-    UnitTests.Distribution.Utils.ShortText-    UnitTests.Distribution.Version-  main-is: UnitTests.hs-  build-depends:-    array,-    base,-    containers,-    directory,-    filepath,-    tasty,-    tasty-hunit,-    tasty-quickcheck,-    tagged,-    pretty,-    QuickCheck >= 2.7 && < 2.11,-    Cabal-  ghc-options: -Wall-  default-language: Haskell2010--test-suite parser-tests-  if !flag(parsec)-    buildable: False--  type: exitcode-stdio-1.0-  hs-source-dirs: tests-  main-is: ParserTests.hs-  build-depends:-    base,-    bytestring,-    filepath,-    tasty,-    tasty-hunit,-    tasty-quickcheck,-    Cabal-  ghc-options: -Wall-  default-language: Haskell2010--test-suite parser-hackage-tests-  if !flag(parsec)-    buildable: False--  type: exitcode-stdio-1.0-  main-is: ParserHackageTests.hs--  hs-source-dirs: tests-  build-depends:-    base,-    containers,-    tar >=0.5 && <0.6,-    bytestring,-    directory,-    filepath,-    Cabal--  if flag(parsec-struct-diff)-    build-depends:-      generics-sop ==0.2.*,-      these >=0.7.1 && <0.8,-      singleton-bool >=0.1.1.0 && <0.2,-      keys-    other-modules:-      DiffInstances-      StructDiff-    cpp-options: -DHAS_STRUCT_DIFF--  ghc-options: -Wall -rtsopts-  default-extensions: CPP-  default-language: Haskell2010+name:          Cabal
+version:       2.0.1.0
+x-revision: 1
+copyright:     2003-2017, Cabal Development Team (see AUTHORS file)
+license:       BSD3
+license-file:  LICENSE
+author:        Cabal Development Team <cabal-devel@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:     Simple
+-- If we use a new Cabal feature, this needs to be changed to Custom so
+-- we can bootstrap.
+
+extra-source-files:
+  README.md tests/README.md changelog
+  doc/bugs-and-stability.rst doc/concepts-and-development.rst
+  doc/conf.py doc/config-and-install.rst doc/developing-packages.rst
+  doc/images/Cabal-dark.png doc/index.rst doc/installing-packages.rst
+  doc/intro.rst doc/misc.rst doc/nix-local-build-overview.rst
+  doc/nix-local-build.rst doc/README.md doc/references.inc
+
+  -- Generated with 'misc/gen-extra-source-files.sh'
+  -- Do NOT edit this section manually; instead, run the script.
+  -- BEGIN gen-extra-source-files
+  tests/ParserTests/warnings/bom.cabal
+  tests/ParserTests/warnings/bool.cabal
+  tests/ParserTests/warnings/deprecatedfield.cabal
+  tests/ParserTests/warnings/extratestmodule.cabal
+  tests/ParserTests/warnings/gluedop.cabal
+  tests/ParserTests/warnings/nbsp.cabal
+  tests/ParserTests/warnings/newsyntax.cabal
+  tests/ParserTests/warnings/oldsyntax.cabal
+  tests/ParserTests/warnings/subsection.cabal
+  tests/ParserTests/warnings/trailingfield.cabal
+  tests/ParserTests/warnings/unknownfield.cabal
+  tests/ParserTests/warnings/unknownsection.cabal
+  tests/ParserTests/warnings/utf8.cabal
+  tests/ParserTests/warnings/versiontag.cabal
+  tests/hackage/check.sh
+  tests/hackage/download.sh
+  tests/hackage/unpack.sh
+  tests/misc/ghc-supported-languages.hs
+  -- END gen-extra-source-files
+
+source-repository head
+  type:     git
+  location: https://github.com/haskell/cabal/
+  subdir:   Cabal
+
+flag bundled-binary-generic
+  default: False
+
+flag old-directory
+  description:  Use directory < 1.2 and old-time
+  default:      False
+
+flag parsec
+  description:  Use parsec parser
+  default:      False
+  manual:       True
+
+flag parsec-struct-diff
+  description:  Use StructDiff in parsec tests. Affects only parsec tests.
+  default:      False
+  manual:       True
+
+library
+  build-depends:
+    array      >= 0.1 && < 0.6,
+    base       >= 4.5 && < 5,
+    bytestring >= 0.9 && < 0.11,
+    containers >= 0.4 && < 0.6,
+    deepseq    >= 1.3 && < 1.5,
+    filepath   >= 1.3 && < 1.5,
+    pretty     >= 1.1 && < 1.2,
+    process    >= 1.1.0.1 && < 1.7,
+    time       >= 1.4 && < 1.9
+
+  if flag(old-directory)
+    build-depends: directory >= 1.1 && < 1.2, old-time >= 1 && < 1.2,
+                   process   >= 1.0.1.1  && < 1.1.0.2
+  else
+    build-depends: directory >= 1.2 && < 1.4,
+                   process   >= 1.1.0.2  && < 1.7
+
+  if flag(bundled-binary-generic)
+    build-depends: binary >= 0.5 && < 0.7
+  else
+    build-depends: binary >= 0.7 && < 0.9
+
+  -- Needed for GHC.Generics before GHC 7.6
+  if impl(ghc < 7.6)
+    build-depends: ghc-prim >= 0.2 && < 0.3
+
+  if !os(windows)
+    build-depends:
+      unix >= 2.5 && < 2.8
+
+  if os(windows)
+    build-depends:
+      Win32 >= 2.2 && < 2.7,
+      -- https://github.com/haskell/cabal/issues/5181
+      base >= 4.7
+
+  ghc-options: -Wall -fno-ignore-asserts -fwarn-tabs
+  if impl(ghc >= 8.0)
+    ghc-options: -Wcompat -Wnoncanonical-monad-instances
+                 -Wnoncanonical-monadfail-instances
+
+  exposed-modules:
+    Distribution.Backpack
+    Distribution.Backpack.Configure
+    Distribution.Backpack.ComponentsGraph
+    Distribution.Backpack.ConfiguredComponent
+    Distribution.Backpack.DescribeUnitId
+    Distribution.Backpack.FullUnitId
+    Distribution.Backpack.LinkedComponent
+    Distribution.Backpack.ModSubst
+    Distribution.Backpack.ModuleShape
+    Distribution.Utils.LogProgress
+    Distribution.Utils.MapAccum
+    Distribution.Compat.CreatePipe
+    Distribution.Compat.Environment
+    Distribution.Compat.Exception
+    Distribution.Compat.Graph
+    Distribution.Compat.Internal.TempFile
+    Distribution.Compat.Map.Strict
+    Distribution.Compat.Prelude.Internal
+    Distribution.Compat.ReadP
+    Distribution.Compat.Semigroup
+    Distribution.Compat.Stack
+    Distribution.Compat.Time
+    Distribution.Compat.DList
+    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.PrettyUtils
+    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.BuildToolDepends
+    Distribution.Simple.CCompiler
+    Distribution.Simple.Command
+    Distribution.Simple.Compiler
+    Distribution.Simple.Configure
+    Distribution.Simple.GHC
+    Distribution.Simple.GHCJS
+    Distribution.Simple.Haddock
+    Distribution.Simple.Doctest
+    Distribution.Simple.HaskellSuite
+    Distribution.Simple.Hpc
+    Distribution.Simple.Install
+    Distribution.Simple.InstallDirs
+    Distribution.Simple.JHC
+    Distribution.Simple.LHC
+    Distribution.Simple.LocalBuildInfo
+    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.Internal
+    Distribution.Simple.Program.Ld
+    Distribution.Simple.Program.Run
+    Distribution.Simple.Program.Script
+    Distribution.Simple.Program.Strip
+    Distribution.Simple.Program.Types
+    Distribution.Simple.Register
+    Distribution.Simple.Setup
+    Distribution.Simple.SrcDist
+    Distribution.Simple.Test
+    Distribution.Simple.Test.ExeV10
+    Distribution.Simple.Test.LibV09
+    Distribution.Simple.Test.Log
+    Distribution.Simple.UHC
+    Distribution.Simple.UserHooks
+    Distribution.Simple.Utils
+    Distribution.System
+    Distribution.TestSuite
+    Distribution.Text
+    Distribution.Types.AbiHash
+    Distribution.Types.AnnotatedId
+    Distribution.Types.Benchmark
+    Distribution.Types.BenchmarkInterface
+    Distribution.Types.BenchmarkType
+    Distribution.Types.BuildInfo
+    Distribution.Types.BuildType
+    Distribution.Types.ComponentInclude
+    Distribution.Types.Dependency
+    Distribution.Types.ExeDependency
+    Distribution.Types.LegacyExeDependency
+    Distribution.Types.PkgconfigDependency
+    Distribution.Types.DependencyMap
+    Distribution.Types.ComponentId
+    Distribution.Types.MungedPackageId
+    Distribution.Types.PackageId
+    Distribution.Types.UnitId
+    Distribution.Types.Executable
+    Distribution.Types.ExecutableScope
+    Distribution.Types.Library
+    Distribution.Types.ForeignLib
+    Distribution.Types.ForeignLibType
+    Distribution.Types.ForeignLibOption
+    Distribution.Types.Module
+    Distribution.Types.ModuleReexport
+    Distribution.Types.ModuleRenaming
+    Distribution.Types.ComponentName
+    Distribution.Types.MungedPackageName
+    Distribution.Types.PackageName
+    Distribution.Types.PkgconfigName
+    Distribution.Types.UnqualComponentName
+    Distribution.Types.IncludeRenaming
+    Distribution.Types.Mixin
+    Distribution.Types.SetupBuildInfo
+    Distribution.Types.TestSuite
+    Distribution.Types.TestSuiteInterface
+    Distribution.Types.TestType
+    Distribution.Types.GenericPackageDescription
+    Distribution.Types.Condition
+    Distribution.Types.CondTree
+    Distribution.Types.HookedBuildInfo
+    Distribution.Types.PackageDescription
+    Distribution.Types.SourceRepo
+    Distribution.Types.Component
+    Distribution.Types.ComponentLocalBuildInfo
+    Distribution.Types.LocalBuildInfo
+    Distribution.Types.ComponentRequestedSpec
+    Distribution.Types.TargetInfo
+    Distribution.Utils.Generic
+    Distribution.Utils.NubList
+    Distribution.Utils.ShortText
+    Distribution.Utils.Progress
+    Distribution.Verbosity
+    Distribution.Version
+    Language.Haskell.Extension
+    Distribution.Compat.Binary
+
+  if flag(parsec)
+    cpp-options: -DCABAL_PARSEC
+    build-depends:
+      transformers,
+      parsec >= 3.1.9 && <3.2
+    build-tools:
+      alex >=3.1.4 && <3.3
+    exposed-modules:
+      Distribution.Compat.Parsec
+      Distribution.PackageDescription.Parsec
+      Distribution.PackageDescription.Parsec.FieldDescr
+      Distribution.Parsec.Class
+      Distribution.Parsec.ConfVar
+      Distribution.Parsec.Lexer
+      Distribution.Parsec.LexerMonad
+      Distribution.Parsec.Parser
+      Distribution.Parsec.Types.Common
+      Distribution.Parsec.Types.Field
+      Distribution.Parsec.Types.FieldDescr
+      Distribution.Parsec.Types.ParseResult
+
+  other-modules:
+    Distribution.Backpack.PreExistingComponent
+    Distribution.Backpack.ReadyComponent
+    Distribution.Backpack.MixLink
+    Distribution.Backpack.ModuleScope
+    Distribution.Backpack.UnifyM
+    Distribution.Backpack.Id
+    Distribution.Utils.UnionFind
+    Distribution.Utils.Base62
+    Distribution.Compat.CopyFile
+    Distribution.Compat.GetShortPathName
+    Distribution.Compat.MonadFail
+    Distribution.Compat.Prelude
+    Distribution.Compat.SnocList
+    Distribution.GetOpt
+    Distribution.Lex
+    Distribution.Utils.String
+    Distribution.Simple.GHC.Internal
+    Distribution.Simple.GHC.IPI642
+    Distribution.Simple.GHC.IPIConvert
+    Distribution.Simple.GHC.ImplInfo
+    Paths_Cabal
+
+  if flag(bundled-binary-generic)
+    other-modules:
+      Distribution.Compat.Binary.Class
+      Distribution.Compat.Binary.Generic
+
+  default-language: Haskell2010
+  other-extensions:
+    BangPatterns
+    CPP
+    DefaultSignatures
+    DeriveDataTypeable
+    DeriveFoldable
+    DeriveFunctor
+    DeriveGeneric
+    DeriveTraversable
+    ExistentialQuantification
+    FlexibleContexts
+    FlexibleInstances
+    GeneralizedNewtypeDeriving
+    ImplicitParams
+    KindSignatures
+    NondecreasingIndentation
+    OverloadedStrings
+    RankNTypes
+    RecordWildCards
+    ScopedTypeVariables
+    StandaloneDeriving
+    Trustworthy
+    TypeFamilies
+    TypeOperators
+    TypeSynonymInstances
+    UndecidableInstances
+
+  if impl(ghc >= 7.11)
+    other-extensions: PatternSynonyms
+
+-- Small, fast running tests.
+test-suite unit-tests
+  type: exitcode-stdio-1.0
+  hs-source-dirs: tests
+  other-modules:
+    Test.Laws
+    Test.QuickCheck.Utils
+    UnitTests.Distribution.Compat.CreatePipe
+    UnitTests.Distribution.Compat.ReadP
+    UnitTests.Distribution.Compat.Time
+    UnitTests.Distribution.Compat.Graph
+    UnitTests.Distribution.Simple.Program.Internal
+    UnitTests.Distribution.Simple.Utils
+    UnitTests.Distribution.System
+    UnitTests.Distribution.Utils.NubList
+    UnitTests.Distribution.Utils.ShortText
+    UnitTests.Distribution.Version
+  main-is: UnitTests.hs
+  build-depends:
+    array,
+    base,
+    containers,
+    directory,
+    filepath,
+    tasty,
+    tasty-hunit,
+    tasty-quickcheck,
+    tagged,
+    pretty,
+    QuickCheck >= 2.7 && < 2.11,
+    Cabal
+  ghc-options: -Wall
+  default-language: Haskell2010
+
+test-suite parser-tests
+  if !flag(parsec)
+    buildable: False
+
+  type: exitcode-stdio-1.0
+  hs-source-dirs: tests
+  main-is: ParserTests.hs
+  build-depends:
+    base,
+    bytestring,
+    filepath,
+    tasty,
+    tasty-hunit,
+    tasty-quickcheck,
+    Cabal
+  ghc-options: -Wall
+  default-language: Haskell2010
+
+test-suite parser-hackage-tests
+  if !flag(parsec)
+    buildable: False
+
+  type: exitcode-stdio-1.0
+  main-is: ParserHackageTests.hs
+
+  hs-source-dirs: tests
+  build-depends:
+    base,
+    containers,
+    tar >=0.5 && <0.6,
+    bytestring,
+    directory,
+    filepath,
+    Cabal
+
+  if flag(parsec-struct-diff)
+    build-depends:
+      generics-sop ==0.2.*,
+      these >=0.7.1 && <0.8,
+      singleton-bool >=0.1.1.0 && <0.2,
+      keys
+    other-modules:
+      DiffInstances
+      StructDiff
+    cpp-options: -DHAS_STRUCT_DIFF
+
+  ghc-options: -Wall -rtsopts
+  default-extensions: CPP
+  default-language: Haskell2010