Cabal.cabal 25.8 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 264 265 266 267 268 269 270
  tests/PackageTests/Regression/T2971/p/include/T2971test.h
  tests/PackageTests/Regression/T2971/p/p.cabal
  tests/PackageTests/Regression/T2971/q/Bar.hsc
  tests/PackageTests/Regression/T2971/q/Foo.hs
  tests/PackageTests/Regression/T2971/q/q.cabal
  tests/PackageTests/Regression/T2971a/Main.hsc
  tests/PackageTests/Regression/T2971a/T2971a.cabal
  tests/PackageTests/Regression/T2971a/include/T2971a.h
271
  tests/PackageTests/Regression/T3294/T3294.cabal
272 273
  tests/PackageTests/Regression/T3847/Main.hs
  tests/PackageTests/Regression/T3847/T3847.cabal
274 275 276 277 278 279 280 281
  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
282 283 284 285
  tests/PackageTests/TemplateHaskell/vanilla/Exe.hs
  tests/PackageTests/TemplateHaskell/vanilla/Lib.hs
  tests/PackageTests/TemplateHaskell/vanilla/TH.hs
  tests/PackageTests/TemplateHaskell/vanilla/my.cabal
286 287 288 289 290
  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
291 292
  tests/PackageTests/TestOptions/TestOptions.cabal
  tests/PackageTests/TestOptions/test-TestOptions.hs
293
  tests/PackageTests/TestStanza/my.cabal
ttuegel's avatar
ttuegel committed
294 295
  tests/PackageTests/TestSuiteTests/ExeV10/Foo.hs
  tests/PackageTests/TestSuiteTests/ExeV10/my.cabal
296
  tests/PackageTests/TestSuiteTests/ExeV10/tests/test-Foo.hs
297
  tests/PackageTests/TestSuiteTests/ExeV10/tests/test-Short.hs
298
  tests/PackageTests/TestSuiteTests/LibV09/Lib.hs
299
  tests/PackageTests/TestSuiteTests/LibV09/LibV09.cabal
300
  tests/PackageTests/TestSuiteTests/LibV09/tests/Deadlock.hs
301 302 303 304
  tests/PackageTests/UniqueIPID/P1/M.hs
  tests/PackageTests/UniqueIPID/P1/my.cabal
  tests/PackageTests/UniqueIPID/P2/M.hs
  tests/PackageTests/UniqueIPID/P2/my.cabal
305
  tests/PackageTests/multInst/my.cabal
306 307 308
  tests/Setup.hs
  tests/hackage/check.sh
  tests/hackage/download.sh
309 310
  tests/hackage/unpack.sh
  tests/misc/ghc-supported-languages.hs
311
  -- END gen-extra-source-files
312

313
source-repository head
314 315
  type:     git
  location: https://github.com/haskell/cabal/
316
  subdir:   Cabal
317

318 319 320
flag bundled-binary-generic
  default: False

321 322 323 324
flag old-directory
  description:  Use directory < 1.2 and old-time
  default:      False

Oleg Grenrus's avatar
Oleg Grenrus committed
325 326 327 328 329
flag parsec
  description:  Use parsec parser
  default:      False
  manual:       True

330
library
331
  build-depends:
332 333 334 335
    array      >= 0.1 && < 0.6,
    base       >= 4.5 && < 5,
    bytestring >= 0.9 && < 1,
    containers >= 0.4 && < 0.6,
336
    deepseq    >= 1.3 && < 1.5,
337 338
    filepath   >= 1.3 && < 1.5,
    pretty     >= 1.1 && < 1.2,
339
    process    >= 1.1.0.1 && < 1.5,
340
    time       >= 1.4 && < 1.7
341

342 343 344 345 346 347 348
  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

349 350 351
  if flag(bundled-binary-generic)
    build-depends: binary >= 0.5 && < 0.7
  else
352
    build-depends: binary >= 0.7 && < 0.9
353

ttuegel's avatar
ttuegel committed
354 355 356 357
  -- Needed for GHC.Generics before GHC 7.6
  if impl(ghc < 7.6)
    build-depends: ghc-prim >= 0.2 && < 0.3

