diff options
| author | ruki <[email protected]> | 2019-09-08 22:21:18 +0800 |
|---|---|---|
| committer | ruki <[email protected]> | 2019-09-08 22:21:18 +0800 |
| commit | 533b7ae2ee168d2be5f3df249712da0d9b141e40 (patch) | |
| tree | 51b3b4ada5f65aad07d43fc413a54c593cffec56 | |
| parent | 678cfdda5d012e74f10a83e305844c90980349f1 (diff) | |
improve qt.load
| -rw-r--r-- | xmake/includes/qt_add_static_plugins.lua | 2 | ||||
| -rw-r--r-- | xmake/rules/qt/load.lua | 11 | ||||
| -rw-r--r-- | xmake/rules/qt/xmake.lua | 24 |
3 files changed, 14 insertions, 23 deletions
diff --git a/xmake/includes/qt_add_static_plugins.lua b/xmake/includes/qt_add_static_plugins.lua index 1ed84713e..44a77076d 100644 --- a/xmake/includes/qt_add_static_plugins.lua +++ b/xmake/includes/qt_add_static_plugins.lua @@ -25,7 +25,7 @@ -- @code -- includes("qt_add_static_plugins.lua") -- target("test") --- add_rules("qt.application") +-- add_rules("qt.quickapp") -- add_files("src/*.c") -- qt_add_static_plugins("QSvgPlugin", {linkdirs = "plugins/imageformats", links = {"qsvg", "Qt5Svg"}}) -- @endcode diff --git a/xmake/rules/qt/load.lua b/xmake/rules/qt/load.lua index 3abe3245a..6d24f2472 100644 --- a/xmake/rules/qt/load.lua +++ b/xmake/rules/qt/load.lua @@ -212,5 +212,16 @@ function main(target, opt) -- add some static third-party links if exists target:add("links", _find_static_links(qt.linkdirs, is_plat("windows") and "qt*.lib" or "libqt*.a")) + + -- is gui application? + if opt.gui then + -- add -subsystem:windows for windows platform + if is_plat("windows") then + target:add("defines", "_WINDOWS") + target:add("ldflags", "-subsystem:windows", "-entry:mainCRTStartup", {force = true}) + elseif is_plat("mingw") then + target:add("ldflags", "-Wl,-subsystem:windows", {force = true}) + end + end end diff --git a/xmake/rules/qt/xmake.lua b/xmake/rules/qt/xmake.lua index a0dfe9691..3f15b2930 100644 --- a/xmake/rules/qt/xmake.lua +++ b/xmake/rules/qt/xmake.lua @@ -79,17 +79,7 @@ rule("qt.widgetapp") -- after load after_load(function (target) - - -- load common flags to target - import("load")(target, {frameworks = {"QtGui", "QtWidgets", "QtCore"}}) - - -- add -subsystem:windows for windows platform - if is_plat("windows") then - target:add("defines", "_WINDOWS") - target:add("ldflags", "-subsystem:windows", "-entry:mainCRTStartup", {force = true}) - elseif is_plat("mingw") then - target:add("ldflags", "-Wl,-subsystem:windows", {force = true}) - end + import("load")(target, {gui = true, frameworks = {"QtGui", "QtWidgets", "QtCore"}}) end) -- deploy application for android after build @@ -111,17 +101,7 @@ rule("qt.quickapp") -- after load after_load(function (target) - - -- load common flags to target - import("load")(target, {frameworks = {"QtGui", "QtQuick", "QtQml", "QtCore"}}) - - -- add -subsystem:windows for windows platform - if is_plat("windows") then - target:add("defines", "_WINDOWS") - target:add("ldflags", "-subsystem:windows", "-entry:mainCRTStartup", {force = true}) - elseif is_plat("mingw") then - target:add("ldflags", "-Wl,-subsystem:windows", {force = true}) - end + import("load")(target, {gui = true, frameworks = {"QtGui", "QtQuick", "QtQml", "QtCore"}}) end) -- deploy application for android after build |
