diff options
| author | IMXEren <[email protected]> | 2025-07-07 18:35:38 +0530 |
|---|---|---|
| committer | IMXEren <[email protected]> | 2025-07-07 18:35:38 +0530 |
| commit | a3ba17738500e6a0c093da6a0687119f93a89eff (patch) | |
| tree | 160abc6ae24cd677318b244d257b1661d519fbaa /xmake/rules/rust/xmake.lua | |
| parent | fe3a4b2a9fa7e75a5ba760401e19b312028d27ee (diff) | |
refactor: use on_config to add runenvs instead of before_run
Diffstat (limited to 'xmake/rules/rust/xmake.lua')
| -rw-r--r-- | xmake/rules/rust/xmake.lua | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/xmake/rules/rust/xmake.lua b/xmake/rules/rust/xmake.lua index 8f62392b9..7dbd0c488 100644 --- a/xmake/rules/rust/xmake.lua +++ b/xmake/rules/rust/xmake.lua @@ -97,16 +97,18 @@ rule("rust.build") end) on_build("build.target") - before_run(function (target) + on_config(function (target) import("lib.detect.find_tool") - -- Make sure libstd shared library is available + -- Ensure libstd shared library is available when running local rc = find_tool("rustc") assert(rc, "rustc not found. Failed to add libstd in env") local outdata, errdata = os.iorunv(rc.program, {"--print=sysroot"}) assert(not errdata or errdata == "", "failed to find rust sysroot:\n" .. errdata) local libstd = path.join(outdata:trim(), "bin") - os.addenvs({PATH = libstd, LD_LIBRARY_PATH = libstd, DYLD_LIBRARY_PATH = libstd}) + target:add("runenvs", "PATH", libstd) + target:add("runenvs", "LD_LIBRARY_PATH", libstd) + target:add("runenvs", "DYLD_LIBRARY_PATH", libstd) end) rule("rust") |
