mirror of
https://github.com/Xahau/xahaud.git
synced 2025-11-04 10:45:50 +00:00
365 lines
15 KiB
CMake
365 lines
15 KiB
CMake
|
|
# currently linking to unsecure versions...if we switch, we'll
|
|
# need to add ssl as a link dependency to the grpc targets
|
|
option (use_secure_grpc "use TLS version of grpc libs." OFF)
|
|
if (use_secure_grpc)
|
|
set (grpc_suffix "")
|
|
else ()
|
|
set (grpc_suffix "_unsecure")
|
|
endif ()
|
|
|
|
find_package (gRPC 1.23 CONFIG QUIET)
|
|
if (TARGET gRPC::gpr AND NOT local_grpc)
|
|
get_target_property (_grpc_l gRPC::gpr IMPORTED_LOCATION_DEBUG)
|
|
if (NOT _grpc_l)
|
|
get_target_property (_grpc_l gRPC::gpr IMPORTED_LOCATION_RELEASE)
|
|
endif ()
|
|
if (NOT _grpc_l)
|
|
get_target_property (_grpc_l gRPC::gpr IMPORTED_LOCATION)
|
|
endif ()
|
|
message (STATUS "Found cmake config for gRPC. Using ${_grpc_l}.")
|
|
else ()
|
|
find_package (PkgConfig QUIET)
|
|
if (PKG_CONFIG_FOUND)
|
|
pkg_check_modules (grpc QUIET "grpc${grpc_suffix}>=1.25" "grpc++${grpc_suffix}" gpr)
|
|
endif ()
|
|
|
|
if (grpc_FOUND)
|
|
message (STATUS "Found gRPC using pkg-config. Using ${grpc_gpr_PREFIX}.")
|
|
endif ()
|
|
|
|
add_executable (gRPC::grpc_cpp_plugin IMPORTED)
|
|
exclude_if_included (gRPC::grpc_cpp_plugin)
|
|
|
|
if (grpc_FOUND AND NOT local_grpc)
|
|
# use installed grpc (via pkg-config)
|
|
macro (add_imported_grpc libname_)
|
|
if (static)
|
|
set (_search "${CMAKE_STATIC_LIBRARY_PREFIX}${libname_}${CMAKE_STATIC_LIBRARY_SUFFIX}")
|
|
else ()
|
|
set (_search "${CMAKE_SHARED_LIBRARY_PREFIX}${libname_}${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
endif()
|
|
find_library(_found_${libname_}
|
|
NAMES ${_search}
|
|
HINTS ${grpc_LIBRARY_DIRS})
|
|
if (_found_${libname_})
|
|
message (STATUS "importing ${libname_} as ${_found_${libname_}}")
|
|
else ()
|
|
message (FATAL_ERROR "using pkg-config for grpc, can't find ${_search}")
|
|
endif ()
|
|
add_library ("gRPC::${libname_}" STATIC IMPORTED GLOBAL)
|
|
set_target_properties ("gRPC::${libname_}" PROPERTIES IMPORTED_LOCATION ${_found_${libname_}})
|
|
if (grpc_INCLUDE_DIRS)
|
|
set_target_properties ("gRPC::${libname_}" PROPERTIES INTERFACE_INCLUDE_DIRECTORIES ${grpc_INCLUDE_DIRS})
|
|
endif ()
|
|
target_link_libraries (ripple_libs INTERFACE "gRPC::${libname_}")
|
|
exclude_if_included ("gRPC::${libname_}")
|
|
endmacro ()
|
|
|
|
set_target_properties (gRPC::grpc_cpp_plugin PROPERTIES
|
|
IMPORTED_LOCATION "${grpc_gpr_PREFIX}/bin/grpc_cpp_plugin${CMAKE_EXECUTABLE_SUFFIX}")
|
|
|
|
pkg_check_modules (cares QUIET libcares)
|
|
if (cares_FOUND)
|
|
if (static)
|
|
set (_search "${CMAKE_STATIC_LIBRARY_PREFIX}cares${CMAKE_STATIC_LIBRARY_SUFFIX}")
|
|
set (_prefix cares_STATIC)
|
|
set (_static STATIC)
|
|
else ()
|
|
set (_search "${CMAKE_SHARED_LIBRARY_PREFIX}cares${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
set (_prefix cares)
|
|
set (_static)
|
|
endif()
|
|
find_library(_location NAMES ${_search} HINTS ${cares_LIBRARY_DIRS})
|
|
if (NOT _location)
|
|
message (FATAL_ERROR "using pkg-config for grpc, can't find c-ares")
|
|
endif ()
|
|
add_library (c-ares::cares ${_static} IMPORTED GLOBAL)
|
|
set_target_properties (c-ares::cares PROPERTIES
|
|
IMPORTED_LOCATION ${_location}
|
|
INTERFACE_INCLUDE_DIRECTORIES "${${_prefix}_INCLUDE_DIRS}"
|
|
INTERFACE_LINK_OPTIONS "${${_prefix}_LDFLAGS}"
|
|
)
|
|
exclude_if_included (c-ares::cares)
|
|
else ()
|
|
message (FATAL_ERROR "using pkg-config for grpc, can't find c-ares")
|
|
endif ()
|
|
else ()
|
|
#[===========================[
|
|
c-ares (grpc requires)
|
|
#]===========================]
|
|
ExternalProject_Add (c-ares_src
|
|
PREFIX ${nih_cache_path}
|
|
GIT_REPOSITORY https://github.com/c-ares/c-ares.git
|
|
GIT_TAG cares-1_15_0
|
|
CMAKE_ARGS
|
|
-DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
|
|
$<$<BOOL:${CMAKE_VERBOSE_MAKEFILE}>:-DCMAKE_VERBOSE_MAKEFILE=ON>
|
|
-DCMAKE_DEBUG_POSTFIX=_d
|
|
$<$<NOT:$<BOOL:${is_multiconfig}>>:-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}>
|
|
-DCMAKE_INSTALL_PREFIX=<BINARY_DIR>/_installed_
|
|
-DCARES_SHARED=OFF
|
|
-DCARES_STATIC=ON
|
|
-DCARES_STATIC_PIC=ON
|
|
-DCARES_INSTALL=ON
|
|
-DCARES_MSVC_STATIC_RUNTIME=ON
|
|
$<$<BOOL:${MSVC}>:
|
|
"-DCMAKE_C_FLAGS=-GR -Gd -fp:precise -FS -MP"
|
|
>
|
|
LOG_BUILD ON
|
|
LOG_CONFIGURE ON
|
|
BUILD_COMMAND
|
|
${CMAKE_COMMAND}
|
|
--build .
|
|
--config $<CONFIG>
|
|
--parallel ${ep_procs}
|
|
TEST_COMMAND ""
|
|
INSTALL_COMMAND
|
|
${CMAKE_COMMAND} -E env --unset=DESTDIR ${CMAKE_COMMAND} --build . --config $<CONFIG> --target install
|
|
BUILD_BYPRODUCTS
|
|
<BINARY_DIR>/_installed_/lib/${ep_lib_prefix}cares${ep_lib_suffix}
|
|
<BINARY_DIR>/_installed_/lib/${ep_lib_prefix}cares_d${ep_lib_suffix}
|
|
)
|
|
exclude_if_included (c-ares_src)
|
|
ExternalProject_Get_Property (c-ares_src BINARY_DIR)
|
|
set (cares_binary_dir "${BINARY_DIR}")
|
|
|
|
add_library (c-ares::cares STATIC IMPORTED GLOBAL)
|
|
file (MAKE_DIRECTORY ${BINARY_DIR}/_installed_/include)
|
|
set_target_properties (c-ares::cares PROPERTIES
|
|
IMPORTED_LOCATION_DEBUG
|
|
${BINARY_DIR}/_installed_/lib/${ep_lib_prefix}cares_d${ep_lib_suffix}
|
|
IMPORTED_LOCATION_RELEASE
|
|
${BINARY_DIR}/_installed_/lib/${ep_lib_prefix}cares${ep_lib_suffix}
|
|
INTERFACE_INCLUDE_DIRECTORIES
|
|
${BINARY_DIR}/_installed_/include)
|
|
add_dependencies (c-ares::cares c-ares_src)
|
|
exclude_if_included (c-ares::cares)
|
|
|
|
if (NOT has_zlib)
|
|
#[===========================[
|
|
zlib (grpc requires)
|
|
#]===========================]
|
|
if (MSVC)
|
|
set (zlib_debug_postfix "d") # zlib cmake sets this internally for MSVC, so we really don't have a choice
|
|
set (zlib_base "zlibstatic")
|
|
else ()
|
|
set (zlib_debug_postfix "_d")
|
|
set (zlib_base "z")
|
|
endif ()
|
|
ExternalProject_Add (zlib_src
|
|
PREFIX ${nih_cache_path}
|
|
GIT_REPOSITORY https://github.com/madler/zlib.git
|
|
GIT_TAG v1.2.11
|
|
CMAKE_ARGS
|
|
-DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
|
|
$<$<BOOL:${CMAKE_VERBOSE_MAKEFILE}>:-DCMAKE_VERBOSE_MAKEFILE=ON>
|
|
-DCMAKE_DEBUG_POSTFIX=${zlib_debug_postfix}
|
|
$<$<NOT:$<BOOL:${is_multiconfig}>>:-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}>
|
|
-DCMAKE_INSTALL_PREFIX=<BINARY_DIR>/_installed_
|
|
-DBUILD_SHARED_LIBS=OFF
|
|
$<$<BOOL:${MSVC}>:
|
|
"-DCMAKE_C_FLAGS=-GR -Gd -fp:precise -FS -MP"
|
|
"-DCMAKE_C_FLAGS_DEBUG=-MTd"
|
|
"-DCMAKE_C_FLAGS_RELEASE=-MT"
|
|
>
|
|
LOG_BUILD ON
|
|
LOG_CONFIGURE ON
|
|
BUILD_COMMAND
|
|
${CMAKE_COMMAND}
|
|
--build .
|
|
--config $<CONFIG>
|
|
--parallel ${ep_procs}
|
|
TEST_COMMAND ""
|
|
INSTALL_COMMAND
|
|
${CMAKE_COMMAND} -E env --unset=DESTDIR ${CMAKE_COMMAND} --build . --config $<CONFIG> --target install
|
|
BUILD_BYPRODUCTS
|
|
<BINARY_DIR>/_installed_/lib/${ep_lib_prefix}${zlib_base}${ep_lib_suffix}
|
|
<BINARY_DIR>/_installed_/lib/${ep_lib_prefix}${zlib_base}${zlib_debug_postfix}${ep_lib_suffix}
|
|
)
|
|
exclude_if_included (zlib_src)
|
|
ExternalProject_Get_Property (zlib_src BINARY_DIR)
|
|
set (zlib_binary_dir "${BINARY_DIR}")
|
|
|
|
add_library (ZLIB::ZLIB STATIC IMPORTED GLOBAL)
|
|
file (MAKE_DIRECTORY ${BINARY_DIR}/_installed_/include)
|
|
set_target_properties (ZLIB::ZLIB PROPERTIES
|
|
IMPORTED_LOCATION_DEBUG
|
|
${BINARY_DIR}/_installed_/lib/${ep_lib_prefix}${zlib_base}${zlib_debug_postfix}${ep_lib_suffix}
|
|
IMPORTED_LOCATION_RELEASE
|
|
${BINARY_DIR}/_installed_/lib/${ep_lib_prefix}${zlib_base}${ep_lib_suffix}
|
|
INTERFACE_INCLUDE_DIRECTORIES
|
|
${BINARY_DIR}/_installed_/include)
|
|
add_dependencies (ZLIB::ZLIB zlib_src)
|
|
exclude_if_included (ZLIB::ZLIB)
|
|
endif ()
|
|
|
|
#[===========================[
|
|
grpc
|
|
#]===========================]
|
|
ExternalProject_Add (grpc_src
|
|
PREFIX ${nih_cache_path}
|
|
GIT_REPOSITORY https://github.com/grpc/grpc.git
|
|
GIT_TAG v1.25.0
|
|
CMAKE_ARGS
|
|
-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
|
|
-DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
|
|
$<$<BOOL:${CMAKE_VERBOSE_MAKEFILE}>:-DCMAKE_VERBOSE_MAKEFILE=ON>
|
|
$<$<BOOL:${CMAKE_TOOLCHAIN_FILE}>:-DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}>
|
|
$<$<BOOL:${VCPKG_TARGET_TRIPLET}>:-DVCPKG_TARGET_TRIPLET=${VCPKG_TARGET_TRIPLET}>
|
|
$<$<BOOL:${unity}>:-DCMAKE_UNITY_BUILD=ON}>
|
|
-DCMAKE_DEBUG_POSTFIX=_d
|
|
$<$<NOT:$<BOOL:${is_multiconfig}>>:-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}>
|
|
-DgRPC_BUILD_TESTS=OFF
|
|
-DgRPC_BENCHMARK_PROVIDER=""
|
|
-DgRPC_BUILD_CSHARP_EXT=OFF
|
|
-DgRPC_MSVC_STATIC_RUNTIME=ON
|
|
-DgRPC_INSTALL=OFF
|
|
-DgRPC_CARES_PROVIDER=package
|
|
-Dc-ares_DIR=${cares_binary_dir}/_installed_/lib/cmake/c-ares
|
|
-DgRPC_SSL_PROVIDER=package
|
|
-DOPENSSL_ROOT_DIR=${OPENSSL_ROOT_DIR}
|
|
-DgRPC_PROTOBUF_PROVIDER=package
|
|
-DProtobuf_USE_STATIC_LIBS=$<IF:$<AND:$<BOOL:${Protobuf_FOUND}>,$<NOT:$<BOOL:${static}>>>,OFF,ON>
|
|
-DProtobuf_INCLUDE_DIR=$<JOIN:$<TARGET_PROPERTY:protobuf::libprotobuf,INTERFACE_INCLUDE_DIRECTORIES>,:_:>
|
|
-DProtobuf_LIBRARY=$<IF:$<CONFIG:Debug>,$<TARGET_PROPERTY:protobuf::libprotobuf,IMPORTED_LOCATION_DEBUG>,$<TARGET_PROPERTY:protobuf::libprotobuf,IMPORTED_LOCATION_RELEASE>>
|
|
-DProtobuf_PROTOC_LIBRARY=$<IF:$<CONFIG:Debug>,$<TARGET_PROPERTY:protobuf::libprotoc,IMPORTED_LOCATION_DEBUG>,$<TARGET_PROPERTY:protobuf::libprotoc,IMPORTED_LOCATION_RELEASE>>
|
|
-DProtobuf_PROTOC_EXECUTABLE=$<TARGET_PROPERTY:protobuf::protoc,IMPORTED_LOCATION>
|
|
-DgRPC_ZLIB_PROVIDER=package
|
|
$<$<NOT:$<BOOL:${has_zlib}>>:-DZLIB_ROOT=${zlib_binary_dir}/_installed_>
|
|
$<$<BOOL:${MSVC}>:
|
|
"-DCMAKE_CXX_FLAGS=-GR -Gd -fp:precise -FS -EHa -MP"
|
|
"-DCMAKE_C_FLAGS=-GR -Gd -fp:precise -FS -MP"
|
|
>
|
|
LOG_BUILD ON
|
|
LOG_CONFIGURE ON
|
|
BUILD_COMMAND
|
|
${CMAKE_COMMAND}
|
|
--build .
|
|
--config $<CONFIG>
|
|
--parallel ${ep_procs}
|
|
$<$<BOOL:${is_multiconfig}>:
|
|
COMMAND
|
|
${CMAKE_COMMAND} -E copy
|
|
<BINARY_DIR>/$<CONFIG>/${ep_lib_prefix}grpc${grpc_suffix}$<$<CONFIG:Debug>:_d>${ep_lib_suffix}
|
|
<BINARY_DIR>/$<CONFIG>/${ep_lib_prefix}grpc++${grpc_suffix}$<$<CONFIG:Debug>:_d>${ep_lib_suffix}
|
|
<BINARY_DIR>/$<CONFIG>/${ep_lib_prefix}address_sorting$<$<CONFIG:Debug>:_d>${ep_lib_suffix}
|
|
<BINARY_DIR>/$<CONFIG>/${ep_lib_prefix}gpr$<$<CONFIG:Debug>:_d>${ep_lib_suffix}
|
|
<BINARY_DIR>/$<CONFIG>/grpc_cpp_plugin${CMAKE_EXECUTABLE_SUFFIX}
|
|
<BINARY_DIR>
|
|
>
|
|
LIST_SEPARATOR :_:
|
|
TEST_COMMAND ""
|
|
INSTALL_COMMAND ""
|
|
DEPENDS c-ares_src
|
|
BUILD_BYPRODUCTS
|
|
<BINARY_DIR>/${ep_lib_prefix}grpc${grpc_suffix}${ep_lib_suffix}
|
|
<BINARY_DIR>/${ep_lib_prefix}grpc${grpc_suffix}_d${ep_lib_suffix}
|
|
<BINARY_DIR>/${ep_lib_prefix}grpc++${grpc_suffix}${ep_lib_suffix}
|
|
<BINARY_DIR>/${ep_lib_prefix}grpc++${grpc_suffix}_d${ep_lib_suffix}
|
|
<BINARY_DIR>/${ep_lib_prefix}address_sorting${ep_lib_suffix}
|
|
<BINARY_DIR>/${ep_lib_prefix}address_sorting_d${ep_lib_suffix}
|
|
<BINARY_DIR>/${ep_lib_prefix}gpr${ep_lib_suffix}
|
|
<BINARY_DIR>/${ep_lib_prefix}gpr_d${ep_lib_suffix}
|
|
<BINARY_DIR>/grpc_cpp_plugin${CMAKE_EXECUTABLE_SUFFIX}
|
|
)
|
|
if (TARGET protobuf_src)
|
|
ExternalProject_Add_StepDependencies(grpc_src build protobuf_src)
|
|
endif ()
|
|
exclude_if_included (grpc_src)
|
|
ExternalProject_Get_Property (grpc_src BINARY_DIR)
|
|
ExternalProject_Get_Property (grpc_src SOURCE_DIR)
|
|
set (grpc_binary_dir "${BINARY_DIR}")
|
|
set (grpc_source_dir "${SOURCE_DIR}")
|
|
if (CMAKE_VERBOSE_MAKEFILE)
|
|
print_ep_logs (grpc_src)
|
|
endif ()
|
|
file (MAKE_DIRECTORY ${SOURCE_DIR}/include)
|
|
|
|
macro (add_imported_grpc libname_)
|
|
add_library ("gRPC::${libname_}" STATIC IMPORTED GLOBAL)
|
|
set_target_properties ("gRPC::${libname_}" PROPERTIES
|
|
IMPORTED_LOCATION_DEBUG
|
|
${grpc_binary_dir}/${ep_lib_prefix}${libname_}_d${ep_lib_suffix}
|
|
IMPORTED_LOCATION_RELEASE
|
|
${grpc_binary_dir}/${ep_lib_prefix}${libname_}${ep_lib_suffix}
|
|
INTERFACE_INCLUDE_DIRECTORIES
|
|
${grpc_source_dir}/include)
|
|
add_dependencies ("gRPC::${libname_}" grpc_src)
|
|
target_link_libraries (ripple_libs INTERFACE "gRPC::${libname_}")
|
|
exclude_if_included ("gRPC::${libname_}")
|
|
endmacro ()
|
|
|
|
set_target_properties (gRPC::grpc_cpp_plugin PROPERTIES
|
|
IMPORTED_LOCATION "${grpc_binary_dir}/grpc_cpp_plugin${CMAKE_EXECUTABLE_SUFFIX}")
|
|
add_dependencies (gRPC::grpc_cpp_plugin grpc_src)
|
|
endif ()
|
|
|
|
add_imported_grpc (gpr)
|
|
add_imported_grpc ("grpc${grpc_suffix}")
|
|
add_imported_grpc ("grpc++${grpc_suffix}")
|
|
add_imported_grpc (address_sorting)
|
|
|
|
target_link_libraries ("gRPC::grpc${grpc_suffix}" INTERFACE c-ares::cares gRPC::gpr gRPC::address_sorting ZLIB::ZLIB)
|
|
target_link_libraries ("gRPC::grpc++${grpc_suffix}" INTERFACE "gRPC::grpc${grpc_suffix}" gRPC::gpr)
|
|
endif ()
|
|
|
|
#[=================================[
|
|
generate protobuf sources for
|
|
grpc defs and bundle into a
|
|
static lib
|
|
#]=================================]
|
|
set (GRPC_GEN_DIR "${CMAKE_BINARY_DIR}/proto_gen_grpc")
|
|
file (MAKE_DIRECTORY ${GRPC_GEN_DIR})
|
|
set (GRPC_PROTO_SRCS)
|
|
set (GRPC_PROTO_HDRS)
|
|
set (GRPC_PROTO_ROOT "${CMAKE_CURRENT_SOURCE_DIR}/src/ripple/proto/org")
|
|
file(GLOB_RECURSE GRPC_DEFINITION_FILES LIST_DIRECTORIES false "${GRPC_PROTO_ROOT}/*.proto")
|
|
foreach(file ${GRPC_DEFINITION_FILES})
|
|
get_filename_component(_abs_file ${file} ABSOLUTE)
|
|
get_filename_component(_abs_dir ${_abs_file} DIRECTORY)
|
|
get_filename_component(_basename ${file} NAME_WE)
|
|
get_filename_component(_proto_inc ${GRPC_PROTO_ROOT} DIRECTORY) # updir one level
|
|
file(RELATIVE_PATH _rel_root_file ${_proto_inc} ${_abs_file})
|
|
get_filename_component(_rel_root_dir ${_rel_root_file} DIRECTORY)
|
|
file(RELATIVE_PATH _rel_dir ${CMAKE_CURRENT_SOURCE_DIR} ${_abs_dir})
|
|
|
|
set (src_1 "${GRPC_GEN_DIR}/${_rel_root_dir}/${_basename}.grpc.pb.cc")
|
|
set (src_2 "${GRPC_GEN_DIR}/${_rel_root_dir}/${_basename}.pb.cc")
|
|
set (hdr_1 "${GRPC_GEN_DIR}/${_rel_root_dir}/${_basename}.grpc.pb.h")
|
|
set (hdr_2 "${GRPC_GEN_DIR}/${_rel_root_dir}/${_basename}.pb.h")
|
|
add_custom_command(
|
|
OUTPUT ${src_1} ${src_2} ${hdr_1} ${hdr_2}
|
|
COMMAND protobuf::protoc
|
|
ARGS --grpc_out=${GRPC_GEN_DIR}
|
|
--cpp_out=${GRPC_GEN_DIR}
|
|
--plugin=protoc-gen-grpc=$<TARGET_FILE:gRPC::grpc_cpp_plugin>
|
|
-I ${_proto_inc} -I ${_rel_dir}
|
|
${_abs_file}
|
|
DEPENDS ${_abs_file} protobuf::protoc gRPC::grpc_cpp_plugin
|
|
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
|
COMMENT "Running gRPC C++ protocol buffer compiler on ${file}"
|
|
VERBATIM)
|
|
set_source_files_properties(${src_1} ${src_2} ${hdr_1} ${hdr_2} PROPERTIES GENERATED TRUE)
|
|
list(APPEND GRPC_PROTO_SRCS ${src_1} ${src_2})
|
|
list(APPEND GRPC_PROTO_HDRS ${hdr_1} ${hdr_2})
|
|
endforeach()
|
|
|
|
add_library (grpc_pbufs STATIC ${GRPC_PROTO_SRCS} ${GRPC_PROTO_HDRS})
|
|
#target_include_directories (grpc_pbufs PRIVATE src)
|
|
target_include_directories (grpc_pbufs SYSTEM PUBLIC ${GRPC_GEN_DIR})
|
|
target_link_libraries (grpc_pbufs protobuf::libprotobuf "gRPC::grpc++${grpc_suffix}")
|
|
target_compile_options (grpc_pbufs
|
|
PRIVATE
|
|
$<$<BOOL:${MSVC}>:-wd4065>
|
|
$<$<NOT:$<BOOL:${MSVC}>>:-Wno-deprecated-declarations>
|
|
PUBLIC
|
|
$<$<BOOL:${MSVC}>:-wd4996>
|
|
$<$<BOOL:${is_xcode}>:
|
|
--system-header-prefix="google/protobuf"
|
|
-Wno-deprecated-dynamic-exception-spec
|
|
>)
|
|
add_library (Ripple::grpc_pbufs ALIAS grpc_pbufs)
|
|
target_link_libraries (ripple_libs INTERFACE Ripple::grpc_pbufs)
|
|
exclude_if_included (grpc_pbufs)
|