summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcofecofe <[email protected]>2024-06-24 21:49:06 +0800
committercofecofe <[email protected]>2024-06-24 21:49:06 +0800
commite5838d655e8ed3cb5efe729c7ed6e626d95cf6fa (patch)
tree06381a4b25a9157d1e6a8e03ac5868be04845343
parent86b549d7ec56de8fcc19a3ce6f8fbcbf6661dc8b (diff)
parent91268bb362559784a1df570bf39f51e245f887fb (diff)
Merge branch 'master' of https://github.com/cofecofe/xmake
-rw-r--r--CHANGELOG.md4
-rw-r--r--core/xmake.lua2
-rwxr-xr-xcore/xmake.sh2
-rw-r--r--scripts/rpmbuild/xmake.spec2
-rw-r--r--xmake/rules/qt/load.lua31
5 files changed, 32 insertions, 9 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 41f3ed7dc..57139b5de 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,6 +2,8 @@
## master (unreleased)
+## v2.9.3
+
### New features
* [#4637](https://github.com/xmake-io/xmake/issues/4637): Add mix generator for xpack
@@ -1826,6 +1828,8 @@
## master (开发中)
+## v2.9.3
+
### 新特性
* [#4637](https://github.com/xmake-io/xmake/issues/4637): 为 xpack 添加 mix 支持
diff --git a/core/xmake.lua b/core/xmake.lua
index b64953ad7..48cc666b7 100644
--- a/core/xmake.lua
+++ b/core/xmake.lua
@@ -2,7 +2,7 @@
set_project("xmake")
-- version
-set_version("2.9.2", {build = "%Y%m%d"})
+set_version("2.9.3", {build = "%Y%m%d"})
-- set xmake min version
set_xmakever("2.8.5")
diff --git a/core/xmake.sh b/core/xmake.sh
index 8907aefb2..024e2b81d 100755
--- a/core/xmake.sh
+++ b/core/xmake.sh
@@ -1,7 +1,7 @@
#!/bin/sh
set_project "xmake"
-set_version "2.9.2" "%Y%m%d"
+set_version "2.9.3" "%Y%m%d"
# set warning all
set_warnings "all"
diff --git a/scripts/rpmbuild/xmake.spec b/scripts/rpmbuild/xmake.spec
index 007feb679..4ffd12362 100644
--- a/scripts/rpmbuild/xmake.spec
+++ b/scripts/rpmbuild/xmake.spec
@@ -2,7 +2,7 @@
%define use_luajit 0
Name: xmake
-Version: 2.9.2
+Version: 2.9.3
Release: 1%{?dist}
Summary: A cross-platform build utility based on Lua
diff --git a/xmake/rules/qt/load.lua b/xmake/rules/qt/load.lua
index b5490ee79..d66d24164 100644
--- a/xmake/rules/qt/load.lua
+++ b/xmake/rules/qt/load.lua
@@ -26,7 +26,7 @@ import("core.base.hashset")
import("lib.detect.find_library")
-- make link for framework
-function _link(target, linkdirs, framework, qt_sdkver)
+function _link(target, linkdirs, framework, qt_sdkver, infix)
if framework:startswith("Qt") then
local debug_suffix = "_debug"
if target:is_plat("windows") then
@@ -41,12 +41,12 @@ function _link(target, linkdirs, framework, qt_sdkver)
debug_suffix = ""
end
if qt_sdkver:ge("5.0") then
- framework = "Qt" .. qt_sdkver:major() .. framework:sub(3) .. (is_mode("debug") and debug_suffix or "")
+ framework = "Qt" .. qt_sdkver:major() .. framework:sub(3) .. infix .. (is_mode("debug") and debug_suffix or "")
else -- for qt4.x, e.g. QtGui4.lib
if target:is_plat("windows", "mingw") then
- framework = "Qt" .. framework:sub(3) .. (is_mode("debug") and debug_suffix or "") .. qt_sdkver:major()
+ framework = "Qt" .. framework:sub(3) .. infix .. (is_mode("debug") and debug_suffix or "") .. qt_sdkver:major()
else
- framework = "Qt" .. framework:sub(3) .. (is_mode("debug") and debug_suffix or "")
+ framework = "Qt" .. framework:sub(3) .. infix .. (is_mode("debug") and debug_suffix or "")
end
end
if target:is_plat("android") then --> -lQt5Core_armeabi/-lQt5CoreDebug_armeabi for 5.14.x
@@ -185,6 +185,25 @@ function main(target, opt)
raise("Qt SDK version not found, please run `xmake f --qt_sdkver=xxx` to set it.")
end
+ -- get qt sdk infix
+ local infix = ""
+ if qt.mkspecsdir then
+ if os.isfile(path.join(qt.mkspecsdir, "qconfig.pri")) then
+ local qconfig = io.readfile(path.join(qt.mkspecsdir, "qconfig.pri"))
+ if qconfig then
+ qconfig = qconfig:trim():split("\n")
+ for _, line in ipairs(qconfig) do
+ if line:startswith("QT_LIBINFIX") then
+ local kv = line:split("=", {plain = true, limit = 2})
+ if #kv == 2 then
+ infix = kv[2]:trim()
+ end
+ end
+ end
+ end
+ end
+ end
+
-- add -fPIC
if not target:is_plat("windows", "mingw") then
target:add("cxflags", "-fPIC")
@@ -333,7 +352,7 @@ function main(target, opt)
_add_includedirs(target, path.join(frameworkdir, "Headers", qt.sdkver, framework))
frameworksset:insert(framework)
else
- local link = _link(target, qt.libdir, framework, qt_sdkver)
+ local link = _link(target, qt.libdir, framework, qt_sdkver, infix)
target:add("syslinks", link)
_add_qmakeprllibs(target, path.join(qt.libdir, link .. ".prl"), qt.libdir)
_add_includedirs(target, path.join(qt.includedir, framework))
@@ -342,7 +361,7 @@ function main(target, opt)
_add_includedirs(target, path.join(qt.includedir, framework, qt.sdkver, framework))
end
else
- local link = _link(target, qt.libdir, framework, qt_sdkver)
+ local link = _link(target, qt.libdir, framework, qt_sdkver, infix)
target:add("syslinks", link)
_add_qmakeprllibs(target, path.join(qt.libdir, link .. ".prl"), qt.libdir)
_add_includedirs(target, path.join(qt.includedir, framework))