Review Request 117823: Add ecm_install_po_files_as_qm() function
Aurélien Gâteau
agateau at kde.org
Wed Apr 30 16:48:02 UTC 2014
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/117823/
-----------------------------------------------------------
(Updated April 30, 2014, 6:48 p.m.)
Review request for Build System, Extra Cmake Modules and KDE Frameworks.
Changes
-------
- Introduced a new ECMPoQmTools.cmake.
- Reverted ECMCreateQmFromPoFiles.cmake to the version from v0.0.12 (except for the find_package(Qt5LinguistTools)).
- Added unit tests (I created some functions in check_tree.cmake.in which could be useful in other tests).
Repository: extra-cmake-modules
Description
-------
This patch adds a ecm_install_po_files_as_qm() function to ECMCreateQmFromPoFiles.cmake. This function makes it easy to install all the .po files of a Qt-translated framework.
The primary user of this function is the build system of the framework tarballs. The tarballs will ship with a po/ directory which follows the structure expected by ecm_install_po_files_as_qm(). The only necessary change is to add the following lines to the root CMakeLists.txt file:
if (IS_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/po")
ecm_install_po_files_as_qm(po)
endif()
Since the code checks for the presence of a po/ directory, it can be committed in the framework repository (no need for the tarball release scripts to alter the CMake files), making it easier for developers to reproduce the situation of a released tarball by creating/copying a po/ directory in their working copy.
We need this function (or something similar) because the way we are going to organize po files in the framework tarballs have changed: the current CMake code expects the po files to contain files named '<domain>-<lang>.po', but the final structure is going to be '<lang>/<domain>.po'.
This new function works similarly to ki18n_install() ( https://git.reviewboard.kde.org/r/117804/ ) and kdoctools_install() ( https://git.reviewboard.kde.org/r/117805/ )
Diffs (updated)
-----
modules/ECMCreateQmFromPoFiles.cmake 7457fc5
modules/ECMPoQmTools.cmake PRE-CREATION
modules/ECMQmLoader.cpp.in 2d8531f
tests/CMakeLists.txt 171f44a
tests/ECMPoQmToolsTest/CMakeLists.txt PRE-CREATION
tests/ECMPoQmToolsTest/check_tree.cmake.in PRE-CREATION
tests/ECMPoQmToolsTest/po/es/install-test.po PRE-CREATION
tests/ECMPoQmToolsTest/po/fr/install-test.po PRE-CREATION
tests/ECMPoQmToolsTest/test.po PRE-CREATION
Diff: https://git.reviewboard.kde.org/r/117823/diff/
Testing
-------
Modified kbookmarks to call ecm_install_po_files_as_qm(). Works as expected.
Thanks,
Aurélien Gâteau
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20140430/eb43d99d/attachment-0001.html>
More information about the Kde-frameworks-devel
mailing list