Improve the cmake script for better compatibility (#195)

Signed-off-by: Tao He <sighingnow@gmail.com>
This commit is contained in:
Tao He 2023-02-19 11:14:05 +08:00 committed by GitHub
parent 3133fbec21
commit 817153bcc9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 9 additions and 1 deletions

View File

@ -77,11 +77,13 @@ macro(use_cxx target)
else() else()
target_compile_options(${target} PRIVATE "-std=c++${ETCD_CMAKE_CXX_STANDARD}") target_compile_options(${target} PRIVATE "-std=c++${ETCD_CMAKE_CXX_STANDARD}")
endif() endif()
else() elseif(CMAKE_VERSION VERSION_LESS "3.8")
set_target_properties(${target} PROPERTIES set_target_properties(${target} PROPERTIES
CXX_STANDARD ${ETCD_CMAKE_CXX_STANDARD} CXX_STANDARD ${ETCD_CMAKE_CXX_STANDARD}
CXX_STANDARD_REQUIRED ON CXX_STANDARD_REQUIRED ON
) )
else()
target_compile_features(${target} PUBLIC cxx_std_${ETCD_CMAKE_CXX_STANDARD})
endif() endif()
endmacro(use_cxx) endmacro(use_cxx)

View File

@ -21,6 +21,12 @@ add_library(etcd-cpp-api-core-objects OBJECT ${CPP_CLIENT_CORE_SRC} ${PROTOBUF_G
use_cxx(etcd-cpp-api-core-objects) use_cxx(etcd-cpp-api-core-objects)
add_dependencies(etcd-cpp-api-core-objects protobuf_generates) add_dependencies(etcd-cpp-api-core-objects protobuf_generates)
include_generated_protobuf_files(etcd-cpp-api-core-objects) include_generated_protobuf_files(etcd-cpp-api-core-objects)
target_link_libraries(etcd-cpp-api-core-objects PUBLIC
${Boost_LIBRARIES}
${PROTOBUF_LIBRARIES}
${OPENSSL_LIBRARIES}
${GRPC_LIBRARIES}
)
# add the core library, includes the sycnhronous client only # add the core library, includes the sycnhronous client only
add_library(etcd-cpp-api-core $<TARGET_OBJECTS:etcd-cpp-api-core-objects>) add_library(etcd-cpp-api-core $<TARGET_OBJECTS:etcd-cpp-api-core-objects>)