mirror of
https://github.com/allyourcodebase/lua.git
synced 2026-05-01 11:17:58 +02:00
commit
75b67d3cae
3 changed files with 24 additions and 22 deletions
|
|
@ -35,5 +35,5 @@ const lua_dep = b.dependency("lua", .{
|
|||
.target = target,
|
||||
.release = optimize != .Debug,
|
||||
});
|
||||
const lua_lib = lua_dep.artifact("lua");
|
||||
const lua_lib = lua_dep.artifact(if (target.result.os.tag == .windows) "lua54" else "lua");
|
||||
```
|
||||
|
|
|
|||
40
build.zig
40
build.zig
|
|
@ -19,17 +19,17 @@ pub fn build(b: *Build) !void {
|
|||
const build_shared = b.option(bool, "shared", "build as shared library") orelse target.result.isMinGW();
|
||||
const use_readline =
|
||||
if (target.result.os.tag == .linux)
|
||||
b.option(bool, "use_readline", "readline support for linux") orelse false
|
||||
else
|
||||
null;
|
||||
b.option(bool, "use_readline", "readline support for linux") orelse false
|
||||
else
|
||||
null;
|
||||
|
||||
const lua_src = b.dependency("lua", .{});
|
||||
|
||||
const lib =
|
||||
b.addStaticLibrary(artifactOptions(
|
||||
.{ .shared = false },
|
||||
.{ .target = target, .optimize = optimize },
|
||||
));
|
||||
.{ .shared = false },
|
||||
.{ .target = target, .optimize = optimize },
|
||||
));
|
||||
const shared = if (build_shared)
|
||||
b.addSharedLibrary(artifactOptions(
|
||||
.{ .shared = true },
|
||||
|
|
@ -65,44 +65,44 @@ pub fn build(b: *Build) !void {
|
|||
t.addIncludePath(lua_src.path("src"));
|
||||
switch (target.result.os.tag) {
|
||||
.aix => {
|
||||
t.defineCMacro("LUA_USE_POSIX", null);
|
||||
t.defineCMacro("LUA_USE_DLOPEN", null);
|
||||
t.root_module.addCMacro("LUA_USE_POSIX", "");
|
||||
t.root_module.addCMacro("LUA_USE_DLOPEN", "");
|
||||
t.linkSystemLibrary("dl");
|
||||
},
|
||||
.freebsd, .netbsd, .openbsd => {
|
||||
t.defineCMacro("LUA_USE_LINUX", null);
|
||||
t.defineCMacro("LUA_USE_READLINE", null);
|
||||
t.root_module.addCMacro("LUA_USE_LINUX", "");
|
||||
t.root_module.addCMacro("LUA_USE_READLINE", "");
|
||||
t.addIncludePath(.{ .cwd_relative = "/usr/include/edit" });
|
||||
t.linkSystemLibrary("edit");
|
||||
},
|
||||
.ios => {
|
||||
t.defineCMacro("LUA_USE_IOS", null);
|
||||
t.root_module.addCMacro("LUA_USE_IOS", "");
|
||||
},
|
||||
.linux => {
|
||||
t.defineCMacro("LUA_USE_LINUX", null);
|
||||
t.root_module.addCMacro("LUA_USE_LINUX", "");
|
||||
t.linkSystemLibrary("dl");
|
||||
if (use_readline.?) {
|
||||
t.defineCMacro("LUA_USE_READLINE", null);
|
||||
t.root_module.addCMacro("LUA_USE_READLINE", "");
|
||||
t.linkSystemLibrary("readline");
|
||||
}
|
||||
},
|
||||
.macos => {
|
||||
t.defineCMacro("LUA_USE_MACOSX", null);
|
||||
t.defineCMacro("LUA_USE_READLINE", null);
|
||||
t.root_module.addCMacro("LUA_USE_MACOSX", "");
|
||||
t.root_module.addCMacro("LUA_USE_READLINE", "");
|
||||
t.linkSystemLibrary("readline");
|
||||
},
|
||||
.solaris => {
|
||||
t.defineCMacro("LUA_USE_POSIX", null);
|
||||
t.defineCMacro("LUA_USE_DLOPEN", null);
|
||||
t.defineCMacro("_REENTRANT", null);
|
||||
t.root_module.addCMacro("LUA_USE_POSIX", "");
|
||||
t.root_module.addCMacro("LUA_USE_DLOPEN", "");
|
||||
t.root_module.addCMacro("_REENTRANT", "");
|
||||
t.linkSystemLibrary("dl");
|
||||
},
|
||||
else => {},
|
||||
}
|
||||
}
|
||||
if (target.result.isMinGW()) {
|
||||
lib.defineCMacro("LUA_BUILD_AS_DLL", null);
|
||||
exe.defineCMacro("LUA_BUILD_AS_DLL", null);
|
||||
lib.root_module.addCMacro("LUA_BUILD_AS_DLL", "");
|
||||
exe.root_module.addCMacro("LUA_BUILD_AS_DLL", "");
|
||||
}
|
||||
if (shared) |s| {
|
||||
s.addCSourceFiles(.{
|
||||
|
|
|
|||
|
|
@ -1,8 +1,10 @@
|
|||
.{
|
||||
.name = "lua",
|
||||
.name = .lua,
|
||||
|
||||
.version = "5.4.7",
|
||||
|
||||
.fingerprint = 0xd671372bcadcaace,
|
||||
|
||||
.dependencies = .{
|
||||
.lua = .{
|
||||
.url = "https://www.lua.org/ftp/lua-5.4.7.tar.gz",
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue