aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLasse Collin <lasse.collin@tukaani.org>2021-02-13 23:31:27 +0200
committerLasse Collin <lasse.collin@tukaani.org>2022-07-12 18:44:47 +0300
commita79bd30a6fbfe614f47ad77498c46e218dbe2b1d (patch)
tree61ef818987c8c413ac3d000891fd6531078a15f5
parentCMake: Try to improve compatibility with the FindLibLZMA module. (diff)
downloadxz-a79bd30a6fbfe614f47ad77498c46e218dbe2b1d.tar.xz
CMake: Use interface library for better FindLibLZMA compatibility.
https://www.mail-archive.com/xz-devel@tukaani.org/msg00446.html Thanks to Markus Rickert.
-rw-r--r--CMakeLists.txt11
1 files changed, 9 insertions, 2 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index afb1dd53..1dfdb4f1 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -452,9 +452,16 @@ file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/liblzma-config.cmake"
"include(CMakeFindDependencyMacro)
set(THREADS_PREFER_PTHREAD_FLAG TRUE)
find_dependency(Threads)
+
include(\"\${CMAKE_CURRENT_LIST_DIR}/liblzma-targets.cmake\")
-# Be compatible with the spelling used by the FindLibLZMA module:
-add_library(LibLZMA::LibLZMA ALIAS liblzma::liblzma)
+
+# Be compatible with the spelling used by the FindLibLZMA module. This
+# doesn't use ALIAS because it would make CMake resolve LibLZMA::LibLZMA
+# to liblzma::liblzma instead of keeping the original spelling. Keeping
+# the original spelling is important for good FindLibLZMA compatibility.
+add_library(LibLZMA::LibLZMA INTERFACE IMPORTED)
+set_target_properties(LibLZMA::LibLZMA PROPERTIES
+ INTERFACE_LINK_LIBRARIES liblzma::liblzma)
")
# Set CMAKE_INSTALL_LIBDIR and friends.