summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjingkaimori <[email protected]>2023-03-29 12:22:19 +0800
committerjingkaimori <[email protected]>2023-03-29 12:22:19 +0800
commit7ae2c06fe9c9d590feb5bf6c0d447ea6f1456f1a (patch)
tree6a4bc4299edaffa1538d39b8f21c6201ce04636e
parent884ec302caa4751a18a5a85de04e64a42ac8b210 (diff)
fix 3rd lib
-rw-r--r--xmake/rules/qt/load.lua9
1 files changed, 8 insertions, 1 deletions
diff --git a/xmake/rules/qt/load.lua b/xmake/rules/qt/load.lua
index 45c4e516c..c0a60e10c 100644
--- a/xmake/rules/qt/load.lua
+++ b/xmake/rules/qt/load.lua
@@ -70,7 +70,14 @@ function _find_static_links_3rd(target, linkdirs, qt_sdkver, libpattern)
for _, libpath in ipairs(os.files(path.join(linkdir, libpattern))) do
local basename = path.basename(libpath)
-- we need ignore qt framework libraries, e.g. libQt5xxx.a, Qt5Core.lib ..
- if not basename:startswith("libQt" .. qt_sdkver:major()) and not basename:startswith("Qt" .. qt_sdkver:major()) then
+ -- but bundled library names like libQt5Bundledxxx.a on wasm.
+ local is_bundled_library =
+ basename:startswith("libQt" .. qt_sdkver:major() .. "Bundled") or (
+ (not basename:startswith("libQt" .. qt_sdkver:major())) and
+ (not basename:startswith("Qt" .. qt_sdkver:major()))
+ )
+
+ if is_bundled_library then
if (is_mode("debug") and basename:endswith(debug_suffix)) or (not is_mode("debug") and not basename:endswith(debug_suffix)) then
table.insert(links, core_target.linkname(path.filename(libpath)))
end