@@ -139,28 +139,7 @@ else()
139139endif ()
140140
141141# hiredis dependency
142- find_package (hiredis QUIET )
143- if (hiredis_FOUND)
144- list (APPEND REDIS_PLUS_PLUS_HIREDIS_LIBS hiredis::hiredis)
145-
146- if (REDIS_PLUS_PLUS_USE_TLS)
147- find_package (hiredis_ssl REQUIRED)
148- list (APPEND REDIS_PLUS_PLUS_HIREDIS_LIBS hiredis::hiredis_ssl)
149- find_package (OpenSSL REQUIRED)
150- list (APPEND REDIS_PLUS_PLUS_HIREDIS_LIBS ${OPENSSL_LIBRARIES} )
151- endif ()
152- else ()
153- find_path (HIREDIS_HEADER hiredis)
154- find_library (HIREDIS_LIB hiredis)
155- list (APPEND REDIS_PLUS_PLUS_HIREDIS_LIBS ${HIREDIS_LIB} )
156-
157- if (REDIS_PLUS_PLUS_USE_TLS)
158- find_library (HIREDIS_TLS_LIB hiredis_ssl)
159- list (APPEND REDIS_PLUS_PLUS_HIREDIS_LIBS ${HIREDIS_TLS_LIB} )
160- find_package (OpenSSL REQUIRED)
161- list (APPEND REDIS_PLUS_PLUS_HIREDIS_LIBS ${OPENSSL_LIBRARIES} )
162- endif ()
163- endif ()
142+ include (${CMAKE_CURRENT_LIST_DIR} /cmake/FindHiredis.cmake)
164143
165144# Check hiredis features
166145message (STATUS "redis-plus-plus check hiredis features" )
@@ -174,16 +153,17 @@ endif()
174153set (HIREDIS_FEATURE_TEST_HEADER "${HIREDIS_FEATURE_TEST_INCLUDE} /hiredis/hiredis.h" )
175154
176155include (CheckSymbolExists)
177- set (CMAKE_REQUIRED_LIBRARIES_BACK ${CMAKE_REQUIRED_LIBRARIES} )
178- set (CMAKE_REQUIRED_LIBRARIES ${HIREDIS_FEATURE_TEST_LIB} )
156+
157+ # Add hiredis to CMAKE_REQUIRED_LIBRARIES
158+ list (APPEND CMAKE_REQUIRED_LIBRARIES hiredis)
179159
180160CHECK_SYMBOL_EXISTS(redisEnableKeepAliveWithInterval ${HIREDIS_FEATURE_TEST_HEADER} REDIS_PLUS_PLUS_HAS_redisEnableKeepAliveWithInterval)
181161
182162set (REDIS_PLUS_PLUS_GENERATED_HEADER_DIR ${CMAKE_CURRENT_BINARY_DIR} /${REDIS_PLUS_PLUS_HEADER_DIR} )
183163configure_file (${CMAKE_CURRENT_SOURCE_DIR} /hiredis_features.h.in ${CMAKE_CURRENT_BINARY_DIR} /${REDIS_PLUS_PLUS_SOURCE_DIR} /hiredis_features.h)
184164
185165# Restore CMAKE_REQUIRED_LIBRARIES
186- set (CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES_BACK} )
166+ list (POP_BACK CMAKE_REQUIRED_LIBRARIES )
187167
188168# Build static library
189169option (REDIS_PLUS_PLUS_BUILD_STATIC "Build static library" ON )
@@ -273,11 +253,10 @@ if(REDIS_PLUS_PLUS_BUILD_SHARED)
273253
274254 if (hiredis_FOUND)
275255 target_include_directories (${SHARED_LIB} PUBLIC $<BUILD_INTERFACE:${hiredis_INCLUDE_DIRS} >)
276- target_link_libraries (${SHARED_LIB} PUBLIC ${REDIS_PLUS_PLUS_HIREDIS_LIBS} )
277256 else ()
278257 target_include_directories (${SHARED_LIB} PUBLIC $<BUILD_INTERFACE:${HIREDIS_HEADER} >)
279- target_link_libraries (${SHARED_LIB} PUBLIC ${REDIS_PLUS_PLUS_HIREDIS_LIBS} )
280258 endif ()
259+ target_link_libraries (${SHARED_LIB} PUBLIC ${REDIS_PLUS_PLUS_HIREDIS_LIBS} )
281260
282261 if (REDIS_PLUS_PLUS_BUILD_ASYNC)
283262 target_include_directories (${SHARED_LIB} PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR} /${REDIS_PLUS_PLUS_ASYNC_FUTURE_HEADER} >)
0 commit comments