Cabal.cabal 12.1 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
build-type: Custom
Ross Paterson's avatar
Ross Paterson committed
23
-- Even though we do use the default Setup.lhs it's vital to bootstrapping
24
-- that we build Setup.lhs using our own local Cabal source code.
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
77
78
79
80
  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
  tests/PackageTests/CMain/Bar.hs
  tests/PackageTests/CMain/Setup.hs
  tests/PackageTests/CMain/foo.c
  tests/PackageTests/CMain/my.cabal
81
82
  tests/PackageTests/DeterministicAr/Lib.hs
  tests/PackageTests/DeterministicAr/my.cabal
83
  tests/PackageTests/EmptyLib/empty/empty.cabal
84
85
  tests/PackageTests/Haddock/CPP.hs
  tests/PackageTests/Haddock/Literate.lhs
86
  tests/PackageTests/Haddock/NoCPP.hs
87
  tests/PackageTests/Haddock/Simple.hs
88
  tests/PackageTests/Haddock/my.cabal
89
90
  tests/PackageTests/OrderFlags/Foo.hs
  tests/PackageTests/OrderFlags/my.cabal
91
92
93
  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
94
  tests/PackageTests/PreProcess/Foo.hsc
95
  tests/PackageTests/PreProcess/Main.hs
96
  tests/PackageTests/PreProcess/my.cabal
97
  tests/PackageTests/ReexportedModules/ReexportedModules.cabal
98
99
100
101
102
103
104
105
  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
106
107
108
109
  tests/PackageTests/TemplateHaskell/vanilla/Exe.hs
  tests/PackageTests/TemplateHaskell/vanilla/Lib.hs
  tests/PackageTests/TemplateHaskell/vanilla/TH.hs
  tests/PackageTests/TemplateHaskell/vanilla/my.cabal
110
111
  tests/PackageTests/TestOptions/TestOptions.cabal
  tests/PackageTests/TestOptions/test-TestOptions.hs
112
  tests/PackageTests/TestStanza/my.cabal
ttuegel's avatar
ttuegel committed
113
114
  tests/PackageTests/TestSuiteTests/ExeV10/Foo.hs
  tests/PackageTests/TestSuiteTests/ExeV10/my.cabal
115
116
117
  tests/PackageTests/TestSuiteTests/ExeV10/tests/test-Foo.hs
  tests/PackageTests/TestSuiteTests/LibV09/LibV09.cabal
  tests/PackageTests/TestSuiteTests/LibV09/Lib.hs
118
  tests/PackageTests/TestSuiteTests/LibV09/tests/Deadlock.hs
119
120
121
  tests/Setup.hs
  tests/hackage/check.sh
  tests/hackage/download.sh
122
123
  tests/hackage/unpack.sh
  tests/misc/ghc-supported-languages.hs
124

125
source-repository head
126
127
  type:     git
  location: https://github.com/haskell/cabal/
128
  subdir:   Cabal
129

130
131
132
flag bundled-binary-generic
  default: False

133
library
134
  build-depends:
135
    base       >= 4.4 && < 5,
136
    deepseq    >= 1.3 && < 1.5,
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
137
    filepath   >= 1   && < 1.5,
138
    directory  >= 1   && < 1.3,
139
    process    >= 1.1.0.1 && < 1.4,
140
    time       >= 1.1 && < 1.6,
141
142
143
    containers >= 0.1 && < 0.6,
    array      >= 0.1 && < 0.6,
    pretty     >= 1   && < 1.2,
144
    bytestring >= 0.9
145

146
147
148
149
150
  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
151
152
153
154
  -- Needed for GHC.Generics before GHC 7.6
  if impl(ghc < 7.6)
    build-depends: ghc-prim >= 0.2 && < 0.3

155
  if !os(windows)
156
    build-depends:
ian@well-typed.com's avatar
ian@well-typed.com committed
157
      unix >= 2.0 && < 2.8
158

159
  ghc-options: -Wall -fno-ignore-asserts -fwarn-tabs
160

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

236
  other-modules:
237
    Distribution.Compat.Binary
238
239
240
    Distribution.Compat.CopyFile
    Distribution.Compat.TempFile
    Distribution.GetOpt
241
    Distribution.Lex
242
    Distribution.Simple.GHC.Internal
243
244
    Distribution.Simple.GHC.IPI641
    Distribution.Simple.GHC.IPI642
245
    Distribution.Simple.GHC.ImplInfo
246
    Paths_Cabal
247

248
249
250
251
252
  if flag(bundled-binary-generic)
    other-modules:
      Distribution.Compat.Binary.Class
      Distribution.Compat.Binary.Generic

253
254
  default-language: Haskell98
  default-extensions: CPP
255

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

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