diff options
| author | ruki <[email protected]> | 2023-03-06 22:55:57 +0800 |
|---|---|---|
| committer | ruki <[email protected]> | 2023-03-06 22:55:57 +0800 |
| commit | a71fe6d9b138fc9bb16dfb31591f1514f34adf1b (patch) | |
| tree | 79a1979b2ce827f6c515b0c60edf6dd6d34c1a2a /xmake/rules/rust/xmake.lua | |
| parent | 8bb23ca24aebe4c2dde25183a4eee7cda76e3438 (diff) | |
fix sysflags
Diffstat (limited to 'xmake/rules/rust/xmake.lua')
| -rw-r--r-- | xmake/rules/rust/xmake.lua | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/xmake/rules/rust/xmake.lua b/xmake/rules/rust/xmake.lua index e31e2f046..2e9295cfd 100644 --- a/xmake/rules/rust/xmake.lua +++ b/xmake/rules/rust/xmake.lua @@ -40,22 +40,22 @@ rule("rust.build") target:data_set("inherit.links.exportlinks", false) elseif cratetype == "cdylib" then assert(target:is_shared(), "target(%s) must be shared kind for cratetype(cdylib)!", target:name()) - target:add("shflags", "--crate-type=cdylib") - target:add("shflags", "-C prefer-dynamic") + target:add("shflags", "--crate-type=cdylib", {force = true}) + target:add("shflags", "-C prefer-dynamic", {force = true}) elseif target:is_static() then target:set("extension", ".rlib") - target:add("arflags", "--crate-type=lib") + target:add("arflags", "--crate-type=lib", {force = true}) target:data_set("inherit.links.deplink", false) elseif target:is_shared() then - target:add("shflags", "--crate-type=dylib") + target:add("shflags", "--crate-type=dylib", {force = true}) -- fix cannot satisfy dependencies so `std` only shows up once -- https://github.com/rust-lang/rust/issues/19680 -- -- but it will link dynamic @rpath/libstd-xxx.dylib, -- so we can no longer modify and set other rpath paths - target:add("shflags", "-C prefer-dynamic") + target:add("shflags", "-C prefer-dynamic", {force = true}) elseif target:is_binary() then - target:add("ldflags", "--crate-type=bin") + target:add("ldflags", "--crate-type=bin", {force = true}) end -- set edition |
