Only use ghcup where needed
[cabal.git] / cabal-install-solver / cabal-install-solver.cabal
blob86b448ebb89c26f1890b7740eb6521ff31ed2b53
1 cabal-version: 2.2
2 name:          cabal-install-solver
3 version:       3.11.0.0
4 synopsis:      The command-line interface for Cabal and Hackage.
5 description:
6   The solver component used in cabal-install command-line program
8 homepage:      http://www.haskell.org/cabal/
9 bug-reports:   https://github.com/haskell/cabal/issues
10 license:       BSD-3-Clause
11 license-file:  LICENSE
12 author:        Cabal Development Team (see AUTHORS file)
13 maintainer:    Cabal Development Team <cabal-devel@haskell.org>
14 copyright:     2003-2024, Cabal Development Team
15 category:      Distribution
16 build-type:    Simple
17 extra-doc-files:
18   ChangeLog.md
20 source-repository head
21   type:     git
22   location: https://github.com/haskell/cabal/
23   subdir:   cabal-install-solver
25 flag debug-expensive-assertions
26   description: Enable expensive assertions for testing or debugging
27   default:     False
28   manual:      True
30 flag debug-tracetree
31   description: Compile in support for tracetree (used to debug the solver)
32   default:     False
33   manual:      True
35 library
36   default-language: Haskell2010
37   hs-source-dirs:   src
38   hs-source-dirs:   src-assertion
39   ghc-options:
40     -Wall -Wcompat -Wnoncanonical-monad-instances
41     -fwarn-tabs -fwarn-incomplete-uni-patterns
43   if impl(ghc < 8.8)
44     ghc-options: -Wnoncanonical-monadfail-instances
46   exposed-modules:
47     Distribution.Client.Utils.Assertion
49     Distribution.Solver.Compat.Prelude
50     Distribution.Solver.Modular
51     Distribution.Solver.Modular.Assignment
52     Distribution.Solver.Modular.Builder
53     Distribution.Solver.Modular.Configured
54     Distribution.Solver.Modular.ConfiguredConversion
55     Distribution.Solver.Modular.ConflictSet
56     Distribution.Solver.Modular.Cycles
57     Distribution.Solver.Modular.Dependency
58     Distribution.Solver.Modular.Explore
59     Distribution.Solver.Modular.Flag
60     Distribution.Solver.Modular.Index
61     Distribution.Solver.Modular.IndexConversion
62     Distribution.Solver.Modular.LabeledGraph
63     Distribution.Solver.Modular.Linking
64     Distribution.Solver.Modular.Log
65     Distribution.Solver.Modular.Message
66     Distribution.Solver.Modular.MessageUtils
67     Distribution.Solver.Modular.Package
68     Distribution.Solver.Modular.Preference
69     Distribution.Solver.Modular.PSQ
70     Distribution.Solver.Modular.RetryLog
71     Distribution.Solver.Modular.Solver
72     Distribution.Solver.Modular.Tree
73     Distribution.Solver.Modular.Validate
74     Distribution.Solver.Modular.Var
75     Distribution.Solver.Modular.Version
76     Distribution.Solver.Modular.WeightedPSQ
77     Distribution.Solver.Types.ComponentDeps
78     Distribution.Solver.Types.ConstraintSource
79     Distribution.Solver.Types.DependencyResolver
80     Distribution.Solver.Types.Flag
81     Distribution.Solver.Types.InstalledPreference
82     Distribution.Solver.Types.InstSolverPackage
83     Distribution.Solver.Types.LabeledPackageConstraint
84     Distribution.Solver.Types.OptionalStanza
85     Distribution.Solver.Types.PackageConstraint
86     Distribution.Solver.Types.PackageFixedDeps
87     Distribution.Solver.Types.PackageIndex
88     Distribution.Solver.Types.PackagePath
89     Distribution.Solver.Types.PackagePreferences
90     Distribution.Solver.Types.PkgConfigDb
91     Distribution.Solver.Types.Progress
92     Distribution.Solver.Types.ProjectConfigPath
93     Distribution.Solver.Types.ResolverPackage
94     Distribution.Solver.Types.Settings
95     Distribution.Solver.Types.SolverId
96     Distribution.Solver.Types.SolverPackage
97     Distribution.Solver.Types.SourcePackage
98     Distribution.Solver.Types.Variable
100   build-depends:
101     , array         >=0.4      && <0.6
102     , base          >=4.10     && <4.20
103     , bytestring    >=0.10.6.0 && <0.13
104     , Cabal         ^>=3.11
105     , Cabal-syntax  ^>=3.11
106     , containers    >=0.5.6.2  && <0.8
107     , edit-distance ^>= 0.2.2
108     , directory     >= 1.3.7.0  && < 1.4
109     , filepath      ^>=1.4.0.0 || ^>=1.5.0.0
110     , mtl           >=2.0      && <2.4
111     , network-uri   >= 2.6.0.2 && < 2.7
112     , pretty        ^>=1.1
113     , transformers  >=0.4.2.0  && <0.7
114     , text          (>= 1.2.3.0  && < 1.3) || (>= 2.0 && < 2.2)
116   if flag(debug-expensive-assertions)
117     cpp-options: -DDEBUG_EXPENSIVE_ASSERTIONS
119   if flag(debug-tracetree)
120     cpp-options:   -DDEBUG_TRACETREE
121     build-depends: tracetree ^>=0.1
123 Test-Suite unit-tests
124    default-language: Haskell2010
125    ghc-options: -rtsopts -threaded
127    type: exitcode-stdio-1.0
128    main-is: UnitTests.hs
129    hs-source-dirs: tests
130    other-modules:
131      UnitTests.Distribution.Solver.Modular.MessageUtils
133    build-depends:
134      , base        >= 4.10  && <4.20
135      , Cabal-syntax
136      , cabal-install-solver
137      , tasty       >= 1.2.3 && <1.6
138      , tasty-quickcheck
139      , tasty-hunit >= 0.10