Cabal.cabal 24.1 KB
Newer Older
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
1 2
name:          Cabal
version:       1.25.0.0
3
copyright:     2003-2016, Cabal Development Team (see AUTHORS file)
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
4 5 6 7 8 9 10
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
11
description:
12 13 14 15 16 17
  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.
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
18 19 20
category:       Distribution
cabal-version:  >=1.10
build-type:     Simple
21 22
-- If we use a new Cabal feature, this needs to be changed to Custom so
-- we can bootstrap.
23

24
extra-source-files:
25
  README.md tests/README.md changelog
26 27 28 29
  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
30
  doc/nix-local-build.rst doc/README.md doc/references.inc
31

32 33 34
  -- Generated with 'misc/gen-extra-source-files.sh'
  -- Do NOT edit this section manually; instead, run the script.
  -- BEGIN gen-extra-source-files
35 36 37 38
  tests/PackageTests/AllowNewer/AllowNewer.cabal
  tests/PackageTests/AllowNewer/benchmarks/Bench.hs
  tests/PackageTests/AllowNewer/src/Foo.hs
  tests/PackageTests/AllowNewer/tests/Test.hs
39 40 41 42
  tests/PackageTests/AllowOlder/AllowOlder.cabal
  tests/PackageTests/AllowOlder/benchmarks/Bench.hs
  tests/PackageTests/AllowOlder/src/Foo.hs
  tests/PackageTests/AllowOlder/tests/Test.hs
43 44 45 46 47 48 49 50 51
  tests/PackageTests/Ambiguity/p/Dupe.hs
  tests/PackageTests/Ambiguity/p/p.cabal
  tests/PackageTests/Ambiguity/package-import/A.hs
  tests/PackageTests/Ambiguity/package-import/package-import.cabal
  tests/PackageTests/Ambiguity/q/Dupe.hs
  tests/PackageTests/Ambiguity/q/q.cabal
  tests/PackageTests/Ambiguity/reexport-test/Main.hs
  tests/PackageTests/Ambiguity/reexport-test/reexport-test.cabal
  tests/PackageTests/Ambiguity/reexport/reexport.cabal
fmaste's avatar
fmaste committed
52 53 54 55 56 57 58 59 60 61 62 63 64 65
  tests/PackageTests/AutogenModules/Package/Dummy.hs
  tests/PackageTests/AutogenModules/Package/MyBenchModule.hs
  tests/PackageTests/AutogenModules/Package/MyExeModule.hs
  tests/PackageTests/AutogenModules/Package/MyLibModule.hs
  tests/PackageTests/AutogenModules/Package/MyLibrary.hs
  tests/PackageTests/AutogenModules/Package/MyTestModule.hs
  tests/PackageTests/AutogenModules/Package/my.cabal
  tests/PackageTests/AutogenModules/SrcDist/Dummy.hs
  tests/PackageTests/AutogenModules/SrcDist/MyBenchModule.hs
  tests/PackageTests/AutogenModules/SrcDist/MyExeModule.hs
  tests/PackageTests/AutogenModules/SrcDist/MyLibModule.hs
  tests/PackageTests/AutogenModules/SrcDist/MyLibrary.hs
  tests/PackageTests/AutogenModules/SrcDist/MyTestModule.hs
  tests/PackageTests/AutogenModules/SrcDist/my.cabal
