cabal-install.cabal 19.7 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
Author:             Cabal Development Team (see AUTHORS file)
13 14
Maintainer:         Cabal Development Team <cabal-devel@haskell.org>
Copyright:          2003-2016, Cabal Development Team
15
Category:           Distribution
lspitzner's avatar
lspitzner committed
16
Build-type:         Custom
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
17
Cabal-Version:      >= 1.10
barmston's avatar
barmston committed
18 19
Extra-Source-Files:
  README.md bash-completion/cabal bootstrap.sh changelog
20
  tests/README.md
barmston's avatar
barmston committed
21

22 23 24
  -- Generated with '../Cabal/misc/gen-extra-source-files.sh'
  -- Do NOT edit this section manually; instead, run the script.
  -- BEGIN gen-extra-source-files
25
  tests/IntegrationTests/common.sh
26 27 28 29 30 31 32
  tests/IntegrationTests/custom/custom_dep.sh
  tests/IntegrationTests/custom/custom_dep/client/B.hs
  tests/IntegrationTests/custom/custom_dep/client/Setup.hs
  tests/IntegrationTests/custom/custom_dep/client/client.cabal
  tests/IntegrationTests/custom/custom_dep/custom/A.hs
  tests/IntegrationTests/custom/custom_dep/custom/Setup.hs
  tests/IntegrationTests/custom/custom_dep/custom/custom.cabal
33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
  tests/IntegrationTests/custom/plain.err
  tests/IntegrationTests/custom/plain.sh
  tests/IntegrationTests/custom/plain/A.hs
  tests/IntegrationTests/custom/plain/Setup.hs
  tests/IntegrationTests/custom/plain/plain.cabal
  tests/IntegrationTests/exec/Foo.hs
  tests/IntegrationTests/exec/My.hs
  tests/IntegrationTests/exec/adds_sandbox_bin_directory_to_path.out
  tests/IntegrationTests/exec/adds_sandbox_bin_directory_to_path.sh
  tests/IntegrationTests/exec/auto_configures_on_exec.out
  tests/IntegrationTests/exec/auto_configures_on_exec.sh
  tests/IntegrationTests/exec/can_run_executables_installed_in_sandbox.out
  tests/IntegrationTests/exec/can_run_executables_installed_in_sandbox.sh
  tests/IntegrationTests/exec/configures_cabal_to_use_sandbox.sh
  tests/IntegrationTests/exec/configures_ghc_to_use_sandbox.sh
  tests/IntegrationTests/exec/exit_with_failure_without_args.err
  tests/IntegrationTests/exec/exit_with_failure_without_args.sh
  tests/IntegrationTests/exec/my.cabal
  tests/IntegrationTests/exec/runs_given_command.out
  tests/IntegrationTests/exec/runs_given_command.sh
  tests/IntegrationTests/freeze/disable_benchmarks_freezes_bench_deps.sh
  tests/IntegrationTests/freeze/disable_tests_freezes_test_deps.sh
  tests/IntegrationTests/freeze/does_not_freeze_nondeps.sh
  tests/IntegrationTests/freeze/does_not_freeze_self.sh
  tests/IntegrationTests/freeze/dry_run_does_not_create_config.sh
  tests/IntegrationTests/freeze/enable_benchmarks_freezes_bench_deps.sh
  tests/IntegrationTests/freeze/enable_tests_freezes_test_deps.sh
  tests/IntegrationTests/freeze/freezes_direct_dependencies.sh
  tests/IntegrationTests/freeze/freezes_transitive_dependencies.sh
  tests/IntegrationTests/freeze/my.cabal
  tests/IntegrationTests/freeze/runs_without_error.sh
64
  tests/IntegrationTests/internal-libs/cabal.project
65 66
  tests/IntegrationTests/internal-libs/internal_lib_basic.sh
  tests/IntegrationTests/internal-libs/internal_lib_shadow.sh
67
  tests/IntegrationTests/internal-libs/new_build.sh
