-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy pathrumpus.cabal
177 lines (166 loc) · 5.98 KB
/
rumpus.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
name: rumpus
version: 0.2.1.0
synopsis: Initial project template from stack
description: Please see README.md
homepage: http://github.com/lukexi/rumpus#readme
license: BSD3
license-file: LICENSE
author: Luke Iannini
maintainer: lukexi@me.com
copyright: Luke Iannini
category: Graphics
build-type: Simple
-- extra-source-files:
cabal-version: >=1.10
Flag RumpusRelease
Description:
Configures Rumpus for release mode.
For executable:
* Routes console output to rumpus.log
For library:
* Instructs rumpus to copy and use the user document version of Scenes
* Tells the CodeEditor system to use embedded versions of the package databases.
Default: False
Flag RumpusReleaseWithLogs
Description:
Overrides the logging portion of RumpusRelease so we can still
see realtime console output from a release build of Rumpus.
Default: False
Flag RumpusProfile
Description:
Sets a runtime flag so we can tell if we're being profiled and turn off hot-code-loading
Default: False
library
hs-source-dirs: src
if flag(RumpusRelease)
cpp-options: -DRUMPUS_RELEASE
if flag(RumpusProfile)
cpp-options: -DRUMPUS_PROFILE
exposed-modules: Rumpus
RumpusLib
PreludeExtra
Rumpus.Main
Rumpus.TestScene
Rumpus.Types
Rumpus.Systems.Animation
Rumpus.Systems.Attachment
Rumpus.Systems.Clock
Rumpus.Systems.Creator
Rumpus.Systems.CodeEditor
Rumpus.Systems.CodeEditorInput
Rumpus.Systems.Collisions
Rumpus.Systems.Controls
Rumpus.Systems.Drag
Rumpus.Systems.HandControls
Rumpus.Systems.Hands
Rumpus.Systems.Haptics
Rumpus.Systems.KeyPads
Rumpus.Systems.Knobs
Rumpus.Systems.Lifetime
Rumpus.Systems.Render
Rumpus.Systems.Physics
Rumpus.Systems.PlayPause
Rumpus.Systems.Profiler
Rumpus.Systems.Scene
Rumpus.Systems.SceneWatcher
Rumpus.Systems.Script
Rumpus.Systems.Shared
Rumpus.Systems.Synth
Rumpus.Systems.Selection
Rumpus.Systems.Teleport
Rumpus.Systems.Text
ghc-options: -O2 -Wall
build-depends: base
, pd-hs
, bullet-mini
, gl-pal
, vr-pal
, random
, mtl
, lens-extra
, linear-extra
, containers
, unordered-containers
, MonadRandom
, yaml
, aeson
, freetype-gl-mini
, animation-pal
, stm
, halive
, time
, directory
, filepath
, template-haskell
, vault
, extensible-ecs
, transformers
, vector
, deepseq
, exceptions
, parallel
, deepseq
, text-gl
, lifted-base
, monad-control
, ekg-core
, text
, fsnotify
, openvr-hs
, sdl2
default-language: Haskell2010
default-extensions:
TemplateHaskell
FlexibleContexts
LambdaCase
MultiWayIf
RecordWildCards
ViewPatterns
BangPatterns
DeriveGeneric
DeriveDataTypeable
NegativeLiterals
ScopedTypeVariables
executable rumpus
hs-source-dirs: app
main-is: Main.hs
-- -s/-S prints GC info (-S as it happens)
-- -L50 changes length of cost center profile names in the .prof/.hp files
-- -T collects GC statistics and according to JohanTibell is cheap enough to leave on.
-- ghc-options: -O2 -Wall -threaded -rtsopts "-with-rtsopts=-N -s -H512M -A4M"
ghc-options: -O2 -Wall -threaded -rtsopts "-with-rtsopts=-N -H512m -A4M -T"
-- ghc-options: -O2 -Wall -threaded -rtsopts "-with-rtsopts=-N -s -H512M"
-- -T collects runtime stats for use with GHC.Stats
-- ghc-prof-options: -O2 -Wall -threaded -rtsopts -prof -fprof-auto "-with-rtsopts=-N -T -p -S -H512M -A4M -L100"
build-depends: base, rumpus
default-language: Haskell2010
-- -dynamic on OS X fixes an "unknown ___dso_handle symbol" error
-- A different bug than what halive was hitting (https://ghc.haskell.org/trac/ghc/ticket/9278)
-- but maybe just masking it and that one would pop up later.
if os(osx)
ghc-options: -dynamic
if flag(RumpusProfile)
cpp-options: -DRUMPUS_PROFILE
-- Links the Windows icon resource file in so Rumpus displays an icon in the taskbar
-- See http://www.monkey-x.com/Community/posts.php?topic=9172
if os(windows)
ghc-options: -optlscripts/rumpus.res
if flag(RumpusRelease) && !flag(RumpusReleaseWithLogs)
cpp-options: -DRUMPUS_RELEASE
if os(windows)
ghc-options: -optl-mwindows
default-extensions:
TemplateHaskell
FlexibleContexts
LambdaCase
MultiWayIf
RecordWildCards
ViewPatterns
BangPatterns
DeriveGeneric
DeriveDataTypeable
NegativeLiterals
ScopedTypeVariables
source-repository head
type: git
location: https://github.com/lukexi/rumpus