-#
-# Find the msgfmt program
-#
-# Modified from Rosegarden project
-#
-# Defined variables:
-# MSGFMT_FOUND
-# MSGFMT_EXECUTABLE
-#
-# Macro:
-# ADD_TRANSLATIONS
-#
-
-IF(MSGFMT_EXECUTABLE)
- SET(MSGFMT_FOUND TRUE)
-ELSE(MSGFMT_EXECUTABLE)
- FIND_PROGRAM(MSGFMT_EXECUTABLE
- NAMES msgfmt gmsgfmt
- PATHS /bin /usr/bin /usr/local/bin )
- IF(MSGFMT_EXECUTABLE)
- SET(MSGFMT_FOUND TRUE)
- ELSE(MSGFMT_EXECUTABLE)
- IF(NOT MSGFMT_FIND_QUIETLY)
- IF(MSGFMT_FIND_REQUIRED)
- MESSAGE(FATAL_ERROR "msgfmt program couldn't be found")
- ENDIF(MSGFMT_FIND_REQUIRED)
- ENDIF(NOT MSGFMT_FIND_QUIETLY)
- ENDIF(MSGFMT_EXECUTABLE)
- MARK_AS_ADVANCED(MSGFMT_EXECUTABLE)
-ENDIF (MSGFMT_EXECUTABLE)
-IF(MSGFMT_FOUND)
- MESSAGE(STATUS "Found msgfmt: ${MSGFMT_EXECUTABLE}")
-ENDIF(MSGFMT_FOUND)
-
-MACRO(ADD_TRANSLATIONS _lang)
- SET(_outputs)
- FOREACH(_file ${ARGN})
- GET_FILENAME_COMPONENT(_file_we ${_file} NAME_WE)
- SET(_out "${CMAKE_CURRENT_BINARY_DIR}/${_file_we}.mo")
- SET(_in "${CMAKE_CURRENT_SOURCE_DIR}/${_file_we}.po")
- ADD_CUSTOM_COMMAND(
- OUTPUT ${_out}
- COMMAND ${MSGFMT_EXECUTABLE} -o ${_out} ${_in}
- DEPENDS ${_in} )
- INSTALL(FILES ${_out}
- DESTINATION ${LOCALE_INSTALL_DIR}/${_lang}/LC_MESSAGES )
- SET(_outputs ${_outputs} ${_out})
- ENDFOREACH(_file)
- ADD_CUSTOM_TARGET(translations ALL DEPENDS ${_outputs})
-ENDMACRO(ADD_TRANSLATIONS)
\ No newline at end of file