CMake: Minor modernization

Rely more on transitive dependencies, as provided by
TARGET_LINK_LIBRARIES. Avoid using ADD_DEFINITIONS and
INCLUDE_DIRECTORIES. This avoids leakage/pollution of defines and
includes.
This commit is contained in:
m 2019-03-31 19:15:11 +02:00 committed by Marcus Geelnard
parent dc6d19b9ec
commit e38cd75562

View File

@ -22,8 +22,6 @@ PROJECT(hiredis VERSION "${VERSION}")
SET(ENABLE_EXAMPLES OFF CACHE BOOL "Enable building hiredis examples") SET(ENABLE_EXAMPLES OFF CACHE BOOL "Enable building hiredis examples")
INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR})
ADD_LIBRARY(hiredis SHARED ADD_LIBRARY(hiredis SHARED
async.c async.c
dict.c dict.c
@ -40,6 +38,7 @@ SET_TARGET_PROPERTIES(hiredis
IF(WIN32 OR MINGW) IF(WIN32 OR MINGW)
TARGET_LINK_LIBRARIES(hiredis PRIVATE ws2_32) TARGET_LINK_LIBRARIES(hiredis PRIVATE ws2_32)
ENDIF() ENDIF()
TARGET_INCLUDE_DIRECTORIES(hiredis PUBLIC .)
CONFIGURE_FILE(hiredis.pc.in hiredis.pc @ONLY) CONFIGURE_FILE(hiredis.pc.in hiredis.pc @ONLY)
@ -59,9 +58,9 @@ IF(HIREDIS_SSL)
ENDIF() ENDIF()
ENDIF() ENDIF()
FIND_PACKAGE(OpenSSL REQUIRED) FIND_PACKAGE(OpenSSL REQUIRED)
ADD_DEFINITIONS(-DHIREDIS_SSL) TARGET_COMPILE_DEFINITIONS(hiredis PRIVATE HIREDIS_SSL)
INCLUDE_DIRECTORIES("${OPENSSL_INCLUDE_DIR}") TARGET_INCLUDE_DIRECTORIES(hiredis PRIVATE "${OPENSSL_INCLUDE_DIR}")
TARGET_LINK_LIBRARIES(hiredis ${OPENSSL_LIBRARIES}) TARGET_LINK_LIBRARIES(hiredis PRIVATE ${OPENSSL_LIBRARIES})
ENDIF() ENDIF()
IF(NOT (WIN32 OR MINGW)) IF(NOT (WIN32 OR MINGW))