68 69 70 71 72 73 74 75 76 77 78 79
  tests/IntegrationTests/internal-libs/p/Foo.hs
  tests/IntegrationTests/internal-libs/p/p.cabal
  tests/IntegrationTests/internal-libs/p/p/P.hs
  tests/IntegrationTests/internal-libs/p/q/Q.hs
  tests/IntegrationTests/internal-libs/q/Q.hs
  tests/IntegrationTests/internal-libs/q/q.cabal
  tests/IntegrationTests/manpage/outputs_manpage.sh
  tests/IntegrationTests/multiple-source/finds_second_source_of_multiple_source.sh
  tests/IntegrationTests/multiple-source/p/Setup.hs
  tests/IntegrationTests/multiple-source/p/p.cabal
  tests/IntegrationTests/multiple-source/q/Setup.hs
  tests/IntegrationTests/multiple-source/q/q.cabal
80
  tests/IntegrationTests/new-build/monitor_cabal_files.sh
81
  tests/IntegrationTests/new-build/monitor_cabal_files/cabal.project
82 83 84 85 86 87 88
  tests/IntegrationTests/new-build/monitor_cabal_files/p/P.hs
  tests/IntegrationTests/new-build/monitor_cabal_files/p/Setup.hs
  tests/IntegrationTests/new-build/monitor_cabal_files/p/p.cabal
  tests/IntegrationTests/new-build/monitor_cabal_files/q/Main.hs
  tests/IntegrationTests/new-build/monitor_cabal_files/q/Setup.hs
  tests/IntegrationTests/new-build/monitor_cabal_files/q/q-broken.cabal.in
  tests/IntegrationTests/new-build/monitor_cabal_files/q/q-fixed.cabal.in
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
89 90 91 92
  tests/IntegrationTests/regression/t3199.sh
  tests/IntegrationTests/regression/t3199/Main.hs
  tests/IntegrationTests/regression/t3199/Setup.hs
  tests/IntegrationTests/regression/t3199/test-3199.cabal
93 94 95 96 97
  tests/IntegrationTests/sandbox-reinstalls/p/Main.hs
  tests/IntegrationTests/sandbox-reinstalls/p/p.cabal
  tests/IntegrationTests/sandbox-reinstalls/q/Q.hs
  tests/IntegrationTests/sandbox-reinstalls/q/q.cabal
  tests/IntegrationTests/sandbox-reinstalls/reinstall-modified-source.sh
98 99 100 101 102 103 104 105 106
  tests/IntegrationTests/sandbox-sources/fail_removing_source_thats_not_registered.err
  tests/IntegrationTests/sandbox-sources/fail_removing_source_thats_not_registered.sh
  tests/IntegrationTests/sandbox-sources/p/Setup.hs
  tests/IntegrationTests/sandbox-sources/p/p.cabal
  tests/IntegrationTests/sandbox-sources/q/Setup.hs
  tests/IntegrationTests/sandbox-sources/q/q.cabal
  tests/IntegrationTests/sandbox-sources/remove_nonexistent_source.sh
  tests/IntegrationTests/sandbox-sources/report_success_removing_source.out
  tests/IntegrationTests/sandbox-sources/report_success_removing_source.sh
107
  tests/IntegrationTests/user-config/common.sh
108 109 110 111 112 113 114 115
  tests/IntegrationTests/user-config/doesnt_overwrite_without_f.err
  tests/IntegrationTests/user-config/doesnt_overwrite_without_f.sh
  tests/IntegrationTests/user-config/overwrites_with_f.out
  tests/IntegrationTests/user-config/overwrites_with_f.sh
  tests/IntegrationTests/user-config/runs_without_error.out
  tests/IntegrationTests/user-config/runs_without_error.sh
  tests/IntegrationTests/user-config/uses_CABAL_CONFIG.out
  tests/IntegrationTests/user-config/uses_CABAL_CONFIG.sh
116 117 118 119 120 121
  tests/IntegrationTests2.hs
  tests/IntegrationTests2/exception/build/Main.hs
  tests/IntegrationTests2/exception/build/a.cabal
  tests/IntegrationTests2/exception/configure/a.cabal
  tests/IntegrationTests2/exception/no-pkg/empty.in
  tests/IntegrationTests2/exception/no-pkg2/cabal.project
122 123 124 125 126
  tests/IntegrationTests2/regression/3324/cabal.project
  tests/IntegrationTests2/regression/3324/p/P.hs
  tests/IntegrationTests2/regression/3324/p/p.cabal
  tests/IntegrationTests2/regression/3324/q/Q.hs
  tests/IntegrationTests2/regression/3324/q/q.cabal
