gpgme: fix cross config for gpgme-qt6

This commit is contained in:
Đoàn Trần Công Danh 2024-05-15 18:10:18 +07:00
parent 8af422e82a
commit cc72fc29e5
2 changed files with 46 additions and 5 deletions

View file

@ -1,5 +1,3 @@
diff --git lang/cpp/src/GpgmeppConfig.cmake.in.in lang/cpp/src/GpgmeppConfig.cmake.in.in
index 73f5eaad..019de555 100644
--- a/lang/cpp/src/GpgmeppConfig.cmake.in.in
+++ b/lang/cpp/src/GpgmeppConfig.cmake.in.in
@@ -58,19 +58,41 @@ unset(_targetsDefined)
@ -47,8 +45,6 @@ index 73f5eaad..019de555 100644
# Loop over all imported files and verify that they actually exist
foreach(target ${_IMPORT_CHECK_TARGETS} )
foreach(file ${_IMPORT_CHECK_FILES_FOR_${target}} )
diff --git lang/qt/src/QGpgmeConfig.cmake.in.in lang/qt/src/QGpgmeConfig.cmake.in.in
index a17a19fd..29a6b87a 100644
--- a/lang/qt/src/QGpgmeConfig.cmake.in.in
+++ b/lang/qt/src/QGpgmeConfig.cmake.in.in
@@ -58,19 +58,41 @@ unset(_targetsDefined)
@ -95,3 +91,48 @@ index a17a19fd..29a6b87a 100644
# Loop over all imported files and verify that they actually exist
foreach(target ${_IMPORT_CHECK_TARGETS} )
foreach(file ${_IMPORT_CHECK_FILES_FOR_${target}} )
--- a/lang/qt/src/QGpgmeQt6Config.cmake.in.in
+++ b/lang/qt/src/QGpgmeQt6Config.cmake.in.in
@@ -58,19 +58,40 @@ unset(_targetsDefined)
unset(_targetsNotDefined)
unset(_expectedTargets)
+# Compute the installation prefix relative to this file.
+get_filename_component(_IMPORT_PREFIX "${CMAKE_CURRENT_LIST_FILE}" PATH)
+# Use original install prefix when loaded through a
+# cross-prefix symbolic link such as /lib -> /usr/lib.
+get_filename_component(_realCurr "${_IMPORT_PREFIX}" REALPATH)
+get_filename_component(_realOrig "/usr/lib/cmake/QGpgme" REALPATH)
+if(_realCurr STREQUAL _realOrig)
+ set(_IMPORT_PREFIX "/usr/lib/cmake/QGpgme")
+endif()
+unset(_realOrig)
+unset(_realCurr)
+get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
+get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
+get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
+if(_IMPORT_PREFIX STREQUAL "/")
+ set(_IMPORT_PREFIX "")
+endif()
+
# Create imported target QGpgmeQt6
add_library(QGpgmeQt6 SHARED IMPORTED)
set_target_properties(QGpgmeQt6 PROPERTIES
- INTERFACE_INCLUDE_DIRECTORIES "@resolved_includedir@/qgpgme;@resolved_includedir@"
+ INTERFACE_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include/qgpgme"
INTERFACE_LINK_LIBRARIES "Gpgmepp;Qt6::Core"
- IMPORTED_LOCATION "@resolved_libdir@/libqgpgmeqt6@libsuffix@"
+ IMPORTED_LOCATION "${_IMPORT_PREFIX}/lib/libqgpgmeqt6@libsuffix@"
)
if(CMAKE_VERSION VERSION_LESS 2.8.12)
message(FATAL_ERROR "This file relies on consumers using CMake 2.8.12 or greater.")
endif()
+# Cleanup temporary variables.
+set(_IMPORT_PREFIX)
+
# Loop over all imported files and verify that they actually exist
foreach(target ${_IMPORT_CHECK_TARGETS} )
foreach(file ${_IMPORT_CHECK_FILES_FOR_${target}} )

View file

@ -1,7 +1,7 @@
# Template file for 'gpgme'
pkgname=gpgme
version=1.23.2
revision=2
revision=3
build_style=gnu-configure
build_helper="python3"
configure_args="--enable-fd-passing