diff options
author | Slávek Banko <slavek.banko@axis.cz> | 2020-04-02 05:26:51 +0200 |
---|---|---|
committer | Slávek Banko <slavek.banko@axis.cz> | 2020-04-02 05:26:51 +0200 |
commit | 7183c21e0836e839d3931d18b1971c7aafccb30e (patch) | |
tree | 2dd05ddadca7022e5fe0141d84b4540f3f9b1f1f | |
parent | 6574bc5ae92f85d97705d1f41cf52709246122e5 (diff) | |
download | tde-cmake-7183c21e.tar.gz tde-cmake-7183c21e.zip |
tde_create_translated_desktop: Cleaning the LINGUAS file
that is generated for merging desktop file translations
will not be performed as a POST BUILD command, but as a
separate target.
This solves premature file deletion if multiple desktop
files use a common translation folder.
Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
-rw-r--r-- | modules/TDEMacros.cmake | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/modules/TDEMacros.cmake b/modules/TDEMacros.cmake index a5d137b..f395d9e 100644 --- a/modules/TDEMacros.cmake +++ b/modules/TDEMacros.cmake @@ -1684,12 +1684,21 @@ macro( tde_create_translated_desktop ) DEPENDS ${_src} ) add_custom_target( "${_out_name}-translated" ALL DEPENDS ${_out_name} ) - add_custom_command( - TARGET "${_out_name}-translated" - POST_BUILD COMMAND ${CMAKE_COMMAND} -E remove ${_po_dir}/LINGUAS - ) install( FILES ${CMAKE_CURRENT_BINARY_DIR}/${_out_name} DESTINATION ${_dest} ) + # cleanup LINGUAS file + get_filename_component( _linguas_path "${_po_dir}/LINGUAS" ABSOLUTE ) + file( RELATIVE_PATH _linguas_path "${CMAKE_SOURCE_DIR}" "${_linguas_path}" ) + string( REPLACE "/" "+" _linguas_cleanup_target "${_linguas_path}" ) + if( NOT TARGET ${_linguas_cleanup_target} ) + add_custom_target( ${_linguas_cleanup_target} ALL + COMMAND ${CMAKE_COMMAND} -E remove ${_po_dir}/LINGUAS + COMMENT "Cleanup ${_linguas_path} file..." + ) + endif( NOT TARGET ${_linguas_cleanup_target} ) + + add_dependencies( ${_linguas_cleanup_target} "${_out_name}-translated" ) + else( ) # create template for intltool-merge |