-
Notifications
You must be signed in to change notification settings - Fork 31
/
bindings-GLFW.cabal
238 lines (200 loc) · 6.04 KB
/
bindings-GLFW.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
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
name: bindings-GLFW
version: 3.3.9.2
category: Graphics
author: Brian Lewis <[email protected]>
maintainer: Brian Lewis <[email protected]>
, Schell Scivally <[email protected]>
, Javier Jaramago <[email protected]>
, Pavel Krajcevski <[email protected]>
license: BSD3
license-file: LICENSE
synopsis: Low-level bindings to GLFW OpenGL library
description:
Low-level bindings to GLFW (<http://www.glfw.org/>), an open source,
multi-platform library for creating windows with OpenGL contexts and managing
input and events.
.
The binding is to GLFW 3.3, released 2019-04-15
(<http://www.glfw.org/Version-3.3-released.html>
<http://www.glfw.org/changelog.html>).
.
/These bindings are too low-level for normal use./ For higher-level bindings,
see GLFW-b (<http://hackage.haskell.org/package/GLFW-b>).
.
If you've used GLFW before, you were probably using 2.7.x. There are some
significant differences in 3.x.x. Please see the transition guide
(<http://www.glfw.org/docs/3.3/moving.html>).
cabal-version: >= 1.10
build-type: Simple
--------------------------------------------------------------------------------
extra-source-files:
README.md
glfw/deps/glad/*.h
glfw/deps/mingw/*.h
glfw/include/GLFW/*.h
glfw/src/*.c
glfw/src/*.h
glfw/src/*.m
--------------------------------------------------------------------------------
flag system-GLFW
description: Use the system-wide GLFW instead of the bundled copy.
default: False
flag MacOSXUseChdir
description:
Mac OS X only. Determines whether 'init' changes the current directory of
bundled applications to the 'Contents/Resources' directory.
default: True
flag MacOSXUseMenubar
description:
Mac OS X only. Determines whether the first call to 'createWindow' sets up
a minimal menu bar.
default: True
flag MacOSXUseRetina
description:
Mac OS X only. Determines whether windows use the full resolution of
Retina displays (recommended).
default: True
flag X
description:
Linux only. Determines whether to target the X11 display server.
default: True
flag Wayland
description:
Linux only. Determines whether to target the Wayland display server.
default: False
flag OSMesa
description:
Linux only. Determines whether or not to use the Mesa 3D rendering context.
default: False
flag ExposeNative
description:
Whether or not to use the native access functions. You most likely do not
want to do this. You may if you're coding for the Rift, perhaps.
default: False
--------------------------------------------------------------------------------
library
default-language: Haskell2010
ghc-options: -Wall
if impl(ghc >= 6.8)
ghc-options: -fwarn-tabs
cc-options: -DNDEBUG
exposed-modules:
Bindings.GLFW
build-tools:
hsc2hs
build-depends:
base < 5,
bindings-DSL == 1.0.*
if flag(system-glfw)
pkgconfig-depends:
glfw3 == 3.3.*
else
include-dirs:
glfw/include/GLFW
glfw/include/
glfw/deps
glfw/src
c-sources:
glfw/src/context.c
glfw/src/egl_context.c
glfw/src/init.c
glfw/src/input.c
glfw/src/monitor.c
glfw/src/osmesa_context.c
glfw/src/vulkan.c
glfw/src/window.c
glfw/deps/glad_gl.c
glfw/deps/glad_vulkan.c
if os(linux) || os(freebsd)
c-sources:
glfw/src/glx_context.c
glfw/src/xkb_unicode.c
glfw/src/posix_time.c
glfw/src/posix_thread.c
if os(linux)
c-sources:
glfw/src/linux_joystick.c
if os(freebsd)
c-sources:
glfw/src/null_joystick.c
if flag(X)
cc-options: -DBINDINGS_GLFW_USE_X11 -D_GLFW_X11
c-sources:
glfw/src/x11_init.c
glfw/src/x11_monitor.c
glfw/src/x11_window.c
if flag(Wayland)
cc-options: -DBINDINGS_GLFW_USE_WAYLAND -D_GLFW_WAYLAND
c-sources:
glfw/src/wl_init.c
glfw/src/wl_monitor.c
glfw/src/wl_window.c
if flag(OSMesa)
cc-options: -DBINDINGS_GLFW_USE_OSMESA -D_GLFW_OSMESA
c-sources:
glfw/src/null_init.c
glfw/src/null_joystick.c
glfw/src/null_monitor.c
glfw/src/null_window.c
extra-libraries:
GL
X11
Xi
Xrandr
Xxf86vm
Xcursor
Xinerama
pthread
if os(darwin)
c-sources:
glfw/src/cocoa_time.c
glfw/src/posix_thread.c
glfw/src/cocoa_init.m
glfw/src/cocoa_joystick.m
glfw/src/cocoa_monitor.m
glfw/src/cocoa_window.m
glfw/src/nsgl_context.m
cc-options: -D_GLFW_COCOA
if !flag(MacOSXUseChdir)
cc-options: -UGLFW_USE_CHDIR
if !flag(MacOSXUseMenubar)
cc-options: -UGLFW_USE_MENUBAR
if !flag(MacOSXUseRetina)
cc-options: -UGLFW_USE_RETINA
frameworks: AGL Cocoa OpenGL IOKit CoreFoundation CoreVideo
if os(mingw32)
include-dirs:
glfw/deps
c-sources:
glfw/src/win32_init.c
glfw/src/win32_joystick.c
glfw/src/win32_monitor.c
glfw/src/win32_time.c
glfw/src/win32_window.c
glfw/src/win32_thread.c
glfw/src/wgl_context.c
extra-libraries:
opengl32
Gdi32
cc-options: -D_GLFW_WIN32
if flag(ExposeNative)
cc-options: -DExposeNative
--------------------------------------------------------------------------------
test-suite main
default-language: Haskell2010
ghc-options: -Wall
if impl(ghc >= 6.8)
ghc-options: -fwarn-tabs
type: exitcode-stdio-1.0
main-is: Test.hs
frameworks: AGL Cocoa OpenGL IOKit CoreFoundation CoreVideo
build-depends:
bindings-GLFW,
HUnit >= 1.3 && <1.7,
base < 5,
test-framework == 0.8.*,
test-framework-hunit == 0.3.*
--------------------------------------------------------------------------------
source-repository head
type: git
location: git://github.com/bsl/bindings-GLFW.git