@@ -3,7 +3,6 @@ cmake_minimum_required(VERSION 3.5.1)
project(MSClient C CXX)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
add_compile_definitions(_GLIBCXX_USE_CXX11_ABI=0)
find_package(Threads REQUIRED)
@@ -18,7 +17,8 @@ if(GRPC_PATH)
set(protobuf_MODULE_COMPATIBLE TRUE)
find_package(Protobuf CONFIG REQUIRED)
message(STATUS "Using protobuf ${protobuf_VERSION}, CMAKE_PREFIX_PATH : ${CMAKE_PREFIX_PATH}")
elseif(NOT GRPC_PATH)
elseif(NOT GRPC_PATH AND grpc_ROOT)
add_compile_definitions(_GLIBCXX_USE_CXX11_ABI=0)
if (EXISTS ${grpc_ROOT}/lib64)
set(gRPC_DIR "${grpc_ROOT}/lib64/cmake/grpc")
elseif(EXISTS ${grpc_ROOT}/lib)
@@ -28,12 +28,9 @@ elseif(NOT GRPC_PATH)
add_executable(protobuf::libprotoc ALIAS protobuf::protoc)
message(STATUS "serving using grpc_DIR : " ${gRPC_DIR})
elseif(NOT gRPC_DIR AND NOT GRPC_PATH)
message("please check gRPC. If the client is compiled separately,you can use the command: cmake -D GRPC_PATH=xxx")
message("XXX is the gRPC installation path")
message(FATAL_ERROR "please check gRPC. If the client is compiled separately,you can use the command: cmake -D GRPC_PATH=xxx\n" "XXX is the gRPC installation path")
endif()
set(_PROTOBUF_LIBPROTOBUF protobuf::libprotobuf)
set(_REFLECTION gRPC::grpc++_reflection)
if(CMAKE_CROSSCOMPILING)
find_program(_PROTOBUF_PROTOC protoc)
else()
@@ -45,7 +42,6 @@ endif()
find_package(gRPC CONFIG REQUIRED)
message(STATUS "Using gRPC ${gRPC_VERSION}")
set(_GRPC_GRPCPP gRPC::grpc++)
if(CMAKE_CROSSCOMPILING)
find_program(_GRPC_CPP_PLUGIN_EXECUTABLE grpc_cpp_plugin)
else()
@@ -75,13 +71,10 @@ add_custom_command(
include_directories("${CMAKE_CURRENT_BINARY_DIR}")
# Targets greeter_[async_](client|server)
foreach(_target
ms_client)
add_executable(${_target} "${_target}.cc"
${hw_proto_srcs}
${hw_grpc_srcs})
target_link_libraries(${_target}
${_REFLECTION}
${_GRPC_GRPCPP}
${_PROTOBUF_LIBPROTOBUF})
endforeach()
add_executable(ms_client "ms_client.cc"
${hw_proto_srcs}
${hw_grpc_srcs})
target_link_libraries(ms_client
gRPC::grpc++_reflection
gRPC::grpc++
protobuf::libprotobuf)