Define the unified target inside the CMake project, and export it.
This is less error-prone.
This commit is contained in:
@@ -145,6 +145,16 @@ if (ZSTD_BUILD_STATIC)
|
||||
add_definition(libzstd_static ZSTDLIB_STATIC_API)
|
||||
add_definition(libzstd_static ZDICTLIB_STATIC_API)
|
||||
endif ()
|
||||
if (ZSTD_BUILD_SHARED AND NOT ZSTD_BUILD_STATIC)
|
||||
add_library(libzstd INTERFACE)
|
||||
target_link_libraries(libzstd INTERFACE libzstd_shared)
|
||||
list(APPEND library_targets libzstd)
|
||||
endif ()
|
||||
if (ZSTD_BUILD_STATIC AND NOT ZSTD_BUILD_SHARED)
|
||||
add_library(libzstd INTERFACE)
|
||||
target_link_libraries(libzstd INTERFACE libzstd_static)
|
||||
list(APPEND library_targets libzstd)
|
||||
endif ()
|
||||
|
||||
# Add specific compile definitions for MSVC project
|
||||
if (MSVC)
|
||||
|
||||
@@ -7,18 +7,4 @@ endif()
|
||||
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/zstdTargets.cmake")
|
||||
|
||||
if(NOT TARGET zstd::libzstd)
|
||||
if(@ZSTD_BUILD_SHARED@ AND NOT @ZSTD_BUILD_STATIC@)
|
||||
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@)
|
||||
add_library(zstd::libzstd INTERFACE IMPORTED)
|
||||
set_target_properties(zstd::libzstd PROPERTIES
|
||||
INTERFACE_LINK_LIBRARIES "zstd::libzstd_static"
|
||||
)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
check_required_components("zstd")
|
||||
|
||||
Reference in New Issue
Block a user