127
  -- END gen-extra-source-files
Duncan Coutts's avatar
Duncan Coutts committed
128 129

source-repository head
130 131
  type:     git
  location: https://github.com/haskell/cabal/
Duncan Coutts's avatar
Duncan Coutts committed
132
  subdir:   cabal-install
133

134 135 136 137
Flag old-bytestring
  description:  Use bytestring < 0.10.2 and bytestring-builder
  default: False

138 139 140 141
Flag old-directory
  description:  Use directory < 1.2 and old-time
  default:      False

142 143 144 145
Flag network-uri
  description:  Get Network.URI from the network-uri package
  default:      True

146 147 148 149
Flag debug-conflict-sets
  description:  Add additional information to ConflictSets
  default:      False

Edsko de Vries's avatar
Edsko de Vries committed
150 151 152 153
Flag debug-tracetree
  description:  Compile in support for tracetree (used to debug the solver)
  default:      False

154 155 156
executable cabal
    main-is:        Main.hs
    ghc-options:    -Wall -fwarn-tabs
157
    if impl(ghc >= 8.0)
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
158 159 160
        ghc-options: -Wcompat
                     -Wnoncanonical-monad-instances
                     -Wnoncanonical-monadfail-instances
161

162
    other-modules:
163
        Distribution.Client.BuildTarget
Duncan Coutts's avatar
Duncan Coutts committed
164 165
        Distribution.Client.BuildReports.Anonymous
        Distribution.Client.BuildReports.Storage
Duncan Coutts's avatar
Duncan Coutts committed
166
        Distribution.Client.BuildReports.Types
Duncan Coutts's avatar
Duncan Coutts committed
167
        Distribution.Client.BuildReports.Upload
168
        Distribution.Client.Check
169 170 171
        Distribution.Client.CmdBuild
        Distribution.Client.CmdConfigure
        Distribution.Client.CmdRepl
172
        Distribution.Client.Config
Duncan Coutts's avatar
Duncan Coutts committed
173
        Distribution.Client.Configure
174 175 176 177 178
        Distribution.Client.Dependency
        Distribution.Client.Dependency.TopDown
        Distribution.Client.Dependency.TopDown.Constraints
        Distribution.Client.Dependency.TopDown.Types
        Distribution.Client.Dependency.Types
Duncan Coutts's avatar
Duncan Coutts committed
179
        Distribution.Client.DistDirLayout
barmston's avatar
barmston committed
180
        Distribution.Client.Exec
181
        Distribution.Client.Fetch
Duncan Coutts's avatar
Duncan Coutts committed
182
        Distribution.Client.FetchUtils
183
        Distribution.Client.FileMonitor
184
        Distribution.Client.Freeze
185
        Distribution.Client.GenBounds
186
        Distribution.Client.Get
187
        Distribution.Client.Glob
188
        Distribution.Client.GlobalFlags
189
        Distribution.Client.GZipUtils
190
        Distribution.Client.Haddock
191 192
        Distribution.Client.HttpUtils
        Distribution.Client.IndexUtils
193 194 195 196
        Distribution.Client.Init
        Distribution.Client.Init.Heuristics
        Distribution.Client.Init.Licenses
        Distribution.Client.Init.Types
197 198
        Distribution.Client.Install
        Distribution.Client.InstallPlan
199
        Distribution.Client.InstallSymlink
200
        Distribution.Client.JobControl
201
        Distribution.Client.List
Maciek Makowski's avatar
Maciek Makowski committed
202
        Distribution.Client.Manpage
Duncan Coutts's avatar
Duncan Coutts committed
203
        Distribution.Client.PackageHash
204
        Distribution.Client.PackageUtils
205
        Distribution.Client.ParseUtils
206
        Distribution.Client.PlanIndex
Duncan Coutts's avatar
Duncan Coutts committed
207
        Distribution.Client.ProjectBuilding
208 209 210
        Distribution.Client.ProjectConfig
        Distribution.Client.ProjectConfig.Types
        Distribution.Client.ProjectConfig.Legacy
211
        Distribution.Client.ProjectOrchestration
