aboutsummaryrefslogtreecommitdiffstats
path: root/build/ymake_conf.py
diff options
context:
space:
mode:
authorarcadia-devtools <arcadia-devtools@yandex-team.ru>2022-03-23 23:33:14 +0300
committerarcadia-devtools <arcadia-devtools@yandex-team.ru>2022-03-23 23:33:14 +0300
commit9fd1ec230f6336ed5506d7e9053f957cb9cdd634 (patch)
treead92db4cc728ef0e9750622d53b727922d563920 /build/ymake_conf.py
parent8ffaaaaa865591e9f88ec0d20ddd518f4d2226c8 (diff)
downloadydb-9fd1ec230f6336ed5506d7e9053f957cb9cdd634.tar.gz
intermediate changes
ref:a9034aa2939a24aaea37c460a5a7ddbf6b1fe429
Diffstat (limited to 'build/ymake_conf.py')
-rwxr-xr-xbuild/ymake_conf.py40
1 files changed, 17 insertions, 23 deletions
diff --git a/build/ymake_conf.py b/build/ymake_conf.py
index 01fb158d67..9518987e59 100755
--- a/build/ymake_conf.py
+++ b/build/ymake_conf.py
@@ -2460,44 +2460,38 @@ class MSVCCompiler(MSVC, Compiler):
flags += [
# Allow <windows.h> to be included via <Windows.h> in case-sensitive file-systems.
'-fcase-insensitive-paths',
+
+ # At the time clang-cl identifies itself as MSVC 19.11:
+ # (actual value can be found in clang/lib/Driver/ToolChains/MSVC.cpp, the syntax would be like
+ # ```
+ # MSVT = VersionTuple(19, 11);
+ # ```
+ #
+ # We override this value to match current value of the actual MSVC being used.
+ '-fms-compatibility-version=19.21',
]
if target.is_x86:
flags.append('-m32')
- if target.is_x86_64:
+ elif target.is_x86_64:
flags.append('-m64')
c_warnings.extend((
- '-Wno-bitwise-op-parentheses',
'-Wno-format',
- '-Wno-logical-op-parentheses',
'-Wno-parentheses',
'-Wno-unknown-warning-option',
))
cxx_warnings += [
- '-Woverloaded-virtual',
'-Wimport-preprocessor-directive-pedantic',
+ '-Woverloaded-virtual',
+ '-Wno-ambiguous-reversed-operator',
+ '-Wno-defaulted-function-deleted',
+ '-Wno-deprecated-anon-enum-enum-conversion',
+ '-Wno-deprecated-enum-enum-conversion',
+ '-Wno-deprecated-enum-float-conversion',
+ '-Wno-deprecated-volatile',
'-Wno-undefined-var-template',
]
- if self.tc.version_at_least(2019):
- cxx_warnings += [
- '-Wno-deprecated-volatile',
- '-Wno-deprecated-anon-enum-enum-conversion',
- '-Wno-defaulted-function-deleted',
- '-Wno-deprecated-enum-enum-conversion',
- '-Wno-ambiguous-reversed-operator',
- '-Wno-deprecated-enum-float-conversion',
- ]
-
- # heretic: на момент коммита в нашей конфигурации указано, что тулчейн clang11-windows - аналог msvc 2019
- # https://a.yandex-team.ru/arc/trunk/arcadia/build/ya.conf.json?rev=r7910792#L2185
- # сам clang11 по дефолту представляется msvc2017 (#define _MSC_VER 1911)
- # https://a.yandex-team.ru/arc/trunk/arcadia/contrib/libs/clang11/lib/Driver/ToolChains/MSVC.cpp?rev=r7913127#L1352
- # вручную заставляем его представляться msvc2019 (#define _MSC_VER 1921)
- # значение версии взято вот отсюда:
- # https://a.yandex-team.ru/arc/trunk/arcadia/contrib/libs/llvm11/include/llvm/Support/Compiler.h?blame=true&rev=r7913127#L89
- if self.tc.version_exactly(2019):
- flags.append('-fms-compatibility-version=19.21')
if self.tc.ide_msvs:
cxx_warnings += [