66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103
  tests/PackageTests/Backpack/Includes1/A.hs
  tests/PackageTests/Backpack/Includes1/B.hs
  tests/PackageTests/Backpack/Includes1/Includes1.cabal
  tests/PackageTests/Backpack/Includes2/Includes2.cabal
  tests/PackageTests/Backpack/Includes2/exe/Main.hs
  tests/PackageTests/Backpack/Includes2/exe/exe.cabal
  tests/PackageTests/Backpack/Includes2/fail.cabal
  tests/PackageTests/Backpack/Includes2/mylib/Mine.hs
  tests/PackageTests/Backpack/Includes2/mylib/mylib.cabal
  tests/PackageTests/Backpack/Includes2/mysql/Database/MySQL.hs
  tests/PackageTests/Backpack/Includes2/mysql/mysql.cabal
  tests/PackageTests/Backpack/Includes2/postgresql/Database/PostgreSQL.hs
  tests/PackageTests/Backpack/Includes2/postgresql/postgresql.cabal
  tests/PackageTests/Backpack/Includes2/src/App.hs
  tests/PackageTests/Backpack/Includes2/src/src.cabal
  tests/PackageTests/Backpack/Includes3/Includes3.cabal
  tests/PackageTests/Backpack/Includes3/exe/Main.hs
  tests/PackageTests/Backpack/Includes3/exe/exe.cabal
  tests/PackageTests/Backpack/Includes3/indef/Foo.hs
  tests/PackageTests/Backpack/Includes3/indef/indef.cabal
  tests/PackageTests/Backpack/Includes3/sigs/sigs.cabal
  tests/PackageTests/Backpack/Includes4/Includes4.cabal
  tests/PackageTests/Backpack/Includes4/Main.hs
  tests/PackageTests/Backpack/Includes4/impl/A.hs
  tests/PackageTests/Backpack/Includes4/impl/B.hs
  tests/PackageTests/Backpack/Includes4/impl/Rec.hs
  tests/PackageTests/Backpack/Includes4/indef/C.hs
  tests/PackageTests/Backpack/Includes5/A.hs
  tests/PackageTests/Backpack/Includes5/B.hs
  tests/PackageTests/Backpack/Includes5/Includes5.cabal
  tests/PackageTests/Backpack/Includes5/impl/Foobar.hs
  tests/PackageTests/Backpack/Includes5/impl/Quxbaz.hs
  tests/PackageTests/Backpack/Indef1/Indef1.cabal
  tests/PackageTests/Backpack/Indef1/Provide.hs
  tests/PackageTests/Backpack/Reexport1/p/P.hs
  tests/PackageTests/Backpack/Reexport1/p/p.cabal
  tests/PackageTests/Backpack/Reexport1/q/Q.hs
  tests/PackageTests/Backpack/Reexport1/q/q.cabal
104 105 106
  tests/PackageTests/BenchmarkExeV10/Foo.hs
  tests/PackageTests/BenchmarkExeV10/benchmarks/bench-Foo.hs
  tests/PackageTests/BenchmarkExeV10/my.cabal
107
  tests/PackageTests/BenchmarkOptions/BenchmarkOptions.cabal
108 109
  tests/PackageTests/BenchmarkOptions/test-BenchmarkOptions.hs
  tests/PackageTests/BenchmarkStanza/my.cabal
110
  tests/PackageTests/BuildDeps/GlobalBuildDepsNotAdditive1/GlobalBuildDepsNotAdditive1.cabal
111
  tests/PackageTests/BuildDeps/GlobalBuildDepsNotAdditive1/MyLibrary.hs
112 113 114
  tests/PackageTests/BuildDeps/GlobalBuildDepsNotAdditive2/GlobalBuildDepsNotAdditive2.cabal
  tests/PackageTests/BuildDeps/GlobalBuildDepsNotAdditive2/lemon.hs
  tests/PackageTests/BuildDeps/InternalLibrary0/MyLibrary.hs
115
  tests/PackageTests/BuildDeps/InternalLibrary0/my.cabal
116 117
  tests/PackageTests/BuildDeps/InternalLibrary0/programs/lemon.hs
  tests/PackageTests/BuildDeps/InternalLibrary1/MyLibrary.hs
118
  tests/PackageTests/BuildDeps/InternalLibrary1/my.cabal
119 120
  tests/PackageTests/BuildDeps/InternalLibrary1/programs/lemon.hs
  tests/PackageTests/BuildDeps/InternalLibrary2/MyLibrary.hs
121
  tests/PackageTests/BuildDeps/InternalLibrary2/my.cabal
122
  tests/PackageTests/BuildDeps/InternalLibrary2/programs/lemon.hs
123 124
  tests/PackageTests/BuildDeps/InternalLibrary2/to-install/MyLibrary.hs
  tests/PackageTests/BuildDeps/InternalLibrary2/to-install/my.cabal
125
  tests/PackageTests/BuildDeps/InternalLibrary3/MyLibrary.hs
126
  tests/PackageTests/BuildDeps/InternalLibrary3/my.cabal
127
  tests/PackageTests/BuildDeps/InternalLibrary3/programs/lemon.hs
128 129
  tests/PackageTests/BuildDeps/InternalLibrary3/to-install/MyLibrary.hs
  tests/PackageTests/BuildDeps/InternalLibrary3/to-install/my.cabal
130
  tests/PackageTests/BuildDeps/InternalLibrary4/MyLibrary.hs