Duncan Coutts's avatar
Duncan Coutts committed
212
        Distribution.Client.ProjectPlanning
213
        Distribution.Client.ProjectPlanning.Types
214
        Distribution.Client.ProjectPlanOutput
refold's avatar
refold committed
215
        Distribution.Client.Run
216
        Distribution.Client.RebuildMonad
217
        Distribution.Client.Sandbox
218 219
        Distribution.Client.Sandbox.Index
        Distribution.Client.Sandbox.PackageEnvironment
220
        Distribution.Client.Sandbox.Timestamp
221
        Distribution.Client.Sandbox.Types
Edsko de Vries's avatar
Edsko de Vries committed
222
        Distribution.Client.Security.HTTP
223 224 225 226
        Distribution.Client.Setup
        Distribution.Client.SetupWrapper
        Distribution.Client.SrcDist
        Distribution.Client.Tar
227
        Distribution.Client.Targets
228 229 230 231
        Distribution.Client.Types
        Distribution.Client.Update
        Distribution.Client.Upload
        Distribution.Client.Utils
232
        Distribution.Client.Utils.Json
233
        Distribution.Client.World
234
        Distribution.Client.Win32SelfUpgrade
235
        Distribution.Client.Compat.ExecutablePath
236
        Distribution.Client.Compat.FilePerms
237
        Distribution.Client.Compat.Process
238
        Distribution.Client.Compat.Semaphore
239
        Distribution.Solver.Types.ComponentDeps
240
        Distribution.Solver.Types.ConstraintSource
241
        Distribution.Solver.Types.DependencyResolver
242
        Distribution.Solver.Types.Internal.Utils
243
        Distribution.Solver.Types.InstalledPreference
244
        Distribution.Solver.Types.LabeledPackageConstraint
245
        Distribution.Solver.Types.OptionalStanza
246
        Distribution.Solver.Types.PackageConstraint
247 248
        Distribution.Solver.Types.PackageFixedDeps
        Distribution.Solver.Types.PackageIndex
249
        Distribution.Solver.Types.PackagePreferences
250 251
        Distribution.Solver.Types.PkgConfigDb
        Distribution.Solver.Types.Progress
252
        Distribution.Solver.Types.ResolverPackage
253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280
        Distribution.Solver.Types.Settings
        Distribution.Solver.Types.SolverId
        Distribution.Solver.Types.SolverPackage
        Distribution.Solver.Types.SourcePackage
        Distribution.Solver.Modular
        Distribution.Solver.Modular.Assignment
        Distribution.Solver.Modular.Builder
        Distribution.Solver.Modular.Configured
        Distribution.Solver.Modular.ConfiguredConversion
        Distribution.Solver.Modular.ConflictSet
        Distribution.Solver.Modular.Cycles
        Distribution.Solver.Modular.Dependency
        Distribution.Solver.Modular.Explore
        Distribution.Solver.Modular.Flag
        Distribution.Solver.Modular.Index
        Distribution.Solver.Modular.IndexConversion
        Distribution.Solver.Modular.Linking
        Distribution.Solver.Modular.LabeledGraph
        Distribution.Solver.Modular.Log
        Distribution.Solver.Modular.Message
        Distribution.Solver.Modular.Package
        Distribution.Solver.Modular.Preference
        Distribution.Solver.Modular.PSQ
        Distribution.Solver.Modular.Solver
        Distribution.Solver.Modular.Tree
        Distribution.Solver.Modular.Validate
        Distribution.Solver.Modular.Var
        Distribution.Solver.Modular.Version
281
        Paths_cabal_install
282

Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
283 284
    -- NOTE: when updating build-depends, don't forget to update version regexps
    -- in bootstrap.sh.
Ben Millwood's avatar
Ben Millwood committed
285
    build-depends:
Duncan Coutts's avatar
Duncan Coutts committed
286
        async      >= 2.0      && < 3,
287 288
        array      >= 0.4      && < 0.6,
        base       >= 4.5      && < 5,
289
        base16-bytestring >= 0.1.1 && < 0.2,
290
        binary     >= 0.5      && < 0.9,
Ben Millwood's avatar
Ben Millwood committed
291
        bytestring >= 0.9      && < 1,
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
292
        Cabal      >= 1.25     && < 1.26,
