From cf75a18fc72cf469a3cfc9aa5ff550deb2b29c27 Mon Sep 17 00:00:00 2001 From: Doekin Date: Thu, 10 Apr 2025 09:23:48 +0800 Subject: improve `emscripten` detection by including `emcc.py` search --- xmake/modules/detect/sdks/find_emsdk.lua | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'xmake/modules') diff --git a/xmake/modules/detect/sdks/find_emsdk.lua b/xmake/modules/detect/sdks/find_emsdk.lua index cbc6998b2..ec8553692 100644 --- a/xmake/modules/detect/sdks/find_emsdk.lua +++ b/xmake/modules/detect/sdks/find_emsdk.lua @@ -33,10 +33,17 @@ function _find_emsdkdir(sdkdir) table.insert(paths, sdkdir) end table.insert(paths, "$(env EMSDK)") + if is_host("linux") then + table.join2(paths, {"/usr/share/emscripten/", "/usr/lib/emscripten/"}) + end local emsdk = find_file("emsdk.py", paths, {suffixes = subdirs}) if emsdk then return path.directory(emsdk) end + local emcc_py = find_file("emcc.py", paths, {suffixes = subdirs}) + if emcc_py then + return path.directory(emcc_py) + end end -- find emsdk @@ -53,6 +60,7 @@ function _find_emsdk(sdkdir) local subdirs = {} table.insert(subdirs, path.join("*", "emscripten")) local emcc = find_file("emcc", sdkdir, {suffixes = subdirs}) + emcc = emcc or find_file("emcc.py", sdkdir) if emcc then emscripten = path.directory(emcc) end -- cgit v1.3.1