131
  tests/PackageTests/BuildDeps/InternalLibrary4/my.cabal
132
  tests/PackageTests/BuildDeps/InternalLibrary4/programs/lemon.hs
133 134 135
  tests/PackageTests/BuildDeps/InternalLibrary4/to-install/MyLibrary.hs
  tests/PackageTests/BuildDeps/InternalLibrary4/to-install/my.cabal
  tests/PackageTests/BuildDeps/SameDepsAllRound/MyLibrary.hs
136 137 138
  tests/PackageTests/BuildDeps/SameDepsAllRound/SameDepsAllRound.cabal
  tests/PackageTests/BuildDeps/SameDepsAllRound/lemon.hs
  tests/PackageTests/BuildDeps/SameDepsAllRound/pineapple.hs
139 140 141 142 143 144 145 146 147
  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
148 149
  tests/PackageTests/BuildTargetErrors/BuildTargetErrors.cabal
  tests/PackageTests/BuildTargetErrors/Main.hs
150
  tests/PackageTests/BuildTestSuiteDetailedV09/Dummy2.hs
151 152 153 154
  tests/PackageTests/BuildToolsPath/A.hs
  tests/PackageTests/BuildToolsPath/MyCustomPreprocessor.hs
  tests/PackageTests/BuildToolsPath/build-tools-path.cabal
  tests/PackageTests/BuildToolsPath/hello/Hello.hs
155 156
  tests/PackageTests/BuildableField/BuildableField.cabal
  tests/PackageTests/BuildableField/Main.hs
157 158 159
  tests/PackageTests/CMain/Bar.hs
  tests/PackageTests/CMain/foo.c
  tests/PackageTests/CMain/my.cabal
160
  tests/PackageTests/CaretOperator/my.cabal
161 162
  tests/PackageTests/Configure/A.hs
  tests/PackageTests/Configure/Setup.hs
163 164 165
  tests/PackageTests/Configure/include/HsZlibConfig.h.in
  tests/PackageTests/Configure/zlib.buildinfo.in
  tests/PackageTests/Configure/zlib.cabal
166 167 168 169 170 171 172 173 174 175 176
  tests/PackageTests/ConfigureComponent/Exe/Bad.hs
  tests/PackageTests/ConfigureComponent/Exe/Exe.cabal
  tests/PackageTests/ConfigureComponent/Exe/Good.hs
  tests/PackageTests/ConfigureComponent/SubLib/Lib.cabal
  tests/PackageTests/ConfigureComponent/SubLib/Lib.hs
  tests/PackageTests/ConfigureComponent/SubLib/exe/Exe.hs
  tests/PackageTests/ConfigureComponent/Test/Lib.hs
  tests/PackageTests/ConfigureComponent/Test/Test.cabal
  tests/PackageTests/ConfigureComponent/Test/testlib/TestLib.hs
  tests/PackageTests/ConfigureComponent/Test/testlib/testlib.cabal
  tests/PackageTests/ConfigureComponent/Test/tests/Test.hs
177 178 179 180 181 182
  tests/PackageTests/CopyComponent/Exe/Main.hs
  tests/PackageTests/CopyComponent/Exe/Main2.hs
  tests/PackageTests/CopyComponent/Exe/myprog.cabal
  tests/PackageTests/CopyComponent/Lib/Main.hs
  tests/PackageTests/CopyComponent/Lib/p.cabal
  tests/PackageTests/CopyComponent/Lib/src/P.hs
183 184 185 186
  tests/PackageTests/CustomPreProcess/Hello.hs
  tests/PackageTests/CustomPreProcess/MyCustomPreprocessor.hs
  tests/PackageTests/CustomPreProcess/Setup.hs
  tests/PackageTests/CustomPreProcess/internal-preprocessor-test.cabal
187 188
  tests/PackageTests/DeterministicAr/Lib.hs
  tests/PackageTests/DeterministicAr/my.cabal
189 190 191 192
  tests/PackageTests/DuplicateModuleName/DuplicateModuleName.cabal
  tests/PackageTests/DuplicateModuleName/src/Foo.hs
  tests/PackageTests/DuplicateModuleName/tests/Foo.hs
  tests/PackageTests/DuplicateModuleName/tests2/Foo.hs
193
  tests/PackageTests/EmptyLib/empty/empty.cabal
