From 49febf7add0f54c3edd06f790ffa5cdab453731c Mon Sep 17 00:00:00 2001 From: ruki Date: Mon, 11 Jan 2021 07:44:48 +0800 Subject: improve nasm flags --- xmake/toolchains/nasm/xmake.lua | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/xmake/toolchains/nasm/xmake.lua b/xmake/toolchains/nasm/xmake.lua index 584b2506e..a2ed8c7ff 100644 --- a/xmake/toolchains/nasm/xmake.lua +++ b/xmake/toolchains/nasm/xmake.lua @@ -30,11 +30,25 @@ toolchain("nasm") -- on load on_load(function (toolchain) + local asflags = "" -- maybe 16bits if no flags if toolchain:is_plat("macosx") then - toolchain:add("nasm.asflags", "-f", toolchain:is_arch("x86_64") and "macho64" or "macho32") + if toolchain:is_arch("x86_64") then + asflags = "-f macho64" + elseif toolchain:is_arch("i386") then + asflags = "-f macho32" + end elseif toolchain:is_plat("linux", "bsd") then - toolchain:add("nasm.asflags", "-f", toolchain:is_arch("x86_64") and "elf64" or "elf32") + if toolchain:is_arch("x86_64") then + asflags = "-f elf64" + elseif toolchain:is_arch("i386") then + asflags = "-f elf32" + end elseif toolchain:is_plat("windows", "mingw", "msys", "cygwin") then - toolchain:add("nasm.asflags", "-f", toolchain:is_arch("x64") and "win64" or "win32") + if toolchain:is_arch("x64", "x86_64") then + asflags = "-f win64" + elseif toolchain:is_arch("x86", "i386") then + asflags = "-f win32" + end end + toolchain:add("nasm.asflags", asflags) end) -- cgit v1.3.1