summaryrefslogtreecommitdiff
path: root/xmake/core/base/binutils.lua
diff options
context:
space:
mode:
authorruki <[email protected]>2025-12-15 06:59:18 +0800
committerGitHub <[email protected]>2025-12-15 06:59:18 +0800
commit777fdde191dc443aba4b987c07247446e10bb5d9 (patch)
tree0a655c0f866b956847c5960dbf9fca1d0663577a /xmake/core/base/binutils.lua
parent85f1ef3e70620b3919f4e980eb442025f74d1bdd (diff)
parent722a8f23bf29d07b5db27eeeb30e2afe8d8defc5 (diff)
Merge pull request #7127 from xmake-io/deplibs
Add deplibs in binutils
Diffstat (limited to 'xmake/core/base/binutils.lua')
-rw-r--r--xmake/core/base/binutils.lua10
1 files changed, 10 insertions, 0 deletions
diff --git a/xmake/core/base/binutils.lua b/xmake/core/base/binutils.lua
index 9ddcfcf0c..af71e8ae7 100644
--- a/xmake/core/base/binutils.lua
+++ b/xmake/core/base/binutils.lua
@@ -30,6 +30,7 @@ binutils._bin2coff = binutils._bin2coff or binutils.bin2coff
binutils._bin2macho = binutils._bin2macho or binutils.bin2macho
binutils._bin2elf = binutils._bin2elf or binutils.bin2elf
binutils._readsyms = binutils._readsyms or binutils.readsyms
+binutils._deplibs = binutils._deplibs or binutils.deplibs
binutils._extractlib = binutils._extractlib or binutils.extractlib
-- generate c/c++ code from the binary file
@@ -101,6 +102,15 @@ function binutils.readsyms(binaryfile)
end
end
+-- get dependent libraries from binary file (auto-detect format: COFF, ELF, or Mach-O)
+function binutils.deplibs(binaryfile)
+ if binutils._deplibs then
+ return binutils._deplibs(binaryfile)
+ else
+ return nil, "deplibs: C implementation not available"
+ end
+end
+
-- extract static library to directory
-- Supports AR format (.a) and MSVC lib format (.lib)
-- @param libraryfile the static library file path (.a or .lib)