Cabal.cabal 16.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
  doc/Cabal.css doc/developing-packages.markdown doc/index.markdown
tibbe's avatar
tibbe committed
27
28
  doc/installing-packages.markdown
  doc/misc.markdown
29

30
31
32
  -- Generated with 'misc/gen-extra-source-files.sh'
  -- Do NOT edit this section manually; instead, run the script.
  -- BEGIN gen-extra-source-files
33
34
35
36
  tests/PackageTests/AllowNewer/AllowNewer.cabal
  tests/PackageTests/AllowNewer/benchmarks/Bench.hs
  tests/PackageTests/AllowNewer/src/Foo.hs
  tests/PackageTests/AllowNewer/tests/Test.hs
37
38
39
  tests/PackageTests/BenchmarkExeV10/Foo.hs
  tests/PackageTests/BenchmarkExeV10/benchmarks/bench-Foo.hs
  tests/PackageTests/BenchmarkExeV10/my.cabal
40
  tests/PackageTests/BenchmarkOptions/BenchmarkOptions.cabal
41
42
  tests/PackageTests/BenchmarkOptions/test-BenchmarkOptions.hs
  tests/PackageTests/BenchmarkStanza/my.cabal
43
  tests/PackageTests/BuildAssumeDepsUpToDate/BuildAssumeDepsUpToDate.cabal
44
  tests/PackageTests/BuildDeps/GlobalBuildDepsNotAdditive1/GlobalBuildDepsNotAdditive1.cabal
45
  tests/PackageTests/BuildDeps/GlobalBuildDepsNotAdditive1/MyLibrary.hs
46
47
48
  tests/PackageTests/BuildDeps/GlobalBuildDepsNotAdditive2/GlobalBuildDepsNotAdditive2.cabal
  tests/PackageTests/BuildDeps/GlobalBuildDepsNotAdditive2/lemon.hs
  tests/PackageTests/BuildDeps/InternalLibrary0/MyLibrary.hs
49
  tests/PackageTests/BuildDeps/InternalLibrary0/my.cabal
50
51
  tests/PackageTests/BuildDeps/InternalLibrary0/programs/lemon.hs
  tests/PackageTests/BuildDeps/InternalLibrary1/MyLibrary.hs
52
  tests/PackageTests/BuildDeps/InternalLibrary1/my.cabal
53
54
  tests/PackageTests/BuildDeps/InternalLibrary1/programs/lemon.hs
  tests/PackageTests/BuildDeps/InternalLibrary2/MyLibrary.hs
55
  tests/PackageTests/BuildDeps/InternalLibrary2/my.cabal
56
  tests/PackageTests/BuildDeps/InternalLibrary2/programs/lemon.hs
57
58
  tests/PackageTests/BuildDeps/InternalLibrary2/to-install/MyLibrary.hs
  tests/PackageTests/BuildDeps/InternalLibrary2/to-install/my.cabal
59
  tests/PackageTests/BuildDeps/InternalLibrary3/MyLibrary.hs
60
  tests/PackageTests/BuildDeps/InternalLibrary3/my.cabal
61
  tests/PackageTests/BuildDeps/InternalLibrary3/programs/lemon.hs
62
63
  tests/PackageTests/BuildDeps/InternalLibrary3/to-install/MyLibrary.hs
  tests/PackageTests/BuildDeps/InternalLibrary3/to-install/my.cabal
64
  tests/PackageTests/BuildDeps/InternalLibrary4/MyLibrary.hs
65
  tests/PackageTests/BuildDeps/InternalLibrary4/my.cabal
66
  tests/PackageTests/BuildDeps/InternalLibrary4/programs/lemon.hs
67
68
69
  tests/PackageTests/BuildDeps/InternalLibrary4/to-install/MyLibrary.hs
  tests/PackageTests/BuildDeps/InternalLibrary4/to-install/my.cabal
  tests/PackageTests/BuildDeps/SameDepsAllRound/MyLibrary.hs
70
71
72
  tests/PackageTests/BuildDeps/SameDepsAllRound/SameDepsAllRound.cabal
  tests/PackageTests/BuildDeps/SameDepsAllRound/lemon.hs
  tests/PackageTests/BuildDeps/SameDepsAllRound/pineapple.hs
