A Haskell binding for Qt Quick. (http://www.gekkou.co.uk/software/hsqml/)

root / hsqml.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
Name:               hsqml
Version:            0.3.5.1
Cabal-version:      >= 1.24
Build-type:         Custom
License:            BSD3
License-file:       LICENSE
Copyright:          (c) 2010-2018 Robin KAY
Author:             Robin KAY
Maintainer:         komadori@gekkou.co.uk
Stability:          experimental
Homepage:           http://www.gekkou.co.uk/software/hsqml/
Category:           Graphics, GUI
Synopsis:           Haskell binding for Qt Quick
Extra-source-files:
    README CHANGELOG
    cbits/*.cpp cbits/*.h test/Graphics/QML/Test/*.hs
Description:
    A Haskell binding for Qt Quick, a cross-platform framework for creating
    graphical user interfaces. For further information on installing and using
    this library, please see the project's web site.

Flag UsePkgConfig
    Description:
        Use pkg-config for libraries instead of the platform default mechanism.
    Default: False

Flag ThreadedTestSuite
    Description:
        Build test executable with the threaded RTS.
    Default: True

Flag ForceGHCiLib
    Description:
        Force enable GHCi workaround library if not using shared libraries.
    Default: True

Flag UseExitHook
    Description:
        Override the OnExitHook symbol to shutdown the Qt framework on exit.
    Default: True

Flag EnableQmlDebugging
    Description:
        Allow the QML debug server to be enabled via Qt arguments.
    Default: False

Custom-Setup
    Setup-depends:
        base             == 4.*,
        template-haskell == 2.*,
        Cabal            >= 2.0 && < 2.1,
        filepath         >= 1.3 && < 1.5

Library
    Default-language: Haskell2010
    Build-depends:
        base         == 4.*,
        containers   >= 0.4 && < 0.6,
        filepath     >= 1.3 && < 1.5,
        text         >= 0.11 && < 1.3,
        tagged       >= 0.4 && < 0.9,
        transformers >= 0.2 && < 0.6
    Exposed-modules:
        Graphics.QML
        Graphics.QML.Debug
        Graphics.QML.Canvas
        Graphics.QML.Engine
        Graphics.QML.Marshal
        Graphics.QML.Model
        Graphics.QML.Objects
        Graphics.QML.Objects.ParamNames
        Graphics.QML.Objects.Weak
    Other-modules:
        Graphics.QML.Internal.BindPrim
        Graphics.QML.Internal.BindCanvas
        Graphics.QML.Internal.BindObj
        Graphics.QML.Internal.BindCore
        Graphics.QML.Internal.JobQueue
        Graphics.QML.Internal.Marshal
        Graphics.QML.Internal.MetaObj
        Graphics.QML.Internal.Objects
        Graphics.QML.Internal.Types
    Hs-source-dirs: src
    C-sources:
        cbits/Canvas.cpp
        cbits/Class.cpp
        cbits/Engine.cpp
        cbits/Intrinsics.cpp
        cbits/Manager.cpp
        cbits/Model.cpp
        cbits/Object.cpp
    Include-dirs: cbits
    X-moc-headers:
        cbits/Canvas.h
        cbits/Engine.h
        cbits/Manager.h
        cbits/Model.h
    CC-options: --std=c++11
    X-separate-cbits: True
    Build-tools: c2hs
    if flag(ForceGHCiLib)
        X-force-ghci-lib: True
    if flag(UseExitHook)
        CC-options: -DHSQML_USE_EXIT_HOOK
    if flag(EnableQmlDebugging)
        CC-options: -DQT_QML_DEBUG_NO_WARNING
    if os(windows) && !flag(UsePkgConfig)
        Include-dirs: /QT_ROOT/include
        Extra-libraries:
            Qt5Core, Qt5Gui, Qt5Widgets, Qt5Qml, Qt5Quick, stdc++
        Extra-lib-dirs: /SYS_ROOT/bin /QT_ROOT/bin
        if impl(ghc < 7.8)
            -- Pre-7.8 GHCi can't load eh_frame sections
            GHC-options: -optc-fno-asynchronous-unwind-tables
    else
        if os(darwin) && !flag(UsePkgConfig)
            Frameworks: QtCore QtGui QtWidgets QtQml QtQuick
            CC-options: -F /QT_ROOT/lib
            GHC-options: -hide-option-framework-path /QT_ROOT/lib
            GHC-shared-options: -hide-option-framework-path /QT_ROOT/lib
            X-framework-dirs: /QT_ROOT/lib
        else
            Pkgconfig-depends:
                Qt5Core    >= 5.0 && < 6.0,
                Qt5Gui     >= 5.0 && < 6.0,
                Qt5Widgets >= 5.0 && < 6.0,
                Qt5Qml     >= 5.0 && < 6.0,
                Qt5Quick   >= 5.0 && < 6.0
        Extra-libraries: stdc++

Test-Suite hsqml-test1
    Type: exitcode-stdio-1.0
    Default-language: Haskell2010
    Hs-source-dirs: test
    Main-is: Test1.hs
    Build-depends:
        base       == 4.*,
        containers >= 0.4 && < 0.6,
        directory  >= 1.1 && < 1.4,
        text       >= 0.11 && < 1.3,
        tagged     >= 0.4 && < 0.9,
        QuickCheck >= 2.4 && < 2.12,
        hsqml
    Other-modules:
        Graphics.QML.Test.AutoListTest
        Graphics.QML.Test.DataTest
        Graphics.QML.Test.Framework
        Graphics.QML.Test.Harness
        Graphics.QML.Test.MayGen
        Graphics.QML.Test.MixedTest
        Graphics.QML.Test.ScriptDSL
        Graphics.QML.Test.SignalTest
        Graphics.QML.Test.SimpleTest
        Graphics.QML.Test.TestObject
    if os(darwin) && !flag(UsePkgConfig)
        -- Library not registered yet
        GHC-options: -hide-option-framework-path /QT_ROOT/lib
    if flag(ThreadedTestSuite)
        GHC-options: -threaded

Source-repository head
    type:     darcs
    location: http://hub.darcs.net/komadori/HsQML/