Cabal.cabal 16.7 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.Internal.TempFile
277
    Distribution.Compat.ReadP
278
    Distribution.Compat.Semigroup
279
    Distribution.Compat.Time
280
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
    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
306
    Distribution.Simple.GHCJS
307
    Distribution.Simple.Haddock
308
    Distribution.Simple.HaskellSuite
309
310
311
312
313
314
315
316
317
318
319
320
321
    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
322
    Distribution.Simple.Program.Find
323
324
325
    Distribution.Simple.Program.GHC
    Distribution.Simple.Program.HcPkg
    Distribution.Simple.Program.Hpc
326
    Distribution.Simple.Program.Internal
327
328
329
    Distribution.Simple.Program.Ld
    Distribution.Simple.Program.Run
    Distribution.Simple.Program.Script
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
330
    Distribution.Simple.Program.Strip
331
332
333
334
335
    Distribution.Simple.Program.Types
    Distribution.Simple.Register
    Distribution.Simple.Setup
    Distribution.Simple.SrcDist
    Distribution.Simple.Test
ttuegel's avatar
ttuegel committed
336
337
338
    Distribution.Simple.Test.ExeV10
    Distribution.Simple.Test.LibV09
    Distribution.Simple.Test.Log
339
340
341
342
343
344
    Distribution.Simple.UHC
    Distribution.Simple.UserHooks
    Distribution.Simple.Utils
    Distribution.System
    Distribution.TestSuite
    Distribution.Text
345
    Distribution.Utils.NubList
346
347
    Distribution.Verbosity
    Distribution.Version
348
    Language.Haskell.Extension
349
    Distribution.Compat.Binary
350

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

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

368
  default-language: Haskell98
369

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

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