curry-frontend.cabal 4.12 KB
Newer Older
Bjoern Peemoeller's avatar
Bjoern Peemoeller committed
1
Name:          curry-frontend
2
Version:       1.0.2
3
Cabal-Version: >= 1.10
Bjoern Peemoeller's avatar
Bjoern Peemoeller committed
4
5
Synopsis:      Compile the functional logic language Curry to several
               intermediate formats
6
7
Description:   The Curry front end consists of the executable program
               "curry-frontend".
Bjoern Peemoeller's avatar
Bjoern Peemoeller committed
8
               It is used by various backends to compile Curry programs to
9
               an intermediate representation.
Bjoern Peemoeller's avatar
Bjoern Peemoeller committed
10
11
               The code is a stripped-down version of an early version of
               the Muenster Curry Compiler
12
13
14
               (<http://danae.uni-muenster.de/curry/>)
               which has been extended to produce different intermediate
               representations.
15
               For further information, please check
Michael Hanus 's avatar
Michael Hanus committed
16
               <http://curry-language.org>
Bjoern Peemoeller's avatar
Bjoern Peemoeller committed
17
Category:      Language
Michael Hanus 's avatar
Michael Hanus committed
18
License:       BSD3
Bjoern Peemoeller's avatar
Bjoern Peemoeller committed
19
License-File:  LICENSE
20
Author:        Wolfgang Lux, Martin Engelke, Bernd Brassel, Holger Siegel,
Finn Teegen's avatar
Finn Teegen committed
21
22
               Bjoern Peemoeller, Finn Teegen
Maintainer:    fte@informatik.uni-kiel.de
Bjoern Peemoeller's avatar
Bjoern Peemoeller committed
23
24
25
26
Homepage:      http://curry-language.org
Build-Type:    Simple
Stability:     experimental

Finn Teegen's avatar
Finn Teegen committed
27
Extra-Source-Files: LIESMICH CHANGELOG.md
28
29
30

Data-Dir:   data
Data-Files: currysource.css
Bjoern Peemoeller's avatar
Bjoern Peemoeller committed
31

32
33
source-repository head
  type:     git
Finn Teegen's avatar
Finn Teegen committed
34
  location: https://git.ps.informatik.uni-kiel.de/curry/curry-frontend.git
35

36
37
38
Flag network-uri
   description: Get Network.URI from the network-uri package
   default: True
Bjoern Peemoeller's avatar
Bjoern Peemoeller committed
39

40
41
42
43
44
45
Library
  hs-source-dirs:   src
  default-language:  Haskell2010
  Build-Depends:
      base == 4.*
    , containers
Finn Teegen's avatar
Finn Teegen committed
46
    , curry-base == 1.1.0
47
    , directory
48
    , extra >= 1.4.6
49
50
    , filepath
    , mtl
51
    , pretty
52
    , process
Finn Teegen's avatar
Finn Teegen committed
53
    , set-extra
54
    , transformers
55
56
57
58
  if flag(network-uri)
    build-depends: network-uri >= 2.6
  else
    build-depends: network < 2.6
59
  Exposed-Modules:
60
      Base.AnnotExpr
61
    , Base.CurryKinds
62
    , Base.CurryTypes
63
    , Base.Expr
64
65
    , Base.KindSubst
    , Base.Kinds
Björn Peemöller 's avatar
Björn Peemöller committed
66
    , Base.Messages
Björn Peemöller 's avatar
Björn Peemöller committed
67
    , Base.NestEnv
68
69
    , Base.PrettyKinds
    , Base.PrettyTypes
Björn Peemöller 's avatar
Björn Peemöller committed
70
71
    , Base.SCC
    , Base.Subst
Björn Peemöller 's avatar
Björn Peemöller committed
72
    , Base.TopEnv
73
    , Base.TypeExpansion
Björn Peemöller 's avatar
Björn Peemöller committed
74
    , Base.TypeSubst
75
    , Base.Types
Björn Peemöller 's avatar
Björn Peemöller committed
76
77
    , Base.Typing
    , Base.Utils
Björn Peemöller 's avatar
Björn Peemöller committed
78
    , Checks
79
    , Checks.DeriveCheck
80
    , Checks.ExportCheck
81
82
83
    , Checks.ExtensionCheck
    , Checks.ImportSyntaxCheck
    , Checks.InstanceCheck
Björn Peemöller 's avatar
Björn Peemöller committed
84
85
    , Checks.InterfaceCheck
    , Checks.InterfaceSyntaxCheck
Björn Peemöller 's avatar
Björn Peemöller committed
86
87
88
89
    , Checks.KindCheck
    , Checks.PrecCheck
    , Checks.SyntaxCheck
    , Checks.TypeCheck
90
    , Checks.TypeSyntaxCheck
Björn Peemöller 's avatar
Björn Peemöller committed
91
    , Checks.WarnCheck
Björn Peemöller 's avatar
Björn Peemöller committed
92
93
    , CompilerEnv
    , CompilerOpts
94
    , CondCompile
Björn Peemöller 's avatar
Björn Peemöller committed
95
96
    , CurryBuilder
    , CurryDeps
97
98
    , Env.Class
    , Env.Instance
Björn Peemöller 's avatar
Björn Peemöller committed
99
100
    , Env.Interface
    , Env.ModuleAlias
Björn Peemöller 's avatar
Björn Peemöller committed
101
    , Env.OpPrec
102
    , Env.Type
103
    , Env.TypeConstructor
Björn Peemöller 's avatar
Björn Peemöller committed
104
    , Env.Value
Björn Peemöller 's avatar
Björn Peemöller committed
105
    , Exports
106
    , Files.CymakePath
Björn Peemöller 's avatar
Björn Peemöller committed
107
    , Generators
Björn Peemöller 's avatar
Björn Peemöller committed
108
109
    , Generators.GenAbstractCurry
    , Generators.GenFlatCurry
110
    , Generators.GenTypedFlatCurry
111
    , Generators.GenTypeAnnotatedFlatCurry
Bjoern Peemoeller's avatar
Bjoern Peemoeller committed
112
113
    , Html.CurryHtml
    , Html.SyntaxColoring
Björn Peemöller 's avatar
Björn Peemöller committed
114
    , IL
115
    , IL.Pretty
116
    , IL.ShowModule
117
    , IL.Type
118
    , IL.Typing
Björn Peemöller 's avatar
Björn Peemöller committed
119
120
121
    , Imports
    , Interfaces
    , Modules
122
    , TokenStream
Björn Peemöller 's avatar
Björn Peemöller committed
123
    , Transformations
Björn Peemöller 's avatar
Björn Peemöller committed
124
125
    , Transformations.CaseCompletion
    , Transformations.CurryToIL
126
    , Transformations.Derive
Björn Peemöller 's avatar
Björn Peemöller committed
127
    , Transformations.Desugar
128
    , Transformations.Dictionary
Björn Peemöller 's avatar
Björn Peemöller committed
129
    , Transformations.Lift
130
    , Transformations.Newtypes
Björn Peemöller 's avatar
Björn Peemöller committed
131
132
    , Transformations.Qual
    , Transformations.Simplify
Bjoern Peemoeller's avatar
Bjoern Peemoeller committed
133
134
  Other-Modules:
    Paths_curry_frontend
135
  ghc-options:       -Wall -fno-warn-orphans
136

137
Executable curry-frontend
138
139
140
141
142
143
  hs-source-dirs: src
  Main-is:        cymake.hs
  default-language:  Haskell2010
  Build-Depends:
      base == 4.*
    , containers
Finn Teegen's avatar
Finn Teegen committed
144
    , curry-base == 1.1.0
145
146
    , curry-frontend
    , directory
147
    , extra >= 1.4.6
148
149
    , filepath
    , mtl
150
    , pretty
151
    , process
Finn Teegen's avatar
Finn Teegen committed
152
    , set-extra
153
154
155
156
157
    , transformers
  if flag(network-uri)
    build-depends: network-uri >= 2.6
  else
    build-depends: network < 2.6
158
  ghc-options: -Wall -fno-warn-orphans
159
160
161
162
163
164

Test-Suite test-frontend
  type:           detailed-0.9
  hs-source-dirs: test
  default-language:  Haskell2010
  test-module:    TestFrontend
Finn Teegen's avatar
Finn Teegen committed
165
  build-depends:  base == 4.*, Cabal >= 1.20, curry-base == 1.1.0
Finn Teegen's avatar
Finn Teegen committed
166
    , curry-frontend, filepath