194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211
  tests/PackageTests/GhcPkgGuess/SameDirectory/SameDirectory.cabal
  tests/PackageTests/GhcPkgGuess/SameDirectory/ghc
  tests/PackageTests/GhcPkgGuess/SameDirectory/ghc-pkg
  tests/PackageTests/GhcPkgGuess/SameDirectoryGhcVersion/SameDirectory.cabal
  tests/PackageTests/GhcPkgGuess/SameDirectoryGhcVersion/ghc-7.10
  tests/PackageTests/GhcPkgGuess/SameDirectoryGhcVersion/ghc-pkg-ghc-7.10
  tests/PackageTests/GhcPkgGuess/SameDirectoryVersion/SameDirectory.cabal
  tests/PackageTests/GhcPkgGuess/SameDirectoryVersion/ghc-7.10
  tests/PackageTests/GhcPkgGuess/SameDirectoryVersion/ghc-pkg-7.10
  tests/PackageTests/GhcPkgGuess/Symlink/SameDirectory.cabal
  tests/PackageTests/GhcPkgGuess/Symlink/bin/ghc
  tests/PackageTests/GhcPkgGuess/Symlink/bin/ghc-pkg
  tests/PackageTests/GhcPkgGuess/SymlinkGhcVersion/SameDirectory.cabal
  tests/PackageTests/GhcPkgGuess/SymlinkGhcVersion/bin/ghc-7.10
  tests/PackageTests/GhcPkgGuess/SymlinkGhcVersion/bin/ghc-pkg-7.10
  tests/PackageTests/GhcPkgGuess/SymlinkVersion/SameDirectory.cabal
  tests/PackageTests/GhcPkgGuess/SymlinkVersion/bin/ghc-7.10
  tests/PackageTests/GhcPkgGuess/SymlinkVersion/bin/ghc-pkg-ghc-7.10
212 213
  tests/PackageTests/Haddock/CPP.hs
  tests/PackageTests/Haddock/Literate.lhs
214
  tests/PackageTests/Haddock/NoCPP.hs
215
  tests/PackageTests/Haddock/Simple.hs
216
  tests/PackageTests/Haddock/my.cabal
Edward Z. Yang's avatar
Edward Z. Yang committed
217 218 219
  tests/PackageTests/HaddockNewline/A.hs
  tests/PackageTests/HaddockNewline/HaddockNewline.cabal
  tests/PackageTests/HaddockNewline/Setup.hs
220 221 222 223 224 225 226 227 228 229 230 231 232 233
  tests/PackageTests/InternalLibraries/Executable/exe/Main.hs
  tests/PackageTests/InternalLibraries/Executable/foo.cabal
  tests/PackageTests/InternalLibraries/Executable/src/Foo.hs
  tests/PackageTests/InternalLibraries/Library/fooexe/Main.hs
  tests/PackageTests/InternalLibraries/Library/fooexe/fooexe.cabal
  tests/PackageTests/InternalLibraries/Library/foolib/Foo.hs
  tests/PackageTests/InternalLibraries/Library/foolib/foolib.cabal
  tests/PackageTests/InternalLibraries/Library/foolib/private/Internal.hs
  tests/PackageTests/InternalLibraries/p/Foo.hs
  tests/PackageTests/InternalLibraries/p/p.cabal
  tests/PackageTests/InternalLibraries/p/p/P.hs
  tests/PackageTests/InternalLibraries/p/q/Q.hs
  tests/PackageTests/InternalLibraries/q/Q.hs
  tests/PackageTests/InternalLibraries/q/q.cabal
234 235
  tests/PackageTests/InternalLibraries/r/R.hs
  tests/PackageTests/InternalLibraries/r/r.cabal
236 237 238 239 240
  tests/PackageTests/Macros/A.hs
  tests/PackageTests/Macros/B.hs
  tests/PackageTests/Macros/Main.hs
  tests/PackageTests/Macros/macros.cabal
  tests/PackageTests/Macros/src/C.hs
241
  tests/PackageTests/Options.hs
242 243
  tests/PackageTests/OrderFlags/Foo.hs
  tests/PackageTests/OrderFlags/my.cabal
244 245 246
  tests/PackageTests/PathsModule/Executable/Main.hs
  tests/PackageTests/PathsModule/Executable/my.cabal
  tests/PackageTests/PathsModule/Library/my.cabal
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
247
  tests/PackageTests/PreProcess/Foo.hsc
248
  tests/PackageTests/PreProcess/Main.hs
249
  tests/PackageTests/PreProcess/my.cabal
