cabal-install.cabal 13.8 KB
Newer Older
1
Name:               cabal-install
tibbe's avatar
tibbe committed
2
Version:            1.23.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 86 87 88 89
  tests/IntegrationTests/multiple-source/should_run/q/q.cabal
  tests/IntegrationTests/sandbox-sources/common.sh
  tests/IntegrationTests/sandbox-sources/should_fail/fail_on_nonexistent_source.err
  tests/IntegrationTests/sandbox-sources/should_fail/fail_on_nonexistent_source.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
  tests/IntegrationTests/sandbox-sources/should_run/report_success_removing_source.out
  tests/IntegrationTests/sandbox-sources/should_run/report_success_removing_source.sh
90 91 92 93 94 95 96
  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
97 98
  tests/IntegrationTests/user-config/should_run/uses_CABAL_CONFIG.out
  tests/IntegrationTests/user-config/should_run/uses_CABAL_CONFIG.sh
99
  -- END gen-extra-source-files
Duncan Coutts's avatar
Duncan Coutts committed
100 101

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

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

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

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

122
    other-modules:
Duncan Coutts's avatar
Duncan Coutts committed
123 124
        Distribution.Client.BuildReports.Anonymous
        Distribution.Client.BuildReports.Storage
Duncan Coutts's avatar
Duncan Coutts committed
125
        Distribution.Client.BuildReports.Types
Duncan Coutts's avatar
Duncan Coutts committed
126
        Distribution.Client.BuildReports.Upload
127
        Distribution.Client.Check
Edsko de Vries's avatar
Edsko de Vries committed
128
        Distribution.Client.ComponentDeps
129
        Distribution.Client.Config
Duncan Coutts's avatar
Duncan Coutts committed
130
        Distribution.Client.Configure
131 132 133 134 135
        Distribution.Client.Dependency
        Distribution.Client.Dependency.TopDown
        Distribution.Client.Dependency.TopDown.Constraints
        Distribution.Client.Dependency.TopDown.Types
        Distribution.Client.Dependency.Types
136
        Distribution.Client.Dependency.Modular
137 138 139
        Distribution.Client.Dependency.Modular.Assignment
        Distribution.Client.Dependency.Modular.Builder
        Distribution.Client.Dependency.Modular.Configured
Andres Löh's avatar
Andres Löh committed
140
        Distribution.Client.Dependency.Modular.ConfiguredConversion
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
barmston's avatar
barmston committed
156
        Distribution.Client.Exec
157
        Distribution.Client.Fetch
Duncan Coutts's avatar
Duncan Coutts committed
158
        Distribution.Client.FetchUtils
159
        Distribution.Client.FileMonitor
160
        Distribution.Client.Freeze
161
        Distribution.Client.Get
162
        Distribution.Client.Glob
163
        Distribution.Client.GlobalFlags
164
        Distribution.Client.GZipUtils
165
        Distribution.Client.Haddock
166 167
        Distribution.Client.HttpUtils
        Distribution.Client.IndexUtils
168 169 170 171
        Distribution.Client.Init
        Distribution.Client.Init.Heuristics
        Distribution.Client.Init.Licenses
        Distribution.Client.Init.Types
172 173
        Distribution.Client.Install
        Distribution.Client.InstallPlan
174
        Distribution.Client.InstallSymlink
175
        Distribution.Client.JobControl
176
        Distribution.Client.List
Maciek Makowski's avatar
Maciek Makowski committed
177
        Distribution.Client.Manpage
178
        Distribution.Client.PackageIndex
179
        Distribution.Client.PackageUtils
180
        Distribution.Client.ParseUtils
181
        Distribution.Client.PlanIndex
refold's avatar
refold committed
182
        Distribution.Client.Run
183
        Distribution.Client.RebuildMonad
184
        Distribution.Client.Sandbox
185 186
        Distribution.Client.Sandbox.Index
        Distribution.Client.Sandbox.PackageEnvironment
187
        Distribution.Client.Sandbox.Timestamp
188
        Distribution.Client.Sandbox.Types
Edsko de Vries's avatar
Edsko de Vries committed
189
        Distribution.Client.Security.HTTP
190 191 192 193
        Distribution.Client.Setup
        Distribution.Client.SetupWrapper
        Distribution.Client.SrcDist
        Distribution.Client.Tar
194
        Distribution.Client.Targets
195 196 197 198
        Distribution.Client.Types
        Distribution.Client.Update
        Distribution.Client.Upload
        Distribution.Client.Utils
199
        Distribution.Client.Utils.LabeledGraph
200
        Distribution.Client.World
201
        Distribution.Client.Win32SelfUpgrade
202
        Distribution.Client.Compat.ExecutablePath
203
        Distribution.Client.Compat.FilePerms
204
        Distribution.Client.Compat.Process
205 206
        Distribution.Client.Compat.Semaphore
        Distribution.Client.Compat.Time
207
        Paths_cabal_install
208

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

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

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

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

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

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

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

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

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

309 310 311 312 313
  if flag(network-uri)
    build-depends: network-uri >= 2.6, network >= 2.6
  else
    build-depends: network-uri < 2.6, network < 2.6

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

317 318 319 320 321 322 323 324 325
  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
326
  default-language: Haskell2010
barmston's avatar
barmston committed
327

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

  if os(windows)
    build-depends: Win32 >= 2 && < 3
  else
347
    build-depends: unix >= 2.5 && < 2.8
barmston's avatar
barmston committed
348 349 350 351 352 353 354

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

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