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(OpenSSL REQUIRED)
|
||||||
find_package(Protobuf 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)
|
find_package(gRPC)
|
||||||
if(gRPC_FOUND)
|
if(gRPC_FOUND)
|
||||||
|
|
@ -47,6 +53,7 @@ include(${CMAKE_CURRENT_SOURCE_DIR}/cmake/GenerateProtobuf.cmake)
|
||||||
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/proto)
|
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/proto)
|
||||||
|
|
||||||
include_directories(SYSTEM ${Boost_INCLUDE_DIR}
|
include_directories(SYSTEM ${Boost_INCLUDE_DIR}
|
||||||
|
${CPPREST_INCLUDE_DIR}
|
||||||
${PROTOBUF_INCLUDE_DIRS}
|
${PROTOBUF_INCLUDE_DIRS}
|
||||||
${OPENSSL_INCLUDE_DIR})
|
${OPENSSL_INCLUDE_DIR})
|
||||||
include_directories(${CMAKE_CURRENT_SOURCE_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)
|
add_dependencies(etcd-cpp-api protobuf_generates)
|
||||||
set_property(TARGET etcd-cpp-api PROPERTY CXX_STANDARD 11)
|
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
|
target_link_libraries(etcd-cpp-api PUBLIC
|
||||||
cpprestsdk::cpprest
|
|
||||||
${Boost_LIBRARIES}
|
${Boost_LIBRARIES}
|
||||||
${PROTOBUF_LIBRARIES}
|
${PROTOBUF_LIBRARIES}
|
||||||
${OPENSSL_LIBRARIES}
|
${OPENSSL_LIBRARIES}
|
||||||
${GRPC_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)
|
||||||
target_include_directories(etcd-cpp-api PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/../proto/gen/proto)
|
target_include_directories(etcd-cpp-api PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/../proto/gen/proto)
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue