Update plant code from database, if there is active code
[L-seed.git] / L-seed.cabal
1 Name:           L-seed
2 Version:        0.1
3 Cabal-Version:  >= 1.6
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 Flag RendererCairo
42   Description:
43         This builds the cairo renderer. This will ususally be needed, unless
44         you build the WebTools only.
45   Default: True
46
47 Library
48   Hs-Source-Dirs: src/
49   Exposed-Modules:
50         Lseed.Constants         
51         Lseed.Data              
52         Lseed.Data.Functions            
53         Lseed.Geometry          
54         Lseed.Geometry.Generator                
55         Lseed.Grammar.Parse             
56         Lseed.LSystem           
57         Lseed.Logic             
58         Lseed.Mainloop          
59         Lseed.StipeInfo         
60   Build-Depends:
61         base    == 3.*,
62         random,
63         containers,
64         old-time,
65         mtl,
66         parsec == 3.*
67
68   if flag(RendererCairo)
69     Exposed-Modules:
70         Lseed.Renderer.Cairo            
71     Build-Depends:
72         cairo == 0.10.*,
73         gtk == 0.10.*
74
75   if flag(Database) 
76     Build-Depends:
77         HDBC-odbc,
78         HDBC
79     Exposed-Modules:
80         Lseed.DB
81
82   if flag(WebTools) 
83     Build-Depends:
84         json == 0.4.*
85
86 Executable runGarden
87   Main-Is:        main.hs
88   Hs-Source-Dirs: src/
89   if ! flag(RendererCairo)
90     Buildable:    False
91
92 Executable validate
93   Main-Is:        validate.hs
94   Hs-Source-Dirs: src/
95   if ! flag(WebTools)
96     Buildable:    False
97
98 Executable fastScorer
99   Main-Is:        fastScorer.hs
100   Hs-Source-Dirs: src/
101
102 Executable dbclient
103   Main-Is:        dbclient.hs
104   Hs-Source-Dirs: src/
105   if ! flag(Database) || ! flag(RendererCairo)
106     Buildable:    False
107
108 Executable dbscorer
109   Main-Is:        dbscorer.hs
110   Hs-Source-Dirs: src/
111   if ! flag(Database)
112     Buildable:    False
113
114 Source-repository head
115   Type:     git
116   Location: git://git.nomeata.de/L-seed.git
117