Cabal.cabal 12.3 KB
Newer Older
1
name: Cabal
tibbe's avatar
tibbe committed
2
version: 1.23.0.0
3
copyright: 2003-2006, Isaac Jones
Duncan Coutts's avatar
Duncan Coutts committed
4
           2005-2011, Duncan Coutts
5
6
7
license: BSD3
license-file: LICENSE
author: Isaac Jones <ijones@syntaxpolice.org>
Duncan Coutts's avatar
Duncan Coutts committed
8
        Duncan Coutts <duncan@community.haskell.org>
9
10
maintainer: cabal-devel@haskell.org
homepage: http://www.haskell.org/cabal/
11
bug-reports: https://github.com/haskell/cabal/issues
12
13
synopsis: A framework for packaging Haskell software
description:
14
15
16
17
18
19
  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.
20
category: Distribution
21
cabal-version: >=1.10
22
23
24
build-type: Simple
-- If we use a new Cabal feature, this needs to be changed to Custom so
-- we can bootstrap.
25

26
extra-source-files:
27
  README.md tests/README.md changelog
tibbe's avatar
tibbe committed
28
29
30
  doc/developing-packages.markdown doc/index.markdown
  doc/installing-packages.markdown
  doc/misc.markdown
31

32
  -- Generated with 'misc/gen-extra-source-files.sh' & 'M-x sort-lines':
33
34
35
  tests/PackageTests/BenchmarkExeV10/Foo.hs
  tests/PackageTests/BenchmarkExeV10/benchmarks/bench-Foo.hs
  tests/PackageTests/BenchmarkExeV10/my.cabal
36
  tests/PackageTests/BenchmarkOptions/BenchmarkOptions.cabal
37
38
  tests/PackageTests/BenchmarkOptions/test-BenchmarkOptions.hs
  tests/PackageTests/BenchmarkStanza/my.cabal
39
  tests/PackageTests/BuildDeps/GlobalBuildDepsNotAdditive1/GlobalBuildDepsNotAdditive1.cabal
40
  tests/PackageTests/BuildDeps/GlobalBuildDepsNotAdditive1/MyLibrary.hs
41
42
43
  tests/PackageTests/BuildDeps/GlobalBuildDepsNotAdditive2/GlobalBuildDepsNotAdditive2.cabal
  tests/PackageTests/BuildDeps/GlobalBuildDepsNotAdditive2/lemon.hs
  tests/PackageTests/BuildDeps/InternalLibrary0/MyLibrary.hs
44
  tests/PackageTests/BuildDeps/InternalLibrary0/my.cabal
45
46
  tests/PackageTests/BuildDeps/InternalLibrary0/programs/lemon.hs
  tests/PackageTests/BuildDeps/InternalLibrary1/MyLibrary.hs
47
  tests/PackageTests/BuildDeps/InternalLibrary1/my.cabal
48
49
  tests/PackageTests/BuildDeps/InternalLibrary1/programs/lemon.hs
  tests/PackageTests/BuildDeps/InternalLibrary2/MyLibrary.hs
50
  tests/PackageTests/BuildDeps/InternalLibrary2/my.cabal
51
  tests/PackageTests/BuildDeps/InternalLibrary2/programs/lemon.hs
52
53
  tests/PackageTests/BuildDeps/InternalLibrary2/to-install/MyLibrary.hs
  tests/PackageTests/BuildDeps/InternalLibrary2/to-install/my.cabal
54
  tests/PackageTests/BuildDeps/InternalLibrary3/MyLibrary.hs
55
  tests/PackageTests/BuildDeps/InternalLibrary3/my.cabal
56
  tests/PackageTests/BuildDeps/InternalLibrary3/programs/lemon.hs
57
58
  tests/PackageTests/BuildDeps/InternalLibrary3/to-install/MyLibrary.hs
  tests/PackageTests/BuildDeps/InternalLibrary3/to-install/my.cabal
59
  tests/PackageTests/BuildDeps/InternalLibrary4/MyLibrary.hs
60
  tests/PackageTests/BuildDeps/InternalLibrary4/my.cabal
61
  tests/PackageTests/BuildDeps/InternalLibrary4/programs/lemon.hs
62
63
64
  tests/PackageTests/BuildDeps/InternalLibrary4/to-install/MyLibrary.hs
  tests/PackageTests/BuildDeps/InternalLibrary4/to-install/my.cabal
  tests/PackageTests/BuildDeps/SameDepsAllRound/MyLibrary.hs
65
66
67
  tests/PackageTests/BuildDeps/SameDepsAllRound/SameDepsAllRound.cabal
  tests/PackageTests/BuildDeps/SameDepsAllRound/lemon.hs
  tests/PackageTests/BuildDeps/SameDepsAllRound/pineapple.hs
68
69
70
71
72
73
74
75
76
  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
77
  tests/PackageTests/BuildTestSuiteDetailedV09/Dummy2.hs
