mirror of
https://github.com/neovim/neovim.git
synced 2025-02-25 18:55:25 -06:00
Move po generation from Make to CMake.
Fixes #902: localization build: `install`, `uninstall`, `prefixcheck targets. All the language-related bits will now build under CMake. Changes include: * Moving all non-generated sources into the NEOVIM_SOURCES variable to aid in generating the .pot file. * Moving a couple generated sources from NEOVIM_SOURCES and into NEOVIM_GENERATED_SOURCES. * Added NEOVIM_HEADERS to the executable and the library for folks who are using something other than Ninja or makefiles (that way the headers will show up in the IDE files). * Now uses gettext's `--update` switch to update the .po files, rather than doing a fragile `mv` dance that could leave you with a broken working tree if you press CTRL-C at the right time. * Creates `update-po-${LANG}` targets for updating individual languages, just like the original Makefile. * Also adds the `update-po` target for updating all the languages. * Ported the `check-${LANG}` style targets. They're `check-po-${LANG}` under CMake. * Handles all the one-off instances that were in the original Makefile. Fixed up ko.UTF-8.po to include the "Original translation" line like other .po files to make the generation of the "Generate from ..." comments consistent. Updated ko.po with the new text.
This commit is contained in:
21
cmake/ConvertPo.cmake
Normal file
21
cmake/ConvertPo.cmake
Normal file
@@ -0,0 +1,21 @@
|
||||
string(TOUPPER ${INPUT_ENC} upperInputEnc)
|
||||
string(TOLOWER ${INPUT_ENC} lowerInputEnc)
|
||||
get_filename_component(inputName ${INPUT_FILE} NAME)
|
||||
execute_process(
|
||||
COMMAND ${ICONV_PRG} -f ${INPUT_ENC} -t ${OUTPUT_ENC} ${INPUT_FILE}
|
||||
OUTPUT_VARIABLE trans
|
||||
ERROR_VARIABLE err
|
||||
RESULT_VARIABLE res)
|
||||
if(NOT res EQUAL 0)
|
||||
message(FATAL_ERROR "iconv failed to run correctly: ${err}")
|
||||
endif()
|
||||
|
||||
string(REPLACE "charset=${lowerInputEnc}" "charset=${OUTPUT_CHARSET}"
|
||||
trans "${trans}")
|
||||
string(REPLACE "charset=${upperInputEnc}" "charset=${OUTPUT_CHARSET}"
|
||||
trans "${trans}")
|
||||
string(REPLACE "# Original translations"
|
||||
"# Generated from ${inputName}, DO NOT EDIT"
|
||||
trans "${trans}")
|
||||
|
||||
file(WRITE ${OUTPUT_FILE} "${trans}")
|
||||
Reference in New Issue
Block a user