summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSlávek Banko <slavek.banko@axis.cz>2020-06-23 18:59:44 +0200
committerSlávek Banko <slavek.banko@axis.cz>2020-06-25 00:39:44 +0200
commit690e7a7ec30cb96baf8c8f0a3f69969ad074aad1 (patch)
tree641eea3da6a3af45f5201653d8223b7e4325432f
parent8d4479fbcc57a40f2bfcf1f26789e24d853c41b5 (diff)
downloadcmake-690e7a7e.tar.gz
cmake-690e7a7e.zip
tde_create_translated_desktop: Process the source file using configure_file
if it has a ".cmake" extension. Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
-rw-r--r--modules/TDEMacros.cmake19
1 files changed, 13 insertions, 6 deletions
diff --git a/modules/TDEMacros.cmake b/modules/TDEMacros.cmake
index 39c44d3..972de94 100644
--- a/modules/TDEMacros.cmake
+++ b/modules/TDEMacros.cmake
@@ -1876,16 +1876,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
@@ -1912,7 +1919,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" )