250 251 252
  tests/PackageTests/PreProcessExtraSources/Foo.hsc
  tests/PackageTests/PreProcessExtraSources/Main.hs
  tests/PackageTests/PreProcessExtraSources/my.cabal
253 254
  tests/PackageTests/ReexportedModules/containers-dupe/Data/Map.hs
  tests/PackageTests/ReexportedModules/containers-dupe/containers-dupe.cabal
255 256
  tests/PackageTests/ReexportedModules/p/Private.hs
  tests/PackageTests/ReexportedModules/p/Public.hs
257 258 259
  tests/PackageTests/ReexportedModules/p/fail-ambiguous.cabal
  tests/PackageTests/ReexportedModules/p/fail-missing.cabal
  tests/PackageTests/ReexportedModules/p/fail-other.cabal
260 261 262
  tests/PackageTests/ReexportedModules/p/p.cabal
  tests/PackageTests/ReexportedModules/q/A.hs
  tests/PackageTests/ReexportedModules/q/q.cabal
263
  tests/PackageTests/Regression/T3294/T3294.cabal
264 265
  tests/PackageTests/Regression/T3847/Main.hs
  tests/PackageTests/Regression/T3847/T3847.cabal
266 267 268 269 270 271 272 273
  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
274 275 276 277
  tests/PackageTests/TemplateHaskell/vanilla/Exe.hs
  tests/PackageTests/TemplateHaskell/vanilla/Lib.hs
  tests/PackageTests/TemplateHaskell/vanilla/TH.hs
  tests/PackageTests/TemplateHaskell/vanilla/my.cabal
278 279 280 281 282
  tests/PackageTests/TestNameCollision/child/Child.hs
  tests/PackageTests/TestNameCollision/child/child.cabal
  tests/PackageTests/TestNameCollision/child/tests/Test.hs
  tests/PackageTests/TestNameCollision/parent/Parent.hs
  tests/PackageTests/TestNameCollision/parent/parent.cabal
283 284
  tests/PackageTests/TestOptions/TestOptions.cabal
  tests/PackageTests/TestOptions/test-TestOptions.hs
285
  tests/PackageTests/TestStanza/my.cabal
ttuegel's avatar
ttuegel committed
286 287
  tests/PackageTests/TestSuiteTests/ExeV10/Foo.hs
  tests/PackageTests/TestSuiteTests/ExeV10/my.cabal
288
  tests/PackageTests/TestSuiteTests/ExeV10/tests/test-Foo.hs
289
  tests/PackageTests/TestSuiteTests/ExeV10/tests/test-Short.hs
290
  tests/PackageTests/TestSuiteTests/LibV09/Lib.hs
291
  tests/PackageTests/TestSuiteTests/LibV09/LibV09.cabal
292
  tests/PackageTests/TestSuiteTests/LibV09/tests/Deadlock.hs
293
  tests/PackageTests/Tests.hs
294 295 296 297
  tests/PackageTests/UniqueIPID/P1/M.hs
  tests/PackageTests/UniqueIPID/P1/my.cabal
  tests/PackageTests/UniqueIPID/P2/M.hs
  tests/PackageTests/UniqueIPID/P2/my.cabal
298
  tests/PackageTests/multInst/my.cabal
299 300 301
  tests/Setup.hs
  tests/hackage/check.sh
  tests/hackage/download.sh
302 303
  tests/hackage/unpack.sh
  tests/misc/ghc-supported-languages.hs
304
  -- END gen-extra-source-files
305

306
source-repository head
307 308
  type:     git
  location: https://github.com/haskell/cabal/
309
  subdir:   Cabal
310

311 312 313
flag bundled-binary-generic
  default: False

314 315 316 317
flag old-directory
  description:  Use directory < 1.2 and old-time
  default:      False

318
library
319
  build-depends:
320 321 322 323
    array      >= 0.1 && < 0.6,
    base       >= 4.5 && < 5,
    bytestring >= 0.9 && < 1,
    containers >= 0.4 && < 0.6,
324
    deepseq    >= 1.3 && < 1.5,
325 326
    filepath   >= 1.3 && < 1.5,
    pretty     >= 1.1 && < 1.2,
327
    process    >= 1.1.0.1 && < 1.5,
328
    time       >= 1.4 && < 1.7
329

330 331 332 333 334 335 336
  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.3,
                   process   >= 1.1.0.2  && < 1.5

