summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorruki <[email protected]>2019-10-18 00:34:49 +0800
committerruki <[email protected]>2019-10-17 21:28:54 +0800
commita98a24e40df02fd59da99854476b5042058d7ee9 (patch)
tree3c599144e539c50d1a0e3ab4fff5d4301bbb2a5f
parent4a6da794c1ca4d8cfc3bce02e388c2e8bfdc1c90 (diff)
improve qt subsystem
-rw-r--r--xmake/rules/qt/load.lua13
1 files changed, 12 insertions, 1 deletions
diff --git a/xmake/rules/qt/load.lua b/xmake/rules/qt/load.lua
index e05232ae9..93296f307 100644
--- a/xmake/rules/qt/load.lua
+++ b/xmake/rules/qt/load.lua
@@ -234,7 +234,18 @@ function main(target, opt)
-- add -subsystem:windows for windows platform
if is_plat("windows") then
target:add("defines", "_WINDOWS")
- target:add("ldflags", "-subsystem:windows", "-entry:mainCRTStartup", {force = true})
+ local subsystem = false
+ for _, ldflag in ipairs(target:get("ldflags")) do
+ ldflag = ldflag:lower()
+ if ldflag:find("[/%-]subsystem:") then
+ subsystem = true
+ break
+ end
+ end
+ -- maybe user will set subsystem to console
+ if not subsystem then
+ target:add("ldflags", "-subsystem:windows", "-entry:mainCRTStartup", {force = true})
+ end
elseif is_plat("mingw") then
target:add("ldflags", "-mwindows", {force = true})
end