]> git.ipfire.org Git - thirdparty/zstd.git/commitdiff
Define the unified target inside the CMake project, and export it.
authorTheodore Tsirpanis <teo@tsirpanis.gr>
Tue, 27 Feb 2024 21:39:59 +0000 (23:39 +0200)
committerTheodore Tsirpanis <teo@tsirpanis.gr>
Tue, 27 Feb 2024 21:39:59 +0000 (23:39 +0200)
This is less error-prone.

build/cmake/lib/CMakeLists.txt
build/cmake/zstdConfig.cmake.in

index 2b64a07e2f86be326af0e488637a8587a7f2e74a..7e16470fde2c1af11f942640a51432796fa09d3b 100644 (file)
@@ -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)
index 0a7f773d75fab49fc0fda74b5cccbf71796de10a..f4190f989ba71dc72d850c2d19ac24038e5556d9 100644 (file)
@@ -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")