Make zstd::libzstd an imported interface target.
It cannot be an alias, because it would lock the package to use either static or shared libraries at its build time. We want to decide this at the time `find_package` is called.
This commit is contained in:
@@ -7,10 +7,18 @@ endif()
|
|||||||
|
|
||||||
include("${CMAKE_CURRENT_LIST_DIR}/zstdTargets.cmake")
|
include("${CMAKE_CURRENT_LIST_DIR}/zstdTargets.cmake")
|
||||||
|
|
||||||
|
if(NOT TARGET zstd::libzstd)
|
||||||
if(@ZSTD_BUILD_SHARED@ AND NOT @ZSTD_BUILD_STATIC@)
|
if(@ZSTD_BUILD_SHARED@ AND NOT @ZSTD_BUILD_STATIC@)
|
||||||
add_library(zstd::libzstd ALIAS zstd::libzstd_shared)
|
add_library(zstd::libzstd INTERFACE IMPORTED)
|
||||||
|
set_target_properties(zstd::libzstd PROPERTIES
|
||||||
|
INTERFACE_LINK_LIBRARIES "zstd::libzstd_shared"
|
||||||
|
)
|
||||||
elseif(NOT @ZSTD_BUILD_SHARED@ AND @ZSTD_BUILD_STATIC@)
|
elseif(NOT @ZSTD_BUILD_SHARED@ AND @ZSTD_BUILD_STATIC@)
|
||||||
add_library(zstd::libzstd ALIAS zstd::libzstd_static)
|
add_library(zstd::libzstd INTERFACE IMPORTED)
|
||||||
|
set_target_properties(zstd::libzstd PROPERTIES
|
||||||
|
INTERFACE_LINK_LIBRARIES "zstd::libzstd_static"
|
||||||
|
)
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
check_required_components("zstd")
|
check_required_components("zstd")
|
||||||
|
|||||||
Reference in New Issue
Block a user