diff options
Diffstat (limited to 'KF5ConfigMacros.cmake')
| -rw-r--r-- | KF5ConfigMacros.cmake | 19 | 
1 files changed, 17 insertions, 2 deletions
| diff --git a/KF5ConfigMacros.cmake b/KF5ConfigMacros.cmake index 65af42a6..469d9b01 100644 --- a/KF5ConfigMacros.cmake +++ b/KF5ConfigMacros.cmake @@ -75,8 +75,23 @@ function (KCONFIG_ADD_KCFG_FILES _sources )                  set(_kcfg_FILENAME "${_basename}.kcfg")              endif()         endif() -       set(_src_FILE    ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) -       set(_header_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + +       string(REGEX MATCH "HeaderExtension=([^\n]+)\n" "" "${_contents}") +       if(CMAKE_MATCH_1) +            set(_kcfg_header_EXT "${CMAKE_MATCH_1}") +       else() +            set(_kcfg_header_EXT "h") +       endif() + +       string(REGEX MATCH "SourceExtension=([^\n]+)\n" "" "${_contents}") +       if(CMAKE_MATCH_1) +            set(_kcfg_src_EXT "${CMAKE_MATCH_1}") +       else() +            set(_kcfg_src_EXT "cpp") +       endif() + +       set(_src_FILE    ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.${_kcfg_src_EXT}) +       set(_header_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.${_kcfg_header_EXT})         set(_moc_FILE    ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc)         set(_kcfg_FILE   ${_abs_PATH}/${_kcfg_FILENAME})         # Maybe the .kcfg is a generated file? | 
