summaryrefslogtreecommitdiff
path: root/build
AgeCommit message (Collapse)Author
2023-04-12Move ffi module into mlua-sys crateAlex Orlenko
2023-02-07Fix clippy warningsAlex Orlenko
2022-05-07Don't require Lua sources for modules in build systemAlex Orlenko
2022-04-15Merge pull request #145 from zh-jq/patch-v0.7.4Alex Orlenko
support luajit version 2.0.4
2022-04-13support luajit version 2.0.4zhangjingqiang
2022-03-22Fix clippy warningsAlex Orlenko
2022-03-20Initial Luau supportAlex Orlenko
2022-03-20Refactor ffi moduleAlex Orlenko
Initial Luau support work
2022-03-01Fix "find_dummy" compile error if no lua feature selectedAlex Orlenko
2022-01-19Fix cross compilation (bug introduced in 84a174c)Alex Orlenko
2021-12-28Allow `pkg-config` to omit include paths if they equals to standard.Alex Orlenko
See #114
2021-12-28Refactor `build/find_normal.rs` to include error messages instead of `unwrap()`Alex Orlenko
2021-11-04Add luajit52 support (LuaJIT with partial compatibility with Lua 5.2)Alex Orlenko
2021-10-08Fixed LUA_REGISTRYINDEX when generating `glue.rs` on cross-compiling for ↵Alex Orlenko
lua51(jit)
2021-06-16Complitely remove the C shimAlex Orlenko
2021-06-16Revert commit ced808d5abAlex Orlenko
I think this experiment is unsuccessful and does not work well in a module mode with dynamic symbols resolution and mixing between different mlua instances. Overall the Rust bug has been fixed and we can wait for the "C-unwind" feature become stable.
2021-06-12Keep all Lua symbols in unsafe mode to load C modulesAlex Orlenko
2021-05-04Fix clippy warningsAlex Orlenko
2021-04-27Don't trigger longjmp in rust.Alex Orlenko
Motivation behind this change is upcoming breaking change in Rust compiler v1.52.0 to prevent unwinding across FFI boundaries. https://github.com/rust-lang/rust/pull/76570 The new functionality requires nightly compiler to declare FFI functions as "C-unwind". The fundamental solution is to use C shim to wrap "e" and "m" Lua functions in pcall. Additionally define Rust calling convention to trigger lua_error on Rust behalf.
2021-04-20Don't read lua.h from build script (was not used)Alex Orlenko
2021-04-14Add rerun-if-changed instructions to build scriptAlex Orlenko
2021-04-14Don't check LUA_LIB_NAME if it's not neededAlex Orlenko
2021-01-16Remove unused exports from glue.{c,rs} && Fix some clippy warningsAlex Orlenko
2021-01-13Allow luajit to build in the pointer size cross compilation caseWez Furlong
2021-01-13Support cross compilationWez Furlong
This commit teaches the build script to recognize when it is cross-compiling and switch to an alternative approach for generating the `glue.rs` module. It defaults to the equivalent logic found in the lua headers to set the default types and parameters. Notably: it doesn't statically produce the default lua paths as we cannot know these without either executing the code (not guaranteed possible when cross compiling) or regexing out the paths from the headers (a bit brittle). An alternative approach might be to use something like `lazy_static` to ask the library for its compiled in values once at runtime. I've tested this with: ``` cargo build --target armv7-unknown-linux-gnueabihf --features lua51,vendored cargo build --target armv7-unknown-linux-gnueabihf --features lua52,vendored cargo build --target armv7-unknown-linux-gnueabihf --features lua53,vendored cargo build --target armv7-unknown-linux-gnueabihf --features lua54,vendored cargo build --target armv7-unknown-linux-gnueabihf --features luajit,vendored ``` All except luajit compile. Luajit itself doesn't cross compile, so I don't think we can ever reasonably get that to work. I haven't tried to run any of this yet; my use case is actually for mac (https://github.com/wez/wezterm/pull/426) so I need to commit this and try patching it in over there before I can see if that truly worked end-to-end. refs: https://github.com/khvzak/mlua/issues/14
2020-06-07Raise compile_error! instead of panic! in the build scriptAlex Orlenko
2020-06-07New `module` featureAlex Orlenko
Don't link module with Lua core (see: http://lua-users.org/wiki/BuildingModules) Example and tests for modules
2020-06-06Add LuaJIT 2.0.5 stable supportAlex Orlenko
2020-05-15Add clippy check and fix clippy warningsAlex Orlenko
2020-05-11Add Lua 5.4 (rc2) supportAlex Orlenko
2020-04-17Update READMEAlex Orlenko
Cargo fmt and minor changes
2020-04-17v0.3.0-alpha.1 with async supportAlex Orlenko
Squashed commit of the async branch.
2020-01-27Combine lua-vendored and luajit-vendored features into "vendored"Alex Orlenko
2020-01-25Support vendored versions of Lua and LuaJITAlex Orlenko