/ src / po / Submakefile
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)