4 include ../make_include
6 # po2tbl.sed is not taken from /usr/share/gettext/intl
7 # Often it is not present.
8 # A RedHat 5.2 installation only has po2tbl.sed.in.
11 INTL = /usr/share/gettext/intl
12 # FOREIGN=--foreign-user
16 prefix = $(DESTDIR)@prefix@
17 datadir = $(prefix)/share
18 localedir = $(datadir)/locale
19 gnulocaledir = $(prefix)/share/locale
20 gettextsrcdir = $(prefix)/share/gettext/po
22 # Not giving an explicit path improves the chances of finding these
28 INSTALL_DATA = ${INSTALL} -m 644
30 # .. for <config.h> (if HAVE_CONFIG_H is set)
31 # $(INTL) for "libgettext.h"
32 INCLUDES = -I.. -I$(INTL)
34 COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS)
36 # Enter here all .po files
37 POFILES = cs.po da.po de.po es.po fr.po gr.po nl.po pl.po ro.po ru.po sv.po tr.po
38 # the same but with .gmo
39 GMOFILES = cs.gmo da.gmo de.gmo es.gmo fr.gmo gr.gmo nl.gmo pl.gmo ro.gmo ru.gmo sv.gmo tr.gmo
41 CATALOGS = $(GMOFILES)
46 .SUFFIXES: .c .o .po .gmo .mo .msg .cat
58 sed -f $(PO2TBL) < $< > $*.msg \
59 && rm -f $@ && $(GENCAT) $@ $*.msg
61 all: all-$(HAVE_XGETTEXT)
63 all-yes: cat-id-tbl.c $(CATALOGS)
67 $(XGETTEXT) --default-domain=kbd --directory=.. \
68 --add-comments --keyword=_ --keyword=N_ \
69 --files-from=POTFILES.in $(FOREIGN)
72 cat-id-tbl.c: stamp-cat-id
75 sed -f $(PO2TBL) kbd.pot \
76 | sed -e "s/@PACKAGE NAME@/kbd/" > cat-id-tbl.tmp
77 if cmp -s cat-id-tbl.tmp cat-id-tbl.c; then \
80 echo cat-id-tbl.c changed; \
82 mv cat-id-tbl.tmp cat-id-tbl.c; \
84 rm -f stamp-cat-id && echo timestamp > stamp-cat-id
86 install: install-data-$(HAVE_XGETTEXT)
89 ../mkinstalldirs $(datadir);
90 @catalogs='$(CATALOGS)'; \
91 for cat in $$catalogs; do \
93 *.gmo) destdir=$(gnulocaledir);; \
94 *) destdir=$(localedir);; \
96 lang=`echo $$cat | sed 's/$(CATOBJEXT)$$//'`; \
97 dir=$$destdir/$$lang/LC_MESSAGES; \
98 ../mkinstalldirs $$dir; \
99 $(INSTALL_DATA) $$cat $$dir/kbd$(INSTOBJEXT); \
100 echo "installing $$cat as $$dir/kbd$(INSTOBJEXT)"; \
101 if test -r $$cat.m; then \
102 $(INSTALL_DATA) $$cat.m $$dir/kbd$(INSTOBJEXT).m; \
103 echo "installing $$cat.m as $$dir/kbd$(INSTOBJEXT).m"; \
108 catalogs='$(CATALOGS)'; \
109 for cat in $$catalogs; do \
110 lang=`echo $$cat | sed 's/$(CATOBJEXT)$$//'`; \
111 rm -f $(localedir)/$$lang/LC_MESSAGES/kbd$(INSTOBJEXT); \
112 rm -f $(localedir)/$$lang/LC_MESSAGES/kbd$(INSTOBJEXT).m; \
113 rm -f $(gnulocaledir)/$$lang/LC_MESSAGES/kbd$(INSTOBJEXT); \
114 rm -f $(gnulocaledir)/$$lang/LC_MESSAGES/kbd$(INSTOBJEXT).m; \
116 rm -f $(gettextsrcdir)/po-Makefile.in.in
118 cat-id-tbl.o: $(INTL)/libgettext.h
121 rm -f core core.* *~ *.o kbd.pot cat-id-tbl.tmp
124 rm -f POTFILES *.gmo *.mo *.msg *.cat *.cat.m
128 catalogs='$(CATALOGS)'; \
129 for cat in $$catalogs; do \
130 lang=`echo $$cat | sed 's/$(CATOBJEXT)$$//'`; \
131 mv $$lang.po $$lang.old.po; \
133 if $(MSGMERGE) $$lang.old.po kbd.pot -o $$lang.po; then \
134 rm -f $$lang.old.po; \
136 echo "msgmerge for $$cat failed!"; \
138 mv $$lang.old.po $$lang.po; \