Cabalization
[L-seed.git] / L-seed.cabal
1 Name:           L-seed
2 Version:        0.1
3 Cabal-Version:  >= 1.2
4 License:        BSD3
5 License-file:   LICENSE
6 Author:         Joachim Breitner <mail@joachim-breitner.de>
7 Maintainer:     Joachim Breitner <mail@joachim-breitner.de>
8 Synopsis:       Plant growing programming game
9 Description:
10         The players of this game will write code (the „genome“) that describes
11         how plants (the biological type, not the industrial) will grow. The
12         plants will grow simultaneously on the screen (the „garden“), will
13         compete for light and will multiply. The players can not change the
14         code of a growing plant, but they do have the chance to update their
15         code for the next generation -- when a plant drops a seed, it will run
16         the newest code. All in all, the game aims to be slowly paced and
17         relaxing, something to just watch for a while and something that does
18         not need constant attention by the players.
19         .
20         This package contains the haskell programs, i.e. the game simulation
21         with the visual display. It can be used to locally test the plants.
22 Homepage:       http://www.entropia.de/wiki/L-seed
23 Category:       Game
24 Build-Type:     Simple
25 Extra-source-files:
26         examples/*.txt
27         db.conf-example
28
29 Flag Database
30   Description:
31         Builds binaries that are required to interact with the SQL database.
32         This is not needed when you just want to test the game locally.
33   Default: False
34
35 Flag WebTools
36   Description:
37         Builds binaries that are required for the web interface.
38         This is not needed when you just want to test the game locally.
39   Default: False
40
41 Library
42   Hs-Source-Dirs: src/
43   Exposed-Modules:
44         Lseed.Constants         
45         Lseed.Data              
46         Lseed.Data.Functions            
47         Lseed.Geometry          
48         Lseed.Geometry.Generator                
49         Lseed.Grammar.Parse             
50         Lseed.LSystem           
51         Lseed.Logic             
52         Lseed.Mainloop          
53         Lseed.Renderer.Cairo            
54         Lseed.StipeInfo         
55   Build-Depends:
56         base    == 3.*,
57         random,
58         containers,
59         old-time,
60         mtl,
61         cairo,
62         gtk,
63         parsec == 3.*
64
65   if flag(Database) 
66     Build-Depends:
67         HDBC-odbc,
68         HDBC
69     Exposed-Modules:
70         Lseed.DB
71
72   if flag(WebTools) 
73     Build-Depends:
74         json
75
76 Executable runGarden
77   Main-Is:        main.hs
78   Hs-Source-Dirs: src/
79
80 Executable validate
81   Main-Is:        validate.hs
82   Hs-Source-Dirs: src/
83   if ! flag(WebTools)
84     Buildable:    False
85
86 Executable fastScorer
87   Main-Is:        fastScorer.hs
88   Hs-Source-Dirs: src/
89
90 Executable dbclient
91   Main-Is:        dbclient.hs
92   Hs-Source-Dirs: src/
93   if ! flag(Database)
94     Buildable:    False
95
96 Executable dbscorer
97   Main-Is:        dbscorer.hs
98   Hs-Source-Dirs: src/
99   if ! flag(Database)
100     Buildable:    False