Fixes when cpprestsdk is a submodule of external project.
Signed-off-by: Tao He <linzhu.ht@alibaba-inc.com>
This commit is contained in:
parent
02d170a0cf
commit
f2d8330b08
|
|
@ -29,7 +29,13 @@ endif()
|
|||
|
||||
find_package(OpenSSL REQUIRED)
|
||||
find_package(Protobuf REQUIRED)
|
||||
find_package(cpprestsdk REQUIRED)
|
||||
find_package(cpprestsdk)
|
||||
if(cpprestsdk_FOUND)
|
||||
set(CPPREST_INCLUDE_DIR)
|
||||
else()
|
||||
find_library(CPPREST_LIB NAMES cpprest)
|
||||
find_path(CPPREST_INCLUDE_DIR NAMES cpprest/http_client.h)
|
||||
endif()
|
||||
|
||||
find_package(gRPC)
|
||||
if(gRPC_FOUND)
|
||||
|
|
@ -47,6 +53,7 @@ include(${CMAKE_CURRENT_SOURCE_DIR}/cmake/GenerateProtobuf.cmake)
|
|||
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/proto)
|
||||
|
||||
include_directories(SYSTEM ${Boost_INCLUDE_DIR}
|
||||
${CPPREST_INCLUDE_DIR}
|
||||
${PROTOBUF_INCLUDE_DIRS}
|
||||
${OPENSSL_INCLUDE_DIR})
|
||||
include_directories(${CMAKE_CURRENT_SOURCE_DIR})
|
||||
|
|
|
|||
|
|
@ -8,12 +8,18 @@ add_library(etcd-cpp-api ${CPP_CLIENT_SRC} ${PROTOBUF_GENERATES})
|
|||
add_dependencies(etcd-cpp-api protobuf_generates)
|
||||
set_property(TARGET etcd-cpp-api PROPERTY CXX_STANDARD 11)
|
||||
|
||||
if(cpprestsdk_FOUND)
|
||||
target_link_libraries(etcd-cpp-api PUBLIC cpprestsdk::cpprest)
|
||||
else()
|
||||
target_link_libraries(etcd-cpp-api PUBLIC ${CPPREST_LIB})
|
||||
endif()
|
||||
|
||||
target_link_libraries(etcd-cpp-api PUBLIC
|
||||
cpprestsdk::cpprest
|
||||
${Boost_LIBRARIES}
|
||||
${PROTOBUF_LIBRARIES}
|
||||
${OPENSSL_LIBRARIES}
|
||||
${GRPC_LIBRARIES})
|
||||
|
||||
target_include_directories(etcd-cpp-api PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/../proto/gen)
|
||||
target_include_directories(etcd-cpp-api PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/../proto/gen/proto)
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue