forked from haskell/cabal
-
Notifications
You must be signed in to change notification settings - Fork 1
/
cabal-install.cabal
727 lines (666 loc) · 25 KB
/
cabal-install.cabal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
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
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
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
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
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
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
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
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
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
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
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
Name: cabal-install
Version: 1.25.0.0
Synopsis: The command-line interface for Cabal and Hackage.
Description:
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.
homepage: http://www.haskell.org/cabal/
bug-reports: https://github.com/haskell/cabal/issues
License: BSD3
License-File: LICENSE
Author: Cabal Development Team (see AUTHORS file)
Maintainer: Cabal Development Team <[email protected]>
Copyright: 2003-2017, Cabal Development Team
Category: Distribution
Build-type: Custom
Cabal-Version: >= 1.10
Extra-Source-Files:
README.md bash-completion/cabal bootstrap.sh changelog
tests/README.md
-- Generated with '../Cabal/misc/gen-extra-source-files.sh'
-- Do NOT edit this section manually; instead, run the script.
-- BEGIN gen-extra-source-files
tests/IntegrationTests/common.sh
tests/IntegrationTests/exec/Foo.hs
tests/IntegrationTests/exec/My.hs
tests/IntegrationTests/exec/T4049.sh
tests/IntegrationTests/exec/T4049/UseLib.c
tests/IntegrationTests/exec/T4049/csrc/MyForeignLibWrapper.c
tests/IntegrationTests/exec/T4049/my-foreign-lib.cabal
tests/IntegrationTests/exec/T4049/src/MyForeignLib/Hello.hs
tests/IntegrationTests/exec/T4049/src/MyForeignLib/SomeBindings.hsc
tests/IntegrationTests/exec/my.cabal
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
tests/IntegrationTests/internal-libs/cabal.project
tests/IntegrationTests/internal-libs/internal_lib_basic.sh
tests/IntegrationTests/internal-libs/internal_lib_shadow.sh
tests/IntegrationTests/internal-libs/new_build.sh
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
tests/IntegrationTests/new-build/BuildToolsPath.sh
tests/IntegrationTests/new-build/BuildToolsPath/A.hs
tests/IntegrationTests/new-build/BuildToolsPath/MyCustomPreprocessor.hs
tests/IntegrationTests/new-build/BuildToolsPath/build-tools-path.cabal
tests/IntegrationTests/new-build/BuildToolsPath/cabal.project
tests/IntegrationTests/new-build/BuildToolsPath/hello/Hello.hs
tests/IntegrationTests/new-build/T3460.sh
tests/IntegrationTests/new-build/T3460/C.hs
tests/IntegrationTests/new-build/T3460/Setup.hs
tests/IntegrationTests/new-build/T3460/T3460.cabal
tests/IntegrationTests/new-build/T3460/cabal.project
tests/IntegrationTests/new-build/T3460/sub-package-A/A.hs
tests/IntegrationTests/new-build/T3460/sub-package-A/Setup.hs
tests/IntegrationTests/new-build/T3460/sub-package-A/sub-package-A.cabal
tests/IntegrationTests/new-build/T3460/sub-package-B/B.hs
tests/IntegrationTests/new-build/T3460/sub-package-B/Setup.hs
tests/IntegrationTests/new-build/T3460/sub-package-B/sub-package-B.cabal
tests/IntegrationTests/new-build/T3978.err
tests/IntegrationTests/new-build/T3978.sh
tests/IntegrationTests/new-build/T3978/cabal.project
tests/IntegrationTests/new-build/T3978/p/p.cabal
tests/IntegrationTests/new-build/T3978/q/q.cabal
tests/IntegrationTests/new-build/T4017.sh
tests/IntegrationTests/new-build/T4017/cabal.project
tests/IntegrationTests/new-build/T4017/p/p.cabal
tests/IntegrationTests/new-build/T4017/q/q.cabal
tests/IntegrationTests/new-build/executable/Main.hs
tests/IntegrationTests/new-build/executable/Setup.hs
tests/IntegrationTests/new-build/executable/Test.hs
tests/IntegrationTests/new-build/executable/a.cabal
tests/IntegrationTests/new-build/executable/cabal.project
tests/IntegrationTests/new-build/external_build_tools.sh
tests/IntegrationTests/new-build/external_build_tools/cabal.project
tests/IntegrationTests/new-build/external_build_tools/client/Hello.hs
tests/IntegrationTests/new-build/external_build_tools/client/client.cabal
tests/IntegrationTests/new-build/external_build_tools/happy/MyCustomPreprocessor.hs
tests/IntegrationTests/new-build/external_build_tools/happy/happy.cabal
tests/IntegrationTests/new-build/monitor_cabal_files.sh
tests/IntegrationTests/new-build/monitor_cabal_files/cabal.project
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
tests/IntegrationTests/regression/t2755.sh
tests/IntegrationTests/regression/t2755/A.hs
tests/IntegrationTests/regression/t2755/Setup.hs
tests/IntegrationTests/regression/t2755/test-t2755.cabal
tests/IntegrationTests/regression/t3199.sh
tests/IntegrationTests/regression/t3199/Main.hs
tests/IntegrationTests/regression/t3199/Setup.hs
tests/IntegrationTests/regression/t3199/test-3199.cabal
tests/IntegrationTests/regression/t3827.sh
tests/IntegrationTests/regression/t3827/cabal.project
tests/IntegrationTests/regression/t3827/p/P.hs
tests/IntegrationTests/regression/t3827/p/p.cabal
tests/IntegrationTests/regression/t3827/q/Main.hs
tests/IntegrationTests/regression/t3827/q/q.cabal
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
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
tests/IntegrationTests/user-config/common.sh
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
tests/IntegrationTests2/build/keep-going/cabal.project
tests/IntegrationTests2/build/keep-going/p/P.hs
tests/IntegrationTests2/build/keep-going/p/p.cabal
tests/IntegrationTests2/build/keep-going/q/Q.hs
tests/IntegrationTests2/build/keep-going/q/q.cabal
tests/IntegrationTests2/build/setup-custom1/A.hs
tests/IntegrationTests2/build/setup-custom1/Setup.hs
tests/IntegrationTests2/build/setup-custom1/a.cabal
tests/IntegrationTests2/build/setup-custom2/A.hs
tests/IntegrationTests2/build/setup-custom2/Setup.hs
tests/IntegrationTests2/build/setup-custom2/a.cabal
tests/IntegrationTests2/build/setup-simple/A.hs
tests/IntegrationTests2/build/setup-simple/Setup.hs
tests/IntegrationTests2/build/setup-simple/a.cabal
tests/IntegrationTests2/exception/bad-config/cabal.project
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
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
-- END gen-extra-source-files
source-repository head
type: git
location: https://github.com/haskell/cabal/
subdir: cabal-install
Flag old-bytestring
description: Use bytestring < 0.10.2 and bytestring-builder
default: False
Flag old-directory
description: Use directory < 1.2 and old-time
default: False
Flag network-uri
description: Get Network.URI from the network-uri package
default: True
Flag debug-conflict-sets
description: Add additional information to ConflictSets
default: False
Flag debug-tracetree
description: Compile in support for tracetree (used to debug the solver)
default: False
flag parsec
description: Use parsec parser. This requires 'Cabal' library built with its parsec flag enabled.
default: False
manual: True
executable cabal
main-is: Main.hs
ghc-options: -Wall -fwarn-tabs -rtsopts
if impl(ghc >= 8.0)
ghc-options: -Wcompat
-Wnoncanonical-monad-instances
-Wnoncanonical-monadfail-instances
other-modules:
Distribution.Client.BuildTarget
Distribution.Client.BuildReports.Anonymous
Distribution.Client.BuildReports.Storage
Distribution.Client.BuildReports.Types
Distribution.Client.BuildReports.Upload
Distribution.Client.Check
Distribution.Client.CmdBuild
Distribution.Client.CmdConfigure
Distribution.Client.CmdFreeze
Distribution.Client.CmdHaddock
Distribution.Client.CmdTest
Distribution.Client.CmdRepl
Distribution.Client.Config
Distribution.Client.Configure
Distribution.Client.Dependency
Distribution.Client.Dependency.Types
Distribution.Client.DistDirLayout
Distribution.Client.Exec
Distribution.Client.Fetch
Distribution.Client.FetchUtils
Distribution.Client.FileMonitor
Distribution.Client.Freeze
Distribution.Client.GenBounds
Distribution.Client.Get
Distribution.Client.Glob
Distribution.Client.GlobalFlags
Distribution.Client.GZipUtils
Distribution.Client.Haddock
Distribution.Client.HttpUtils
Distribution.Client.IndexUtils
Distribution.Client.IndexUtils.Timestamp
Distribution.Client.Init
Distribution.Client.Init.Heuristics
Distribution.Client.Init.Licenses
Distribution.Client.Init.Types
Distribution.Client.Install
Distribution.Client.InstallPlan
Distribution.Client.InstallSymlink
Distribution.Client.JobControl
Distribution.Client.List
Distribution.Client.Manpage
Distribution.Client.Nix
Distribution.Client.Outdated
Distribution.Client.PackageHash
Distribution.Client.PackageUtils
Distribution.Client.ParseUtils
Distribution.Client.ProjectBuilding
Distribution.Client.ProjectBuilding.Types
Distribution.Client.ProjectConfig
Distribution.Client.ProjectConfig.Types
Distribution.Client.ProjectConfig.Legacy
Distribution.Client.ProjectOrchestration
Distribution.Client.ProjectPlanning
Distribution.Client.ProjectPlanning.Types
Distribution.Client.ProjectPlanOutput
Distribution.Client.RebuildMonad
Distribution.Client.Reconfigure
Distribution.Client.Run
Distribution.Client.Sandbox
Distribution.Client.Sandbox.Index
Distribution.Client.Sandbox.PackageEnvironment
Distribution.Client.Sandbox.Timestamp
Distribution.Client.Sandbox.Types
Distribution.Client.SavedFlags
Distribution.Client.Security.DNS
Distribution.Client.Security.HTTP
Distribution.Client.Setup
Distribution.Client.SetupWrapper
Distribution.Client.SrcDist
Distribution.Client.SolverInstallPlan
Distribution.Client.SolverPlanIndex
Distribution.Client.SourceFiles
Distribution.Client.Tar
Distribution.Client.Targets
Distribution.Client.Types
Distribution.Client.Update
Distribution.Client.Upload
Distribution.Client.Utils
Distribution.Client.Utils.Json
Distribution.Client.World
Distribution.Client.Win32SelfUpgrade
Distribution.Client.Compat.ExecutablePath
Distribution.Client.Compat.FilePerms
Distribution.Client.Compat.Prelude
Distribution.Client.Compat.Process
Distribution.Client.Compat.Semaphore
Distribution.Solver.Types.ComponentDeps
Distribution.Solver.Types.ConstraintSource
Distribution.Solver.Types.DependencyResolver
Distribution.Solver.Types.InstalledPreference
Distribution.Solver.Types.InstSolverPackage
Distribution.Solver.Types.LabeledPackageConstraint
Distribution.Solver.Types.OptionalStanza
Distribution.Solver.Types.PackageConstraint
Distribution.Solver.Types.PackageFixedDeps
Distribution.Solver.Types.PackageIndex
Distribution.Solver.Types.PackagePath
Distribution.Solver.Types.PackagePreferences
Distribution.Solver.Types.PkgConfigDb
Distribution.Solver.Types.Progress
Distribution.Solver.Types.ResolverPackage
Distribution.Solver.Types.Settings
Distribution.Solver.Types.SolverId
Distribution.Solver.Types.SolverPackage
Distribution.Solver.Types.SourcePackage
Distribution.Solver.Types.Variable
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.Degree
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.RetryLog
Distribution.Solver.Modular.Solver
Distribution.Solver.Modular.Tree
Distribution.Solver.Modular.Validate
Distribution.Solver.Modular.Var
Distribution.Solver.Modular.Version
Distribution.Solver.Modular.WeightedPSQ
Paths_cabal_install
-- NOTE: when updating build-depends, don't forget to update version regexps
-- in bootstrap.sh.
build-depends:
async >= 2.0 && < 3,
array >= 0.4 && < 0.6,
base >= 4.5 && < 5,
base16-bytestring >= 0.1.1 && < 0.2,
binary >= 0.5 && < 0.9,
bytestring >= 0.9 && < 1,
Cabal >= 1.25 && < 1.26,
containers >= 0.4 && < 0.6,
cryptohash-sha256 >= 0.11 && < 0.12,
deepseq >= 1.3 && < 1.5,
echo >= 0.1.3 && < 0.2,
edit-distance >= 0.2.2 && < 0.3,
filepath >= 1.3 && < 1.5,
hashable >= 1.0 && < 2,
HTTP >= 4000.1.5 && < 4000.4,
mtl >= 2.0 && < 3,
pretty >= 1.1 && < 1.2,
random >= 1 && < 1.2,
stm >= 2.0 && < 3,
tar >= 0.5.0.3 && < 0.6,
time >= 1.4 && < 1.8,
zlib >= 0.5.3 && < 0.7,
hackage-security >= 0.5.2.2 && < 0.6
if flag(old-bytestring)
build-depends: bytestring < 0.10.2, bytestring-builder >= 0.10 && < 1
else
build-depends: bytestring >= 0.10.2
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.4,
process >= 1.1.0.2 && < 1.5
-- NOTE: you MUST include the network dependency even when network-uri
-- is pulled in, otherwise the constraint solver doesn't have enough
-- information
if flag(network-uri)
build-depends: network-uri >= 2.6 && < 2.7, network >= 2.6 && < 2.7
else
build-depends: network >= 2.4 && < 2.6
-- Needed for GHC.Generics before GHC 7.6
if impl(ghc < 7.6)
build-depends: ghc-prim >= 0.2 && < 0.3
if os(windows)
build-depends: Win32 >= 2 && < 3
else
build-depends: unix >= 2.5 && < 2.8
if !(arch(arm) && impl(ghc < 7.6))
ghc-options: -threaded
if flag(debug-conflict-sets)
cpp-options: -DDEBUG_CONFLICT_SETS
build-depends: base >= 4.8
if flag(debug-tracetree)
cpp-options: -DDEBUG_TRACETREE
build-depends: tracetree >= 0.1 && < 0.2
if flag(parsec)
cpp-options: -DCABAL_PARSEC
default-language: Haskell2010
-- Small, fast running tests.
Test-Suite unit-tests
type: exitcode-stdio-1.0
main-is: UnitTests.hs
hs-source-dirs: tests, .
ghc-options: -Wall -fwarn-tabs
other-modules:
UnitTests.Distribution.Client.ArbitraryInstances
UnitTests.Distribution.Client.Targets
UnitTests.Distribution.Client.FileMonitor
UnitTests.Distribution.Client.Glob
UnitTests.Distribution.Client.GZipUtils
UnitTests.Distribution.Client.Sandbox
UnitTests.Distribution.Client.Sandbox.Timestamp
UnitTests.Distribution.Client.Tar
UnitTests.Distribution.Client.UserConfig
UnitTests.Distribution.Client.ProjectConfig
UnitTests.Distribution.Client.JobControl
UnitTests.Distribution.Client.IndexUtils.Timestamp
UnitTests.Distribution.Client.InstallPlan
UnitTests.Distribution.Solver.Modular.PSQ
UnitTests.Distribution.Solver.Modular.RetryLog
UnitTests.Distribution.Solver.Modular.Solver
UnitTests.Distribution.Solver.Modular.DSL
UnitTests.Distribution.Solver.Modular.DSL.TestCaseUtils
UnitTests.Distribution.Solver.Modular.WeightedPSQ
UnitTests.Options
build-depends:
base,
async,
array,
bytestring,
Cabal,
containers,
deepseq,
mtl,
pretty,
process,
directory,
filepath,
hashable,
stm,
tar,
time,
HTTP,
zlib,
binary,
random,
hackage-security,
tasty,
tasty-hunit,
tasty-quickcheck,
tagged,
QuickCheck >= 2.8.2
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
ghc-options: -fno-ignore-asserts
if !(arch(arm) && impl(ghc < 7.6))
ghc-options: -threaded
if flag(debug-conflict-sets)
cpp-options: -DDEBUG_CONFLICT_SETS
build-depends: base >= 4.8
if flag(debug-tracetree)
cpp-options: -DDEBUG_TRACETREE
build-depends: tracetree >= 0.1 && < 0.2
default-language: Haskell2010
-- Tests to run with a limited stack and heap size
Test-Suite memory-usage-tests
type: exitcode-stdio-1.0
main-is: MemoryUsageTests.hs
hs-source-dirs: tests, .
ghc-options: -Wall -fwarn-tabs "-with-rtsopts=-M4M -K1K"
other-modules:
UnitTests.Distribution.Solver.Modular.DSL
UnitTests.Distribution.Solver.Modular.DSL.TestCaseUtils
UnitTests.Distribution.Solver.Modular.MemoryUsage
UnitTests.Options
build-depends:
base,
async,
array,
bytestring,
Cabal,
containers,
deepseq,
mtl,
pretty,
process,
directory,
filepath,
hashable,
stm,
tar,
time,
HTTP,
zlib,
binary,
random,
hackage-security,
tagged,
tasty,
tasty-hunit
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
ghc-options: -fno-ignore-asserts
if !(arch(arm) && impl(ghc < 7.6))
ghc-options: -threaded
if flag(debug-conflict-sets)
cpp-options: -DDEBUG_CONFLICT_SETS
build-depends: base >= 4.8
if flag(debug-tracetree)
cpp-options: -DDEBUG_TRACETREE
build-depends: tracetree >= 0.1 && < 0.2
default-language: Haskell2010
-- 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 -fno-ignore-asserts
other-modules:
UnitTests.Distribution.Solver.Modular.DSL
UnitTests.Distribution.Solver.Modular.QuickCheck
build-depends:
base,
async,
array,
bytestring,
Cabal,
containers,
deepseq >= 1.2,
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) && impl(ghc < 7.6))
ghc-options: -threaded
if flag(debug-conflict-sets)
cpp-options: -DDEBUG_CONFLICT_SETS
build-depends: base >= 4.8
if flag(debug-tracetree)
cpp-options: -DDEBUG_TRACETREE
build-depends: tracetree >= 0.1 && < 0.2
default-language: Haskell2010
-- Integration tests that call the cabal executable externally
test-suite integration-tests
type: exitcode-stdio-1.0
hs-source-dirs: tests
main-is: IntegrationTests.hs
build-depends:
Cabal,
async,
base,
bytestring,
directory,
filepath,
process,
regex-posix,
tasty,
tasty-hunit
if os(windows)
build-depends: Win32 >= 2 && < 3
else
build-depends: unix >= 2.5 && < 2.8
if !(arch(arm) && impl(ghc < 7.6))
ghc-options: -threaded
ghc-options: -Wall -fwarn-tabs -fno-ignore-asserts
default-language: Haskell2010
-- 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 -fno-ignore-asserts
other-modules:
build-depends:
async,
array,
base,
base16-bytestring,
binary,
bytestring,
Cabal,
containers,
cryptohash-sha256,
deepseq,
directory,
filepath,
hackage-security,
hashable,
HTTP,
mtl,
network,
network-uri,
pretty,
process,
random,
stm,
tar,
time,
zlib,
tasty,
tasty-hunit,
tagged
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
custom-setup
setup-depends: Cabal >= 1.25,
base,
process >= 1.1.0.1 && < 1.5,
filepath >= 1.3 && < 1.5