summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--xmake/toolchains/clang/xmake.lua27
-rw-r--r--xmake/toolchains/gcc/xmake.lua27
2 files changed, 30 insertions, 24 deletions
diff --git a/xmake/toolchains/clang/xmake.lua b/xmake/toolchains/clang/xmake.lua
index 944a6bc22..8dbef7b47 100644
--- a/xmake/toolchains/clang/xmake.lua
+++ b/xmake/toolchains/clang/xmake.lua
@@ -44,13 +44,22 @@ toolchain("clang")
-- on load
on_load(function (toolchain)
- -- get march
- local march = is_arch("x86_64", "x64") and "-m64" or "-m32"
+ -- add march flags
+ local march
+ if is_arch("x86_64", "x64") then
+ march = "-m64"
+ elseif is_arch("i386", "x86") then
+ march = "-m32"
+ end
+ if march then
+ toolchain:add("cxflags", march)
+ toolchain:add("mxflags", march)
+ toolchain:add("asflags", march)
+ toolchain:add("ldflags", march)
+ toolchain:add("shflags", march)
+ end
- -- init flags for c/c++
- toolchain:add("cxflags", march)
- toolchain:add("ldflags", march)
- toolchain:add("shflags", march)
+ -- add includedirs and linkdirs
if not is_plat("windows") and os.isdir("/usr") then
for _, includedir in ipairs({"/usr/local/include", "/usr/include"}) do
if os.isdir(includedir) then
@@ -63,10 +72,4 @@ toolchain("clang")
end
end
end
-
- -- init flags for objc/c++ (with ldflags and shflags)
- toolchain:add("mxflags", march)
-
- -- init flags for asm
- toolchain:add("asflags", march)
end)
diff --git a/xmake/toolchains/gcc/xmake.lua b/xmake/toolchains/gcc/xmake.lua
index 17270aedb..31276dd5b 100644
--- a/xmake/toolchains/gcc/xmake.lua
+++ b/xmake/toolchains/gcc/xmake.lua
@@ -44,13 +44,22 @@ toolchain("gcc")
-- on load
on_load(function (toolchain)
- -- get march
- local march = is_arch("x86_64", "x64") and "-m64" or "-m32"
+ -- add march flags
+ local march
+ if is_arch("x86_64", "x64") then
+ march = "-m64"
+ elseif is_arch("i386", "x86") then
+ march = "-m32"
+ end
+ if march then
+ toolchain:add("cxflags", march)
+ toolchain:add("mxflags", march)
+ toolchain:add("asflags", march)
+ toolchain:add("ldflags", march)
+ toolchain:add("shflags", march)
+ end
- -- init flags for c/c++
- toolchain:add("cxflags", march)
- toolchain:add("ldflags", march)
- toolchain:add("shflags", march)
+ -- add includedirs and linkdirs
if not is_plat("windows") and os.isdir("/usr") then
for _, includedir in ipairs({"/usr/local/include", "/usr/include"}) do
if os.isdir(includedir) then
@@ -63,10 +72,4 @@ toolchain("gcc")
end
end
end
-
- -- init flags for objc/c++ (with ldflags and shflags)
- toolchain:add("mxflags", march)
-
- -- init flags for asm
- toolchain:add("asflags", march)
end)