Warning, /multimedia/kid3/translations/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 set(_languages ca ca@valencia cs da de el en en_GB es et eu fi fr is it ko nl nn pl pt pt_BR ru sl sr sr@ijekavian sr@ijekavianlatin sr@latin sv tr uk zh_CN zh_TW) 0002 0003 # Use -DDOWNLOAD_POS=ON to download the translations directly from SVN. 0004 if(DOWNLOAD_POS STREQUAL "REMOVE") 0005 message(STATUS "Removing po") 0006 file(REMOVE_RECURSE "${CMAKE_CURRENT_SOURCE_DIR}/po") 0007 elseif(DOWNLOAD_POS) 0008 execute_process(COMMAND ${CMAKE_COMMAND} 0009 -P "${CMAKE_CURRENT_SOURCE_DIR}/download-pos.cmake" "${_languages}" 0010 RESULT_VARIABLE result) 0011 if(NOT "${result}" STREQUAL "0") 0012 message(STATUS "Download failed, removing po") 0013 file(REMOVE_RECURSE "${CMAKE_CURRENT_SOURCE_DIR}/po") 0014 endif() 0015 endif() 0016 0017 if(IS_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/po") 0018 set(_poDir ${CMAKE_CURRENT_SOURCE_DIR}/po) 0019 message(WARNING "Using custom translations from ${_poDir}") 0020 else() 0021 set(_poDir ${CMAKE_SOURCE_DIR}/poqm) 0022 endif() 0023 0024 # Using ecm_install_po_files_as_qm() from ECMPoQmTools does not work 0025 # because the generated ts files do not have context information, 0026 # just one single context with an empty name. 0027 0028 set(_poFiles) 0029 set(_tsFiles) 0030 0031 foreach(_lang ${_languages}) 0032 set(_poFiles ${_poFiles} ${_poDir}/${_lang}/kid3_qt.po) 0033 set(_tsFiles ${_tsFiles} ${CMAKE_CURRENT_BINARY_DIR}/kid3_${_lang}.ts) 0034 endforeach() 0035 0036 if(APPLE OR WIN32 OR ANDROID OR LINUX_SELF_CONTAINED) 0037 if(NOT QT_TRANSLATIONS_DIR) 0038 if(TARGET Qt${QT_VERSION_MAJOR}::qmake) 0039 get_target_property(QT_TRANSLATIONS_DIR Qt${QT_VERSION_MAJOR}::qmake LOCATION) 0040 endif() 0041 get_filename_component(QT_TRANSLATIONS_DIR ${QT_TRANSLATIONS_DIR} PATH) 0042 get_filename_component(QT_TRANSLATIONS_DIR ${QT_TRANSLATIONS_DIR} PATH) 0043 set(QT_TRANSLATIONS_DIR "${QT_TRANSLATIONS_DIR}/translations") 0044 endif() 0045 0046 # Also copy or convert the Qt language files from the Qt installation. 0047 set(_qtQmFiles) 0048 set(_qtTsFiles) 0049 set(_qtCopiedQmFiles) 0050 0051 set(_qttranslation_prefix "${QT_TRANSLATIONS_DIR}/qtbase_") 0052 set(_qtCopiedQm_prefix "${CMAKE_CURRENT_BINARY_DIR}/qtbase_") 0053 foreach(_lang ${_languages}) 0054 if(EXISTS ${_qttranslation_prefix}${_lang}.qm) 0055 set(_qtQmFiles ${_qtQmFiles} ${_qttranslation_prefix}${_lang}.qm) 0056 if(HAVE_TRANSLATIONSDIR_IN_QRC) 0057 set(_qtCopiedQmFiles ${_qtCopiedQmFiles} ${_qtCopiedQm_prefix}${_lang}.qm) 0058 endif() 0059 elseif(EXISTS ${_qttranslation_prefix}${_lang}.ts) 0060 set(_qtTsFiles ${_qtTsFiles} ${_qttranslation_prefix}${_lang}.ts) 0061 endif() 0062 endforeach() 0063 endif() 0064 0065 if(_tsFiles) 0066 add_custom_command( 0067 OUTPUT ${_tsFiles} 0068 COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/po2ts.py 0069 ${QT_LUPDATE_EXECUTABLE} ${_poDir} 0070 ${CMAKE_CURRENT_SOURCE_DIR}/../src 0071 DEPENDS ${_poFiles} 0072 ) 0073 endif() 0074 0075 if(_qtCopiedQmFiles) 0076 add_custom_command( 0077 OUTPUT ${_qtCopiedQmFiles} 0078 COMMAND ${CMAKE_COMMAND} -E copy ${_qtQmFiles} ${CMAKE_CURRENT_BINARY_DIR} 0079 DEPENDS ${_qtQmFiles} 0080 ) 0081 endif() 0082 0083 if(APPLE OR WIN32 OR ANDROID OR LINUX_SELF_CONTAINED) 0084 qt_add_translation(_qmFiles ${_tsFiles} ${_qtTsFiles}) 0085 add_custom_target(translations "ALL" DEPENDS ${_qmFiles} ${_qtCopiedQmFiles}) 0086 set(_installQmFiles ${_qmFiles} ${_qtQmFiles}) 0087 else() 0088 qt_add_translation(_qmFiles ${_tsFiles}) 0089 add_custom_target(translations "ALL" DEPENDS ${_qmFiles}) 0090 set(_installQmFiles ${_qmFiles}) 0091 endif() 0092 if(NOT HAVE_TRANSLATIONSDIR_IN_QRC) 0093 install(FILES ${_installQmFiles} DESTINATION ${WITH_TRANSLATIONSDIR}) 0094 endif()