diff --git a/.gitignore b/.gitignore index 4277c3e01dd..57ab92c5d7c 100644 --- a/.gitignore +++ b/.gitignore @@ -38,6 +38,7 @@ __pycache__/ # MacOS specific .DS_Store +*.dSYM # clangd cache /.cache diff --git a/README.md b/README.md index 1a500e2ac14..b7653d36fe4 100644 --- a/README.md +++ b/README.md @@ -3,8 +3,7 @@ ## Prerequisites - cmake 3.22+ -- clang-14 -- lld-14 +- llvm 16+ - git 2.20+ - ninja 1.10+ - ragel @@ -18,7 +17,10 @@ ## Install dependencies ```bash -sudo apt-get -y install git cmake ninja-build clang-14 lld-14 libidn11-dev llvm-14 ragel yasm +sudo apt-get -y install git cmake ninja-build libidn11-dev ragel yasm +wget https://apt.llvm.org/llvm.sh +chmod u+x llvm.sh +sudo ./llvm.sh 16 ``` - libiconv: https://www.gnu.org/software/libiconv/ diff --git a/clang.toolchain b/clang.toolchain index 661ccb7b001..6177c6c6733 100644 --- a/clang.toolchain +++ b/clang.toolchain @@ -1,5 +1,5 @@ -set(CMAKE_C_COMPILER clang-14) -set(CMAKE_CXX_COMPILER clang++-14) +set(CMAKE_C_COMPILER clang-16) +set(CMAKE_CXX_COMPILER clang++-16) set(CMAKE_EXE_LINKER_FLAGS "-fuse-ld=lld -rdynamic") set(CMAKE_SHARED_LINKER_FLAGS "-fuse-ld=lld") set(CMAKE_C_STANDARD_LIBRARIES "-lc -lm") @@ -12,5 +12,5 @@ endif() set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -O3 -UNDEBUG" CACHE STRING "C++ compiler flags") set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O3 -UNDEBUG" CACHE STRING "C compiler flags") -set(ENV{CC} clang-14) -set(ENV{CXX} clang++-14) +set(ENV{CC} clang-16) +set(ENV{CXX} clang++-16) diff --git a/ydb/public/lib/yson_value/CMakeLists.txt b/ydb/public/lib/yson_value/CMakeLists.txt index 974565165ba..ebad93c7cf5 100644 --- a/ydb/public/lib/yson_value/CMakeLists.txt +++ b/ydb/public/lib/yson_value/CMakeLists.txt @@ -8,9 +8,11 @@ target_link_libraries(public-lib-yson_value PUBLIC cpp-client-ydb_value ydb-library-uuid ) -target_link_libraries(public-lib-yson_value PUBLIC - contrib-libs-linux-headers -) +if (CMAKE_SYSTEM_NAME STREQUAL "Linux" AND NOT HAVE_CUDA) + target_link_libraries(public-lib-json_value PUBLIC + contrib-libs-linux-headers + ) +endif() target_sources(public-lib-yson_value PRIVATE ${CMAKE_SOURCE_DIR}/ydb/public/lib/yson_value/ydb_yson_value.cpp