Submakefile
1 ../share/locale/%/LC_MESSAGES/linuxcnc.mo: po/%.po 2 $(ECHO) Compiling localized message catalog $@ 3 @mkdir -p $(dir $@) 4 $(Q)msgfmt -o $@ $< 5 6 ../share/locale/%/LC_MESSAGES/gmoccapy.mo: po/gmoccapy/%.po 7 $(ECHO) Compiling localized gmoccapy message catalog $@ 8 @mkdir -p $(dir $@) 9 $(Q)msgfmt -o $@ $< 10 11 # the touch is because for po/zh_CN.po, msgfmt --tcl creates 12 # objects/zh_cn.po and on the next invocation make would try again to 13 # create zh_CN.po 14 objects/%.msg: po/%.po 15 $(ECHO) Compiling localized message catalog $@ 16 $(Q)msgfmt --tcl -d objects -l $* $< && touch $@ 17 18 MO_FILES := $(patsubst po/%.po, %/LC_MESSAGES/linuxcnc.mo, $(wildcard po/*.po)) 19 MO_FILES += $(patsubst po/gmoccapy/%.po, %/LC_MESSAGES/gmoccapy.mo, $(wildcard po/gmoccapy/*.po)) 20 21 $(DESTDIR)$(localedir)/%/LC_MESSAGES/linuxcnc.mo: ../share/locale/%/LC_MESSAGES/linuxcnc.mo 22 $(DIR) $(DESTDIR)$(localedir)/$*/LC_MESSAGES 23 $(FILE) $< $@ 24 25 $(DESTDIR)$(localedir)/%/LC_MESSAGES/gmoccapy.mo: ../share/locale/%/LC_MESSAGES/gmoccapy.mo 26 $(DIR) $(DESTDIR)$(localedir)/$*/LC_MESSAGES 27 $(FILE) $< $@ 28 29 TARGETS += $(patsubst po/%.po, \ 30 ../share/locale/%/LC_MESSAGES/linuxcnc.mo, \ 31 $(wildcard po/*.po)) 32 33 TARGETS += $(patsubst po/gmoccapy/%.po, \ 34 ../share/locale/%/LC_MESSAGES/gmoccapy.mo, \ 35 $(wildcard po/gmoccapy/*.po)) 36 37 TCLSRCS := \ 38 ../tcl/bin/emccalib.tcl \ 39 ../tcl/bin/emcdebug.tcl \ 40 ../tcl/bin/emctesting.tcl \ 41 ../tcl/bin/emctuning.tcl \ 42 ../tcl/bin/genedit.tcl \ 43 ../tcl/bin/halconfig.tcl \ 44 ../tcl/bin/halshow.tcl \ 45 ../tcl/bin/pickconfig.tcl \ 46 ../tcl/bin/tkbackplot.tcl \ 47 ../tcl/show_errors.tcl \ 48 ../tcl/tklinuxcnc.tcl \ 49 ../tcl/scripts/Set_Coordinates.tcl \ 50 ../tcl/scripts/balloon.tcl \ 51 ../tcl/scripts/emchelp.tcl \ 52 ../tcl/ngcgui.tcl \ 53 ../tcl/ngcgui_ttt.tcl \ 54 ../tcl/ngcgui_app.tcl \ 55 ../tcl/tooledit.tcl 56 57 po/linuxcnc.pot: 58 $(ECHO) Localizing linuxcnc.pot 59 (cd ..; $(XGETTEXT) -k_ -o src/$@ `src/po/fixpaths.py -j src $^`) 60 touch $@ 61 TARGETS += po/linuxcnc.pot 62 63 pofiles: po/linuxcnc.pot 64 set -x; for i in po/*.po; do msgmerge -U $$i po/linuxcnc.pot; done 65 66 po/linuxcnc.pot: emc/task/emctaskmain.cc $(LIBRS274SRCS) emc/rs274ngc/rs274ngc_return.hh 67 po/linuxcnc.pot: hal/utils/meter.c \ 68 hal/utils/scope.c \ 69 hal/utils/scope_horiz.c \ 70 hal/utils/scope_vert.c \ 71 hal/utils/scope_trig.c \ 72 hal/utils/scope_disp.c \ 73 hal/utils/scope_files.c \ 74 hal/utils/miscgtk.c 75 po/linuxcnc.pot: emc/motion/control.c emc/motion/command.c emc/motion/motion.c emc/motion/homing.c 76 77 po/linuxcnc.pot: hal/classicladder/arithm_eval.c \ 78 hal/classicladder/arithm_eval.c \ 79 hal/classicladder/arrays.c \ 80 hal/classicladder/calc.c \ 81 hal/classicladder/calc_sequential.c \ 82 hal/classicladder/classicladder.c \ 83 hal/classicladder/classicladder_gtk.c \ 84 hal/classicladder/config.c \ 85 hal/classicladder/config_gtk.c \ 86 hal/classicladder/drawing.c \ 87 hal/classicladder/drawing_sequential.c \ 88 hal/classicladder/edit.c \ 89 hal/classicladder/edit_gtk.c \ 90 hal/classicladder/edit_sequential.c \ 91 hal/classicladder/editproperties_gtk.c \ 92 hal/classicladder/emc_mods.c \ 93 hal/classicladder/files.c \ 94 hal/classicladder/files_project.c \ 95 hal/classicladder/files_sequential.c \ 96 hal/classicladder/manager.c \ 97 hal/classicladder/manager_gtk.c \ 98 hal/classicladder/protocol_modbus_master.c \ 99 hal/classicladder/protocol_modbus_slave.c \ 100 hal/classicladder/serial_linux.c \ 101 hal/classicladder/socket_modbus_master.c \ 102 hal/classicladder/socket_server.c \ 103 hal/classicladder/spy_vars_gtk.c \ 104 hal/classicladder/symbols.c \ 105 hal/classicladder/symbols_gtk.c \ 106 hal/classicladder/vars_names.c \ 107 hal/classicladder/vars_access.c \ 108 109 po/linuxcnc.pot: $(TCLSRCS) 110 po/linuxcnc.pot: $(PYI18NSRCS) 111 112 .PHONY: install-locale 113 install-locale: $(addprefix $(DESTDIR)$(localedir)/, $(MO_FILES)) 114 install-kernel-indep: install-locale 115 116 INTLTOOL_GLADE := \ 117 emc/usr_intf/gmoccapy/gmoccapy.glade.h \ 118 ../lib/python/gladevcp/offsetpage.glade.h \ 119 ../lib/python/gladevcp/tooledit_gtk.glade.h 120 121 $(INTLTOOL_GLADE): %.glade.h: %.glade 122 intltool-extract --type=gettext/glade $< 123 GMOCCAPY_I18N_SRCS := \ 124 $(patsubst %,emc/usr_intf/gmoccapy/%, \ 125 gmoccapy.py dialogs.py getiniinfo.py notification.py player.py \ 126 preferences.py widgets.py gmoccapy.glade.h) \ 127 $(patsubst %,../lib/python/gladevcp/%, \ 128 iconview.py offsetpage_widget.py tooledit_widget.py \ 129 offsetpage.glade.h tooledit_gtk.glade.h) 130 131 po/gmoccapy/gmoccapy.pot: $(GMOCCAPY_I18N_SRCS) 132 $(XGETTEXT) --from-code=UTF-8 --language=Python \ 133 --keyword=_ --keyword=N_ \ 134 --output=$@ $^ 135 TARGETS += po/gmoccapy/gmoccapy.pot 136 137 clean: gmoccapy_i18n_clean 138 gmoccapy_i18n_clean: 139 @rm -f $(INTLTOOL_GLADE)