From: LLVM Packaging Team Date: Thu, 7 Sep 2023 22:41:35 +0000 (+0100) Subject: link-grpc X-Git-Tag: archive/raspbian/1%14.0.6-16+rpi1^2~8 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=dcdefb8c9b855bee588da5f1a5912d038a2bc414;p=llvm-toolchain-14.git link-grpc =================================================================== Gbp-Pq: Name link-grpc.diff --- diff --git a/llvm/cmake/modules/FindGRPC.cmake b/llvm/cmake/modules/FindGRPC.cmake index e058f544cb..b4d04a9a41 100644 --- a/llvm/cmake/modules/FindGRPC.cmake +++ b/llvm/cmake/modules/FindGRPC.cmake @@ -73,10 +73,29 @@ else() endif() endif() endif() + + 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}) + + 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) + 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) @@ -121,9 +140,15 @@ function(generate_protos LibraryName ProtoFile) ARGS ${Flags} "${ProtoSourceAbsolutePath}" DEPENDS "${ProtoSourceAbsolutePath}") + set(LINKED_GRPC_LIBRARIES protobuf gpr grpc grpc++) + + if (ABSL_SYNCHRONIZATION_LIBRARY) + list(APPEND LINKED_GRPC_LIBRARIES absl_synchronization) + endif() + add_clang_library(${LibraryName} ${GeneratedProtoSource} PARTIAL_SOURCES_INTENDED - LINK_LIBS PUBLIC grpc++ protobuf) + LINK_LIBS PUBLIC ${LINKED_GRPC_LIBRARIES}) # Ensure dependency headers are generated before dependent protos are built. # DEPENDS arg is a list of "Foo.proto". While they're logically relative to