337 338 339
  if flag(bundled-binary-generic)
    build-depends: binary >= 0.5 && < 0.7
  else
340
    build-depends: binary >= 0.7 && < 0.9
341

ttuegel's avatar
ttuegel committed
342 343 344 345
  -- Needed for GHC.Generics before GHC 7.6
  if impl(ghc < 7.6)
    build-depends: ghc-prim >= 0.2 && < 0.3

346
  if !os(windows)
347
    build-depends:
348
      unix >= 2.5 && < 2.8
349

Ben Gamari's avatar
Ben Gamari committed
350 351 352 353
  if os(windows)
    build-depends:
      Win32 >= 2.2 && < 2.4

354
  ghc-options: -Wall -fno-ignore-asserts -fwarn-tabs
355
  if impl(ghc >= 8.0)
356 357
    ghc-options: -Wcompat -Wnoncanonical-monad-instances
                 -Wnoncanonical-monadfail-instances
358

359
  exposed-modules:
360
    Distribution.Backpack
361 362 363 364 365 366 367 368 369
    Distribution.Backpack.Configure
    Distribution.Backpack.ComponentsGraph
    Distribution.Backpack.ConfiguredComponent
    Distribution.Backpack.FullUnitId
    Distribution.Backpack.LinkedComponent
    Distribution.Backpack.ModSubst
    Distribution.Backpack.ModuleShape
    Distribution.Utils.LogProgress
    Distribution.Utils.MapAccum
ttuegel's avatar
ttuegel committed
370
    Distribution.Compat.CreatePipe
371
    Distribution.Compat.Environment
372
    Distribution.Compat.Exception
373
    Distribution.Compat.Graph
374
    Distribution.Compat.Internal.TempFile
375
    Distribution.Compat.Prelude.Internal
376
    Distribution.Compat.ReadP
377
    Distribution.Compat.Semigroup
378
    Distribution.Compat.Stack
379
    Distribution.Compat.Time
380 381 382 383 384 385 386 387 388 389 390 391 392
    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
Oleg Grenrus's avatar
Oleg Grenrus committed
393
    Distribution.PrettyUtils
394 395 396 397 398 399 400 401 402 403 404 405 406
    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
407
    Distribution.Simple.GHCJS
408
    Distribution.Simple.Haddock
409
    Distribution.Simple.HaskellSuite
410 411 412 413 414 415 416 417 418 419 420 421 422
    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
423
    Distribution.Simple.Program.Find
424 425 426
    Distribution.Simple.Program.GHC
    Distribution.Simple.Program.HcPkg
    Distribution.Simple.Program.Hpc
427
    Distribution.Simple.Program.Internal
428 429 430
    Distribution.Simple.Program.Ld
    Distribution.Simple.Program.Run
    Distribution.Simple.Program.Script
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
431
    Distribution.Simple.Program.Strip
432 433 434 435 436
    Distribution.Simple.Program.Types
    Distribution.Simple.Register
    Distribution.Simple.Setup
    Distribution.Simple.SrcDist
    Distribution.Simple.Test
ttuegel's avatar
ttuegel committed
437 438 439
    Distribution.Simple.Test.ExeV10
    Distribution.Simple.Test.LibV09
    Distribution.Simple.Test.Log
440 441 442 443 444 445
    Distribution.Simple.UHC
    Distribution.Simple.UserHooks
    Distribution.Simple.Utils
    Distribution.System
    Distribution.TestSuite
    Distribution.Text
446 447 448 449 450 451 452 453 454
    Distribution.Types.Benchmark
    Distribution.Types.BenchmarkInterface
    Distribution.Types.BenchmarkType
    Distribution.Types.BuildInfo
    Distribution.Types.BuildType
    Distribution.Types.Executable
    Distribution.Types.Library
    Distribution.Types.ModuleReexport
    Distribution.Types.ModuleRenaming
455
    Distribution.Types.IncludeRenaming
456 457 458 459 460 461 462 463 464 465 466 467
    Distribution.Types.SetupBuildInfo
    Distribution.Types.TestSuite
    Distribution.Types.TestSuiteInterface
    Distribution.Types.TestType
    Distribution.Types.ComponentName
    Distribution.Types.GenericPackageDescription
    Distribution.Types.HookedBuildInfo
    Distribution.Types.PackageDescription
    Distribution.Types.SourceRepo
    Distribution.Types.Component
    Distribution.Types.ComponentLocalBuildInfo
    Distribution.Types.LocalBuildInfo
