hslua-1.0.0: hslua.cabal
name: hslua
version: 1.0.0
synopsis: Bindings to Lua, an embeddable scripting language
description: HsLua provides bindings, wrappers, types, and helper
functions to bridge Haskell and <https://www.lua.org/ Lua>.
.
This package contains a full Lua interpreter version 5.3.5.
If you want to link it with a system-wide Lua installation,
use the @system-lua@ flag.
.
<https://github.com/hslua/hslua-examples Example programs>
are available in a separate repository.
homepage: https://hslua.github.io/
bug-reports: https://github.com/hslua/hslua/issues
license: MIT
license-file: LICENSE
author: Gracjan Polak, Ömer Sinan Ağacan
maintainer: albert+hslua@zeitkraut.de
copyright: © 2007–2012 Gracjan Polak
© 2012–2016 Ömer Sinan Ağacan
© 2016–2018 Albert Krewinkel
category: Foreign
build-type: Simple
extra-source-files: cbits/lua-5.3.5/*.h
cbits/error-conversion/*.h
README.md
CHANGELOG.md
test/lua/*.lua
cabal-version: >=1.10
tested-with: GHC == 7.10.3, GHC == 8.0.2, GHC == 8.2.2, GHC == 8.4.2
source-repository head
type: git
location: https://github.com/hslua/hslua.git
flag system-lua
default: False
manual: True
description: Use the system-wide Lua instead of the bundled copy.
flag apicheck
default: False
manual: True
description: Compile Lua with -DLUA_USE_APICHECK.
flag lua_32bits
default: False
manual: True
description: Compile Lua with -DLUA_32BITS
flag allow-unsafe-gc
default: True
manual: True
description: Allow optimizations which make Lua's garbage collection
potentially unsafe; haskell finalizers must be handled
with extreme care.
flag export-dynamic
default: True
manual: True
description: Add all symbols to dynamic symbol table; disabling this
will make it possible to create fully static binaries,
but renders loading of dynamic C libraries impossible.
flag pkg-config
default: False
manual: True
description: Use @pkg-config@ to discover library and include paths.
Setting this flag implies `system-lua`.
library
exposed-modules: Foreign.Lua
, Foreign.Lua.Core
, Foreign.Lua.Core.Constants
, Foreign.Lua.Core.Error
, Foreign.Lua.Core.RawBindings
, Foreign.Lua.Core.Types
, Foreign.Lua.FunctionCalling
, Foreign.Lua.Types
, Foreign.Lua.Types.Peekable
, Foreign.Lua.Types.Pushable
, Foreign.Lua.Userdata
, Foreign.Lua.Util
other-modules: Foreign.Lua.Utf8
, Foreign.Lua.Core.Auxiliary
, Foreign.Lua.Core.Functions
build-depends: base >= 4.8 && < 5
, bytestring >= 0.10.2 && < 0.11
, containers >= 0.5 && < 0.6
, exceptions >= 0.8 && < 0.11
, fail >= 4.9 && < 5
, mtl >= 2.2 && < 2.3
, text >= 1.0 && < 1.3
hs-source-dirs: src
default-language: Haskell2010
ghc-options: -Wall
default-extensions: CApiFFI
, ForeignFunctionInterface
, LambdaCase
other-extensions: CPP
, DeriveDataTypeable
, DeriveFunctor
, FlexibleContexts
, FlexibleInstances
, ScopedTypeVariables
c-sources: cbits/error-conversion/error-conversion.c
include-dirs: cbits/error-conversion
if flag(system-lua) || flag(pkg-config)
if flag(pkg-config)
pkgconfig-depends: lua5.3
else
extra-libraries: lua
includes: lua.h
else
include-dirs: cbits/lua-5.3.5
c-sources: cbits/lua-5.3.5/lapi.c
, cbits/lua-5.3.5/lcode.c
, cbits/lua-5.3.5/lctype.c
, cbits/lua-5.3.5/ldebug.c
, cbits/lua-5.3.5/ldo.c
, cbits/lua-5.3.5/ldump.c
, cbits/lua-5.3.5/lfunc.c
, cbits/lua-5.3.5/lgc.c
, cbits/lua-5.3.5/llex.c
, cbits/lua-5.3.5/lmem.c
, cbits/lua-5.3.5/lobject.c
, cbits/lua-5.3.5/lopcodes.c
, cbits/lua-5.3.5/lparser.c
, cbits/lua-5.3.5/lstate.c
, cbits/lua-5.3.5/lstring.c
, cbits/lua-5.3.5/ltable.c
, cbits/lua-5.3.5/ltm.c
, cbits/lua-5.3.5/lundump.c
, cbits/lua-5.3.5/lvm.c
, cbits/lua-5.3.5/lzio.c
, cbits/lua-5.3.5/lauxlib.c
, cbits/lua-5.3.5/lbaselib.c
, cbits/lua-5.3.5/lbitlib.c
, cbits/lua-5.3.5/lcorolib.c
, cbits/lua-5.3.5/ldblib.c
, cbits/lua-5.3.5/liolib.c
, cbits/lua-5.3.5/lmathlib.c
, cbits/lua-5.3.5/lstrlib.c
, cbits/lua-5.3.5/loslib.c
, cbits/lua-5.3.5/ltablib.c
, cbits/lua-5.3.5/lutf8lib.c
, cbits/lua-5.3.5/loadlib.c
, cbits/lua-5.3.5/linit.c
if os(linux)
cc-options: -DLUA_USE_LINUX
if flag(export-dynamic)
ld-options: -Wl,-E
if os(darwin)
cc-options: -DLUA_USE_MACOSX
if os(freebsd)
cc-options: -DLUA_USE_POSIX
if flag(export-dynamic)
ld-options: -Wl,-E
if flag(lua_32bits)
cc-options: -DLUA_32BITS
if flag(apicheck)
cc-options: -DLUA_USE_APICHECK
if flag(allow-unsafe-gc)
cpp-options: -DALLOW_UNSAFE_GC
test-suite test-hslua
type: exitcode-stdio-1.0
main-is: test-hslua.hs
hs-source-dirs: test
ghc-options: -Wall -threaded
default-language: Haskell2010
other-modules: Foreign.LuaTests
, Foreign.Lua.CoreTests
, Foreign.Lua.Core.AuxiliaryTests
, Foreign.Lua.Core.ErrorTests
, Foreign.Lua.FunctionCallingTests
, Foreign.Lua.TypesTests
, Foreign.Lua.Types.PeekableTests
, Foreign.Lua.Types.PushableTests
, Foreign.Lua.UserdataTests
, Foreign.Lua.UtilTests
, Test.HsLua.Arbitrary
, Test.HsLua.Util
build-depends: base >= 4.8 && < 5
, bytestring >= 0.10.2 && < 0.11
, containers >= 0.5 && < 0.6
, exceptions >= 0.8 && < 0.11
, fail >= 4.9 && < 5
, mtl >= 2.2 && < 2.3
, text >= 1.0 && < 1.3
-- for testing
, hslua
, QuickCheck >= 2.7
, quickcheck-instances >= 0.3
, tasty >= 0.11
, tasty-hunit >= 0.9
, tasty-quickcheck >= 0.8
benchmark benchmark-hslua
type: exitcode-stdio-1.0
main-is: benchmark-hslua.hs
hs-source-dirs: benchmark
default-language: Haskell2010
build-depends: hslua
, base >= 4.8
, bytestring >= 0.10.2 && < 0.11
, criterion >= 1.0 && < 1.5
, deepseq >= 1.4.1 && < 1.5
c-sources: benchmark/benchmark-functions.c
include-dirs: benchmark
, cbits/lua-5.3.5