hsqml-0.3.6.1: hsqml.cabal
cabal-version: 3.8
Name: hsqml
Version: 0.3.6.1
Build-type: Custom
License: BSD-3-Clause
License-file: LICENSE
Copyright: (c) 2010-2018 Robin KAY, (c) 2025 Sascha-Oliver Prolic
Author: Robin KAY, Sascha-Oliver Prolic
Maintainer: saschaprolic@googlemail.com
Stability: experimental
Homepage: http://www.gekkou.co.uk/software/hsqml/
Category: Graphics, GUI
Synopsis: Haskell binding for Qt Quick
tested-with: GHC ==9.4.8 || ==9.6.6 || ==9.8.4 || ==9.10.2 || ==9.12.2
Extra-source-files:
README.md
cbits/*.cpp cbits/*.h test/Graphics/QML/Test/*.hs
Extra-doc-files:
CHANGELOG
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.
Source-repository head
type: git
location: https://github.com/prolic/HsQML
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 >= 3.8 && < 4.0,
filepath >= 1.4.300 && < 1.5
common extensions
default-extensions:
NoPolyKinds
TypeOperators
default-language: GHC2021
common ghc-options
ghc-options:
-Wall -Wcompat -Widentities -Wincomplete-record-updates
-Wincomplete-uni-patterns -Wpartial-fields -Wredundant-constraints
-fhide-source-paths -Wno-unused-do-bind -fshow-hole-constraints
-Wno-unticked-promoted-constructors
Library
import: extensions
import: ghc-options
Build-depends:
base == 4.*,
bytestring >= 0.11.5 && < 0.12,
containers >= 0.7 && < 0.9,
directory >= 1.3.9 && < 1.4,
filepath >= 1.4.300 && < 1.5,
text >= 2.1.2 && < 2.2,
tagged >= 0.8.9 && < 0.9,
transformers >= 0.6.2 && < 0.7,
QuickCheck >= 2.16.0 && < 2.17,
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/ClipboardHelper.cpp
cbits/Engine.cpp
cbits/HighDpiScaling.cpp
cbits/Intrinsics.cpp
cbits/Manager.cpp
cbits/Model.cpp
cbits/Object.cpp
Include-dirs: cbits
X-moc-headers:
cbits/Canvas.h
cbits/ClipboardHelper.h
cbits/Engine.h
cbits/HighDpiScaling.h
cbits/Manager.h
cbits/Model.h
CC-options: --std=c++11
X-separate-cbits: True
build-tool-depends: c2hs: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, Qt5Network, 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 QtNetwork QtQml QtQuick
CC-options: -F /QT_ROOT/lib
Extra-framework-dirs: /QT_ROOT/lib
else
Pkgconfig-depends:
Qt5Core >= 5.0 && < 6.0,
Qt5Gui >= 5.0 && < 6.0,
Qt5Widgets >= 5.0 && < 6.0,
Qt5Network >= 5.0 && < 6.0,
Qt5Qml >= 5.0 && < 6.0,
Qt5Quick >= 5.0 && < 6.0
Extra-libraries: stdc++
Test-Suite hsqml-test1
import: extensions
import: ghc-options
Type: exitcode-stdio-1.0
Hs-source-dirs: test
Main-is: Test1.hs
Build-depends:
base == 4.*,
containers >= 0.7 && < 0.9,
directory >= 1.3.9 && < 1.4,
text >= 2.1.2 && < 2.2,
tagged >= 0.8.9 && < 0.9,
QuickCheck >= 2.16.0 && < 2.17,
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