summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--xmake/modules/core/tools/iccarm.lua21
1 files changed, 21 insertions, 0 deletions
diff --git a/xmake/modules/core/tools/iccarm.lua b/xmake/modules/core/tools/iccarm.lua
index b7debea92..2643c8721 100644
--- a/xmake/modules/core/tools/iccarm.lua
+++ b/xmake/modules/core/tools/iccarm.lua
@@ -19,3 +19,24 @@
--
inherit("gcc")
+
+-- make the symbol flag
+function nf_symbol(self, level)
+ local kind = self:kind()
+ if language.sourcekinds()[kind] then
+ local maps = _g.symbol_maps
+ if not maps then
+ maps = {
+ debug = "-g"
+ }
+ _g.symbol_maps = maps
+ end
+ return maps[level .. '_' .. kind] or maps[level]
+ elseif kind == "ld" or kind == "sh" then
+ local plat = self:plat()
+ if level == "debug" and is_host("windows") then
+ return "-g"
+ end
+ end
+end
+