summaryrefslogtreecommitdiff
path: root/xmake/rules/utils/bin2obj/xmake.lua
diff options
context:
space:
mode:
authorruki <[email protected]>2025-12-07 11:36:02 +0800
committerruki <[email protected]>2025-12-07 17:15:59 +0800
commit1ef6dddad4c6a3a2e3b3b79667e7f4568f7cfda0 (patch)
tree7dd959bba3f618f2cc32e229e46b65d4cee4c2da /xmake/rules/utils/bin2obj/xmake.lua
parentcae5b0a17dc7d0eb5599c0d5a92fab69d39983d5 (diff)
improve minos and sdkver
Diffstat (limited to 'xmake/rules/utils/bin2obj/xmake.lua')
-rw-r--r--xmake/rules/utils/bin2obj/xmake.lua20
1 files changed, 18 insertions, 2 deletions
diff --git a/xmake/rules/utils/bin2obj/xmake.lua b/xmake/rules/utils/bin2obj/xmake.lua
index def3f56e8..1f8e6e0b2 100644
--- a/xmake/rules/utils/bin2obj/xmake.lua
+++ b/xmake/rules/utils/bin2obj/xmake.lua
@@ -53,6 +53,17 @@ rule("utils.bin2obj")
-- get platform
local plat = target:plat()
+ -- get target_minver and xcode_sdkver from xcode toolchain (if available)
+ local target_minver = nil
+ local xcode_sdkver = nil
+ if format == "macho" then
+ local toolchain = target:toolchain("xcode")
+ if toolchain then
+ target_minver = toolchain:config("target_minver")
+ xcode_sdkver = toolchain:config("xcode_sdkver")
+ end
+ end
+
-- convert binary file to object file
local argv = {
"-i", path(sourcefile_bin),
@@ -62,8 +73,13 @@ rule("utils.bin2obj")
"-p", plat
}
if symbol_prefix ~= "_binary_" then
- table.insert(argv, "--symbol-prefix")
- table.insert(argv, symbol_prefix)
+ table.insert(argv, "--symbol_prefix=" .. symbol_prefix)
+ end
+ if target_minver then
+ table.insert(argv, "--target_minver=" .. target_minver)
+ end
+ if xcode_sdkver then
+ table.insert(argv, "--xcode_sdkver=" .. xcode_sdkver)
end
batchcmds:vlua("private.utils.bin2obj", argv)