summaryrefslogtreecommitdiff
path: root/xmake/rules/mode/xmake.lua
diff options
context:
space:
mode:
authorruki <[email protected]>2019-05-09 23:17:58 +0800
committerruki <[email protected]>2019-05-09 13:47:51 +0800
commit916c855f1703b84e323b2531a61c7d60fefbb61d (patch)
tree645a4c55caecbffceb823e6ba5032fc020bdf1c4 /xmake/rules/mode/xmake.lua
parent1911e7fbb69ce21d803d30d61030e2c4d765fb64 (diff)
improve mode rules
Diffstat (limited to 'xmake/rules/mode/xmake.lua')
-rw-r--r--xmake/rules/mode/xmake.lua20
1 files changed, 12 insertions, 8 deletions
diff --git a/xmake/rules/mode/xmake.lua b/xmake/rules/mode/xmake.lua
index 787cb667c..99813ade8 100644
--- a/xmake/rules/mode/xmake.lua
+++ b/xmake/rules/mode/xmake.lua
@@ -20,28 +20,32 @@
-- define rule: debug mode
rule("mode.debug")
- on_load(function (target)
+ after_load(function (target)
-- is debug mode now? xmake f -m debug
if is_mode("debug") then
-- enable the debug symbols
- target:set("symbols", "debug")
+ if not target:get("symbols") then
+ target:set("symbols", "debug")
+ end
-- disable optimization
- target:set("optimize", "none")
+ if not target:get("optimize") then
+ target:set("optimize", "none")
+ end
end
end)
-- define rule: release mode
rule("mode.release")
- on_load(function (target)
+ after_load(function (target)
-- is release mode now? xmake f -m release
if is_mode("release") then
-- set the symbols visibility: hidden
- if not target:get("symbols") then
+ if not target:get("symbols") and target:targetkind() ~= "shared" then
target:set("symbols", "hidden")
end
@@ -59,7 +63,7 @@ rule("mode.release")
-- define rule: profile mode
rule("mode.profile")
- on_load(function (target)
+ after_load(function (target)
-- is profile mode now? xmake f -m profile
if is_mode("profile") then
@@ -83,7 +87,7 @@ rule("mode.profile")
-- define rule: check mode
rule("mode.check")
- on_load(function (target)
+ after_load(function (target)
-- is check mode now? xmake f -m check
if is_mode("check") then
@@ -109,7 +113,7 @@ rule("mode.check")
-- define rule: coverage mode
rule("mode.coverage")
- on_load(function (target)
+ after_load(function (target)
-- is coverage mode now? xmake f -m coverage
if is_mode("coverage") then