h-raylib-4.5.3.0: h-raylib.cabal
cabal-version: 2.4
name: h-raylib
version: 4.5.3.0
synopsis: Raylib bindings for Haskell
category: graphics
description:
This library contains Haskell bindings to the Raylib library. It supports Windows, Mac, Linux, and BSD.
bug-reports: https://github.com/Anut-py/h-raylib/issues
license: Apache-2.0
license-file: LICENSE
author: Anut
maintainer: Anut
extra-doc-files:
CONTRIBUTING.md
README.md
ROADMAP.md
extra-source-files:
CHANGELOG.md
examples/**/*.frag
examples/**/*.mtl
examples/**/*.obj
examples/**/*.vert
lib/*.c
lib/*.h
lib/rglfw.m
raylib/**/*.c
raylib/**/*.h
raylib/**/*.m
flag detect-platform
description:
Detect platform and automatically add platform-specific configuration
default: True
manual: True
flag platform-windows
description: Build for Windows
default: False
manual: True
flag platform-mac
description: Build for macOS/OSX
default: False
manual: True
flag platform-linux
description: Build for Linux
default: False
manual: True
flag platform-bsd
description: Build for FreeBSD, OpenBSD, or NetBSD
default: False
manual: True
flag mingw-cross
description:
Cross-compiling for mingw (used in combination with Windows)
default: False
manual: True
flag examples
description: Build the example projects
default: False
manual: True
common example-options
default-language: Haskell2010
if !flag(examples)
buildable: False
else
build-depends:
, base
, h-raylib
executable basic-window
import: example-options
hs-source-dirs: examples/basic-window/src
main-is: Main.hs
executable basic-images
import: example-options
hs-source-dirs: examples/basic-images/src
main-is: Main.hs
executable basic-shaders
import: example-options
hs-source-dirs: examples/basic-shaders/src
main-is: Main.hs
executable basic-models
import: example-options
hs-source-dirs: examples/basic-models/src
main-is: Main.hs
executable basic-audio
import: example-options
hs-source-dirs: examples/basic-audio/src
main-is: Main.hs
executable custom-font-text
import: example-options
hs-source-dirs: examples/custom-font-text/src
main-is: Main.hs
executable first-person-camera
import: example-options
hs-source-dirs: examples/first-person-camera/src
main-is: Main.hs
executable camera-ray-collision
import: example-options
hs-source-dirs: examples/camera-ray-collision/src
main-is: Main.hs
library
exposed-modules:
Raylib.Core
Raylib.Core.Audio
Raylib.Core.Models
Raylib.Core.Shapes
Raylib.Core.Text
Raylib.Core.Textures
Raylib.Types
Raylib.Util
Raylib.Util.Colors
other-modules:
Raylib.ForeignUtil
Raylib.Internal
Raylib.Native
build-depends:
, base >=4.0 && <4.17.0
, containers >=0.6.0 && <0.6.7.0
hs-source-dirs: src
default-language: Haskell2010
other-extensions:
DeriveAnyClass
ForeignFunctionInterface
if (flag(platform-windows) || (flag(detect-platform) && os(windows)))
if flag(mingw-cross)
extra-libraries:
opengl32
gdi32
winmm
shell32
gcc
gcc_eh
else
extra-libraries:
opengl32
gdi32
winmm
shell32
gcc_eh
cc-options:
-DPLATFORM_DESKTOP -D_ftelli64=ftello64 -D_fseeki64=fseeko64
elif (flag(platform-linux) || (flag(detect-platform) && os(linux)))
extra-libraries:
GL
c
m
pthread
dl
rt
X11
Xinerama
Xcursor
Xrandr
Xi
Xext
cc-options: -Wno-unused-result -DPLATFORM_DESKTOP
elif (flag(platform-mac) || (flag(detect-platform) && os(osx)))
frameworks: OpenGL Cocoa IOKit CoreVideo CoreAudio CoreFoundation
cc-options: -DPLATFORM_DESKTOP
elif (flag(platform-bsd) || (flag(detect-platform) && ((os(freebsd) || os(netbsd)) || os(openbsd))))
extra-libraries:
GL
pthread
cc-options: -DPLATFORM_DESKTOP
else
-- Unsupported OS, do nothing. If you can get it working on an
-- OS that isn't on here, please add it here.
if (flag(platform-mac) || (flag(detect-platform) && os(osx)))
-- Use rgflw.m instead of .c on Mac to force objective-c
c-sources:
lib/rglfw.m
lib/rl_bindings.c
raylib/src/raudio.c
raylib/src/rcore.c
raylib/src/rmodels.c
raylib/src/rshapes.c
raylib/src/rtext.c
raylib/src/rtextures.c
raylib/src/utils.c
else
c-sources:
lib/rl_bindings.c
lib/rl_internal.c
raylib/src/raudio.c
raylib/src/rcore.c
raylib/src/rglfw.c
raylib/src/rmodels.c
raylib/src/rshapes.c
raylib/src/rtext.c
raylib/src/rtextures.c
raylib/src/utils.c
include-dirs: lib raylib/src raylib/src/external/glfw/include