73
74
75
76
77
78
79
80
81
  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
82
  tests/PackageTests/BuildTestSuiteDetailedV09/Dummy2.hs
83
84
  tests/PackageTests/BuildableField/BuildableField.cabal
  tests/PackageTests/BuildableField/Main.hs
85
86
87
  tests/PackageTests/CMain/Bar.hs
  tests/PackageTests/CMain/foo.c
  tests/PackageTests/CMain/my.cabal
88
89
  tests/PackageTests/Configure/A.hs
  tests/PackageTests/Configure/Setup.hs
90
  tests/PackageTests/Configure/X11.buildinfo.in
91
  tests/PackageTests/Configure/X11.cabal
92
  tests/PackageTests/Configure/include/HsX11Config.h.in
93
94
  tests/PackageTests/CopyAssumeDepsUpToDate/CopyAssumeDepsUpToDate.cabal
  tests/PackageTests/CopyAssumeDepsUpToDate/Main.hs
95
  tests/PackageTests/CopyAssumeDepsUpToDate/P.hs
96
97
98
99
100
101
  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
102
103
104
105
  tests/PackageTests/CustomPreProcess/Hello.hs
  tests/PackageTests/CustomPreProcess/MyCustomPreprocessor.hs
  tests/PackageTests/CustomPreProcess/Setup.hs
  tests/PackageTests/CustomPreProcess/internal-preprocessor-test.cabal
106
107
  tests/PackageTests/DeterministicAr/Lib.hs
  tests/PackageTests/DeterministicAr/my.cabal
108
109
110
111
  tests/PackageTests/DuplicateModuleName/DuplicateModuleName.cabal
  tests/PackageTests/DuplicateModuleName/src/Foo.hs
  tests/PackageTests/DuplicateModuleName/tests/Foo.hs
  tests/PackageTests/DuplicateModuleName/tests2/Foo.hs
112
  tests/PackageTests/EmptyLib/empty/empty.cabal
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
  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
131
132
  tests/PackageTests/Haddock/CPP.hs
  tests/PackageTests/Haddock/Literate.lhs
133
  tests/PackageTests/Haddock/NoCPP.hs
134
  tests/PackageTests/Haddock/Simple.hs
135
  tests/PackageTests/Haddock/my.cabal
Edward Z. Yang's avatar
Edward Z. Yang committed
136
137
138
  tests/PackageTests/HaddockNewline/A.hs
  tests/PackageTests/HaddockNewline/HaddockNewline.cabal
  tests/PackageTests/HaddockNewline/Setup.hs
139
140
141
142
143
144
145
146
147
148
149
150
151
152
  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
153
154
  tests/PackageTests/InternalLibraries/r/R.hs
  tests/PackageTests/InternalLibraries/r/r.cabal
155
156
157
158
159
  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
160
  tests/PackageTests/Options.hs
161
162
  tests/PackageTests/OrderFlags/Foo.hs
  tests/PackageTests/OrderFlags/my.cabal
163
164
165
  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
166
  tests/PackageTests/PreProcess/Foo.hsc
167
  tests/PackageTests/PreProcess/Main.hs
168
  tests/PackageTests/PreProcess/my.cabal
169
170
171
  tests/PackageTests/PreProcessExtraSources/Foo.hsc
  tests/PackageTests/PreProcessExtraSources/Main.hs
  tests/PackageTests/PreProcessExtraSources/my.cabal
172
173
174
  tests/PackageTests/ReexportedModules/p/p.cabal
  tests/PackageTests/ReexportedModules/q/A.hs
  tests/PackageTests/ReexportedModules/q/q.cabal
175
176
177
  tests/PackageTests/RegisterAssumeDepsUpToDate/P.hs
  tests/PackageTests/RegisterAssumeDepsUpToDate/RegisterOneShot.cabal
  tests/PackageTests/RegisterAssumeDepsUpToDate/q/Q.hs
178
  tests/PackageTests/Regression/T3294/T3294.cabal
179
180
181
182
183
184
185
186
  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
