cabal-install.cabal 8.72 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 24
Category:           Distribution
Build-type:         Simple
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
25
Cabal-Version:      >= 1.10
barmston's avatar
barmston committed
26 27 28 29 30
Extra-Source-Files:
  README.md bash-completion/cabal bootstrap.sh changelog

  -- Generated with '../Cabal/misc/gen-extra-source-files.sh | sort'
  tests/PackageTests/Freeze/my.cabal
Duncan Coutts's avatar
Duncan Coutts committed
31 32

source-repository head
33 34
  type:     git
  location: https://github.com/haskell/cabal/
Duncan Coutts's avatar
Duncan Coutts committed
35
  subdir:   cabal-install
36

37 38 39 40
Flag old-directory
  description:  Use directory < 1.2 and old-time
  default:      False

41 42 43 44
Flag network-uri
  description:  Get Network.URI from the network-uri package
  default:      True

45 46 47 48
executable cabal
    main-is:        Main.hs
    ghc-options:    -Wall -fwarn-tabs
    other-modules:
Duncan Coutts's avatar
Duncan Coutts committed
49 50
        Distribution.Client.BuildReports.Anonymous
        Distribution.Client.BuildReports.Storage
Duncan Coutts's avatar
Duncan Coutts committed
51
        Distribution.Client.BuildReports.Types
Duncan Coutts's avatar
Duncan Coutts committed
52
        Distribution.Client.BuildReports.Upload
53
        Distribution.Client.Check
Edsko de Vries's avatar
Edsko de Vries committed
54
        Distribution.Client.ComponentDeps
55
        Distribution.Client.Config
Duncan Coutts's avatar
Duncan Coutts committed
56
        Distribution.Client.Configure
57 58 59 60 61
        Distribution.Client.Dependency
        Distribution.Client.Dependency.TopDown
        Distribution.Client.Dependency.TopDown.Constraints
        Distribution.Client.Dependency.TopDown.Types
        Distribution.Client.Dependency.Types
62
        Distribution.Client.Dependency.Modular
63 64 65
        Distribution.Client.Dependency.Modular.Assignment
        Distribution.Client.Dependency.Modular.Builder
        Distribution.Client.Dependency.Modular.Configured
Andres Löh's avatar
Andres Löh committed
66
        Distribution.Client.Dependency.Modular.ConfiguredConversion
67 68 69 70
        Distribution.Client.Dependency.Modular.Dependency
        Distribution.Client.Dependency.Modular.Explore
        Distribution.Client.Dependency.Modular.Flag
        Distribution.Client.Dependency.Modular.Index
71
        Distribution.Client.Dependency.Modular.IndexConversion
72
        Distribution.Client.Dependency.Modular.Linking
73 74 75 76 77 78 79 80 81
        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
82
        Distribution.Client.Exec
83
        Distribution.Client.Fetch
Duncan Coutts's avatar
Duncan Coutts committed
84
        Distribution.Client.FetchUtils
85
        Distribution.Client.Freeze
86
        Distribution.Client.Get
87
        Distribution.Client.GZipUtils
88
        Distribution.Client.Haddock
89 90
        Distribution.Client.HttpUtils
        Distribution.Client.IndexUtils
91 92 93 94
        Distribution.Client.Init
        Distribution.Client.Init.Heuristics
        Distribution.Client.Init.Licenses
        Distribution.Client.Init.Types
95 96
        Distribution.Client.Install
        Distribution.Client.InstallPlan
97
        Distribution.Client.InstallSymlink
98
        Distribution.Client.JobControl
99
        Distribution.Client.List
100
        Distribution.Client.PackageIndex
101
        Distribution.Client.PackageUtils
102
        Distribution.Client.ParseUtils
103
        Distribution.Client.PlanIndex
refold's avatar
refold committed
104
        Distribution.Client.Run
105
        Distribution.Client.Sandbox
106 107
        Distribution.Client.Sandbox.Index
        Distribution.Client.Sandbox.PackageEnvironment
108
        Distribution.Client.Sandbox.Timestamp
109
        Distribution.Client.Sandbox.Types
110 111 112 113
        Distribution.Client.Setup
        Distribution.Client.SetupWrapper
        Distribution.Client.SrcDist
        Distribution.Client.Tar
114
        Distribution.Client.Targets
115 116 117 118
        Distribution.Client.Types
        Distribution.Client.Update
        Distribution.Client.Upload
        Distribution.Client.Utils
119
        Distribution.Client.Utils.LabeledGraph
120
        Distribution.Client.World
121
        Distribution.Client.Win32SelfUpgrade
122
        Distribution.Client.Compat.Environment
123
        Distribution.Client.Compat.ExecutablePath
124
        Distribution.Client.Compat.FilePerms
125
        Distribution.Client.Compat.Process
126 127
        Distribution.Client.Compat.Semaphore
        Distribution.Client.Compat.Time
128
        Paths_cabal_install
129

Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
130 131
    -- NOTE: when updating build-depends, don't forget to update version regexps
    -- in bootstrap.sh.