78
79
80
81
  tests/PackageTests/CMain/Bar.hs
  tests/PackageTests/CMain/Setup.hs
  tests/PackageTests/CMain/foo.c
  tests/PackageTests/CMain/my.cabal
82
83
  tests/PackageTests/DeterministicAr/Lib.hs
  tests/PackageTests/DeterministicAr/my.cabal
84
  tests/PackageTests/EmptyLib/empty/empty.cabal
85
86
  tests/PackageTests/Haddock/CPP.hs
  tests/PackageTests/Haddock/Literate.lhs
87
  tests/PackageTests/Haddock/NoCPP.hs
88
  tests/PackageTests/Haddock/Simple.hs
89
  tests/PackageTests/Haddock/my.cabal
90
91
  tests/PackageTests/OrderFlags/Foo.hs
  tests/PackageTests/OrderFlags/my.cabal
92
93
94
  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
95
  tests/PackageTests/PreProcess/Foo.hsc
96
  tests/PackageTests/PreProcess/Main.hs
97
  tests/PackageTests/PreProcess/my.cabal
98
99
100
  tests/PackageTests/PreProcessExtraSources/Foo.hsc
  tests/PackageTests/PreProcessExtraSources/Main.hs
  tests/PackageTests/PreProcessExtraSources/my.cabal
101
  tests/PackageTests/ReexportedModules/ReexportedModules.cabal
102
103
104
105
106
107
108
109
  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
110
111
112
113
  tests/PackageTests/TemplateHaskell/vanilla/Exe.hs
  tests/PackageTests/TemplateHaskell/vanilla/Lib.hs
  tests/PackageTests/TemplateHaskell/vanilla/TH.hs
  tests/PackageTests/TemplateHaskell/vanilla/my.cabal
114
115
  tests/PackageTests/TestOptions/TestOptions.cabal
  tests/PackageTests/TestOptions/test-TestOptions.hs
116
  tests/PackageTests/TestStanza/my.cabal
ttuegel's avatar
ttuegel committed
117
118
  tests/PackageTests/TestSuiteTests/ExeV10/Foo.hs
  tests/PackageTests/TestSuiteTests/ExeV10/my.cabal
119
120
121
  tests/PackageTests/TestSuiteTests/ExeV10/tests/test-Foo.hs
  tests/PackageTests/TestSuiteTests/LibV09/LibV09.cabal
  tests/PackageTests/TestSuiteTests/LibV09/Lib.hs
122
  tests/PackageTests/TestSuiteTests/LibV09/tests/Deadlock.hs
123
  tests/Setup.hs
124
125
126
  tests/Test/Distribution/Version.hs
  tests/Test/Laws.hs
  tests/Test/QuickCheck/Utils.hs
127
128
  tests/hackage/check.sh
  tests/hackage/download.sh
129
130
  tests/hackage/unpack.sh
  tests/misc/ghc-supported-languages.hs
131

132
source-repository head
133
134
  type:     git
  location: https://github.com/haskell/cabal/
135
  subdir:   Cabal
136

137
138
139
flag bundled-binary-generic
  default: False

140
library
141
  build-depends:
142
    base       >= 4.4 && < 5,
143
    deepseq    >= 1.3 && < 1.5,
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
144
    filepath   >= 1   && < 1.5,
145
    directory  >= 1   && < 1.3,
146
    process    >= 1.1.0.1 && < 1.4,
147
    time       >= 1.1 && < 1.6,
148
149
150
    containers >= 0.1 && < 0.6,
    array      >= 0.1 && < 0.6,
    pretty     >= 1   && < 1.2,
151
    bytestring >= 0.9
152

153
154
155
156
157
  if flag(bundled-binary-generic)
    build-depends: binary >= 0.5 && < 0.7
  else
    build-depends: binary >= 0.7 && < 0.8

ttuegel's avatar
ttuegel committed
158
159
160
161
  -- Needed for GHC.Generics before GHC 7.6
  if impl(ghc < 7.6)
    build-depends: ghc-prim >= 0.2 && < 0.3

162
  if !os(windows)
163
    build-depends:
ian@well-typed.com's avatar
ian@well-typed.com committed
164
      unix >= 2.0 && < 2.8
165

166
  ghc-options: -Wall -fno-ignore-asserts -fwarn-tabs
167

168
  exposed-modules:
ttuegel's avatar
ttuegel committed
169
    Distribution.Compat.CreatePipe
170
    Distribution.Compat.Environment
171
    Distribution.Compat.Exception
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
    Distribution.Compat.ReadP
    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
199
    Distribution.Simple.GHCJS
200
    Distribution.Simple.Haddock
201
    Distribution.Simple.HaskellSuite
202
203
204
205
206
207
208
209
210
211
212
213
214
    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
215
    Distribution.Simple.Program.Find
216
217
218
    Distribution.Simple.Program.GHC
    Distribution.Simple.Program.HcPkg
    Distribution.Simple.Program.Hpc
219
    Distribution.Simple.Program.Internal
220
221
222
    Distribution.Simple.Program.Ld
    Distribution.Simple.Program.Run
    Distribution.Simple.Program.Script
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
223
    Distribution.Simple.Program.Strip