187
188
189
190
  tests/PackageTests/TemplateHaskell/vanilla/Exe.hs
  tests/PackageTests/TemplateHaskell/vanilla/Lib.hs
  tests/PackageTests/TemplateHaskell/vanilla/TH.hs
  tests/PackageTests/TemplateHaskell/vanilla/my.cabal
191
192
193
194
195
  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
196
197
  tests/PackageTests/TestOptions/TestOptions.cabal
  tests/PackageTests/TestOptions/test-TestOptions.hs
198
  tests/PackageTests/TestStanza/my.cabal
ttuegel's avatar
ttuegel committed
199
200
  tests/PackageTests/TestSuiteTests/ExeV10/Foo.hs
  tests/PackageTests/TestSuiteTests/ExeV10/my.cabal
201
  tests/PackageTests/TestSuiteTests/ExeV10/tests/test-Foo.hs
202
  tests/PackageTests/TestSuiteTests/ExeV10/tests/test-Short.hs
203
  tests/PackageTests/TestSuiteTests/LibV09/Lib.hs
204
  tests/PackageTests/TestSuiteTests/LibV09/LibV09.cabal
205
  tests/PackageTests/TestSuiteTests/LibV09/tests/Deadlock.hs
206
  tests/PackageTests/Tests.hs
207
208
209
210
  tests/PackageTests/UniqueIPID/P1/M.hs
  tests/PackageTests/UniqueIPID/P1/my.cabal
  tests/PackageTests/UniqueIPID/P2/M.hs
  tests/PackageTests/UniqueIPID/P2/my.cabal
211
  tests/PackageTests/multInst/my.cabal
212
213
214
  tests/Setup.hs
  tests/hackage/check.sh
  tests/hackage/download.sh
215
216
  tests/hackage/unpack.sh
  tests/misc/ghc-supported-languages.hs
217
  -- END gen-extra-source-files
218

219
source-repository head
220
221
  type:     git
  location: https://github.com/haskell/cabal/
222
  subdir:   Cabal
223

224
225
226
flag bundled-binary-generic
  default: False

227
228
229
230
flag old-directory
  description:  Use directory < 1.2 and old-time
  default:      False

231
library
232
  build-depends:
233
234
235
236
    array      >= 0.1 && < 0.6,
    base       >= 4.5 && < 5,
    bytestring >= 0.9 && < 1,
    containers >= 0.4 && < 0.6,
237
    deepseq    >= 1.3 && < 1.5,
238
239
    filepath   >= 1.3 && < 1.5,
    pretty     >= 1.1 && < 1.2,
240
    process    >= 1.1.0.1 && < 1.5,
241
    time       >= 1.4 && < 1.7
242

243
244
245
246
247
248
249
  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

250
251
252
  if flag(bundled-binary-generic)
    build-depends: binary >= 0.5 && < 0.7
  else
253
    build-depends: binary >= 0.7 && < 0.9
254

ttuegel's avatar
ttuegel committed
255
256
257
258
  -- Needed for GHC.Generics before GHC 7.6
  if impl(ghc < 7.6)
    build-depends: ghc-prim >= 0.2 && < 0.3

259
  if !os(windows)
260
    build-depends:
261
      unix >= 2.5 && < 2.8
262

Ben Gamari's avatar
Ben Gamari committed
263
264
265
266
  if os(windows)
    build-depends:
      Win32 >= 2.2 && < 2.4

267
  ghc-options: -Wall -fno-ignore-asserts -fwarn-tabs
268
  if impl(ghc >= 8.0)
269
270
    ghc-options: -Wcompat -Wnoncanonical-monad-instances
                 -Wnoncanonical-monadfail-instances
271

272
  exposed-modules:
ttuegel's avatar
ttuegel committed
273
    Distribution.Compat.CreatePipe
274
    Distribution.Compat.Environment
275
    Distribution.Compat.Exception
276
    Distribution.Compat.Graph
277
    Distribution.Compat.Internal.TempFile
278
    Distribution.Compat.ReadP
279
    Distribution.Compat.Semigroup
280
    Distribution.Compat.Time
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
    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
307
    Distribution.Simple.GHCJS
308
    Distribution.Simple.Haddock
309
    Distribution.Simple.HaskellSuite
310
311
312
313
314
315
316
317
318
319
320
321
322
    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
323
    Distribution.Simple.Program.Find
