summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorruki <[email protected]>2020-05-25 23:57:31 +0800
committerruki <[email protected]>2020-05-25 17:45:07 +0800
commit154dce70f1019d51040fea6c0d4f8314bb68cb79 (patch)
treefbcc7fc4df388ce979d5941e5982f481e3126c64
parent187f0a4648d0ffadcb8d80b3481b570af9b996b9 (diff)
fix gcc and clang toolchains for termux
-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)