From 6d10436e93b2cfbc9ffc1ce2bb2002e3f42ed45c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sl=C3=A1vek=20Banko?= Date: Tue, 23 Jun 2020 18:59:44 +0200 Subject: [PATCH] tde_create_translated_desktop: Process the source file using configure_file if it has a ".cmake" extension. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Slávek Banko (cherry picked from commit 690e7a7ec30cb96baf8c8f0a3f69969ad074aad1) --- modules/TDEMacros.cmake | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/modules/TDEMacros.cmake b/modules/TDEMacros.cmake index 2a04f28..0211be8 100644 --- a/modules/TDEMacros.cmake +++ b/modules/TDEMacros.cmake @@ -1689,16 +1689,23 @@ macro( tde_create_translated_desktop ) get_filename_component( _basedir ${_basename} PATH ) file( RELATIVE_PATH _basename "${CMAKE_CURRENT_SOURCE_DIR}" "${_basename}" ) - # if no output name specified, use the same as source - if( NOT _out_name ) - get_filename_component( _out_name ${_src} NAME ) - endif( ) - # prepare the binary directory according to source directory file( RELATIVE_PATH _binary_basedir "${CMAKE_CURRENT_SOURCE_DIR}" "${_basedir}" ) set( _binary_basedir "${CMAKE_CURRENT_BINARY_DIR}/${_binary_basedir}" ) file( MAKE_DIRECTORY "${_binary_basedir}" ) + # process source file as a configuration file if necessary + if( "${_src}" MATCHES "\\.cmake$" ) + configure_file( ${_src} ${_basename} @ONLY ) + set( ${_src} "${CMAKE_CURRENT_BINARY_DIR}/${_basename}" ) + string( REGEX REPLACE "\\.cmake$" "" _basename "${_basename}" ) + endif() + + # if no output name specified, use the same as source + if( NOT _out_name ) + get_filename_component( _out_name ${_basename} NAME ) + endif( ) + # if no po directory specified, try to determine it if( NOT _po_dir ) if( EXISTS ${CMAKE_SOURCE_DIR}/translations/desktop_files/${_basename} AND @@ -1725,7 +1732,7 @@ macro( tde_create_translated_desktop ) if( _translations ) # prepare a full name for the target - get_filename_component( _target ${_src} ABSOLUTE ) + get_filename_component( _target ${_basename} ABSOLUTE ) file( RELATIVE_PATH _target "${CMAKE_SOURCE_DIR}" "${_target}" ) string( REPLACE "/" "+" _target "${_target}-translated" )