forked from haskell/cabal
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Cabal.cabal
192 lines (179 loc) · 6.5 KB
/
Cabal.cabal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
Name: Cabal
Version: 1.17.0
Copyright: 2003-2006, Isaac Jones
2005-2011, Duncan Coutts
License: BSD3
License-File: LICENSE
Author: Isaac Jones <ijones@syntaxpolice.org>
Duncan Coutts <duncan@community.haskell.org>
Maintainer: cabal-devel@haskell.org
Homepage: http://www.haskell.org/cabal/
bug-reports: http://hackage.haskell.org/trac/hackage/
Synopsis: A framework for packaging Haskell software
Description:
The Haskell Common Architecture for Building Applications and
Libraries: a framework defining a common interface for authors to more
easily build their Haskell applications in a portable way.
.
The Haskell Cabal is part of a larger infrastructure for distributing,
organizing, and cataloging Haskell libraries and tools.
Category: Distribution
cabal-version: >=1.10
Build-Type: Custom
-- Even though we do use the default Setup.lhs it's vital to bootstrapping
-- that we build Setup.lhs using our own local Cabal source code.
Extra-Source-Files:
README changelog
source-repository head
type: git
location: https://github.com/haskell/cabal/
subdir: Cabal
Flag base4
Description: Choose the even newer, even smaller, split-up base package.
Flag base3
Description: Choose the new smaller, split-up base package.
Flag bytestring-in-base
Library
build-depends: base >= 2 && < 5,
deepseq >= 1.3 && < 1.4,
filepath >= 1 && < 1.4
if flag(base4) { build-depends: base >= 4 } else { build-depends: base < 4 }
if flag(base3) { build-depends: base >= 3 } else { build-depends: base < 3 }
if flag(base3)
Build-Depends: directory >= 1 && < 1.2,
process >= 1 && < 1.2,
old-time >= 1 && < 1.2,
containers >= 0.1 && < 0.6,
array >= 0.1 && < 0.5,
pretty >= 1 && < 1.2
if flag(bytestring-in-base)
Build-Depends: base >= 2.0 && < 2.2
else
Build-Depends: base < 2.0 || >= 3.0, bytestring >= 0.9
if !os(windows)
Build-Depends: unix >= 2.0 && < 2.7
ghc-options: -Wall -fno-ignore-asserts
if impl(ghc >= 6.8)
ghc-options: -fwarn-tabs
nhc98-Options: -K4M
Exposed-Modules:
Distribution.Compiler,
Distribution.InstalledPackageInfo,
Distribution.License,
Distribution.Make,
Distribution.ModuleName,
Distribution.Package,
Distribution.PackageDescription,
Distribution.PackageDescription.Configuration,
Distribution.PackageDescription.Parse,
Distribution.PackageDescription.Check,
Distribution.PackageDescription.PrettyPrint,
Distribution.ParseUtils,
Distribution.ReadE,
Distribution.Simple,
Distribution.Simple.Build,
Distribution.Simple.Build.Macros,
Distribution.Simple.Build.PathsModule,
Distribution.Simple.BuildPaths,
Distribution.Simple.Bench,
Distribution.Simple.Command,
Distribution.Simple.Compiler,
Distribution.Simple.Configure,
Distribution.Simple.GHC,
Distribution.Simple.LHC,
Distribution.Simple.Haddock,
Distribution.Simple.Hpc,
Distribution.Simple.Hugs,
Distribution.Simple.Install,
Distribution.Simple.InstallDirs,
Distribution.Simple.JHC,
Distribution.Simple.LocalBuildInfo,
Distribution.Simple.NHC,
Distribution.Simple.PackageIndex,
Distribution.Simple.PreProcess,
Distribution.Simple.PreProcess.Unlit,
Distribution.Simple.Program,
Distribution.Simple.Program.Ar,
Distribution.Simple.Program.Builtin,
Distribution.Simple.Program.Db,
Distribution.Simple.Program.GHC,
Distribution.Simple.Program.HcPkg,
Distribution.Simple.Program.Hpc,
Distribution.Simple.Program.Ld,
Distribution.Simple.Program.Run,
Distribution.Simple.Program.Script,
Distribution.Simple.Program.Types,
Distribution.Simple.Register,
Distribution.Simple.Setup,
Distribution.Simple.SrcDist,
Distribution.Simple.Test,
Distribution.Simple.UHC,
Distribution.Simple.UserHooks,
Distribution.Simple.Utils,
Distribution.System,
Distribution.TestSuite,
Distribution.Text,
Distribution.Verbosity,
Distribution.Version,
Distribution.Compat.ReadP,
Language.Haskell.Extension
Other-Modules:
Distribution.GetOpt,
Distribution.Compat.Exception,
Distribution.Compat.CopyFile,
Distribution.Compat.TempFile,
Distribution.Simple.GHC.IPI641,
Distribution.Simple.GHC.IPI642,
Paths_Cabal
Default-Language: Haskell98
Default-Extensions: CPP
-- Small, fast running tests.
test-suite unit-tests
type: exitcode-stdio-1.0
main-is: UnitTests.hs
hs-source-dirs: tests
build-depends:
base,
test-framework,
test-framework-hunit,
test-framework-quickcheck2,
HUnit,
QuickCheck,
Cabal
Default-Language: Haskell98
-- Large, system tests that build packages.
test-suite package-tests
type: exitcode-stdio-1.0
main-is: PackageTests.hs
other-modules: PackageTests.BuildDeps.GlobalBuildDepsNotAdditive1.Check,
PackageTests.BuildDeps.GlobalBuildDepsNotAdditive2.Check,
PackageTests.BuildDeps.InternalLibrary0.Check,
PackageTests.BuildDeps.InternalLibrary1.Check,
PackageTests.BuildDeps.InternalLibrary2.Check,
PackageTests.BuildDeps.InternalLibrary3.Check,
PackageTests.BuildDeps.InternalLibrary4.Check,
PackageTests.BuildDeps.TargetSpecificDeps1.Check,
PackageTests.BuildDeps.TargetSpecificDeps2.Check,
PackageTests.BuildDeps.TargetSpecificDeps3.Check,
PackageTests.BuildDeps.SameDepsAllRound.Check,
PackageTests.TestOptions.Check,
PackageTests.TestStanza.Check,
PackageTests.TestSuiteExeV10.Check,
PackageTests.BenchmarkStanza.Check,
PackageTests.PackageTester
hs-source-dirs: tests
build-depends:
base,
test-framework,
test-framework-quickcheck2 >= 0.2.12,
test-framework-hunit,
HUnit,
QuickCheck >= 2.1.0.1,
Cabal,
process,
directory,
filepath,
extensible-exceptions,
bytestring,
unix
Default-Language: Haskell98