Ben Millwood's avatar
Ben Millwood committed
132
    build-depends:
133
        array      >= 0.1      && < 0.6,
134
        base       >= 4.3      && < 5,
Ben Millwood's avatar
Ben Millwood committed
135
        bytestring >= 0.9      && < 1,
tibbe's avatar
tibbe committed
136
        Cabal      >= 1.23     && < 1.24,
Ben Millwood's avatar
Ben Millwood committed
137
        containers >= 0.1      && < 0.6,
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
138
        filepath   >= 1.0      && < 1.5,
tibbe's avatar
tibbe committed
139
        HTTP       >= 4000.2.5 && < 4000.3,
Ben Millwood's avatar
Ben Millwood committed
140 141
        mtl        >= 2.0      && < 3,
        pretty     >= 1        && < 1.2,
dsf's avatar
dsf committed
142
        random     >= 1        && < 1.2,
Ben Millwood's avatar
Ben Millwood committed
143
        stm        >= 2.0      && < 3,
144
        time       >= 1.1      && < 1.6,
Ben Millwood's avatar
Ben Millwood committed
145
        zlib       >= 0.5.3    && < 0.6
146

147
    if flag(old-directory)
148 149
      build-depends: directory >= 1 && < 1.2, old-time >= 1 && < 1.2,
                     process   >= 1.0.1.1  && < 1.1.0.2
150
    else
151 152
      build-depends: directory >= 1.2 && < 1.3,
                     process   >= 1.1.0.2  && < 1.3
153

154 155 156
    -- NOTE: you MUST include the network dependency even when network-uri
    -- is pulled in, otherwise the constraint solver doesn't have enough
    -- information
157
    if flag(network-uri)
158
      build-depends: network-uri >= 2.6, network >= 2.6
159
    else
tibbe's avatar
tibbe committed
160
      build-depends: network     >= 2.4 && < 2.6
161

162
    if os(windows)
163
      build-depends: Win32 >= 2 && < 3
164
      cpp-options: -DWIN32
165
    else
166
      build-depends: unix >= 2.0 && < 2.8
167

168
    if arch(arm) && impl(ghc < 7.6)
Ian D. Bollinger's avatar
Ian D. Bollinger committed
169
       -- older ghc on arm does not support -threaded
170 171
       cc-options:  -DCABAL_NO_THREADED
    else
172
       ghc-options: -threaded
173 174

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

barmston's avatar
barmston committed
177
-- Small, fast running tests.
178 179 180
Test-Suite unit-tests
  type: exitcode-stdio-1.0
  main-is: UnitTests.hs
181 182 183 184 185
  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
186
    UnitTests.Distribution.Client.Dependency.Modular.Solver
187
    UnitTests.Distribution.Client.Sandbox
188
    UnitTests.Distribution.Client.UserConfig
189 190
  build-depends:
        base,
191 192 193 194 195 196 197 198
        array,
        bytestring,
        Cabal,
        containers,
        mtl,
        pretty,
        process,
        directory,
199
        filepath,
200 201 202 203
        stm,
        time,
        HTTP,
        zlib,
refold's avatar
refold committed
204

205 206 207
        tasty,
        tasty-hunit,
        tasty-quickcheck,
Edsko de Vries's avatar
Edsko de Vries committed
208
        tagged,
209 210 211 212 213
        QuickCheck >= 2.5

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

214 215 216 217 218
  if flag(network-uri)
    build-depends: network-uri >= 2.6, network >= 2.6
  else
    build-depends: network-uri < 2.6, network < 2.6

219 220 221 222 223 224 225 226 227 228
  if os(windows)
    build-depends: Win32
    cpp-options: -DWIN32
  else
    build-depends: unix

  if arch(arm)
    cc-options:  -DCABAL_NO_THREADED
  else
    ghc-options: -threaded
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
229
  default-language: Haskell2010
barmston's avatar
barmston committed
230 231 232 233 234 235 236

-- Large, system tests that build packages.
test-suite package-tests
  type: exitcode-stdio-1.0
  hs-source-dirs: tests
  main-is: PackageTests.hs
  other-modules:
237
    PackageTests.Exec.Check
barmston's avatar
barmston committed
238
    PackageTests.Freeze.Check
239
    PackageTests.MultipleSource.Check
barmston's avatar
barmston committed
240 241 242
    PackageTests.PackageTester
  build-depends:
    Cabal,
243
    QuickCheck >= 2.1.0.1 && < 2.9,
barmston's avatar
barmston committed
244 245 246 247 248 249 250
    base,
    bytestring,
    directory,
    extensible-exceptions,
    filepath,
    process,
    regex-posix,
251 252 253
    tasty,
    tasty-hunit,
    tasty-quickcheck
barmston's avatar
barmston committed
254 255 256 257 258 259 260 261 262 263 264 265 266

  if os(windows)
    build-depends: Win32 >= 2 && < 3
    cpp-options: -DWIN32
  else
    build-depends: unix >= 2.0 && < 2.8

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

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