cabal-install.cabal 15.9 KB
Newer Older
1
Name:               cabal-install
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
2
Version:            1.25.0.0
3
Synopsis:           The command-line interface for Cabal and Hackage.
4
Description:
5
6
7
    The \'cabal\' command-line program simplifies the process of managing
    Haskell software by automating the fetching, configuration, compilation
    and installation of Haskell libraries and programs.
8
homepage:           http://www.haskell.org/cabal/
9
bug-reports:        https://github.com/haskell/cabal/issues
10
11
License:            BSD3
License-File:       LICENSE
12
13
Author:             Lemmih <lemmih@gmail.com>
                    Paolo Martini <paolo@nemail.it>
14
15
                    Bjorn Bringert <bjorn@bringert.net>
                    Isaac Potoczny-Jones <ijones@syntaxpolice.org>
Duncan Coutts's avatar
Duncan Coutts committed
16
                    Duncan Coutts <duncan@community.haskell.org>
17
Maintainer:         cabal-devel@haskell.org
18
19
Copyright:          2005 Lemmih <lemmih@gmail.com>
                    2006 Paolo Martini <paolo@nemail.it>
20
21
                    2007 Bjorn Bringert <bjorn@bringert.net>
                    2007 Isaac Potoczny-Jones <ijones@syntaxpolice.org>
22
                    2007-2012 Duncan Coutts <duncan@community.haskell.org>
23
Category:           Distribution
lspitzner's avatar
lspitzner committed
24
Build-type:         Custom
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
25
Cabal-Version:      >= 1.10
barmston's avatar
barmston committed
26
27
Extra-Source-Files:
  README.md bash-completion/cabal bootstrap.sh changelog
28
  tests/README.md
barmston's avatar
barmston committed
29

30
31
32
  -- Generated with '../Cabal/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
37
38
  tests/IntegrationTests/custom/common.sh
  tests/IntegrationTests/custom/should_run/plain.err
  tests/IntegrationTests/custom/should_run/plain.sh
  tests/IntegrationTests/custom/should_run/plain/A.hs
  tests/IntegrationTests/custom/should_run/plain/Setup.hs
  tests/IntegrationTests/custom/should_run/plain/plain.cabal
39
  tests/IntegrationTests/exec/common.sh
40
41
  tests/IntegrationTests/exec/should_fail/exit_with_failure_without_args.err
  tests/IntegrationTests/exec/should_fail/exit_with_failure_without_args.sh
42
43
44
  tests/IntegrationTests/exec/should_run/Foo.hs
  tests/IntegrationTests/exec/should_run/My.hs
  tests/IntegrationTests/exec/should_run/adds_sandbox_bin_directory_to_path.out
45
  tests/IntegrationTests/exec/should_run/adds_sandbox_bin_directory_to_path.sh
46
  tests/IntegrationTests/exec/should_run/auto_configures_on_exec.out
47
  tests/IntegrationTests/exec/should_run/auto_configures_on_exec.sh
48
  tests/IntegrationTests/exec/should_run/can_run_executables_installed_in_sandbox.out
49
50
51
52
  tests/IntegrationTests/exec/should_run/can_run_executables_installed_in_sandbox.sh
  tests/IntegrationTests/exec/should_run/configures_cabal_to_use_sandbox.sh
  tests/IntegrationTests/exec/should_run/configures_ghc_to_use_sandbox.sh
  tests/IntegrationTests/exec/should_run/my.cabal
53
  tests/IntegrationTests/exec/should_run/runs_given_command.out
54
55
56
57
58
59
60
61
62
63
64
65
66
  tests/IntegrationTests/exec/should_run/runs_given_command.sh
  tests/IntegrationTests/freeze/common.sh
  tests/IntegrationTests/freeze/should_run/disable_benchmarks_freezes_bench_deps.sh
  tests/IntegrationTests/freeze/should_run/disable_tests_freezes_test_deps.sh
  tests/IntegrationTests/freeze/should_run/does_not_freeze_nondeps.sh
  tests/IntegrationTests/freeze/should_run/does_not_freeze_self.sh
  tests/IntegrationTests/freeze/should_run/dry_run_does_not_create_config.sh
  tests/IntegrationTests/freeze/should_run/enable_benchmarks_freezes_bench_deps.sh
  tests/IntegrationTests/freeze/should_run/enable_tests_freezes_test_deps.sh
  tests/IntegrationTests/freeze/should_run/freezes_direct_dependencies.sh
  tests/IntegrationTests/freeze/should_run/freezes_transitive_dependencies.sh
  tests/IntegrationTests/freeze/should_run/my.cabal
  tests/IntegrationTests/freeze/should_run/runs_without_error.sh