358
  if !os(windows)
359
    build-depends:
360
      unix >= 2.5 && < 2.8
361

Ben Gamari's avatar
Ben Gamari committed
362 363 364 365
  if os(windows)
    build-depends:
      Win32 >= 2.2 && < 2.4

366
  ghc-options: -Wall -fno-ignore-asserts -fwarn-tabs
367
  if impl(ghc >= 8.0)
368 369
    ghc-options: -Wcompat -Wnoncanonical-monad-instances
                 -Wnoncanonical-monadfail-instances
370

371
  exposed-modules:
372
    Distribution.Backpack
373 374 375 376 377 378 379 380 381
    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
382
    Distribution.Compat.CreatePipe
383
    Distribution.Compat.Environment
384
    Distribution.Compat.Exception
385
    Distribution.Compat.Graph
386
    Distribution.Compat.Internal.TempFile
387
    Distribution.Compat.Prelude.Internal
388
    Distribution.Compat.ReadP
389
    Distribution.Compat.Semigroup
390
    Distribution.Compat.Stack
391
    Distribution.Compat.Time
392 393 394 395 396 397 398 399 400 401 402 403 404
    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
405
    Distribution.PrettyUtils
406 407 408 409 410 411 412 413 414 415 416 417 418
    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
419
    Distribution.Simple.GHCJS
420
    Distribution.Simple.Haddock
421
    Distribution.Simple.HaskellSuite
422 423 424 425 426 427 428 429 430 431 432 433 434
    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
435
    Distribution.Simple.Program.Find
436 437 438
    Distribution.Simple.Program.GHC
    Distribution.Simple.Program.HcPkg
    Distribution.Simple.Program.Hpc
439
    Distribution.Simple.Program.Internal
440 441 442
    Distribution.Simple.Program.Ld
    Distribution.Simple.Program.Run
    Distribution.Simple.Program.Script
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
443
    Distribution.Simple.Program.Strip
444 445 446 447 448
    Distribution.Simple.Program.Types
    Distribution.Simple.Register
    Distribution.Simple.Setup
    Distribution.Simple.SrcDist
    Distribution.Simple.Test
ttuegel's avatar
ttuegel committed
449 450 451
    Distribution.Simple.Test.ExeV10
    Distribution.Simple.Test.LibV09
    Distribution.Simple.Test.Log
452 453 454 455 456 457
    Distribution.Simple.UHC
    Distribution.Simple.UserHooks
    Distribution.Simple.Utils
    Distribution.System
    Distribution.TestSuite
    Distribution.Text
458 459 460 461 462 463 464 465 466
    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
467
    Distribution.Types.IncludeRenaming
468 469 470 471 472 473 474 475 476 477 478 479
    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
480
    Distribution.Types.ComponentRequestedSpec
481
    Distribution.Types.TargetInfo
482
    Distribution.Utils.NubList
483
    Distribution.Utils.ShortText
484
    Distribution.Utils.Progress
485 486
    Distribution.Verbosity
    Distribution.Version
487
    Language.Haskell.Extension
488
    Distribution.Compat.Binary
489

Oleg Grenrus's avatar
Oleg Grenrus committed
490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513
  if flag(parsec)
    cpp-options: -DCABAL_PARSEC
    build-depends:
      transformers,
      parsec >= 3.1.9 && <3.2
    build-tools:
      alex >= 3.1.4
    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
      Distribution.Compat.DList

  -- Move DList to other-module if/when D.C.Lens is done

514
  other-modules:
515 516 517 518 519 520 521
    Distribution.Backpack.PreExistingComponent
    Distribution.Backpack.ReadyComponent
    Distribution.Backpack.MixLink
    Distribution.Backpack.ModuleScope
    Distribution.Backpack.UnifyM
    Distribution.Backpack.Id
    Distribution.Utils.UnionFind
522
    Distribution.Utils.Base62
523
    Distribution.Compat.CopyFile
524
    Distribution.Compat.GetShortPathName
525
    Distribution.Compat.MonadFail
Oleg Grenrus's avatar
Oleg Grenrus committed
526
    Distribution.Compat.DList
