From dea09f243e33b43c8c8be40d8a471b4580db1de7 Mon Sep 17 00:00:00 2001 From: ruki Date: Tue, 26 Oct 2021 23:27:19 +0800 Subject: improve armlink --- xmake/modules/core/tools/armlink.lua | 33 +++++++++++++++++++++++++++++++-- 1 file changed, 31 insertions(+), 2 deletions(-) (limited to 'xmake/modules/core/tools') diff --git a/xmake/modules/core/tools/armlink.lua b/xmake/modules/core/tools/armlink.lua index 34895be6c..02c2b4800 100644 --- a/xmake/modules/core/tools/armlink.lua +++ b/xmake/modules/core/tools/armlink.lua @@ -18,8 +18,37 @@ -- @file armlink.lua -- -inherit("gcc") +-- imports +import("core.base.option") +import("core.base.global") +import("utils.progress") function init(self) - _super.init(self) end + +-- make the link flag +function nf_link(self, lib) + return "lib" .. lib .. ".a" +end + +-- make the syslink flag +function nf_syslink(self, lib) + return nf_link(self, lib) +end + +-- make the linkdir flag +function nf_linkdir(self, dir) + return {"--userlibpath", dir} +end + +-- make the link arguments list +function linkargv(self, objectfiles, targetkind, targetfile, flags) + return self:program(), table.join("-o", targetfile, objectfiles, flags) +end + +-- link the target file +function link(self, objectfiles, targetkind, targetfile, flags) + os.mkdir(path.directory(targetfile)) + os.runv(linkargv(self, objectfiles, targetkind, targetfile, flags)) +end + -- cgit v1.3.1