Maciek Makowski's avatar
Maciek Makowski committed
67
68
  tests/IntegrationTests/manpage/common.sh
  tests/IntegrationTests/manpage/should_run/outputs_manpage.sh
69
70
  tests/IntegrationTests/multiple-source/common.sh
  tests/IntegrationTests/multiple-source/should_run/finds_second_source_of_multiple_source.sh
Maciek Makowski's avatar
Maciek Makowski committed
71
  tests/IntegrationTests/multiple-source/should_run/p/Setup.hs
72
  tests/IntegrationTests/multiple-source/should_run/p/p.cabal
Maciek Makowski's avatar
Maciek Makowski committed
73
  tests/IntegrationTests/multiple-source/should_run/q/Setup.hs
74
75
76
77
78
79
80
81
82
83
84
85
  tests/IntegrationTests/multiple-source/should_run/q/q.cabal
  tests/IntegrationTests/sandbox-sources/common.sh
  tests/IntegrationTests/sandbox-sources/should_fail/fail_removing_source_thats_not_registered.err
  tests/IntegrationTests/sandbox-sources/should_fail/fail_removing_source_thats_not_registered.sh
  tests/IntegrationTests/sandbox-sources/should_fail/p/Setup.hs
  tests/IntegrationTests/sandbox-sources/should_fail/p/p.cabal
  tests/IntegrationTests/sandbox-sources/should_fail/q/Setup.hs
  tests/IntegrationTests/sandbox-sources/should_fail/q/q.cabal
  tests/IntegrationTests/sandbox-sources/should_run/p/Setup.hs
  tests/IntegrationTests/sandbox-sources/should_run/p/p.cabal
  tests/IntegrationTests/sandbox-sources/should_run/q/Setup.hs
  tests/IntegrationTests/sandbox-sources/should_run/q/q.cabal
86
  tests/IntegrationTests/sandbox-sources/should_run/remove_nonexistent_source.sh
87
88
  tests/IntegrationTests/sandbox-sources/should_run/report_success_removing_source.out
  tests/IntegrationTests/sandbox-sources/should_run/report_success_removing_source.sh
89
90
91
92
93
94
95
  tests/IntegrationTests/user-config/common.sh
  tests/IntegrationTests/user-config/should_fail/doesnt_overwrite_without_f.err
  tests/IntegrationTests/user-config/should_fail/doesnt_overwrite_without_f.sh
  tests/IntegrationTests/user-config/should_run/overwrites_with_f.out
  tests/IntegrationTests/user-config/should_run/overwrites_with_f.sh
  tests/IntegrationTests/user-config/should_run/runs_without_error.out
  tests/IntegrationTests/user-config/should_run/runs_without_error.sh
96
97
  tests/IntegrationTests/user-config/should_run/uses_CABAL_CONFIG.out
  tests/IntegrationTests/user-config/should_run/uses_CABAL_CONFIG.sh
98
  -- END gen-extra-source-files
Duncan Coutts's avatar
Duncan Coutts committed
99
100

source-repository head
101
102
  type:     git
  location: https://github.com/haskell/cabal/
Duncan Coutts's avatar
Duncan Coutts committed
103
  subdir:   cabal-install
104

105
106
107
108
Flag old-directory
  description:  Use directory < 1.2 and old-time
  default:      False

109
110
111
112
Flag network-uri
  description:  Get Network.URI from the network-uri package
  default:      True

113
114
115
executable cabal
    main-is:        Main.hs
    ghc-options:    -Wall -fwarn-tabs
116
    if impl(ghc >= 8.0)
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
117
118
119
        ghc-options: -Wcompat
                     -Wnoncanonical-monad-instances
                     -Wnoncanonical-monadfail-instances
120

121
    other-modules:
Duncan Coutts's avatar
Duncan Coutts committed
122
123
        Distribution.Client.BuildReports.Anonymous
        Distribution.Client.BuildReports.Storage
Duncan Coutts's avatar
Duncan Coutts committed
124
        Distribution.Client.BuildReports.Types
Duncan Coutts's avatar
Duncan Coutts committed
125
        Distribution.Client.BuildReports.Upload
126
        Distribution.Client.Check
Edsko de Vries's avatar
Edsko de Vries committed
127
        Distribution.Client.ComponentDeps
128
        Distribution.Client.Config
