summaryrefslogtreecommitdiff
path: root/lambdacube-gl.cabal
blob: 185926289627d4a2fa900a310f9b37298b66fad5 (plain)
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
name:                lambdacube-gl
version:             0.5.3.0
synopsis:            OpenGL 3.3 Core Profile backend for LambdaCube 3D
description:         OpenGL 3.3 Core Profile backend for LambdaCube 3D
homepage:            http://lambdacube3d.com
license:             BSD3
license-file:        LICENSE
author:              Csaba Hruska, Peter Divianszky
maintainer:          csaba.hruska@gmail.com
-- copyright:           
category:            Graphics
build-type:          Simple

extra-source-files:  CHANGELOG.md
                     examples/Hello.hs
                     examples/HelloEmbedded.hs
                     examples/HelloOBJ.hs
                     examples/MtlParser.hs
                     examples/hello.json
                     examples/hello.lc
                     examples/hello_obj.json
                     examples/hello_obj.lc
                     examples/logo.png
                     examples/cube.obj
                     examples/cube.mtl

cabal-version:       >=1.10

Flag example
  Description: Build with example
  Default: False

Flag testclient
  Description: Build with backend test client
  Default: False

source-repository head
  type:     git
  location: https://github.com/lambdacube3d/lambdacube-gl

library
  exposed-modules:
    LambdaCube.GL
    LambdaCube.GL.Backend
    LambdaCube.GL.Data
    LambdaCube.GL.Input
    LambdaCube.GL.Mesh
    LambdaCube.GL.Type
    LambdaCube.GL.Util
  -- other-modules:
  -- other-extensions:
  build-depends:
    base >=4.9 && <5,
    containers >=0.5.7 && <0.6,
    mtl >=2.2 && <2.3,
    bytestring >=0.10 && <0.11,
    vector >=0.12 && <0.13,
    vector-algorithms >=0.7 && <0.8,
    JuicyPixels >=3.2.8 && <3.3,
    OpenGLRaw >=3.2 && <4,
    lambdacube-ir == 0.3.*
  hs-source-dirs:      src
  default-language:    Haskell2010

executable lambdacube-gl-hello
  if flag(example)
    Buildable: True
  else
    Buildable: False

  hs-source-dirs:   examples
  main-is:          Hello.hs
  default-language: Haskell2010

  -- CAUTION: When the build-depends change, please bump the git submodule in lambdacube-docker repository
  build-depends:
    base < 5,
    containers >=0.5 && <0.6,
    bytestring >=0.10 && <0.11,
    vector >=0.12 && <0.13,
    JuicyPixels >=3.2 && <3.3,
    aeson >= 1.1.2,
    GLFW-b >= 1.4,
    lambdacube-gl,
    lambdacube-ir == 0.3.*

executable lambdacube-gl-pickint
  if flag(example)
    Buildable: True
  else
    Buildable: False

  hs-source-dirs:   examples
  main-is:          pickInt.hs
  default-language: Haskell2010

  build-depends:
    GLFW-b >= 1.4,
    JuicyPixels >=3.2,
    OpenGLRaw,
    aeson >= 1.1.2,
    base,
    bytestring >=0.10,
    containers >=0.5,
    lambdacube-gl,
    lambdacube-ir,
    vect,
    vector >=0.12

executable lambdacube-gl-hello-obj
  if flag(example)
    Buildable: True
  else
    Buildable: False

  hs-source-dirs:   examples
  main-is:          HelloOBJ.hs
  default-language: Haskell2010

  -- CAUTION: When the build-depends change, please bump the git submodule in lambdacube-docker repository
  build-depends:
    base < 5,
    containers >=0.5 && <0.6,
    mtl >=2.2 && <2.3,
    text >= 1.2 && <1.3,
    bytestring >=0.10 && <0.11,
    vector >=0.12 && <0.13,
    JuicyPixels >=3.2 && <3.3,
    aeson >= 1.1.2,
    GLFW-b >= 1.4,
    wavefront >= 0.7 && <1,
    lambdacube-gl,
    lambdacube-ir == 0.3.*

executable lambdacube-gl-test-client
  if flag(testclient)
    Buildable: True
  else
    Buildable: False

  hs-source-dirs:   testclient
  main-is:          client.hs
  default-language: Haskell2010

  other-modules:    TestData

  -- CAUTION: When the build-depends change, please bump the git submodule in lambdacube-docker repository
  build-depends:
    base < 5,
    containers >=0.5 && <0.6,
    text >= 1.2 && <1.3,
    time >= 1.5 && <1.7,
    exceptions >= 0.8 && <0.9,
    bytestring >=0.10 && <0.11,
    base64-bytestring >=1 && <1.1,
    vector >=0.12 && <0.13,
    JuicyPixels >=3.2 && <3.3,
    aeson >= 1.1.2,
    websockets >= 0.10 && <1,
    network >= 2.6 && <2.7,
    OpenGLRaw >=3.2 && <4,
    GLFW-b >= 1.4,
    lambdacube-gl,
    lambdacube-ir == 0.3.*