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)/usr
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 el.po es.po fr.po gr.po nl.po pl.po \
38 ro.po ru.po sv.po tr.po
39 # the same but with .gmo
40 GMOFILES = cs.gmo da.gmo de.gmo el.gmo es.gmo fr.gmo gr.gmo nl.gmo \
41 pl.gmo ro.gmo ru.gmo sv.gmo tr.gmo
43 CATALOGS = $(GMOFILES)
48 .SUFFIXES: .c .o .po .gmo .mo .msg .cat
60 sed -f $(PO2TBL) < $< > $*.msg \
61 && rm -f $@ && $(GENCAT) $@ $*.msg
63 all: all-$(HAVE_XGETTEXT)
65 all-yes: cat-id-tbl.c $(CATALOGS)
69 $(XGETTEXT) --default-domain=kbd --directory=.. \
70 --add-comments --keyword=_ --keyword=N_ \
71 --files-from=POTFILES.in $(FOREIGN)
74 cat-id-tbl.c: stamp-cat-id
77 sed -f $(PO2TBL) kbd.pot \
78 | sed -e "s/@PACKAGE NAME@/kbd/" > cat-id-tbl.tmp
79 if cmp -s cat-id-tbl.tmp cat-id-tbl.c; then \
82 echo cat-id-tbl.c changed; \
84 mv cat-id-tbl.tmp cat-id-tbl.c; \
86 rm -f stamp-cat-id && echo timestamp > stamp-cat-id
88 install: install-data-$(HAVE_XGETTEXT)
91 ../mkinstalldirs $(datadir);
92 @catalogs='$(CATALOGS)'; \
93 for cat in $$catalogs; do \
95 *.gmo) destdir=$(gnulocaledir);; \
96 *) destdir=$(localedir);; \
98 lang=`echo $$cat | sed 's/$(CATOBJEXT)$$//'`; \
99 dir=$$destdir/$$lang/LC_MESSAGES; \
100 ../mkinstalldirs $$dir; \
101 $(INSTALL_DATA) $$cat $$dir/kbd$(INSTOBJEXT); \
102 echo "installing $$cat as $$dir/kbd$(INSTOBJEXT)"; \
103 if test -r $$cat.m; then \
104 $(INSTALL_DATA) $$cat.m $$dir/kbd$(INSTOBJEXT).m; \
105 echo "installing $$cat.m as $$dir/kbd$(INSTOBJEXT).m"; \
110 catalogs='$(CATALOGS)'; \
111 for cat in $$catalogs; do \
112 lang=`echo $$cat | sed 's/$(CATOBJEXT)$$//'`; \
113 rm -f $(localedir)/$$lang/LC_MESSAGES/kbd$(INSTOBJEXT); \
114 rm -f $(localedir)/$$lang/LC_MESSAGES/kbd$(INSTOBJEXT).m; \
115 rm -f $(gnulocaledir)/$$lang/LC_MESSAGES/kbd$(INSTOBJEXT); \
116 rm -f $(gnulocaledir)/$$lang/LC_MESSAGES/kbd$(INSTOBJEXT).m; \
118 rm -f $(gettextsrcdir)/po-Makefile.in.in
120 cat-id-tbl.o: $(INTL)/libgettext.h
123 rm -f core core.* *~ *.o kbd.pot cat-id-tbl.tmp
126 rm -f POTFILES *.gmo *.mo *.msg *.cat *.cat.m
130 catalogs='$(CATALOGS)'; \
131 for cat in $$catalogs; do \
132 lang=`echo $$cat | sed 's/$(CATOBJEXT)$$//'`; \
133 mv $$lang.po $$lang.old.po; \
135 if $(MSGMERGE) $$lang.old.po kbd.pot -o $$lang.po; then \
136 rm -f $$lang.old.po; \
138 echo "msgmerge for $$cat failed!"; \
140 mv $$lang.old.po $$lang.po; \