Duncan Coutts's avatar
Duncan Coutts committed
129
        Distribution.Client.Configure
130
131
132
133
134
        Distribution.Client.Dependency
        Distribution.Client.Dependency.TopDown
        Distribution.Client.Dependency.TopDown.Constraints
        Distribution.Client.Dependency.TopDown.Types
        Distribution.Client.Dependency.Types
135
        Distribution.Client.Dependency.Modular
136
137
138
        Distribution.Client.Dependency.Modular.Assignment
        Distribution.Client.Dependency.Modular.Builder
        Distribution.Client.Dependency.Modular.Configured
Andres Löh's avatar
Andres Löh committed
139
        Distribution.Client.Dependency.Modular.ConfiguredConversion
140
        Distribution.Client.Dependency.Modular.Cycles
141
142
143
144
        Distribution.Client.Dependency.Modular.Dependency
        Distribution.Client.Dependency.Modular.Explore
        Distribution.Client.Dependency.Modular.Flag
        Distribution.Client.Dependency.Modular.Index
145
        Distribution.Client.Dependency.Modular.IndexConversion
146
        Distribution.Client.Dependency.Modular.Linking
147
148
149
150
151
152
153
154
155
        Distribution.Client.Dependency.Modular.Log
        Distribution.Client.Dependency.Modular.Message
        Distribution.Client.Dependency.Modular.Package
        Distribution.Client.Dependency.Modular.Preference
        Distribution.Client.Dependency.Modular.PSQ
        Distribution.Client.Dependency.Modular.Solver
        Distribution.Client.Dependency.Modular.Tree
        Distribution.Client.Dependency.Modular.Validate
        Distribution.Client.Dependency.Modular.Version
Duncan Coutts's avatar
Duncan Coutts committed
156
        Distribution.Client.DistDirLayout
barmston's avatar
barmston committed
157
        Distribution.Client.Exec
158
        Distribution.Client.Fetch
Duncan Coutts's avatar
Duncan Coutts committed
159
        Distribution.Client.FetchUtils
160
        Distribution.Client.FileMonitor
161
        Distribution.Client.Freeze
162
        Distribution.Client.GenBounds
163
        Distribution.Client.Get
164
        Distribution.Client.Glob
165
        Distribution.Client.GlobalFlags
166
        Distribution.Client.GZipUtils
167
        Distribution.Client.Haddock
168
169
        Distribution.Client.HttpUtils
        Distribution.Client.IndexUtils
170
171
172
173
        Distribution.Client.Init
        Distribution.Client.Init.Heuristics
        Distribution.Client.Init.Licenses
        Distribution.Client.Init.Types
174
175
        Distribution.Client.Install
        Distribution.Client.InstallPlan
176
        Distribution.Client.InstallSymlink
177
        Distribution.Client.JobControl
178
        Distribution.Client.List
Maciek Makowski's avatar
Maciek Makowski committed
179
        Distribution.Client.Manpage
Duncan Coutts's avatar
Duncan Coutts committed
180
        Distribution.Client.PackageHash
181
        Distribution.Client.PackageIndex
182
        Distribution.Client.PackageUtils
183
        Distribution.Client.ParseUtils
184
        Distribution.Client.PkgConfigDb
185
        Distribution.Client.PlanIndex
Duncan Coutts's avatar
Duncan Coutts committed
186
        Distribution.Client.ProjectBuilding
187
188
189
        Distribution.Client.ProjectConfig
        Distribution.Client.ProjectConfig.Types
        Distribution.Client.ProjectConfig.Legacy
Duncan Coutts's avatar
Duncan Coutts committed
190
        Distribution.Client.ProjectPlanning
refold's avatar
refold committed
191
        Distribution.Client.Run
192
        Distribution.Client.RebuildMonad
193
        Distribution.Client.Sandbox
194
195
        Distribution.Client.Sandbox.Index
        Distribution.Client.Sandbox.PackageEnvironment
196
        Distribution.Client.Sandbox.Timestamp
197
        Distribution.Client.Sandbox.Types
Edsko de Vries's avatar
Edsko de Vries committed
198
        Distribution.Client.Security.HTTP
199
200
201
202
        Distribution.Client.Setup
        Distribution.Client.SetupWrapper
        Distribution.Client.SrcDist
        Distribution.Client.Tar
203
        Distribution.Client.Targets
204
205
206
207
        Distribution.Client.Types
        Distribution.Client.Update
        Distribution.Client.Upload
        Distribution.Client.Utils
