Skip to content

Commit 3316b90

Browse files
committed
improvement(build): add -Dlibrary_name for change name *.dll, *.so, *.dylib
1 parent f7b3c90 commit 3316b90

File tree

2 files changed

+6
-4
lines changed

2 files changed

+6
-4
lines changed

build.zig

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ pub fn build(b: *Build) void {
1616
const optimize = b.standardOptimizeOption(.{});
1717

1818
const lang = b.option(Language, "lang", "Lua language version to build") orelse .lua54;
19+
const library_name = b.option([]const u8, "library_name", "Library name for lua linking, default is `lua`") orelse null;
1920
const shared = b.option(bool, "shared", "Build shared library instead of static") orelse false;
2021
const luau_use_4_vector = b.option(bool, "luau_use_4_vector", "Build Luau to use 4-vectors instead of the default 3-vector.") orelse false;
2122

@@ -31,6 +32,7 @@ pub fn build(b: *Build) void {
3132
// Expose build configuration to the ziglua module
3233
const config = b.addOptions();
3334
config.addOption(Language, "lang", lang);
35+
config.addOption(?[]const u8, "library_name", library_name);
3436
config.addOption(bool, "luau_use_4_vector", luau_use_4_vector);
3537
zlua.addOptions("config", config);
3638

@@ -43,7 +45,7 @@ pub fn build(b: *Build) void {
4345
const lib = switch (lang) {
4446
.luajit => luajit_setup.configure(b, target, optimize, upstream, shared),
4547
.luau => luau_setup.configure(b, target, optimize, upstream, luau_use_4_vector),
46-
else => lua_setup.configure(b, target, optimize, upstream, lang, shared),
48+
else => lua_setup.configure(b, target, optimize, upstream, lang, shared, library_name),
4749
};
4850

4951
// Expose the Lua artifact, and get an install step that header translation can refer to

build/lua.zig

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ pub const Language = enum {
1212
luau,
1313
};
1414

15-
pub fn configure(b: *Build, target: Build.ResolvedTarget, optimize: std.builtin.OptimizeMode, upstream: *Build.Dependency, lang: Language, shared: bool) *Step.Compile {
15+
pub fn configure(b: *Build, target: Build.ResolvedTarget, optimize: std.builtin.OptimizeMode, upstream: *Build.Dependency, lang: Language, shared: bool, library_name: ?[]const u8) *Step.Compile {
1616
const version: std.SemanticVersion = switch (lang) {
1717
.lua51 => .{ .major = 5, .minor = 1, .patch = 5 },
1818
.lua52 => .{ .major = 5, .minor = 2, .patch = 4 },
@@ -23,14 +23,14 @@ pub fn configure(b: *Build, target: Build.ResolvedTarget, optimize: std.builtin.
2323

2424
const lib = if (shared)
2525
b.addSharedLibrary(.{
26-
.name = "lua",
26+
.name = library_name orelse "lua",
2727
.target = target,
2828
.optimize = optimize,
2929
.version = version,
3030
})
3131
else
3232
b.addStaticLibrary(.{
33-
.name = "lua",
33+
.name = library_name orelse "lua",
3434
.target = target,
3535
.optimize = optimize,
3636
.version = version,

0 commit comments

Comments
 (0)