aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorrobot-ya-builder <robot-ya-builder@yandex-team.com>2022-10-03 13:42:11 +0300
committerrobot-ya-builder <robot-ya-builder@yandex-team.com>2022-10-03 13:42:11 +0300
commit13d4d93b54c59bbaac9b0b8bcac6d97ef591dcc8 (patch)
treea357e613cd206c48ad1f0d4819621f03235c8d2e
parent8802f8ecdbe8bb031f90d7ecc6aeccfd373b1c84 (diff)
downloadydb-13d4d93b54c59bbaac9b0b8bcac6d97ef591dcc8.tar.gz
External build system generator release 11
Update tools: yexport
-rw-r--r--CMakeLists.txt39
-rw-r--r--cmake/global_flags.cmake2
-rw-r--r--cmake/protobuf.cmake10
-rw-r--r--cmake/yandex_common.cmake8
-rw-r--r--conanfile.txt23
5 files changed, 50 insertions, 32 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 3ecc4238c41..34b904b6817 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -30,33 +30,18 @@ include(cmake/protobuf.cmake)
include(cmake/yandex_common.cmake)
include(cmake/global_vars.cmake)
-conan_cmake_configure(
- GENERATORS cmake_find_package
- REQUIRES
- bison/3.5.3
- c-ares/1.18.1
- libiconv/1.15
- liburing/2.1
- openssl/1.1.1l
- ragel/6.10
- yasm/1.3.0
- zlib/1.2.12
- IMPORTS
- "bin, *yasm* -> ./bin"
- "bin, bison* -> ./bin/bison/bin"
- "bin, ragel* -> ./bin"
- "bin, ytasm* -> ./bin"
- "res, * -> ./bin/bison/res"
- OPTIONS
- libiconv:shared=True
-)
-conan_cmake_autodetect(settings)
-conan_cmake_install(
- PATH_OR_REFERENCE .
- BUILD missing
- REMOTE conancenter
- SETTINGS ${settings}
-)
+if (CMAKE_CROSSCOMPILING)
+ include(${CMAKE_BINARY_DIR}/conan_paths.cmake)
+else()
+ conan_cmake_autodetect(settings)
+ conan_cmake_install(
+ PATH_OR_REFERENCE ${CMAKE_SOURCE_DIR}
+ INSTALL_FOLDER ${CMAKE_BINARY_DIR}
+ BUILD missing
+ REMOTE conancenter
+ SETTINGS ${settings}
+ )
+endif()
if (CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64" AND UNIX AND NOT APPLE AND NOT ANDROID)
include(CMakeLists.linux.txt)
diff --git a/cmake/global_flags.cmake b/cmake/global_flags.cmake
index 5b8277f69ea..a303ccd22ed 100644
--- a/cmake/global_flags.cmake
+++ b/cmake/global_flags.cmake
@@ -76,6 +76,8 @@ endif()
if (ANDROID)
include_directories(SYSTEM ${CMAKE_ANDROID_NDK}/sources/cxx-stl/llvm-libc++abi/include)
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fsigned-char")
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsigned-char")
else()
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_FILE_OFFSET_BITS=64")
endif()
diff --git a/cmake/protobuf.cmake b/cmake/protobuf.cmake
index f8ebd9434f5..95a599ca378 100644
--- a/cmake/protobuf.cmake
+++ b/cmake/protobuf.cmake
@@ -37,14 +37,18 @@ function(target_proto_messages Tgt Scope)
${OutputDir}/${OutputBase}.pb.cc
${OutputDir}/${OutputBase}.pb.h
${ProtocExtraOuts}
- COMMAND protoc
+ COMMAND ${TOOLS_ROOT}/contrib/tools/protoc/bin/protoc
${COMMON_PROTOC_FLAGS}
"-I$<JOIN:$<TARGET_GENEX_EVAL:${Tgt},$<TARGET_PROPERTY:${Tgt},PROTO_ADDINCL>>,;-I>"
"$<JOIN:$<TARGET_GENEX_EVAL:${Tgt},$<TARGET_PROPERTY:${Tgt},PROTO_OUTS>>,;>"
- --plugin=protoc-gen-cpp_styleguide=${CMAKE_BINARY_DIR}/contrib/tools/protoc/plugins/cpp_styleguide/cpp_styleguide
+ --plugin=protoc-gen-cpp_styleguide=${TOOLS_ROOT}/contrib/tools/protoc/plugins/cpp_styleguide/cpp_styleguide
"$<JOIN:$<TARGET_GENEX_EVAL:${Tgt},$<TARGET_PROPERTY:${Tgt},PROTOC_OPTS>>,;>"
${protoRel}
- DEPENDS ${proto} $<TARGET_PROPERTY:${Tgt},PROTOC_DEPS> ${CMAKE_BINARY_DIR}/contrib/tools/protoc/plugins/cpp_styleguide/cpp_styleguide
+ DEPENDS
+ ${proto}
+ $<TARGET_PROPERTY:${Tgt},PROTOC_DEPS>
+ ${TOOLS_ROOT}/contrib/tools/protoc/bin/protoc
+ ${TOOLS_ROOT}/contrib/tools/protoc/plugins/cpp_styleguide/cpp_styleguide
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
COMMAND_EXPAND_LISTS
)
diff --git a/cmake/yandex_common.cmake b/cmake/yandex_common.cmake
index c422bd77661..d26aef54988 100644
--- a/cmake/yandex_common.cmake
+++ b/cmake/yandex_common.cmake
@@ -94,8 +94,12 @@ function(generate_enum_serilization Tgt Input)
get_filename_component(BaseName ${Input} NAME)
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${BaseName}_serialized.cpp
- COMMAND enum_parser ${Input} --include-path ${ENUM_SERIALIZATION_ARGS_INCLUDE_HEADERS} --output ${CMAKE_CURRENT_BINARY_DIR}/${BaseName}_serialized.cpp
- DEPENDS ${Input}
+ COMMAND
+ ${TOOLS_ROOT}/tools/enum_parser/enum_parser/bin/enum_parser
+ ${Input}
+ --include-path ${ENUM_SERIALIZATION_ARGS_INCLUDE_HEADERS}
+ --output ${CMAKE_CURRENT_BINARY_DIR}/${BaseName}_serialized.cpp
+ DEPENDS ${Input} ${TOOLS_ROOT}/tools/enum_parser/enum_parser/bin/enum_parser
)
target_sources(${Tgt} PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/${BaseName}_serialized.cpp)
endfunction()
diff --git a/conanfile.txt b/conanfile.txt
new file mode 100644
index 00000000000..4a0a112ad6b
--- /dev/null
+++ b/conanfile.txt
@@ -0,0 +1,23 @@
+[requires]
+bison/3.5.3
+c-ares/1.18.1
+libiconv/1.15
+liburing/2.1
+openssl/1.1.1l
+ragel/6.10
+yasm/1.3.0
+zlib/1.2.12
+
+[options]
+libiconv:shared=True
+
+[imports]
+bin, *yasm* -> ./bin
+bin, bison* -> ./bin/bison/bin
+bin, ragel* -> ./bin
+bin, ytasm* -> ./bin
+res, * -> ./bin/bison/res
+
+[generators]
+cmake_find_package
+cmake_paths