|
|
# compile wenet.proto
set(PROTO_DIR "${CMAKE_CURRENT_SOURCE_DIR}")
include(../cmake-linux/grpc.cmake)
get_target_property(PROTOC_LOCATION ${PROTOBUF_PROTOC} LOCATION)
add_custom_command( OUTPUT ${PROTO_DIR}/wenet.pb.cc
${PROTO_DIR}/wenet.pb.h
${PROTO_DIR}/wenet.grpc.pb.cc
${PROTO_DIR}/wenet.grpc.pb.h
COMMAND ${PROTOC_LOCATION}
ARGS --grpc_out "${PROTO_DIR}"
--cpp_out "${PROTO_DIR}"
-I "${PROTO_DIR}"
--plugin=protoc-gen-grpc=${GRPC_BINARY_DIR}/grpc_cpp_plugin
${PROTO_DIR}/wenet.proto)
find_package(gflags REQUIRED)
add_library(wenet_grpc STATIC grpc_client.cc
grpc_server.cc
wenet.pb.cc
wenet.grpc.pb.cc)
target_link_libraries(wenet_grpc PUBLIC ${REFLECTION} ${GRPC_GRPCPP}
${PROTOBUF_LIBPROTOBUF} decoder)
message("gflags_INCLUDE_DIR:${gflags_INCLUDE_DIR}")
include_directories(${gflags_INCLUDE_DIR})
add_executable(grpc_server_main grpc_server_main.cc)
target_link_libraries(grpc_server_main wenet_grpc gflags_nothreads ${REFLECTION} ${GRPC_GRPCPP}
${PROTOBUF_LIBPROTOBUF} )
add_executable(grpc_client_main grpc_client_main.cc)
target_link_libraries(grpc_client_main wenet_grpc gflags_nothreads ${REFLECTION} ${GRPC_GRPCPP}
${PROTOBUF_LIBPROTOBUF} )
|