cabal-install.cabal 14 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.Get
163
        Distribution.Client.Glob
164
        Distribution.Client.GlobalFlags
165
        Distribution.Client.GZipUtils
166
        Distribution.Client.Haddock
167 168
        Distribution.Client.HttpUtils
        Distribution.Client.IndexUtils
169 170 171 172
        Distribution.Client.Init
        Distribution.Client.Init.Heuristics
        Distribution.Client.Init.Licenses
        Distribution.Client.Init.Types
173 174
        Distribution.Client.Install
        Distribution.Client.InstallPlan
175
        Distribution.Client.InstallSymlink
176
        Distribution.Client.JobControl
177
        Distribution.Client.List
Maciek Makowski's avatar
Maciek Makowski committed
178
        Distribution.Client.Manpage
179
        Distribution.Client.PackageIndex
180
        Distribution.Client.PackageUtils
181
        Distribution.Client.ParseUtils
182
        Distribution.Client.PkgConfigDb
183
        Distribution.Client.PlanIndex
refold's avatar
refold committed
184
        Distribution.Client.Run
185
        Distribution.Client.RebuildMonad
186
        Distribution.Client.Sandbox
187 188
        Distribution.Client.Sandbox.Index
        Distribution.Client.Sandbox.PackageEnvironment
189
        Distribution.Client.Sandbox.Timestamp
190
        Distribution.Client.Sandbox.Types
Edsko de Vries's avatar
Edsko de Vries committed
191
        Distribution.Client.Security.HTTP
192 193 194 195
        Distribution.Client.Setup
        Distribution.Client.SetupWrapper
        Distribution.Client.SrcDist
        Distribution.Client.Tar
196
        Distribution.Client.Targets
197 198 199 200
        Distribution.Client.Types
        Distribution.Client.Update
        Distribution.Client.Upload
        Distribution.Client.Utils
201
        Distribution.Client.Utils.LabeledGraph
202
        Distribution.Client.World
203
        Distribution.Client.Win32SelfUpgrade
204
        Distribution.Client.Compat.ExecutablePath
205
        Distribution.Client.Compat.FilePerms
206
        Distribution.Client.Compat.Process
207 208
        Distribution.Client.Compat.Semaphore
        Distribution.Client.Compat.Time
209
        Paths_cabal_install
210

Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
211 212
    -- NOTE: when updating build-depends, don't forget to update version regexps
    -- in bootstrap.sh.
Ben Millwood's avatar
Ben Millwood committed
213
    build-depends:
214 215
        array      >= 0.4      && < 0.6,
        base       >= 4.5      && < 5,
216
        binary     >= 0.5      && < 0.9,
Ben Millwood's avatar
Ben Millwood committed
217
        bytestring >= 0.9      && < 1,
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
218
        Cabal      >= 1.25     && < 1.26,
219 220
        containers >= 0.4      && < 0.6,
        filepath   >= 1.3      && < 1.5,
221
        hashable   >= 1.0      && < 2,
222
        HTTP       >= 4000.1.5 && < 4000.4,
Ben Millwood's avatar
Ben Millwood committed
223
        mtl        >= 2.0      && < 3,
224
        pretty     >= 1.1      && < 1.2,
dsf's avatar
dsf committed
225
        random     >= 1        && < 1.2,
Ben Millwood's avatar
Ben Millwood committed
226
        stm        >= 2.0      && < 3,
Duncan Coutts's avatar
Duncan Coutts committed
227
        tar        >= 0.5.0.1  && < 0.6,
228
        time       >= 1.4      && < 1.7,
Edsko de Vries's avatar
Edsko de Vries committed
229 230
        zlib       >= 0.5.3    && < 0.7,
        hackage-security >= 0.5 && < 0.6
231

232
    if flag(old-directory)
233
      build-depends: directory >= 1.1 && < 1.2, old-time >= 1 && < 1.2,
234
                     process   >= 1.0.1.1  && < 1.1.0.2
235
    else
236
      build-depends: directory >= 1.2 && < 1.3,
237
                     process   >= 1.1.0.2  && < 1.5
238

239 240 241
    -- NOTE: you MUST include the network dependency even when network-uri
    -- is pulled in, otherwise the constraint solver doesn't have enough
    -- information
242
    if flag(network-uri)
243
      build-depends: network-uri >= 2.6, network >= 2.6
244
    else
tibbe's avatar
tibbe committed
245
      build-depends: network     >= 2.4 && < 2.6
246

247 248 249 250
    -- Needed for GHC.Generics before GHC 7.6
    if impl(ghc < 7.6)
      build-depends: ghc-prim >= 0.2 && < 0.3

251
    if os(windows)
252
      build-depends: Win32 >= 2 && < 3
253
    else
254
      build-depends: unix >= 2.5 && < 2.8
255

256
    if arch(arm) && impl(ghc < 7.6)
Ian D. Bollinger's avatar
Ian D. Bollinger committed
257
       -- older ghc on arm does not support -threaded
258 259
       cc-options:  -DCABAL_NO_THREADED
    else
260
       ghc-options: -threaded
261 262

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

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

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

313 314 315 316 317
  if flag(network-uri)
    build-depends: network-uri >= 2.6, network >= 2.6
  else
    build-depends: network-uri < 2.6, network < 2.6

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

321 322 323 324 325 326 327 328 329
  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
330
  default-language: Haskell2010
barmston's avatar
barmston committed
331

332
test-suite integration-tests
barmston's avatar
barmston committed
333 334
  type: exitcode-stdio-1.0
  hs-source-dirs: tests
335
  main-is: IntegrationTests.hs
barmston's avatar
barmston committed
336 337
  build-depends:
    Cabal,
338
    async,
barmston's avatar
barmston committed
339 340 341 342 343
    base,
    bytestring,
    directory,
    filepath,
    process,
344
    regex-posix,
345
    tasty,
346
    tasty-hunit
barmston's avatar
barmston committed
347 348 349 350

  if os(windows)
    build-depends: Win32 >= 2 && < 3
  else
351
    build-depends: unix >= 2.5 && < 2.8
barmston's avatar
barmston committed
352 353 354 355 356 357 358

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

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