fltkhs-0.8.0.1: fltkhs.cabal
name : fltkhs
version : 0.8.0.1
synopsis : FLTK bindings
description: Low level bindings for the FLTK GUI toolkit. For installation and quick start instruction please scroll all the way down to the README.
license : MIT
license-file : LICENSE
tested-with: GHC >=7.8.1
author : Aditya Siram
maintainer: aditya.siram@gmail.com
homepage: http://github.com/deech/fltkhs
bug-reports: https://github.com/deech/fltkhs/issues
copyright: © 2017 Aditya Siram All Rights Reserved
category: UI,Graphics,GUI,User Interfaces
----------------------------------------
build-type: Custom
cabal-version: >=2.0
-- for custom-setup
source-repository head
type: git
location: http://github.com/deech/fltkhs
----------------------------------------
-- by default,
--
-- * no OpenGL support
-- * the system `fltk` package is used (not the bundled tarball)
--
Flag bundled
Description: Use the bundled FLTK library.
Manual: True
Default: False
Flag demos
Description: Build the demo apps (`fltkhs-buttons` and `fltkhs-example-opengl`).
Manual: True
Default: True
Flag opengl
Description: Enable OpenGL support.
Manual: True
Default: False
----------------------------------------
custom-setup
setup-depends:
Cabal >= 2.2.0.0 && < 3,
filepath,
directory >= 1.2.3.0,
base >= 4.5 && < 4.13
----------------------------------------
library
build-tools: c2hs
if !os(darwin) && !os(windows)
build-tools: pkg-config
--
-- extra-libraries: jpeg
-- -- from the `libjpeg` system package
--
-- if !flag(bundled)
-- -- when `bundled`, we don't need a system `fltk`, since we build it ourself
-- extra-libraries: fltk
-- build-tools: fltk-config
-- -- the `fltk` system package provides the `fltk-config` executable
--
-- if flag(opengl)
-- extra-libraries: GL, GLU
-- -- e.g. from the `mesa` and `freeglut` system packages (respectively)
if flag(opengl)
exposed-modules:
Graphics.UI.FLTK.LowLevel.Gl
Graphics.UI.FLTK.LowLevel.Glut
Graphics.UI.FLTK.LowLevel.Base.GlWindow
Graphics.UI.FLTK.LowLevel.GlWindow
cpp-options: -DGLSUPPORT
exposed-modules:
Graphics.UI.FLTK.LowLevel.Base.Adjuster
Graphics.UI.FLTK.LowLevel.Adjuster
Graphics.UI.FLTK.LowLevel.Ask
Graphics.UI.FLTK.LowLevel.BMPImage
Graphics.UI.FLTK.LowLevel.Bitmap
Graphics.UI.FLTK.LowLevel.Box
Graphics.UI.FLTK.LowLevel.Base.Browser
Graphics.UI.FLTK.LowLevel.Browser
Graphics.UI.FLTK.LowLevel.Base.Button
Graphics.UI.FLTK.LowLevel.Button
Graphics.UI.FLTK.LowLevel.Base.CheckButton
Graphics.UI.FLTK.LowLevel.CheckButton
Graphics.UI.FLTK.LowLevel.Base.Choice
Graphics.UI.FLTK.LowLevel.Choice
Graphics.UI.FLTK.LowLevel.Base.Clock
Graphics.UI.FLTK.LowLevel.Clock
Graphics.UI.FLTK.LowLevel.Base.ColorChooser
Graphics.UI.FLTK.LowLevel.ColorChooser
Graphics.UI.FLTK.LowLevel.CopySurface
Graphics.UI.FLTK.LowLevel.Base.Counter
Graphics.UI.FLTK.LowLevel.Counter
Graphics.UI.FLTK.LowLevel.Base.Dial
Graphics.UI.FLTK.LowLevel.Dial
Graphics.UI.FLTK.LowLevel.Dispatch
Graphics.UI.FLTK.LowLevel.DoubleWindow
Graphics.UI.FLTK.LowLevel.Base.DoubleWindow
Graphics.UI.FLTK.LowLevel.Draw
Graphics.UI.FLTK.LowLevel.FL
Graphics.UI.FLTK.LowLevel.FLTKHS
Graphics.UI.FLTK.LowLevel.Base.FileBrowser
Graphics.UI.FLTK.LowLevel.FileBrowser
Graphics.UI.FLTK.LowLevel.Base.FileInput
Graphics.UI.FLTK.LowLevel.FileInput
Graphics.UI.FLTK.LowLevel.FillDial
Graphics.UI.FLTK.LowLevel.Base.FillSlider
Graphics.UI.FLTK.LowLevel.FillSlider
Graphics.UI.FLTK.LowLevel.Fl_Enumerations
Graphics.UI.FLTK.LowLevel.Fl_Types
Graphics.UI.FLTK.LowLevel.GIFImage
Graphics.UI.FLTK.LowLevel.Group
Graphics.UI.FLTK.LowLevel.Base.Group
Graphics.UI.FLTK.LowLevel.Hierarchy
Graphics.UI.FLTK.LowLevel.Base.HorFillSlider
Graphics.UI.FLTK.LowLevel.HorFillSlider
Graphics.UI.FLTK.LowLevel.Base.HorNiceSlider
Graphics.UI.FLTK.LowLevel.HorNiceSlider
Graphics.UI.FLTK.LowLevel.Base.HorSlider
Graphics.UI.FLTK.LowLevel.HorSlider
Graphics.UI.FLTK.LowLevel.HorValueSlider
Graphics.UI.FLTK.LowLevel.Image
Graphics.UI.FLTK.LowLevel.ImageSurface
Graphics.UI.FLTK.LowLevel.Base.Input
Graphics.UI.FLTK.LowLevel.Input
Graphics.UI.FLTK.LowLevel.JPEGImage
Graphics.UI.FLTK.LowLevel.Base.LightButton
Graphics.UI.FLTK.LowLevel.LightButton
Graphics.UI.FLTK.LowLevel.LineDial
Graphics.UI.FLTK.LowLevel.Base.MenuBar
Graphics.UI.FLTK.LowLevel.MenuBar
Graphics.UI.FLTK.LowLevel.Base.MenuButton
Graphics.UI.FLTK.LowLevel.MenuButton
Graphics.UI.FLTK.LowLevel.Base.MenuItem
Graphics.UI.FLTK.LowLevel.MenuItem
Graphics.UI.FLTK.LowLevel.Base.MenuPrim
Graphics.UI.FLTK.LowLevel.MenuPrim
Graphics.UI.FLTK.LowLevel.MultiLabel
Graphics.UI.FLTK.LowLevel.NativeFileChooser
Graphics.UI.FLTK.LowLevel.Base.NiceSlider
Graphics.UI.FLTK.LowLevel.NiceSlider
Graphics.UI.FLTK.LowLevel.Base.Output
Graphics.UI.FLTK.LowLevel.Output
Graphics.UI.FLTK.LowLevel.OverlayWindow
Graphics.UI.FLTK.LowLevel.Base.OverlayWindow
Graphics.UI.FLTK.LowLevel.PNGImage
Graphics.UI.FLTK.LowLevel.PNMImage
Graphics.UI.FLTK.LowLevel.Base.Pack
Graphics.UI.FLTK.LowLevel.Pack
Graphics.UI.FLTK.LowLevel.Pixmap
Graphics.UI.FLTK.LowLevel.Base.Positioner
Graphics.UI.FLTK.LowLevel.Positioner
Graphics.UI.FLTK.LowLevel.Base.Progress
Graphics.UI.FLTK.LowLevel.Progress
Graphics.UI.FLTK.LowLevel.RGBImage
Graphics.UI.FLTK.LowLevel.Base.RadioLightButton
Graphics.UI.FLTK.LowLevel.RadioLightButton
Graphics.UI.FLTK.LowLevel.Base.RepeatButton
Graphics.UI.FLTK.LowLevel.RepeatButton
Graphics.UI.FLTK.LowLevel.Base.ReturnButton
Graphics.UI.FLTK.LowLevel.ReturnButton
Graphics.UI.FLTK.LowLevel.Base.Roller
Graphics.UI.FLTK.LowLevel.Roller
Graphics.UI.FLTK.LowLevel.Base.RoundButton
Graphics.UI.FLTK.LowLevel.RoundButton
Graphics.UI.FLTK.LowLevel.Base.Scrollbar
Graphics.UI.FLTK.LowLevel.Scrollbar
Graphics.UI.FLTK.LowLevel.Base.Scrolled
Graphics.UI.FLTK.LowLevel.Scrolled
Graphics.UI.FLTK.LowLevel.SelectBrowser
Graphics.UI.FLTK.LowLevel.Base.SingleWindow
Graphics.UI.FLTK.LowLevel.SingleWindow
Graphics.UI.FLTK.LowLevel.Base.Slider
Graphics.UI.FLTK.LowLevel.Slider
Graphics.UI.FLTK.LowLevel.Base.Spinner
Graphics.UI.FLTK.LowLevel.Spinner
Graphics.UI.FLTK.LowLevel.Base.SysMenuBar
Graphics.UI.FLTK.LowLevel.SysMenuBar
Graphics.UI.FLTK.LowLevel.Base.Table
Graphics.UI.FLTK.LowLevel.Table
Graphics.UI.FLTK.LowLevel.Base.TableRow
Graphics.UI.FLTK.LowLevel.TableRow
Graphics.UI.FLTK.LowLevel.Base.Tabs
Graphics.UI.FLTK.LowLevel.Tabs
Graphics.UI.FLTK.LowLevel.TextBuffer
Graphics.UI.FLTK.LowLevel.Base.TextDisplay
Graphics.UI.FLTK.LowLevel.TextDisplay
Graphics.UI.FLTK.LowLevel.Base.TextEditor
Graphics.UI.FLTK.LowLevel.TextEditor
Graphics.UI.FLTK.LowLevel.TextSelection
Graphics.UI.FLTK.LowLevel.Base.Tile
Graphics.UI.FLTK.LowLevel.Tile
Graphics.UI.FLTK.LowLevel.Base.ToggleButton
Graphics.UI.FLTK.LowLevel.ToggleButton
Graphics.UI.FLTK.LowLevel.Base.Tree
Graphics.UI.FLTK.LowLevel.Tree
Graphics.UI.FLTK.LowLevel.TreeItem
Graphics.UI.FLTK.LowLevel.TreePrefs
Graphics.UI.FLTK.LowLevel.Utils
Graphics.UI.FLTK.LowLevel.Base.Valuator
Graphics.UI.FLTK.LowLevel.Valuator
Graphics.UI.FLTK.LowLevel.Base.ValueInput
Graphics.UI.FLTK.LowLevel.ValueInput
Graphics.UI.FLTK.LowLevel.Base.ValueOutput
Graphics.UI.FLTK.LowLevel.ValueOutput
Graphics.UI.FLTK.LowLevel.Base.ValueSlider
Graphics.UI.FLTK.LowLevel.ValueSlider
Graphics.UI.FLTK.LowLevel.Widget
Graphics.UI.FLTK.LowLevel.Base.Widget
Graphics.UI.FLTK.LowLevel.Window
Graphics.UI.FLTK.LowLevel.Base.Window
Graphics.UI.FLTK.LowLevel.Base.Wizard
Graphics.UI.FLTK.LowLevel.Wizard
Graphics.UI.FLTK.LowLevel.X
Graphics.UI.FLTK.LowLevel.XBMImage
Graphics.UI.FLTK.LowLevel.XPMImage
Graphics.UI.FLTK.LowLevel.SVGImage
Graphics.UI.FLTK.LowLevel.Base.SimpleTerminal
Graphics.UI.FLTK.LowLevel.SimpleTerminal
Graphics.UI.FLTK.LowLevel.Tooltip
other-modules: C2HS
build-depends:
base == 4.*,
bytestring,
text >= 0.2 && < 1.3,
vector >= 0.12.0.1
hs-source-dirs: src
default-extensions: GADTs
default-language: Haskell2010
ghc-options: -Wall -fno-warn-name-shadowing -fno-warn-orphans -fno-warn-unused-matches -fno-warn-dodgy-exports -fno-warn-unused-top-binds
if impl(ghc >= 8.0.1)
cpp-options: -DHASCALLSTACK_AVAILABLE
cpp-options: -DCUSTOM_TYPE_ERRORS
else
if impl(ghc >= 7.10.2)
cpp-options: -DCALLSTACK_AVAILABLE
if impl(ghc >= 7.10)
cpp-options: -DOVERLAPPING_INSTANCES_DEPRECATED
if os(darwin)
cc-options: -U__BLOCKS__ -D_Nonnull=
----------------------------------------
Executable fltkhs-fluidtohs
Main-Is: Main.hs
Hs-Source-Dirs: src/Fluid
Other-modules:
Generate
Lookup
Parser
Types
Utils
Build-Depends:
base == 4.*,
filepath,
fltkhs,
parsec >= 3.1.6,
directory >= 1.2.1.0,
mtl
default-language: Haskell2010
ghc-Options: -Wall -Wdodgy-imports -threaded
if os(windows) && arch(x86_64)
cpp-options: -DWIN64
if os(windows)
ghc-Options: -optl-mwindows
ghc-Options: -pgml g++ "-optl-Wl,--allow-multiple-definition" "-optl-Wl,--whole-archive" "-optl-Wl,-Bstatic" "-optl-Wl,-lfltkc" "-optl-Wl,-Bdynamic" "-optl-Wl,--no-whole-archive"
if os(darwin)
ghc-Options: "-optl-Wl,-lfltkc"
if !os(darwin) && !os(windows)
ghc-Options: -pgml g++ "-optl-Wl,--allow-multiple-definition" "-optl-Wl,--whole-archive" "-optl-Wl,-Bstatic" "-optl-Wl,-lfltkc" "-optl-Wl,-Bdynamic" "-optl-Wl,--no-whole-archive"
----------------------------------------
-- Demos
-- simple example of different fltk button widgets
Executable fltkhs-buttons
if !flag(demos)
buildable: False
Main-Is: Buttons.hs
Hs-Source-Dirs: src/TestPrograms
Build-Depends:
base == 4.*,
fltkhs
default-language: Haskell2010
ghc-Options: -Wall -threaded
if os(windows)
ghc-Options: -optl-mwindows
ghc-Options: -pgml g++ "-optl-Wl,--allow-multiple-definition" "-optl-Wl,--whole-archive" "-optl-Wl,-Bstatic" "-optl-Wl,-lfltkc" "-optl-Wl,-Bdynamic" "-optl-Wl,--no-whole-archive"
if os(darwin)
ghc-Options: "-optl-Wl,-lfltkc"
if !os(darwin) && !os(windows)
ghc-Options: -pgml g++ "-optl-Wl,--allow-multiple-definition" "-optl-Wl,--whole-archive" "-optl-Wl,-Bstatic" "-optl-Wl,-lfltkc" "-optl-Wl,-Bdynamic" "-optl-Wl,--no-whole-archive"
-- example of fltk OpenGL support
--
-- requires the `opengl` flag, e.g.:
--
-- stack build --flag fltkhs:opengl
-- cabal configure -fopengl && cabal build
--
Executable fltkhs-example-opengl
if !(flag(demos) && flag(opengl))
buildable: False
Main-Is: OpenGL.hs
Hs-Source-Dirs: src/TestPrograms
Build-Depends:
base == 4.*,
fltkhs,
text >= 1.2.2.0,
OpenGLRaw >= 3 && < 3.4
default-language: Haskell2010
ghc-Options: -Wall -threaded
if os(windows)
ghc-Options: -optl-mwindows
ghc-Options: -pgml g++ "-optl-Wl,--allow-multiple-definition" "-optl-Wl,--whole-archive" "-optl-Wl,-Bstatic" "-optl-Wl,-lfltkc" "-optl-Wl,-Bdynamic" "-optl-Wl,--no-whole-archive"
if os(darwin)
ghc-Options: "-optl-Wl,-lfltkc"
if !os(darwin) && !os(windows)
ghc-Options: -pgml g++ "-optl-Wl,--allow-multiple-definition" "-optl-Wl,--whole-archive" "-optl-Wl,-Bstatic" "-optl-Wl,-lfltkc" "-optl-Wl,-Bdynamic" "-optl-Wl,--no-whole-archive"
----------------------------------------