324
325
326
    Distribution.Simple.Program.GHC
    Distribution.Simple.Program.HcPkg
    Distribution.Simple.Program.Hpc
327
    Distribution.Simple.Program.Internal
328
329
330
    Distribution.Simple.Program.Ld
    Distribution.Simple.Program.Run
    Distribution.Simple.Program.Script
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
331
    Distribution.Simple.Program.Strip
332
333
334
335
336
    Distribution.Simple.Program.Types
    Distribution.Simple.Register
    Distribution.Simple.Setup
    Distribution.Simple.SrcDist
    Distribution.Simple.Test
ttuegel's avatar
ttuegel committed
337
338
339
    Distribution.Simple.Test.ExeV10
    Distribution.Simple.Test.LibV09
    Distribution.Simple.Test.Log
340
341
342
343
344
345
    Distribution.Simple.UHC
    Distribution.Simple.UserHooks
    Distribution.Simple.Utils
    Distribution.System
    Distribution.TestSuite
    Distribution.Text
346
    Distribution.Utils.NubList
347
348
    Distribution.Verbosity
    Distribution.Version
349
    Language.Haskell.Extension
350
    Distribution.Compat.Binary
351

352
  other-modules:
353
    Distribution.Compat.CopyFile
354
    Distribution.Compat.GetShortPathName
355
    Distribution.Compat.MonadFail
356
    Distribution.GetOpt
357
    Distribution.Lex
358
    Distribution.Simple.GHC.Internal
359
    Distribution.Simple.GHC.IPI642
360
    Distribution.Simple.GHC.IPIConvert
361
    Distribution.Simple.GHC.ImplInfo
362
    Paths_Cabal
363

364
365
366
367
368
  if flag(bundled-binary-generic)
    other-modules:
      Distribution.Compat.Binary.Class
      Distribution.Compat.Binary.Generic

369
  default-language: Haskell98
370

371
-- Small, fast running tests.
372
373
test-suite unit-tests
  type: exitcode-stdio-1.0
374
  hs-source-dirs: tests
375
  other-modules:
376
377
    Test.Laws
    Test.QuickCheck.Utils
378
379
    UnitTests.Distribution.Compat.CreatePipe
    UnitTests.Distribution.Compat.ReadP
380
    UnitTests.Distribution.Compat.Time
381
    UnitTests.Distribution.Compat.Graph
382
    UnitTests.Distribution.Simple.Program.Internal
383
    UnitTests.Distribution.Simple.Utils
384
    UnitTests.Distribution.System
385
    UnitTests.Distribution.Utils.NubList
386
    UnitTests.Distribution.Version
387
  main-is: UnitTests.hs
388
  build-depends:
389
    array,
390
    base,
391
    containers,
392
    directory,
393
    filepath,
394
395
396
    tasty,
    tasty-hunit,
    tasty-quickcheck,
397
    tagged,
398
    pretty,
Oleg Grenrus's avatar
Oleg Grenrus committed
399
    QuickCheck >= 2.7 && < 2.10,
400
    Cabal
tibbe's avatar
tibbe committed
401
  ghc-options: -Wall
402
  default-language: Haskell98
403
404
405
406
407

-- Large, system tests that build packages.
test-suite package-tests
  type: exitcode-stdio-1.0
  main-is: PackageTests.hs
408
  other-modules:
409
410
    PackageTests.BenchmarkStanza.Check
    PackageTests.TestStanza.Check
411
    PackageTests.DeterministicAr.Check
ttuegel's avatar
ttuegel committed
412
    PackageTests.TestSuiteTests.ExeV10.Check
413
    PackageTests.PackageTester
414
415
  hs-source-dirs: tests
  build-depends:
416
    base,
417
    containers,
418
    tagged,
419
420
    tasty,
    tasty-hunit,
421
    transformers,
422
    time,
423
424
425
426
    Cabal,
    process,
    directory,
    filepath,
427
    bytestring,
428
429
    regex-posix,
    old-time
tibbe's avatar
tibbe committed
430
  if !os(windows)
431
    build-depends: unix, exceptions
432
  ghc-options: -Wall -rtsopts
433
  default-extensions: CPP
434
  default-language: Haskell98