cmake work-around for cmake < 3.21

This commit is contained in:
Jason Rhinelander 2022-03-30 17:00:39 -03:00
parent 88970ad3d2
commit f27a5b77eb
No known key found for this signature in database
GPG Key ID: C4992CE7A88D4262
3 changed files with 30 additions and 1 deletions

View File

@ -7,7 +7,7 @@ Subject: Fully version library
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index ae117c7..9af859f 100644
index baef9ef..26942e1 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -24,7 +24,7 @@ include(GNUInstallDirs)

View File

@ -0,0 +1,28 @@
From: Jason Rhinelander <jason@imaginary.ca>
Date: Wed, 30 Mar 2022 16:09:40 -0300
Subject: cmake work-around for cmake < 3.21
PkgConfig::xyz won't exist before 3.21 if xyz doesn't require any flags
(which is common for a system-installed header-only library like oxenc).
(CMake bug 22180)
---
CMakeLists.txt | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 26942e1..e90ac40 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -76,7 +76,10 @@ elseif(BUILD_SHARED_LIBS)
pkg_check_modules(oxenc liboxenc IMPORTED_TARGET)
if(oxenc_FOUND)
- target_link_libraries(oxenmq PUBLIC PkgConfig::oxenc)
+ # Work around cmake bug 22180 (PkgConfig::tgt not set if no flags needed)
+ if(TARGET PkgConfig::oxenc OR CMAKE_VERSION VERSION_GREATER_EQUAL "3.21")
+ target_link_libraries(oxenmq PUBLIC PkgConfig::oxenc)
+ endif()
else()
add_subdirectory(oxen-encoding)
target_link_libraries(oxenmq PUBLIC oxenc)

View File

@ -1 +1,2 @@
0002-Fully-version-library.patch
0002-cmake-work-around-for-cmake-3.21.patch