Cabal.cabal 16.5 KB
Newer Older
1
name: Cabal
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
2
version: 1.25.0.0
3
copyright: 2003-2016, Cabal Development Team
4
5
license: BSD3
license-file: LICENSE
6
author: Cabal Development Team <cabal-devel@haskell.org>
7
8
maintainer: cabal-devel@haskell.org
homepage: http://www.haskell.org/cabal/
9
bug-reports: https://github.com/haskell/cabal/issues
10
11
synopsis: A framework for packaging Haskell software
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.
18
category: Distribution
19
cabal-version: >=1.10
20
21
22
build-type: Simple
-- 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
  tests/PackageTests/ReexportedModules/ReexportedModules.cabal
173
174
175
  tests/PackageTests/RegisterAssumeDepsUpToDate/P.hs
  tests/PackageTests/RegisterAssumeDepsUpToDate/RegisterOneShot.cabal
  tests/PackageTests/RegisterAssumeDepsUpToDate/q/Q.hs
176
  tests/PackageTests/Regression/T3294/T3294.cabal
177
178
179
180
181
182
183
184
  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
185
186
187
188
  tests/PackageTests/TemplateHaskell/vanilla/Exe.hs
  tests/PackageTests/TemplateHaskell/vanilla/Lib.hs
  tests/PackageTests/TemplateHaskell/vanilla/TH.hs
  tests/PackageTests/TemplateHaskell/vanilla/my.cabal
189
190
191
192
193
  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
194
195
  tests/PackageTests/TestOptions/TestOptions.cabal
  tests/PackageTests/TestOptions/test-TestOptions.hs
196
  tests/PackageTests/TestStanza/my.cabal
ttuegel's avatar
ttuegel committed
197
198
  tests/PackageTests/TestSuiteTests/ExeV10/Foo.hs
  tests/PackageTests/TestSuiteTests/ExeV10/my.cabal
199
  tests/PackageTests/TestSuiteTests/ExeV10/tests/test-Foo.hs
200
  tests/PackageTests/TestSuiteTests/ExeV10/tests/test-Short.hs
201
  tests/PackageTests/TestSuiteTests/LibV09/Lib.hs
202
  tests/PackageTests/TestSuiteTests/LibV09/LibV09.cabal
203
  tests/PackageTests/TestSuiteTests/LibV09/tests/Deadlock.hs
204
  tests/PackageTests/Tests.hs
205
206
207
208
  tests/PackageTests/UniqueIPID/P1/M.hs
  tests/PackageTests/UniqueIPID/P1/my.cabal
  tests/PackageTests/UniqueIPID/P2/M.hs
  tests/PackageTests/UniqueIPID/P2/my.cabal
209
  tests/PackageTests/multInst/my.cabal
210
211
212
  tests/Setup.hs
  tests/hackage/check.sh
  tests/hackage/download.sh
213
214
  tests/hackage/unpack.sh
  tests/misc/ghc-supported-languages.hs
215
  -- END gen-extra-source-files
216

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

222
223
224
flag bundled-binary-generic
  default: False

225
226
227
228
flag old-directory
  description:  Use directory < 1.2 and old-time
  default:      False

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

241
242
243
244
245
246
247
  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

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

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

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

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

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

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

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

361
362
363
364
365
  if flag(bundled-binary-generic)
    other-modules:
      Distribution.Compat.Binary.Class
      Distribution.Compat.Binary.Generic

366
  default-language: Haskell98
367

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

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