diff options
author | pg <pg@yandex-team.com> | 2023-08-30 04:40:44 +0300 |
---|---|---|
committer | pg <pg@yandex-team.com> | 2023-08-30 05:04:37 +0300 |
commit | d41c3a928314a3cbea37acf3cc44efcafe2fd5dc (patch) | |
tree | d0975249eec150af8dc4ed0c9dc941358b8a8f88 | |
parent | 635636bcdbea259fd424ea6e3870b003be140923 (diff) | |
download | ydb-d41c3a928314a3cbea37acf3cc44efcafe2fd5dc.tar.gz |
-rw-r--r-- | build/conf/compilers/gnu_compiler.conf | 2 | ||||
-rw-r--r-- | build/conf/go.conf | 10 | ||||
-rw-r--r-- | build/scripts/link_exe.py | 6 | ||||
-rw-r--r-- | build/ymake.core.conf | 10 | ||||
-rw-r--r-- | library/cpp/sanitizer/include/ya.make | 4 |
5 files changed, 26 insertions, 6 deletions
diff --git a/build/conf/compilers/gnu_compiler.conf b/build/conf/compilers/gnu_compiler.conf index d88d1769b8d..57004dec9ba 100644 --- a/build/conf/compilers/gnu_compiler.conf +++ b/build/conf/compilers/gnu_compiler.conf @@ -50,6 +50,8 @@ elsewhen ($PIE == "yes") { when ($CLANG16 == "yes") { CFLAGS+=-Wno-array-parameter -Wno-deprecate-lax-vec-conv-all -Wno-unqualified-std-cast-call -Wno-unused-but-set-parameter -Wno-unused-command-line-argument -Wno-unused-but-set-variable -Wno-implicit-function-declaration -Wno-int-conversion -Wno-incompatible-function-pointer-types -Wno-implicit-int -Wno-address-of-packed-member + # naughty, naughty + LDFLAGS+=-L/CLANG16_YES_PLEASE } when ($ARCH_XTENSA == "yes") { diff --git a/build/conf/go.conf b/build/conf/go.conf index 664ebd95cc7..aa9d01b59cb 100644 --- a/build/conf/go.conf +++ b/build/conf/go.conf @@ -867,8 +867,14 @@ module GO_PROGRAM: _GO_BASE_UNIT { } when ($NEED_PROFILE_RUNTIME == "yes") { - LDFLAGS+=-resource-dir=contrib/libs/clang-rt - PEERDIR+=contrib/libs/clang14-rt/lib/profile + when ($CLANG16 == "yes") { + LDFLAGS+=-resource-dir=contrib/libs/clang-rt + PEERDIR+=contrib/libs/clang16-rt/lib/profile + } + otherwise { + LDFLAGS+=-resource-dir=contrib/libs/clang-rt + PEERDIR+=contrib/libs/clang14-rt/lib/profile + } } } diff --git a/build/scripts/link_exe.py b/build/scripts/link_exe.py index 72d86082694..6d1839e575e 100644 --- a/build/scripts/link_exe.py +++ b/build/scripts/link_exe.py @@ -56,8 +56,10 @@ def fix_sanitize_flag(cmd): if flag.startswith('--target') and 'linux' not in flag.lower(): # use toolchained sanitize libraries return cmd - - CLANG_RT = 'contrib/libs/clang14-rt/lib/' + if 'CLANG16_YES_PLEASE' in str(cmd): + CLANG_RT = 'contrib/libs/clang16-rt/lib/' + else: + CLANG_RT = 'contrib/libs/clang14-rt/lib/' sanitize_flags = { '-fsanitize=address': CLANG_RT + 'asan', '-fsanitize=memory': CLANG_RT + 'msan', diff --git a/build/ymake.core.conf b/build/ymake.core.conf index 8396cb233ee..5a0547da723 100644 --- a/build/ymake.core.conf +++ b/build/ymake.core.conf @@ -964,8 +964,14 @@ module _LINK_UNIT: _BASE_UNIT { } when ($NEED_PROFILE_RUNTIME == "yes") { - LDFLAGS+=-resource-dir=contrib/libs/clang-rt - PEERDIR+=contrib/libs/clang14-rt/lib/profile + when ($CLANG16 == "yes") { + LDFLAGS+=-resource-dir=contrib/libs/clang-rt + PEERDIR+=contrib/libs/clang16-rt/lib/profile + } + otherwise { + LDFLAGS+=-resource-dir=contrib/libs/clang-rt + PEERDIR+=contrib/libs/clang14-rt/lib/profile + } } when ($USE_LIBCXXRT == "yes") { diff --git a/library/cpp/sanitizer/include/ya.make b/library/cpp/sanitizer/include/ya.make index 4c7261d76a2..7bc70e531db 100644 --- a/library/cpp/sanitizer/include/ya.make +++ b/library/cpp/sanitizer/include/ya.make @@ -4,7 +4,11 @@ NO_SANITIZE() NO_RUNTIME() +IF (CLANG16) +ADDINCL(GLOBAL contrib/libs/clang16-rt/include) +ELSE() ADDINCL(GLOBAL contrib/libs/clang14-rt/include) +ENDIF() END() |