diff options
Diffstat (limited to 'xmake/rules/python/xmake.lua')
| -rw-r--r-- | xmake/rules/python/xmake.lua | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/xmake/rules/python/xmake.lua b/xmake/rules/python/xmake.lua index 7af9b434b..823495485 100644 --- a/xmake/rules/python/xmake.lua +++ b/xmake/rules/python/xmake.lua @@ -25,6 +25,15 @@ rule("python.library") target:set("prefixname", "_") local soabi = target:extraconf("rules", "python.library", "soabi") if soabi then + import("lib.detect.find_tool") + local python = assert(find_tool("python3"), "python not found!") + local result = try { function() return os.iorunv(python.program, {"-c", "import sysconfig; print(sysconfig.get_config_var('EXT_SUFFIX'))"}) end} + if result then + result = result:trim() + if result ~= "None" then + target:set("extension", result) + end + end else if target:is_plat("windows") then target:set("extension", ".pyd") |