293
        containers >= 0.4      && < 0.6,
294
        cryptohash-sha256 >= 0.11 && < 0.12,
295
        filepath   >= 1.3      && < 1.5,
296
        hashable   >= 1.0      && < 2,
297
        HTTP       >= 4000.1.5 && < 4000.4,
Ben Millwood's avatar
Ben Millwood committed
298
        mtl        >= 2.0      && < 3,
299
        pretty     >= 1.1      && < 1.2,
dsf's avatar
dsf committed
300
        random     >= 1        && < 1.2,
Ben Millwood's avatar
Ben Millwood committed
301
        stm        >= 2.0      && < 3,
302
        tar        >= 0.5.0.3  && < 0.6,
303
        time       >= 1.4      && < 1.7,
Edsko de Vries's avatar
Edsko de Vries committed
304
        zlib       >= 0.5.3    && < 0.7,
305
        hackage-security >= 0.5.1 && < 0.6
306

307 308 309 310 311
    if flag(old-bytestring)
      build-depends: bytestring <  0.10.2, bytestring-builder >= 0.10 && < 1
    else
      build-depends: bytestring >= 0.10.2

312
    if flag(old-directory)
313
      build-depends: directory >= 1.1 && < 1.2, old-time >= 1 && < 1.2,
314
                     process   >= 1.0.1.1  && < 1.1.0.2
315
    else
316
      build-depends: directory >= 1.2 && < 1.3,
317
                     process   >= 1.1.0.2  && < 1.5
318

319 320 321
    -- NOTE: you MUST include the network dependency even when network-uri
    -- is pulled in, otherwise the constraint solver doesn't have enough
    -- information
322
    if flag(network-uri)
323
      build-depends: network-uri >= 2.6 && < 2.7, network >= 2.6 && < 2.7
324
    else
tibbe's avatar
tibbe committed
325
      build-depends: network     >= 2.4 && < 2.6
326

327 328 329 330
    -- Needed for GHC.Generics before GHC 7.6
    if impl(ghc < 7.6)
      build-depends: ghc-prim >= 0.2 && < 0.3

331
    if os(windows)
332
      build-depends: Win32 >= 2 && < 3
333
    else
334
      build-depends: unix >= 2.5 && < 2.8
335

336 337
    if !(arch(arm) && impl(ghc < 7.6))
      ghc-options: -threaded
338

339 340 341 342
    if flag(debug-conflict-sets)
      cpp-options: -DDEBUG_CONFLICT_SETS
      build-depends: base >= 4.8

Edsko de Vries's avatar
Edsko de Vries committed
343 344 345 346
    if flag(debug-tracetree)
      cpp-options: -DDEBUG_TRACETREE
      build-depends: tracetree >= 0.1 && < 0.2

Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
347
    default-language: Haskell2010
348

barmston's avatar
barmston committed
349
-- Small, fast running tests.
350 351 352
Test-Suite unit-tests
  type: exitcode-stdio-1.0
  main-is: UnitTests.hs
353 354 355
  hs-source-dirs: tests, .
  ghc-options: -Wall -fwarn-tabs
  other-modules:
356
    UnitTests.Distribution.Client.ArbitraryInstances
357
    UnitTests.Distribution.Client.Targets
Duncan Coutts's avatar
Duncan Coutts committed
358
    UnitTests.Distribution.Client.FileMonitor
359
    UnitTests.Distribution.Client.Glob
360
    UnitTests.Distribution.Client.GZipUtils
361
    UnitTests.Distribution.Client.Sandbox
362
    UnitTests.Distribution.Client.Sandbox.Timestamp
363
    UnitTests.Distribution.Client.Tar
364
    UnitTests.Distribution.Client.UserConfig
365
    UnitTests.Distribution.Client.ProjectConfig
366 367 368
    UnitTests.Distribution.Solver.Modular.PSQ
    UnitTests.Distribution.Solver.Modular.Solver
    UnitTests.Distribution.Solver.Modular.DSL
369
    UnitTests.Options
370 371
  build-depends:
        base,
372 373 374 375 376 377 378 379
        array,
        bytestring,
        Cabal,
        containers,
        mtl,
        pretty,
        process,
        directory,
