diff options
author | mikhnenko <mikhnenko@yandex-team.com> | 2025-02-13 10:04:41 +0300 |
---|---|---|
committer | mikhnenko <mikhnenko@yandex-team.com> | 2025-02-13 10:26:08 +0300 |
commit | b851dfa31f2b199b1bf0ea6b93c06a4b44ff8ee0 (patch) | |
tree | a7f9e75923fb2a4a61c153298301662878783fbc | |
parent | af2655364d8f70831f427296f46c41a1e71341c2 (diff) | |
download | ydb-b851dfa31f2b199b1bf0ea6b93c06a4b44ff8ee0.tar.gz |
Use llvm_tools instead of binutils
commit_hash:98d2b568a63569d1859bb67f533ce37ea1b77eae
-rw-r--r-- | build/ya.conf.json | 2 | ||||
-rw-r--r-- | build/ymake.core.conf | 27 | ||||
-rwxr-xr-x | build/ymake_conf.py | 3 |
3 files changed, 21 insertions, 11 deletions
diff --git a/build/ya.conf.json b/build/ya.conf.json index 270a8d48cc..9e0d37efcb 100644 --- a/build/ya.conf.json +++ b/build/ya.conf.json @@ -552,6 +552,7 @@ "cxx_compiler": "$(CLANG)/bin/clang++", "llvm-symbolizer": "$(CLANG)/bin/llvm-symbolizer", "match_root": "CLANG", + "nm": "$(CLANG)/bin/llvm-nm", "objcopy": "$(CLANG)/bin/llvm-objcopy", "profiles": "$(XCODE_TOOLS_ROOT-sbr:799017771)/Xcode/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/CoreSimulator/Profiles", "simctl": "$(XCODE_TOOLS_ROOT-sbr:799017771)/Xcode/SystemRoot/PrivateFrameworks/CoreSimulator.framework/Resources/bin/simctl", @@ -1229,6 +1230,7 @@ "cxx_compiler": "$(CLANG)/bin/clang++", "llvm-symbolizer": "$(CLANG)/bin/llvm-symbolizer", "match_root": "CLANG", + "nm": "$(CLANG)/bin/llvm-nm", "objcopy": "$(CLANG)/bin/llvm-objcopy", "profiles": "$(XCODE_TOOLS_ROOT-sbr:799017771)/Xcode/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/CoreSimulator/Profiles", "simctl": "$(XCODE_TOOLS_ROOT-sbr:799017771)/Xcode/SystemRoot/PrivateFrameworks/CoreSimulator.framework/Resources/bin/simctl", diff --git a/build/ymake.core.conf b/build/ymake.core.conf index 34a2f5dbb2..3f5f5b3a44 100644 --- a/build/ymake.core.conf +++ b/build/ymake.core.conf @@ -824,8 +824,9 @@ module _BASE_UNIT: _BARE_UNIT { DEFAULT(SWIG_LANG python) DEFAULT(GP_FLAGS -CtTLANSI-C -Dk* -c) - when ($NEED_BINUTILS_PEERDIR && $BINUTILS_USED && $NEED_PLATFORM_PEERDIRS == "yes") { - PEERDIR+=build/platform/binutils + when ($NEED_LLVM_TOOLS_PEERDIR && $NEED_PLATFORM_PEERDIRS == "yes") { + PEERDIR+=build/platform/clang + LLVM_TOOLS_ROOT=$CLANG18_RESOURCE_GLOBAL } when ($TIDY_ENABLED == "yes") { @@ -2536,20 +2537,25 @@ when ($BT_MINSIZEREL == "yes" || $LINKER_ICF == "yes") { OBJCOPY_TOOL=$OBJCOPY_TOOL_VENDOR OBJDUMP_TOOL=$OBJDUMP_TOOL_VENDOR STRIP_TOOL=$STRIP_TOOL_VENDOR -NEED_BINUTILS_PEERDIR= -BINUTILS_USED= +NM_TOOL=$NM_TOOL_VENDOR +NEED_LLVM_TOOLS_PEERDIR= +LLVM_TOOLS_ROOT= when (!$OBJCOPY_TOOL_VENDOR) { - OBJCOPY_TOOL=$BINUTILS_ROOT_RESOURCE_GLOBAL/bin/objcopy - NEED_BINUTILS_PEERDIR=yes + OBJCOPY_TOOL=${LLVM_TOOLS_ROOT}/bin/llvm-objcopy + NEED_LLVM_TOOLS_PEERDIR=yes } when (!$OBJDUMP_TOOL_VENDOR) { - OBJDUMP_TOOL=$BINUTILS_ROOT_RESOURCE_GLOBAL/bin/objdump - NEED_BINUTILS_PEERDIR=yes + OBJDUMP_TOOL=${LLVM_TOOLS_ROOT}/bin/llvm-objdump + NEED_LLVM_TOOLS_PEERDIR=yes } when (!$STRIP_TOOL_VENDOR) { - STRIP_TOOL=$BINUTILS_ROOT_RESOURCE_GLOBAL/bin/strip - NEED_BINUTILS_PEERDIR=yes + STRIP_TOOL=${LLVM_TOOLS_ROOT}/bin/llvm-strip + NEED_LLVM_TOOLS_PEERDIR=yes +} +when (!$NM_TOOL_VENDOR) { + NM_TOOL=${LLVM_TOOLS_ROOT}/bin/llvm-nm + NEED_LLVM_TOOLS_PEERDIR=yes } SPLIT_DWARF_VALUE=no @@ -2586,7 +2592,6 @@ when ($SPLIT_DWARF_VALUE == "yes" && $NO_SPLIT_DWARF != "yes" && $NO_DEBUGINFO ! $OBJCOPY_TOOL --only-keep-debug $TARGET $SPLIT_DWARF_OUTPUT && \ $STRIP_TOOL --strip-debug $TARGET && \ $OBJCOPY_TOOL --remove-section=.gnu_debuglink --add-gnu-debuglink $SPLIT_DWARF_OUTPUT $TARGET - BINUTILS_USED=yes } ### @usage: EXTRALIBS_STATIC(Libs...) diff --git a/build/ymake_conf.py b/build/ymake_conf.py index 83a8fc726e..1c5dbfa7f9 100755 --- a/build/ymake_conf.py +++ b/build/ymake_conf.py @@ -1067,6 +1067,7 @@ class GnuToolchainOptions(ToolchainOptions): self.objcopy = self.params.get('objcopy') self.objdump = self.params.get('objdump') self.isystem = self.params.get('isystem') + self.nm = self.params.get('nm') self.dwarf_tool = self.target.find_in_dict(self.params.get('dwarf_tool')) @@ -1665,6 +1666,7 @@ class LD(Linker): self.strip = self.tc.strip self.objcopy = self.tc.objcopy self.objdump = self.tc.objdump + self.nm = self.tc.nm self.musl = Setting('MUSL', convert=to_bool) @@ -1728,6 +1730,7 @@ class LD(Linker): emit('STRIP_TOOL_VENDOR', self.strip) emit('OBJCOPY_TOOL_VENDOR', self.objcopy) emit('OBJDUMP_TOOL_VENDOR', self.objdump) + emit('NM_TOOL_VENDOR', self.nm) emit('_LD_FLAGS', self.ld_flags) emit('LD_SDK_VERSION', self.ld_sdk) |