summaryrefslogtreecommitdiff
path: root/xmake/core/base/binutils.lua
diff options
context:
space:
mode:
authorruki <[email protected]>2025-12-12 23:12:57 +0800
committerruki <[email protected]>2025-12-12 23:12:57 +0800
commit97c17dc338a66bbbae36eef59c4d4ca537bff8ec (patch)
tree3cb7a0c517871c44265d709bb91102cac520b73c /xmake/core/base/binutils.lua
parentb7e9857eff9a4425237e8eeb5c666fb4570eec76 (diff)
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)