380
        filepath,
Duncan Coutts's avatar
Duncan Coutts committed
381
        hashable,
382
        stm,
Duncan Coutts's avatar
Duncan Coutts committed
383
        tar,
384 385 386
        time,
        HTTP,
        zlib,
387
        binary,
388
        random,
Edsko de Vries's avatar
Edsko de Vries committed
389
        hackage-security,
390 391 392
        tasty,
        tasty-hunit,
        tasty-quickcheck,
Edsko de Vries's avatar
Edsko de Vries committed
393
        tagged,
394
        QuickCheck >= 2.8.2
395 396 397 398

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

399 400 401 402 403
  if flag(network-uri)
    build-depends: network-uri >= 2.6, network >= 2.6
  else
    build-depends: network-uri < 2.6, network < 2.6

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

407 408 409 410 411
  if os(windows)
    build-depends: Win32
  else
    build-depends: unix

412
  if !(arch(arm) && impl(ghc < 7.6))
413
    ghc-options: -threaded
414 415 416 417 418

  if flag(debug-conflict-sets)
    cpp-options: -DDEBUG_CONFLICT_SETS
    build-depends: base >= 4.8

Edsko de Vries's avatar
Edsko de Vries committed
419 420 421 422
  if flag(debug-tracetree)
      cpp-options: -DDEBUG_TRACETREE
      build-depends: tracetree >= 0.1 && < 0.2

Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
423
  default-language: Haskell2010
barmston's avatar
barmston committed
424

425 426 427 428 429 430 431
-- 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:
432 433
    UnitTests.Distribution.Solver.Modular.DSL
    UnitTests.Distribution.Solver.Modular.QuickCheck
434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474
  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

475
  if !(arch(arm) && impl(ghc < 7.6))
476
    ghc-options: -threaded
477 478 479 480 481

  if flag(debug-conflict-sets)
    cpp-options: -DDEBUG_CONFLICT_SETS
    build-depends: base >= 4.8

Edsko de Vries's avatar
Edsko de Vries committed
482 483 484 485
  if flag(debug-tracetree)
      cpp-options: -DDEBUG_TRACETREE
      build-depends: tracetree >= 0.1 && < 0.2

486 487
  default-language: Haskell2010

488
-- Integration tests that call the cabal executable externally
489
test-suite integration-tests
barmston's avatar
barmston committed
490 491
  type: exitcode-stdio-1.0
  hs-source-dirs: tests
492
  main-is: IntegrationTests.hs
barmston's avatar
barmston committed
493 494
  build-depends:
    Cabal,
495
    async,
barmston's avatar
barmston committed
496 497 498 499 500
    base,
    bytestring,
    directory,
    filepath,
    process,
501
    regex-posix,
502
    tasty,
503
    tasty-hunit
barmston's avatar
barmston committed
504 505 506 507

  if os(windows)
    build-depends: Win32 >= 2 && < 3
  else
508
    build-depends: unix >= 2.5 && < 2.8
barmston's avatar
barmston committed
509

510
  if !(arch(arm) && impl(ghc < 7.6))
barmston's avatar
barmston committed
511 512 513
    ghc-options: -threaded

  ghc-options: -Wall
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
514
  default-language: Haskell2010
515

516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571
-- Integration tests that use the cabal-install code directly
-- but still build whole projects
test-suite integration-tests2
  type: exitcode-stdio-1.0
  main-is: IntegrationTests2.hs
  hs-source-dirs: tests, .
  ghc-options: -Wall -fwarn-tabs
  other-modules:
  build-depends:
        async,
        array,
        base,
        base16-bytestring,
        binary,
        bytestring,
        Cabal,
        containers,
        cryptohash-sha256,
        directory,
        filepath,
        hackage-security,
        hashable,
        HTTP,
        mtl,
        network,
        network-uri,
        pretty,
        process,
        random,
        stm,
        tar,
        time,
        zlib,
        tasty,
        tasty-hunit

  if flag(old-bytestring)
    build-depends: bytestring-builder

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

  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

572 573 574 575 576
custom-setup
  setup-depends: Cabal >= 1.25,
                 base,
                 process   >= 1.1.0.1  && < 1.5,
                 filepath   >= 1.3      && < 1.5