208
        Distribution.Client.Utils.LabeledGraph
209
        Distribution.Client.World
210
        Distribution.Client.Win32SelfUpgrade
211
        Distribution.Client.Compat.ExecutablePath
212
        Distribution.Client.Compat.FilePerms
213
        Distribution.Client.Compat.Process
214
215
        Distribution.Client.Compat.Semaphore
        Distribution.Client.Compat.Time
216
        Paths_cabal_install
217

Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
218
219
    -- NOTE: when updating build-depends, don't forget to update version regexps
    -- in bootstrap.sh.
Ben Millwood's avatar
Ben Millwood committed
220
    build-depends:
Duncan Coutts's avatar
Duncan Coutts committed
221
        async      >= 2.0      && < 3,
222
223
        array      >= 0.4      && < 0.6,
        base       >= 4.5      && < 5,
224
        binary     >= 0.5      && < 0.9,
Duncan Coutts's avatar
Duncan Coutts committed
225
        byteable   >= 0.1      && < 0.2,
Ben Millwood's avatar
Ben Millwood committed
226
        bytestring >= 0.9      && < 1,
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
227
        Cabal      >= 1.25     && < 1.26,
228
        containers >= 0.4      && < 0.6,
Duncan Coutts's avatar
Duncan Coutts committed
229
        cryptohash >= 0.11     && < 0.12,
230
        filepath   >= 1.3      && < 1.5,
231
        hashable   >= 1.0      && < 2,
232
        HTTP       >= 4000.1.5 && < 4000.4,
Ben Millwood's avatar
Ben Millwood committed
233
        mtl        >= 2.0      && < 3,
234
        pretty     >= 1.1      && < 1.2,
dsf's avatar
dsf committed
235
        random     >= 1        && < 1.2,
Ben Millwood's avatar
Ben Millwood committed
236
        stm        >= 2.0      && < 3,
Duncan Coutts's avatar
Duncan Coutts committed
237
        tar        >= 0.5.0.1  && < 0.6,
238
        time       >= 1.4      && < 1.7,
Edsko de Vries's avatar
Edsko de Vries committed
239
240
        zlib       >= 0.5.3    && < 0.7,
        hackage-security >= 0.5 && < 0.6
241

242
    if flag(old-directory)
243
      build-depends: directory >= 1.1 && < 1.2, old-time >= 1 && < 1.2,
244
                     process   >= 1.0.1.1  && < 1.1.0.2
245
    else
246
      build-depends: directory >= 1.2 && < 1.3,
247
                     process   >= 1.1.0.2  && < 1.5
248

249
250
251
    -- NOTE: you MUST include the network dependency even when network-uri
    -- is pulled in, otherwise the constraint solver doesn't have enough
    -- information
252
    if flag(network-uri)
253
      build-depends: network-uri >= 2.6 && < 2.7, network >= 2.6 && < 2.7
254
    else
tibbe's avatar
tibbe committed
255
      build-depends: network     >= 2.4 && < 2.6
256

257
258
259
260
    -- Needed for GHC.Generics before GHC 7.6
    if impl(ghc < 7.6)
      build-depends: ghc-prim >= 0.2 && < 0.3

261
    if os(windows)
262
      build-depends: Win32 >= 2 && < 3
263
    else
264
      build-depends: unix >= 2.5 && < 2.8
265

266
    if arch(arm) && impl(ghc < 7.6)
Ian D. Bollinger's avatar
Ian D. Bollinger committed
267
       -- older ghc on arm does not support -threaded
268
269
       cc-options:  -DCABAL_NO_THREADED
    else
270
       ghc-options: -threaded
271
272

    c-sources: cbits/getnumcores.c
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
273
    default-language: Haskell2010
274

barmston's avatar
barmston committed
275
-- Small, fast running tests.
276
277
278
Test-Suite unit-tests
  type: exitcode-stdio-1.0
  main-is: UnitTests.hs
279
280
281
  hs-source-dirs: tests, .
  ghc-options: -Wall -fwarn-tabs
  other-modules:
282
    UnitTests.Distribution.Client.ArbitraryInstances
283
    UnitTests.Distribution.Client.Targets
284
    UnitTests.Distribution.Client.Compat.Time
285
    UnitTests.Distribution.Client.Dependency.Modular.PSQ
Edsko de Vries's avatar
Edsko de Vries committed
286
    UnitTests.Distribution.Client.Dependency.Modular.Solver
287
    UnitTests.Distribution.Client.Dependency.Modular.DSL
