File 0002-Add-cross-compile-support-for-kconfig_compiler-and-k.patch of Package mingw64-kconfig

diff -ur kconfig-5.103.0.orig/KF5ConfigConfig.cmake.in kconfig-5.103.0/KF5ConfigConfig.cmake.in
--- kconfig-5.103.0.orig/KF5ConfigConfig.cmake.in	2023-02-05 10:18:56.000000000 +0100
+++ kconfig-5.103.0/KF5ConfigConfig.cmake.in	2024-07-02 15:19:12.146182382 +0200
@@ -20,5 +20,11 @@
     include("${KCONFIGCOMPILER_PATH}")
 else()
     include("${CMAKE_CURRENT_LIST_DIR}/KF5ConfigCompilerTargets.cmake")
+    if(CMAKE_CROSSCOMPILING AND KCONFIG_COMPILER_EXECUTABLE)
+        set_target_properties(KF5::kconfig_compiler PROPERTIES IMPORTED_LOCATION_NONE ${KCONFIG_COMPILER_EXECUTABLE})
+    endif()
+    if(CMAKE_CROSSCOMPILING AND KCONF_UPDATE_EXECUTABLE)
+        set_target_properties(KF5::kconf_update PROPERTIES IMPORTED_LOCATION_NONE ${KCONF_UPDATE_EXECUTABLE})
+    endif()
 endif()
 include("${CMAKE_CURRENT_LIST_DIR}/KF5ConfigMacros.cmake")
diff -ur kconfig-5.103.0.orig/src/kconfig_compiler/CMakeLists.txt kconfig-5.103.0/src/kconfig_compiler/CMakeLists.txt
--- kconfig-5.103.0.orig/src/kconfig_compiler/CMakeLists.txt	2023-02-05 10:18:56.000000000 +0100
+++ kconfig-5.103.0/src/kconfig_compiler/CMakeLists.txt	2024-07-02 15:19:12.146182382 +0200
@@ -4,6 +4,8 @@
     if(BUILD_TESTING)
         message(WARNING "Testing should be disabled on cross-compilation")
     endif()
+    add_executable(KF5::kconfig_compiler IMPORTED GLOBAL)
+    set_target_properties(KF5::kconfig_compiler PROPERTIES IMPORTED_LOCATION ${KCONFIG_COMPILER_EXECUTABLE})
 else()
     add_executable(KF5::kconfig_compiler ALIAS kconfig_compiler)
 endif()
Nur in kconfig-5.103.0/src/kconfig_compiler: CMakeLists.txt.orig.
diff -ur kconfig-5.103.0.orig/src/kconf_update/CMakeLists.txt kconfig-5.103.0/src/kconf_update/CMakeLists.txt
--- kconfig-5.103.0.orig/src/kconf_update/CMakeLists.txt	2023-02-05 10:18:56.000000000 +0100
+++ kconfig-5.103.0/src/kconf_update/CMakeLists.txt	2024-07-02 15:20:51.669976016 +0200
@@ -1,5 +1,10 @@
 add_executable(kconf_update)
-add_executable(KF5::kconf_update ALIAS kconf_update)
+if(CMAKE_CROSSCOMPILING AND KCONF_UPDATE_EXECUTABLE)
+    add_executable(KF5::kconf_update IMPORTED GLOBAL)
+    set_target_properties(KF5::kconf_update PROPERTIES IMPORTED_LOCATION ${KCONF_UPDATE_EXECUTABLE})
+else()
+    add_executable(KF5::kconf_update ALIAS kconf_update)
+endif()
 
 target_sources(kconf_update PRIVATE
     kconf_update.cpp
diff -ur kconfig-5.103.0.orig/KF5ConfigMacros.cmake kconfig-5.103.0/KF5ConfigMacros.cmake
--- kconfig-5.103.0.orig/KF5ConfigMacros.cmake  2023-02-05 10:18:56.000000000 +0100
+++ kconfig-5.103.0/KF5ConfigMacros.cmake       2024-07-04 10:30:46.855693866 +0200
@@ -14,6 +14,15 @@
 
 include(CMakeParseArguments)
 
+
+if(CMAKE_CROSSCOMPILING AND KCONFIG_COMPILER_EXECUTABLE)
+    set(KCONFIG_KCONFIG_COMPILER_EXECUTABLE ${KCONFIG_COMPILER_EXECUTABLE})
+    set(KCONFIG_KCONFIG_COMPILER_DEPENDS)
+else()
+    set(KCONFIG_KCONFIG_COMPILER_EXECUTABLE "KF5::kconfig_compiler")
+    set(KCONFIG_KCONFIG_COMPILER_DEPENDS ${KCONFIG_KCONFIG_COMPILER_EXECUTABLE})
+endif()
+
 function (KCONFIG_ADD_KCFG_FILES _target_or_source_var)
    set(options GENERATE_MOC USE_RELATIVE_PATH)
    cmake_parse_arguments(ARG "${options}" "" "" ${ARGN})
@@ -99,10 +108,10 @@
 
        # the command for creating the source file from the kcfg file
        add_custom_command(OUTPUT ${_header_FILE} ${_src_FILE}
-                          COMMAND KF5::kconfig_compiler
+                          COMMAND ${KCONFIG_KCONFIG_COMPILER_EXECUTABLE}
                           ARGS ${_kcfg_FILE} ${_tmp_FILE} -d ${CMAKE_CURRENT_BINARY_DIR}/${_rel_PATH}
                           MAIN_DEPENDENCY ${_tmp_FILE}
-                          DEPENDS ${_kcfg_FILE} KF5::kconfig_compiler)
+                          DEPENDS ${_kcfg_FILE} ${KCONFIG_KCONFIG_COMPILER_DEPENDS})
 
        set_source_files_properties(${_header_FILE} ${_src_FILE} PROPERTIES
            SKIP_AUTOMOC ON
openSUSE Build Service is sponsored by