diff options
author | thegeorg <thegeorg@yandex-team.ru> | 2022-05-16 16:18:40 +0300 |
---|---|---|
committer | thegeorg <thegeorg@yandex-team.ru> | 2022-05-16 16:18:40 +0300 |
commit | 5e43bd290eea0c0799394c484e7c77ccd452eba8 (patch) | |
tree | df8484d8a419ee4c3a438eea0ffad9a725bd869e /build/ymake.core.conf | |
parent | ca04e360f54a3601b44d9227ad5898a14bc69b73 (diff) | |
download | ydb-5e43bd290eea0c0799394c484e7c77ccd452eba8.tar.gz |
Use lld linker on Linux unless USE_LINKER_GOLD() is explicitly specified
* Drop heuristical switching to gold when compiling with gcc and musl
* Drop `USE_LINKER_BFD()` and `USE_LINKER_LLD()` macros.
* User can still request to `USE_LINKER_GOLD()`, as it is capable to workaround _relocation out of range_ problem in certain cases.
ref:3c5181f8be6eb35067f5cfe14aad3e7d2a1748eb
Diffstat (limited to 'build/ymake.core.conf')
-rw-r--r-- | build/ymake.core.conf | 16 |
1 files changed, 3 insertions, 13 deletions
diff --git a/build/ymake.core.conf b/build/ymake.core.conf index fd28f422bf..de54cf09ed 100644 --- a/build/ymake.core.conf +++ b/build/ymake.core.conf @@ -1435,10 +1435,10 @@ module _BASE_UNIT: _BARE_UNIT { } _LINKER_ID= -# GCC does not support -fuse-ld with an executable path, only -# -fuse-ld=bfd or -fuse-ld=gold (or -fuse-ld=lld in later versions). +# GCC does not support -fuse-ld with an executable path, +# only -fuse-ld=gold or -fuse-ld=lld. when ($_LINKER_ID != "" && $_DEFAULT_LINKER_ID != "" && $CLANG == "yes" && $NEED_PLATFORM_PEERDIRS == "yes") { - when ($_LINKER_ID in [ "bfd", "gold", "lld" ]) { + when ($_LINKER_ID in [ "gold", "lld" ]) { PEERDIR+=build/platform/${_LINKER_ID} } } @@ -1451,21 +1451,11 @@ macro _USE_LINKER() { _USE_LINKER_IMPL($_DEFAULT_LINKER_ID) } -### @usage: USE_LINKER_BFD() -### Use bfd linker for a program. This doesn't work in libraries -macro USE_LINKER_BFD() { - _USE_LINKER_IMPL(bfd) -} ### @usage: USE_LINKER_GOLD() ### Use gold linker for a program. This doesn't work in libraries macro USE_LINKER_GOLD() { _USE_LINKER_IMPL(gold) } -### @usage: USE_LINKER_LLD() -### Use lld linker for a program. This doesn't work in libraries -macro USE_LINKER_LLD() { - _USE_LINKER_IMPL(lld) -} COMMON_LINK_SETTINGS= LINK_ADDITIONAL_SECTIONS= |