Skip to content

Commit

Permalink
build: with -DCLANGD_ENABLE_REMOTE=ON, search for grpc++ dependencies…
Browse files Browse the repository at this point in the history
… too

Fixes: llvm/llvm-project#59844

Differential Revision: https://reviews.llvm.org/D141047
  • Loading branch information
sylvestre committed Jan 10, 2023
1 parent 69bbcdd commit 9f3081d
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 1 deletion.
7 changes: 6 additions & 1 deletion clang/cmake/modules/AddGRPC.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,13 @@ function(generate_clang_protos_library LibraryName ProtoFile)
# Take the first two args and forward the remaining to generate_proto_sources.
cmake_parse_arguments(PARSE_ARGV 2 PROTO "" "" "")
generate_proto_sources(ProtoSource ${ProtoFile} ${PROTO_UNPARSED_ARGUMENTS})
set(LINKED_GRPC_LIBRARIES protobuf gpr grpc grpc++)

if (ABSL_SYNCHRONIZATION_LIBRARY)
list(APPEND LINKED_GRPC_LIBRARIES absl_synchronization)
endif()
add_clang_library(${LibraryName} ${ProtoSource}
PARTIAL_SOURCES_INTENDED
LINK_LIBS PUBLIC grpc++ protobuf)
LINK_LIBS PUBLIC ${LINKED_GRPC_LIBRARIES})

endfunction()
17 changes: 17 additions & 0 deletions cmake/Modules/FindGRPC.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -82,11 +82,28 @@ else()
endif()
endif()
if(NOT TARGET grpc++)
find_library(GPR_LIBRARY gpr ${GRPC_OPTS} REQUIRED)
add_library(gpr UNKNOWN IMPORTED GLOBAL)
message(STATUS "Using gpr: " ${GPR_LIBRARY})
set_target_properties(gpr PROPERTIES IMPORTED_LOCATION ${GPR_LIBRARY})

find_library(GRPC_LIBRARY grpc++ ${GRPC_OPTS} REQUIRED)
add_library(grpc++ UNKNOWN IMPORTED GLOBAL)
message(STATUS "Using grpc++: " ${GRPC_LIBRARY})
set_target_properties(grpc++ PROPERTIES IMPORTED_LOCATION ${GRPC_LIBRARY})
target_include_directories(grpc++ INTERFACE ${GRPC_INCLUDE_PATHS})
find_library(GRPC2_LIBRARY grpc ${GRPC_OPTS} REQUIRED)
add_library(grpc UNKNOWN IMPORTED GLOBAL)
message(STATUS "Using grpc: " ${GRPC2_LIBRARY})
set_target_properties(grpc PROPERTIES IMPORTED_LOCATION ${GRPC2_LIBRARY})

find_library(ABSL_SYNCHRONIZATION_LIBRARY absl_synchronization ${GRPC_OPTS} QUIET)
if (ABSL_SYNCHRONIZATION_LIBRARY)
add_library(absl_synchronization UNKNOWN IMPORTED GLOBAL)
message(STATUS "Using absl_synchronization: " ${ABSL_SYNCHRONIZATION_LIBRARY})
set_target_properties(absl_synchronization PROPERTIES IMPORTED_LOCATION ${ABSL_SYNCHRONIZATION_LIBRARY})
endif()

if (ENABLE_GRPC_REFLECTION)
find_library(GRPC_REFLECTION_LIBRARY grpc++_reflection ${GRPC_OPTS} REQUIRED)
add_library(grpc++_reflection UNKNOWN IMPORTED GLOBAL)
Expand Down

0 comments on commit 9f3081d

Please sign in to comment.