cabal-install.cabal 13.9 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
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.PkgConfigDb
182
        Distribution.Client.PlanIndex
refold's avatar
refold committed
183
        Distribution.Client.Run
184
        Distribution.Client.RebuildMonad
185
        Distribution.Client.Sandbox
186 187
        Distribution.Client.Sandbox.Index
        Distribution.Client.Sandbox.PackageEnvironment
188
        Distribution.Client.Sandbox.Timestamp
189
        Distribution.Client.Sandbox.Types
Edsko de Vries's avatar
Edsko de Vries committed
190
        Distribution.Client.Security.HTTP
191 192 193 194
        Distribution.Client.Setup
        Distribution.Client.SetupWrapper
        Distribution.Client.SrcDist
        Distribution.Client.Tar
195
        Distribution.Client.Targets
196 197 198 199
        Distribution.Client.Types
        Distribution.Client.Update
        Distribution.Client.Upload
        Distribution.Client.Utils
200
        Distribution.Client.Utils.LabeledGraph
201
        Distribution.Client.World
202
        Distribution.Client.Win32SelfUpgrade
203
        Distribution.Client.Compat.ExecutablePath
204
        Distribution.Client.Compat.FilePerms
205
        Distribution.Client.Compat.Process
206 207
        Distribution.Client.Compat.Semaphore
        Distribution.Client.Compat.Time
208
        Paths_cabal_install
209

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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