224
225
226
227
228
    Distribution.Simple.Program.Types
    Distribution.Simple.Register
    Distribution.Simple.Setup
    Distribution.Simple.SrcDist
    Distribution.Simple.Test
ttuegel's avatar
ttuegel committed
229
230
231
    Distribution.Simple.Test.ExeV10
    Distribution.Simple.Test.LibV09
    Distribution.Simple.Test.Log
232
233
234
235
236
237
    Distribution.Simple.UHC
    Distribution.Simple.UserHooks
    Distribution.Simple.Utils
    Distribution.System
    Distribution.TestSuite
    Distribution.Text
238
    Distribution.Utils.NubList
239
240
    Distribution.Verbosity
    Distribution.Version
241
    Language.Haskell.Extension
242

243
  other-modules:
244
    Distribution.Compat.Binary
245
246
247
    Distribution.Compat.CopyFile
    Distribution.Compat.TempFile
    Distribution.GetOpt
248
    Distribution.Lex
249
    Distribution.Simple.GHC.Internal
250
251
    Distribution.Simple.GHC.IPI641
    Distribution.Simple.GHC.IPI642
252
    Distribution.Simple.GHC.ImplInfo
253
    Paths_Cabal
254

255
256
257
258
259
  if flag(bundled-binary-generic)
    other-modules:
      Distribution.Compat.Binary.Class
      Distribution.Compat.Binary.Generic

260
261
  default-language: Haskell98
  default-extensions: CPP
262

263
-- Small, fast running tests.
264
265
test-suite unit-tests
  type: exitcode-stdio-1.0
266
  hs-source-dirs: tests
267
268
269
  other-modules:
    UnitTests.Distribution.Compat.CreatePipe
    UnitTests.Distribution.Compat.ReadP
270
    UnitTests.Distribution.Simple.Program.Internal
271
    UnitTests.Distribution.Utils.NubList
272
  main-is: UnitTests.hs
273
  build-depends:
274
    base,
275
276
277
    tasty,
    tasty-hunit,
    tasty-quickcheck,
278
    pretty,
279
    QuickCheck < 2.9,
280
    Cabal
tibbe's avatar
tibbe committed
281
  ghc-options: -Wall
282
  default-language: Haskell98
283
284
285
286
287

-- Large, system tests that build packages.
test-suite package-tests
  type: exitcode-stdio-1.0
  main-is: PackageTests.hs
288
  other-modules:
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
    PackageTests.BenchmarkExeV10.Check
    PackageTests.BenchmarkOptions.Check
    PackageTests.BenchmarkStanza.Check
    PackageTests.BuildDeps.GlobalBuildDepsNotAdditive1.Check
    PackageTests.BuildDeps.GlobalBuildDepsNotAdditive2.Check
    PackageTests.BuildDeps.InternalLibrary0.Check
    PackageTests.BuildDeps.InternalLibrary1.Check
    PackageTests.BuildDeps.InternalLibrary2.Check
    PackageTests.BuildDeps.InternalLibrary3.Check
    PackageTests.BuildDeps.InternalLibrary4.Check
    PackageTests.BuildDeps.SameDepsAllRound.Check
    PackageTests.BuildDeps.TargetSpecificDeps1.Check
    PackageTests.BuildDeps.TargetSpecificDeps2.Check
    PackageTests.BuildDeps.TargetSpecificDeps3.Check
    PackageTests.CMain.Check
304
    PackageTests.DeterministicAr.Check
305
    PackageTests.EmptyLib.Check
306
    PackageTests.Haddock.Check
307
    PackageTests.OrderFlags.Check
308
309
310
    PackageTests.PackageTester
    PackageTests.PathsModule.Executable.Check
    PackageTests.PathsModule.Library.Check
311
    PackageTests.PreProcess.Check
312
    PackageTests.PreProcessExtraSources.Check
313
    PackageTests.ReexportedModules.Check
314
315
316
    PackageTests.TemplateHaskell.Check
    PackageTests.TestOptions.Check
    PackageTests.TestStanza.Check
ttuegel's avatar
ttuegel committed
317
    PackageTests.TestSuiteTests.ExeV10.Check
318
    PackageTests.TestSuiteTests.LibV09.Check
319
320
321
    Test.Distribution.Version
    Test.Laws
    Test.QuickCheck.Utils
322
323
  hs-source-dirs: tests
  build-depends:
324
    base,
325
    containers,
326
327
328
329
    tasty,
    tasty-quickcheck,
    tasty-hunit,
    QuickCheck >= 2.1.0.1 && < 2.9,
330
331
332
333
334
    Cabal,
    process,
    directory,
    filepath,
    extensible-exceptions,
335
    bytestring,
336
337
    regex-posix,
    old-time
tibbe's avatar
tibbe committed
338
339
  if !os(windows)
    build-depends: unix
tibbe's avatar
tibbe committed
340
  ghc-options: -Wall
341
  default-extensions: CPP
342
  default-language: Haskell98