cabal-version: 2.2 name: lua version: 2.1.0 synopsis: Lua, an embeddable scripting language description: This package provides bindings and types to bridge Haskell and . . The full Lua interpreter version 5.3.6 is included. Alternatively, a system-wide Lua installation can be linked instead. homepage: https://hslua.org/ bug-reports: https://github.com/hslua/hslua/issues license: MIT license-file: LICENSE author: Albert Krewinkel maintainer: Albert Krewinkel copyright: © 2007–2012 Gracjan Polak; © 2012–2016 Ömer Sinan Ağacan; © 2017-2022 Albert Krewinkel category: Foreign build-type: Simple extra-source-files: cbits/lua-5.3.6/*.h , cbits/hslua/*.h , README.md , CHANGELOG.md tested-with: GHC == 8.0.2 , GHC == 8.2.2 , GHC == 8.4.4 , GHC == 8.6.5 , GHC == 8.8.4 , GHC == 8.10.7 , GHC == 9.0.1 , GHC == 9.2.1 source-repository head type: git location: https://github.com/hslua/hslua.git subdir: lua 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; enabling this should be safe if there are no callbacks into Haskell during Lua garbage collection cycles. The flag should be *disabled* if Lua objects can have Haskell finalizers, i.e., @__gc@ metamethods that call Haskell function. 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`. flag hardcode-reg-keys default: True manual: True description: Don't use CAPI to determine the names of certain registry key names but use hard coded values instead. This flag is required when compiling against Lua 5.3.3 or earlier, as those versions do not expose the necessary information in the @lauxlib.h@ header file. Setting this flag should usually be unproblematic, except if the used Lua version has been patched heavily. common common-options default-language: Haskell2010 build-depends: base >= 4.8 && < 5 ghc-options: -Wall -Wincomplete-record-updates -Wnoncanonical-monad-instances -Wredundant-constraints if impl(ghc >= 8.2) ghc-options: -Wcpp-undef -Werror=missing-home-modules if impl(ghc >= 8.4) ghc-options: -Widentities -Wincomplete-uni-patterns -Wpartial-fields -fhide-source-paths 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 if flag(hardcode-reg-keys) cpp-options: -DHARDCODE_REG_KEYS library import: common-options exposed-modules: Lua , Lua.Auxiliary , Lua.Call , Lua.Constants , Lua.Ersatz , Lua.Ersatz.Auxiliary , Lua.Ersatz.Functions , Lua.Lib , Lua.Primary , Lua.Types , Lua.Userdata hs-source-dirs: src default-extensions: CApiFFI , ForeignFunctionInterface , LambdaCase , StrictData other-extensions: CPP , DeriveGeneric , GeneralizedNewtypeDeriving , PatternSynonyms c-sources: cbits/hslua/hsludata.c , cbits/hslua/hslcall.c , cbits/hslua/hslauxlib.c , cbits/hslua/hslua.c include-dirs: cbits/hslua includes: lua.h , luaconf.h , lauxlib.h , lualib.h if flag(system-lua) || flag(pkg-config) if flag(pkg-config) pkgconfig-depends: lua5.3 else extra-libraries: lua else include-dirs: cbits/lua-5.3.6 install-includes: lua.h , luaconf.h , lauxlib.h , lualib.h c-sources: cbits/lua-5.3.6/lapi.c , cbits/lua-5.3.6/lcode.c , cbits/lua-5.3.6/lctype.c , cbits/lua-5.3.6/ldebug.c , cbits/lua-5.3.6/ldo.c , cbits/lua-5.3.6/ldump.c , cbits/lua-5.3.6/lfunc.c , cbits/lua-5.3.6/lgc.c , cbits/lua-5.3.6/llex.c , cbits/lua-5.3.6/lmem.c , cbits/lua-5.3.6/lobject.c , cbits/lua-5.3.6/lopcodes.c , cbits/lua-5.3.6/lparser.c , cbits/lua-5.3.6/lstate.c , cbits/lua-5.3.6/lstring.c , cbits/lua-5.3.6/ltable.c , cbits/lua-5.3.6/ltm.c , cbits/lua-5.3.6/lundump.c , cbits/lua-5.3.6/lvm.c , cbits/lua-5.3.6/lzio.c , cbits/lua-5.3.6/lauxlib.c , cbits/lua-5.3.6/lbaselib.c , cbits/lua-5.3.6/lbitlib.c , cbits/lua-5.3.6/lcorolib.c , cbits/lua-5.3.6/ldblib.c , cbits/lua-5.3.6/liolib.c , cbits/lua-5.3.6/lmathlib.c , cbits/lua-5.3.6/lstrlib.c , cbits/lua-5.3.6/loslib.c , cbits/lua-5.3.6/ltablib.c , cbits/lua-5.3.6/lutf8lib.c , cbits/lua-5.3.6/loadlib.c , cbits/lua-5.3.6/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 test-suite test-lua import: common-options type: exitcode-stdio-1.0 main-is: test-lua.hs hs-source-dirs: test other-modules: Lua.ErsatzTests , Lua.PrimaryTests , Lua.UnsafeTests build-depends: lua , tasty >= 0.11 , tasty-hunit >= 0.9