summaryrefslogtreecommitdiff
path: root/po/CMakeLists.txt
blob: ffd28346dec962ebc24eb69ecb124dd90ce046ce (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
# for i18n

SET(POFILES
 as.po
 bn.po
 en.po
 en_PH.po
 en_US.po
 es_US.po
 gu.po
 hi.po
 id.po
 km.po
 kn.po
 ko_KR.po
 lo.po
 ml.po
 mr.po
 ms.po
 my.po
 ne.po
 or.po
 pa.po
 pt_BR.po
 si.po
 ta.po
 te.po
 th.po
 tl.po
 ur.po
 vi.po
 zh_CN.po)

SET(MSGFMT "/usr/bin/msgfmt")

FOREACH(pofile ${POFILES})
	SET(pofile ${CMAKE_CURRENT_SOURCE_DIR}/${pofile})
	MESSAGE("PO: ${pofile}")
	GET_FILENAME_COMPONENT(absPofile ${pofile} ABSOLUTE)
	GET_FILENAME_COMPONENT(lang ${absPofile} NAME_WE)
	SET(moFile ${CMAKE_CURRENT_BINARY_DIR}/${lang}.mo)
	ADD_CUSTOM_COMMAND(
			OUTPUT ${moFile}
			COMMAND ${MSGFMT} -o ${moFile} ${absPofile}
			DEPENDS ${absPofile}
	)
	INSTALL(FILES ${moFile}
			DESTINATION ${LOCALEDIR}/${lang}/LC_MESSAGES RENAME ${PROJECT_NAME}.mo)
	SET(moFiles ${moFiles} ${moFile})
ENDFOREACH(pofile)

MESSAGE(".mo files: ${moFiles}")
ADD_CUSTOM_TARGET(po ALL DEPENDS ${moFiles})