aboutsummaryrefslogtreecommitdiff
path: root/modules/ECMPoQmTools.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'modules/ECMPoQmTools.cmake')
-rw-r--r--modules/ECMPoQmTools.cmake26
1 files changed, 15 insertions, 11 deletions
diff --git a/modules/ECMPoQmTools.cmake b/modules/ECMPoQmTools.cmake
index 74dc6563..12bcf6b6 100644
--- a/modules/ECMPoQmTools.cmake
+++ b/modules/ECMPoQmTools.cmake
@@ -65,6 +65,8 @@
# ``<install_destination>`` defaults to ``${LOCALE_INSTALL_DIR}`` if defined,
# otherwise it uses ``${CMAKE_INSTALL_LOCALEDIR}`` if that is defined, otherwise
# it uses ``share/locale``.
+#
+# Since pre-1.0.0.
#=============================================================================
# Copyright 2007-2009 Kitware, Inc.
@@ -119,18 +121,20 @@ function(ecm_process_po_files_as_qm lang)
endif()
# Find lrelease and lconvert
-
- # This gives us Qt5::lrelease but unfortunately no Qt5::lconvert See
- # https://bugreports.qt-project.org/browse/QTBUG-37937
find_package(Qt5LinguistTools CONFIG REQUIRED)
- get_target_property(lrelease_location Qt5::lrelease LOCATION)
- get_filename_component(lrelease_path ${lrelease_location} PATH)
- find_program(lconvert_executable
- NAMES lconvert-qt5 lconvert
- PATHS ${lrelease_path}
- NO_DEFAULT_PATH
- )
+ if(TARGET Qt5::lconvert)
+ set(lconvert_executable Qt5::lconvert)
+ else()
+ # Qt < 5.3.1 does not define Qt5::lconvert
+ get_target_property(lrelease_location Qt5::lrelease LOCATION)
+ get_filename_component(lrelease_path ${lrelease_location} PATH)
+ find_program(lconvert_executable
+ NAMES lconvert-qt5 lconvert
+ PATHS ${lrelease_path}
+ NO_DEFAULT_PATH
+ )
+ endif()
# Create commands to turn po files into qm files
set(qm_files)
@@ -151,7 +155,7 @@ function(ecm_process_po_files_as_qm lang)
COMMAND ${lconvert_executable}
ARGS -i ${po_file} -o ${ts_file} -target-language ${lang}
COMMAND Qt5::lrelease
- ARGS -compress -removeidentical -silent ${ts_file} -qm ${qm_file}
+ ARGS -removeidentical -silent ${ts_file} -qm ${qm_file}
DEPENDS ${po_file}
)
if (ARGS_INSTALL_DESTINATION)