468
    Distribution.Types.ComponentRequestedSpec
469
    Distribution.Types.TargetInfo
470
    Distribution.Utils.NubList
471
    Distribution.Utils.ShortText
472
    Distribution.Utils.Progress
473 474
    Distribution.Verbosity
    Distribution.Version
475
    Language.Haskell.Extension
476
    Distribution.Compat.Binary
477

478
  other-modules:
479 480 481 482 483 484 485
    Distribution.Backpack.PreExistingComponent
    Distribution.Backpack.ReadyComponent
    Distribution.Backpack.MixLink
    Distribution.Backpack.ModuleScope
    Distribution.Backpack.UnifyM
    Distribution.Backpack.Id
    Distribution.Utils.UnionFind
486
    Distribution.Utils.Base62
487
    Distribution.Compat.CopyFile
488
    Distribution.Compat.GetShortPathName
489
    Distribution.Compat.MonadFail
Oleg Grenrus's avatar
Oleg Grenrus committed
490
    Distribution.Compat.DList
491
    Distribution.Compat.Prelude
492
    Distribution.GetOpt
493
    Distribution.Lex
494
    Distribution.Utils.String
495
    Distribution.Simple.GHC.Internal
496
    Distribution.Simple.GHC.IPI642
497
    Distribution.Simple.GHC.IPIConvert
498
    Distribution.Simple.GHC.ImplInfo
499
    Paths_Cabal
500

501 502 503 504 505
  if flag(bundled-binary-generic)
    other-modules:
      Distribution.Compat.Binary.Class
      Distribution.Compat.Binary.Generic

506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535
  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
536

537
-- Small, fast running tests.
538 539
test-suite unit-tests
  type: exitcode-stdio-1.0
540
  hs-source-dirs: tests
541
  other-modules:
542 543
    Test.Laws
    Test.QuickCheck.Utils
544 545
    UnitTests.Distribution.Compat.CreatePipe
    UnitTests.Distribution.Compat.ReadP
546
    UnitTests.Distribution.Compat.Time
547
    UnitTests.Distribution.Compat.Graph
548
    UnitTests.Distribution.Simple.Program.Internal
549
    UnitTests.Distribution.Simple.Utils
550
    UnitTests.Distribution.System
551
    UnitTests.Distribution.Utils.NubList
552
    UnitTests.Distribution.Utils.ShortText
553
    UnitTests.Distribution.Version
554
  main-is: UnitTests.hs
555
  build-depends:
556
    array,
557
    base,
558
    containers,
559
    directory,
560
    filepath,
561 562 563
    tasty,
    tasty-hunit,
    tasty-quickcheck,
564
    tagged,
565
    pretty,
Oleg Grenrus's avatar
Oleg Grenrus committed
566
    QuickCheck >= 2.7 && < 2.10,
567
    Cabal
tibbe's avatar
tibbe committed
568
  ghc-options: -Wall
569
  default-language: Haskell2010
570 571 572 573 574

-- Large, system tests that build packages.
test-suite package-tests
  type: exitcode-stdio-1.0
  main-is: PackageTests.hs
575
  other-modules:
fmaste's avatar
fmaste committed
576 577
    PackageTests.AutogenModules.Package.Check
    PackageTests.AutogenModules.SrcDist.Check
578
    PackageTests.BenchmarkStanza.Check
579 580
    PackageTests.BuildDeps.GlobalBuildDepsNotAdditive1.Check
    PackageTests.BuildDeps.GlobalBuildDepsNotAdditive2.Check
581
    PackageTests.CaretOperator.Check
582
    PackageTests.DeterministicAr.Check
583
    PackageTests.TestStanza.Check
ttuegel's avatar
ttuegel committed
584
    PackageTests.TestSuiteTests.ExeV10.Check
585
    PackageTests.PackageTester
586 587
  hs-source-dirs: tests
  build-depends:
588
    base,
589
    containers,
590
    tagged,
591 592
    tasty,
    tasty-hunit,
593
    transformers,
594
    time,
595 596 597 598
    Cabal,
    process,
    directory,
    filepath,
599
    bytestring,
600 601
    regex-posix,
    old-time
tibbe's avatar
tibbe committed
602
  if !os(windows)
603
    build-depends: unix, exceptions
604
  ghc-options: -Wall -rtsopts
605
  default-extensions: CPP
606
  default-language: Haskell2010