527
    Distribution.Compat.Prelude
528
    Distribution.GetOpt
529
    Distribution.Lex
530
    Distribution.Utils.String
531
    Distribution.Simple.GHC.Internal
532
    Distribution.Simple.GHC.IPI642
533
    Distribution.Simple.GHC.IPIConvert
534
    Distribution.Simple.GHC.ImplInfo
535
    Paths_Cabal
536

537 538 539 540 541
  if flag(bundled-binary-generic)
    other-modules:
      Distribution.Compat.Binary.Class
      Distribution.Compat.Binary.Generic

542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571
  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
572

573
-- Small, fast running tests.
574 575
test-suite unit-tests
  type: exitcode-stdio-1.0
576
  hs-source-dirs: tests
577
  other-modules:
578 579
    Test.Laws
    Test.QuickCheck.Utils
580 581
    UnitTests.Distribution.Compat.CreatePipe
    UnitTests.Distribution.Compat.ReadP
582
    UnitTests.Distribution.Compat.Time
583
    UnitTests.Distribution.Compat.Graph
584
    UnitTests.Distribution.Simple.Program.Internal
585
    UnitTests.Distribution.Simple.Utils
586
    UnitTests.Distribution.System
587
    UnitTests.Distribution.Utils.NubList
588
    UnitTests.Distribution.Utils.ShortText
589
    UnitTests.Distribution.Version
590
  main-is: UnitTests.hs
591
  build-depends:
592
    array,
593
    base,
594
    containers,
595
    directory,
596
    filepath,
597 598 599
    tasty,
    tasty-hunit,
    tasty-quickcheck,
600
    tagged,
601
    pretty,
Oleg Grenrus's avatar
Oleg Grenrus committed
602
    QuickCheck >= 2.7 && < 2.10,
603
    Cabal
tibbe's avatar
tibbe committed
604
  ghc-options: -Wall
605
  default-language: Haskell2010
606 607 608 609 610

-- Large, system tests that build packages.
test-suite package-tests
  type: exitcode-stdio-1.0
  main-is: PackageTests.hs
611
  other-modules:
fmaste's avatar
fmaste committed
612 613
    PackageTests.AutogenModules.Package.Check
    PackageTests.AutogenModules.SrcDist.Check
614
    PackageTests.BenchmarkStanza.Check
615 616
    PackageTests.BuildDeps.GlobalBuildDepsNotAdditive1.Check
    PackageTests.BuildDeps.GlobalBuildDepsNotAdditive2.Check
617
    PackageTests.CaretOperator.Check
618
    PackageTests.DeterministicAr.Check
619
    PackageTests.TestStanza.Check
ttuegel's avatar
ttuegel committed
620
    PackageTests.TestSuiteTests.ExeV10.Check
621
    PackageTests.PackageTester
622
    PackageTests.Tests
623 624
  hs-source-dirs: tests
  build-depends:
625
    base,
626
    containers,
627
    tagged,
628 629
    tasty,
    tasty-hunit,
630
    transformers,
631
    time,
632 633 634 635
    Cabal,
    process,
    directory,
    filepath,
636
    bytestring,
637 638
    regex-posix,
    old-time
tibbe's avatar
tibbe committed
639
  if !os(windows)
640
    build-depends: unix, exceptions
641
  ghc-options: -Wall -rtsopts
642
  default-extensions: CPP
643
  default-language: Haskell2010
Oleg Grenrus's avatar
Oleg Grenrus committed
644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669

test-suite parser-tests
  if !flag(parsec)
    buildable: False

  type: exitcode-stdio-1.0
  main-is: ParserTests.hs
  other-modules:
    DiffInstances
    StructDiff
  hs-source-dirs: tests
  build-depends:
    base,
    containers,
    tar >=0.5 && <0.6,
    bytestring,
    directory,
    filepath,
    generics-sop ==0.2.*,
    these >=0.7.1 && <0.8,
    singleton-bool >=0.1.1.0 && <0.2,
    keys,
    Cabal
  ghc-options: -Wall -rtsopts
  default-extensions: CPP
  default-language: Haskell2010