Skip to content

Commit c6cbde8

Browse files
committed
fix cmake to make it work with FetchContent
1 parent d84489f commit c6cbde8

File tree

1 file changed

+5
-11
lines changed

1 file changed

+5
-11
lines changed

CMakeLists.txt

Lines changed: 5 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -145,27 +145,21 @@ include(${CMAKE_CURRENT_LIST_DIR}/cmake/FindHiredis.cmake)
145145
message(STATUS "redis-plus-plus check hiredis features")
146146
if(hiredis_FOUND)
147147
set(HIREDIS_FEATURE_TEST_INCLUDE ${hiredis_INCLUDE_DIRS})
148-
set(HIREDIS_FEATURE_TEST_LIB ${REDIS_PLUS_PLUS_HIREDIS_LIBS})
149148
else()
150149
set(HIREDIS_FEATURE_TEST_INCLUDE ${HIREDIS_HEADER})
151-
set(HIREDIS_FEATURE_TEST_LIB ${HIREDIS_LIB})
152150
endif()
153151
set(HIREDIS_FEATURE_TEST_HEADER "${HIREDIS_FEATURE_TEST_INCLUDE}/hiredis/hiredis.h")
154152

155-
include(CheckSymbolExists)
153+
file(READ "${HIREDIS_FEATURE_TEST_HEADER}" HIREDIS_HEADER_CONTENT)
156154

157-
# Add hiredis to CMAKE_REQUIRED_LIBRARIES
158-
set(CMAKE_REQUIRED_LIBRARIES_BACK ${CMAKE_REQUIRED_LIBRARIES})
159-
set(CMAKE_REQUIRED_LIBRARIES ${HIREDIS_FEATURE_TEST_LIB})
160-
161-
CHECK_SYMBOL_EXISTS(redisEnableKeepAliveWithInterval ${HIREDIS_FEATURE_TEST_HEADER} REDIS_PLUS_PLUS_HAS_redisEnableKeepAliveWithInterval)
155+
string(FIND "${HIREDIS_HEADER_CONTENT}" redisEnableKeepAliveWithInterval redisEnableKeepAliveWithInterval_POS)
156+
if(${redisEnableKeepAliveWithInterval_POS} GREATER -1)
157+
set(REDIS_PLUS_PLUS_HAS_redisEnableKeepAliveWithInterval ON)
158+
endif()
162159

163160
set(REDIS_PLUS_PLUS_GENERATED_HEADER_DIR ${CMAKE_CURRENT_BINARY_DIR}/${REDIS_PLUS_PLUS_HEADER_DIR})
164161
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/hiredis_features.h.in ${CMAKE_CURRENT_BINARY_DIR}/${REDIS_PLUS_PLUS_SOURCE_DIR}/hiredis_features.h)
165162

166-
# Restore CMAKE_REQUIRED_LIBRARIES
167-
set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES_BACK})
168-
169163
# Build static library
170164
option(REDIS_PLUS_PLUS_BUILD_STATIC "Build static library" ON)
171165
message(STATUS "redis-plus-plus build static library: ${REDIS_PLUS_PLUS_BUILD_STATIC}")

0 commit comments

Comments
 (0)