]> git.ipfire.org Git - thirdparty/zstd.git/commitdiff
Export a `zstd::libzstd` target if only static or dynamic linkage is specified.
authorTheodore Tsirpanis <theodore.tsirpanis@tiledb.com>
Tue, 7 Nov 2023 12:35:43 +0000 (14:35 +0200)
committerTheodore Tsirpanis <theodore.tsirpanis@tiledb.com>
Tue, 7 Nov 2023 13:54:19 +0000 (15:54 +0200)
build/cmake/CMakeLists.txt
build/cmake/zstdConfig.cmake [deleted file]
build/cmake/zstdConfig.cmake.in [new file with mode: 0644]

index 0bffc87d933b9bb51c425b848d0bc1b0ef6bda0b..6f68bc4255c6332707d96d73be723533e11d18f9 100644 (file)
@@ -193,10 +193,6 @@ export(EXPORT zstdExports
     FILE "${CMAKE_CURRENT_BINARY_DIR}/zstdTargets.cmake"
     NAMESPACE zstd::
     )
-configure_file(zstdConfig.cmake
-    "${CMAKE_CURRENT_BINARY_DIR}/zstdConfig.cmake"
-    COPYONLY
-    )
 
 # A Package Config file that works from the installation directory
 set(ConfigPackageLocation ${CMAKE_INSTALL_LIBDIR}/cmake/zstd)
@@ -205,8 +201,13 @@ install(EXPORT zstdExports
     NAMESPACE zstd::
     DESTINATION ${ConfigPackageLocation}
     )
+configure_package_config_file(
+    zstdConfig.cmake.in
+    "${CMAKE_CURRENT_BINARY_DIR}/zstdConfig.cmake"
+    INSTALL_DESTINATION ${ConfigPackageLocation}
+)
 install(FILES
-    zstdConfig.cmake
+    "${CMAKE_CURRENT_BINARY_DIR}/zstdConfig.cmake"
     "${CMAKE_CURRENT_BINARY_DIR}/zstdConfigVersion.cmake"
     DESTINATION ${ConfigPackageLocation}
     )
diff --git a/build/cmake/zstdConfig.cmake b/build/cmake/zstdConfig.cmake
deleted file mode 100644 (file)
index ebbfcc3..0000000
+++ /dev/null
@@ -1 +0,0 @@
-include("${CMAKE_CURRENT_LIST_DIR}/zstdTargets.cmake")
diff --git a/build/cmake/zstdConfig.cmake.in b/build/cmake/zstdConfig.cmake.in
new file mode 100644 (file)
index 0000000..752f3ab
--- /dev/null
@@ -0,0 +1,16 @@
+@PACKAGE_INIT@
+
+include(CMakeFindDependencyMacro)
+if(@ZSTD_MULTITHREAD_SUPPORT@ AND "@UNIX@")
+  find_dependency(Threads)
+endif()
+
+include("${CMAKE_CURRENT_LIST_DIR}/zstdTargets.cmake")
+
+if(@ZSTD_BUILD_SHARED@ AND NOT @ZSTD_BUILD_STATIC@)
+  add_library(zstd::libzstd ALIAS zstd::libzstd_shared)
+elseif(NOT @ZSTD_BUILD_SHARED@ AND @ZSTD_BUILD_STATIC@)
+  add_library(zstd::libzstd ALIAS zstd::libzstd_static)
+endif()
+
+check_required_components("zstd")