Duncan Coutts's avatar
Duncan Coutts committed
288
    UnitTests.Distribution.Client.FileMonitor
289
    UnitTests.Distribution.Client.Glob
290
    UnitTests.Distribution.Client.GZipUtils
291
    UnitTests.Distribution.Client.Sandbox
292
    UnitTests.Distribution.Client.Sandbox.Timestamp
293
    UnitTests.Distribution.Client.Tar
294
    UnitTests.Distribution.Client.UserConfig
295
    UnitTests.Distribution.Client.ProjectConfig
296
    UnitTests.Options
297
298
  build-depends:
        base,
299
300
301
302
303
304
305
306
        array,
        bytestring,
        Cabal,
        containers,
        mtl,
        pretty,
        process,
        directory,
307
        filepath,
Duncan Coutts's avatar
Duncan Coutts committed
308
        hashable,
309
        stm,
Duncan Coutts's avatar
Duncan Coutts committed
310
        tar,
311
312
313
        time,
        HTTP,
        zlib,
314
        binary,
315
        random,
Edsko de Vries's avatar
Edsko de Vries committed
316
        hackage-security,
317
318
319
        tasty,
        tasty-hunit,
        tasty-quickcheck,
Edsko de Vries's avatar
Edsko de Vries committed
320
        tagged,
321
        QuickCheck >= 2.8.2
322
323
324
325

  if flag(old-directory)
    build-depends: old-time

326
327
328
329
330
  if flag(network-uri)
    build-depends: network-uri >= 2.6, network >= 2.6
  else
    build-depends: network-uri < 2.6, network < 2.6

331
332
333
  if impl(ghc < 7.6)
    build-depends: ghc-prim >= 0.2 && < 0.3

334
335
336
337
338
339
340
341
342
  if os(windows)
    build-depends: Win32
  else
    build-depends: unix

  if arch(arm)
    cc-options:  -DCABAL_NO_THREADED
  else
    ghc-options: -threaded
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
343
  default-language: Haskell2010
barmston's avatar
barmston committed
344

345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
-- Slow solver tests
Test-Suite solver-quickcheck
  type: exitcode-stdio-1.0
  main-is: SolverQuickCheck.hs
  hs-source-dirs: tests, .
  ghc-options: -Wall -fwarn-tabs
  other-modules:
    UnitTests.Distribution.Client.Dependency.Modular.DSL
    UnitTests.Distribution.Client.Dependency.Modular.QuickCheck
  build-depends:
        base,
        array,
        bytestring,
        Cabal,
        containers,
        mtl,
        pretty,
        process,
        directory,
        filepath,
        hashable,
        stm,
        tar,
        time,
        HTTP,
        zlib,
        binary,
        random,
        hackage-security,
        tasty,
        tasty-quickcheck,
        QuickCheck >= 2.8.2,
        pretty-show

  if flag(old-directory)
    build-depends: old-time

  if flag(network-uri)
    build-depends: network-uri >= 2.6, network >= 2.6
  else
    build-depends: network-uri < 2.6, network < 2.6

  if impl(ghc < 7.6)
    build-depends: ghc-prim >= 0.2 && < 0.3

  if os(windows)
    build-depends: Win32
  else
    build-depends: unix

  if arch(arm)
    cc-options:  -DCABAL_NO_THREADED
  else
    ghc-options: -threaded
  default-language: Haskell2010

401
test-suite integration-tests
barmston's avatar
barmston committed
402
403
  type: exitcode-stdio-1.0
  hs-source-dirs: tests
404
  main-is: IntegrationTests.hs
barmston's avatar
barmston committed
405
406
  build-depends:
    Cabal,
407
    async,
barmston's avatar
barmston committed
408
409
410
411
412
    base,
    bytestring,
    directory,
    filepath,
    process,
413
    regex-posix,
414
    tasty,
415
    tasty-hunit
barmston's avatar
barmston committed
416
417
418
419

  if os(windows)
    build-depends: Win32 >= 2 && < 3
  else
420
    build-depends: unix >= 2.5 && < 2.8
barmston's avatar
barmston committed
421
422
423
424
425
426
427

  if arch(arm)
    cc-options:  -DCABAL_NO_THREADED
  else
    ghc-options: -threaded

  ghc-options: -Wall
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
428
  default-language: Haskell2010
429
430
431
432
433
434

custom-setup
  setup-depends: Cabal >= 1.25,
                 base,
                 process   >= 1.1.0.1  && < 1.5,
                 filepath   >= 1.3      && < 1.5