]> Pileus Git - ~andy/gtk/blob - po-properties/Makefile.in.in
Merge branch 'master' into toolpalette
[~andy/gtk] / po-properties / Makefile.in.in
1 # Makefile for program source directory in GNU NLS utilities package.
2 # Copyright (C) 1995, 1996, 1997 by Ulrich Drepper <drepper@gnu.ai.mit.edu>
3 #
4 # This file file be copied and used freely without restrictions.  It can
5 # be used in projects which are not available under the GNU Public License
6 # but which still want to provide support for the GNU gettext functionality.
7 # Please note that the actual code is *not* freely available.
8 #
9 # - Modified by Owen Taylor <otaylor@redhat.com> to use GETTEXT_PACKAGE
10 #   instead of PACKAGE and to look for po2tbl in ./ not in intl/
11 #
12 # - Modified by jacob berkman <jacob@ximian.com> to install
13 #   Makefile.in.in and po2tbl.sed.in for use with glib-gettextize
14
15 GETTEXT_PACKAGE = @GETTEXT_PACKAGE@-properties
16 PACKAGE = @PACKAGE@
17 VERSION = @VERSION@
18
19 XGETTEXT_KEYWORDS = --keyword --keyword=P_
20
21 SHELL = @SHELL@
22 @SET_MAKE@
23
24 srcdir = @srcdir@
25 top_srcdir = @top_srcdir@
26 VPATH = @srcdir@
27
28 prefix = @prefix@
29 exec_prefix = @exec_prefix@
30 datadir = @datadir@
31 libdir = @libdir@
32 localedir = $(libdir)/locale
33 gnulocaledir = $(datadir)/locale
34 gettextsrcdir = $(datadir)/glib-2.0/gettext/po
35 subdir = po-properties
36 install_sh = @install_sh@
37 mkdir_p = $(install_sh) -d
38
39 INSTALL = @INSTALL@
40 INSTALL_DATA = @INSTALL_DATA@
41
42 CC = @CC@
43 GENCAT = @GENCAT@
44 GMSGFMT = @GMSGFMT@
45 MSGFMT = @MSGFMT@
46 XGETTEXT = @XGETTEXT@
47 MSGMERGE = msgmerge
48
49 DEFS = @DEFS@
50 CFLAGS = @CFLAGS@
51 CPPFLAGS = @CPPFLAGS@
52
53 INCLUDES = -I.. -I$(top_srcdir)/intl
54
55 COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS)
56
57 SOURCES = 
58 POFILES = @POFILES@
59 GMOFILES = @GMOFILES@
60 DISTFILES = ChangeLog Makefile.in.in POTFILES.in $(GETTEXT_PACKAGE).pot \
61 $(POFILES) $(GMOFILES) $(SOURCES)
62
63 POTFILES = \
64
65 CATALOGS = @CATALOGS@
66 CATOBJEXT = @CATOBJEXT@
67 INSTOBJEXT = @INSTOBJEXT@
68
69 .SUFFIXES:
70 .SUFFIXES: .c .o .po .pox .gmo .mo .msg .cat
71
72 .c.o:
73         $(COMPILE) $<
74
75 .po.pox:
76         $(MAKE) $(GETTEXT_PACKAGE).pot
77         $(MSGMERGE) $< $(srcdir)/$(GETTEXT_PACKAGE).pot -o $*.pox
78
79 .po.mo:
80         $(MSGFMT) -o $@ $<
81
82 .po.gmo:
83         file=$(srcdir)/`echo $* | sed 's,.*/,,'`.gmo \
84           && rm -f $$file && $(GMSGFMT) -c -o $$file $<
85
86 .po.cat:
87         sed -f ../intl/po2msg.sed < $< > $*.msg \
88           && rm -f $@ && $(GENCAT) $@ $*.msg
89
90
91 all: all-@USE_NLS@
92
93 all-yes: $(CATALOGS)
94 all-no:
95
96 $(srcdir)/$(GETTEXT_PACKAGE).pot: $(POTFILES)
97         $(XGETTEXT) --default-domain=$(GETTEXT_PACKAGE) --directory=$(top_srcdir) \
98           --add-comments --keyword --keyword=P_ \
99           --files-from=$(srcdir)/POTFILES.in \
100         && test ! -f $(GETTEXT_PACKAGE).po \
101            || ( rm -f $(srcdir)/$(GETTEXT_PACKAGE).pot \
102                 && mv $(GETTEXT_PACKAGE).po $(srcdir)/$(GETTEXT_PACKAGE).pot )
103
104 install: install-exec install-data
105 install-exec:
106 install-data: install-data-@USE_NLS@
107 install-data-no: all
108 install-data-yes: all
109         $(mkdir_p) $(DESTDIR)$(datadir); \
110         catalogs='$(CATALOGS)'; \
111         for cat in $$catalogs; do \
112           cat=`basename $$cat`; \
113           case "$$cat" in \
114             *.gmo) destdir=$(gnulocaledir);; \
115             *)     destdir=$(localedir);; \
116           esac; \
117           lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
118           dir=$(DESTDIR)$$destdir/$$lang/LC_MESSAGES; \
119           $(mkdir_p) $$dir; \
120           if test -r $$cat; then \
121             $(INSTALL_DATA) $$cat $$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT); \
122             echo "installing $$cat as $$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT)"; \
123           else \
124             $(INSTALL_DATA) $(srcdir)/$$cat $$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT); \
125             echo "installing $(srcdir)/$$cat as" \
126                  "$$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT)"; \
127           fi; \
128           if test -r $$cat.m; then \
129             $(INSTALL_DATA) $$cat.m $$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT).m; \
130             echo "installing $$cat.m as $$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT).m"; \
131           else \
132             if test -r $(srcdir)/$$cat.m ; then \
133               $(INSTALL_DATA) $(srcdir)/$$cat.m \
134                 $$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT).m; \
135               echo "installing $(srcdir)/$$cat as" \
136                    "$$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT).m"; \
137             else \
138               true; \
139             fi; \
140           fi; \
141         done
142         if test "$(PACKAGE)" = "glib"; then \
143           $(mkdir_p) $(DESTDIR)$(gettextsrcdir); \
144           $(INSTALL_DATA) $(srcdir)/Makefile.in.in \
145                           $(DESTDIR)$(gettextsrcdir)/Makefile.in.in; \
146         else \
147           : ; \
148         fi
149
150 # Define this as empty until I found a useful application.
151 installcheck:
152
153 uninstall:
154         catalogs='$(CATALOGS)'; \
155         for cat in $$catalogs; do \
156           cat=`basename $$cat`; \
157           lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
158           rm -f $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE)$(INSTOBJEXT); \
159           rm -f $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE)$(INSTOBJEXT).m; \
160           rm -f $(DESTDIR)$(gnulocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE)$(INSTOBJEXT); \
161           rm -f $(DESTDIR)$(gnulocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE)$(INSTOBJEXT).m; \
162         done
163         if test "$(PACKAGE)" = "glib"; then \
164           rm -f $(DESTDIR)$(gettextsrcdir)/Makefile.in.in; \
165         fi
166
167 check: all
168
169 dvi info tags TAGS ID:
170
171 mostlyclean:
172         rm -f core core.* *.pox $(GETTEXT_PACKAGE).po *.old.po cat-id-tbl.tmp
173         rm -fr *.o
174
175 clean: mostlyclean
176
177 distclean: clean
178         rm -f Makefile Makefile.in POTFILES *.mo *.msg *.cat *.cat.m
179
180 maintainer-clean: distclean
181         @echo "This command is intended for maintainers to use;"
182         @echo "it deletes files that may require special tools to rebuild."
183         rm -f $(GMOFILES)
184
185 distdir = ../$(GETTEXT_PACKAGE)-$(VERSION)/$(subdir)
186 dist distdir: update-po $(DISTFILES)
187         dists="$(DISTFILES)"; \
188         for file in $$dists; do \
189           ln $(srcdir)/$$file $(distdir) 2> /dev/null \
190             || cp -p $(srcdir)/$$file $(distdir); \
191         done
192
193 update-po: Makefile
194         $(MAKE) $(GETTEXT_PACKAGE).pot
195         tmpdir=`pwd`; \
196         cd $(srcdir); \
197         catalogs='$(CATALOGS)'; \
198         for cat in $$catalogs; do \
199           cat=`basename $$cat`; \
200           lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
201           echo "$$lang:"; \
202           if $(MSGMERGE) $$lang.po $(GETTEXT_PACKAGE).pot -o $$tmpdir/$$lang.new.po; then \
203             if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
204               rm -f $$tmpdir/$$lang.new.po; \
205             else \
206               if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \
207                 :; \
208               else \
209                 echo "msgmerge for $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \
210                 rm -f $$tmpdir/$$lang.new.po; \
211                 exit 1; \
212               fi; \
213             fi; \
214           else \
215             echo "msgmerge for $$cat failed!"; \
216             rm -f $$tmpdir/$$lang.new.po; \
217           fi; \
218         done
219
220 # POTFILES is created from POTFILES.in by stripping comments, empty lines
221 # and Intltool tags (enclosed in square brackets), and appending a full
222 # relative path to them
223 POTFILES: POTFILES.in
224         ( if test 'x$(srcdir)' != 'x.'; then \
225             posrcprefix='$(top_srcdir)/'; \
226           else \
227             posrcprefix="../"; \
228           fi; \
229           rm -f $@-t $@ \
230             && (sed -e '/^#/d'                                          \
231                     -e "s/^\[.*\] +//"                                  \
232                     -e '/^[     ]*$$/d'                                 \
233                     -e "s@.*@   $$posrcprefix& \\\\@" < $(srcdir)/$@.in \
234                 | sed -e '$$s/\\$$//') > $@-t \
235             && chmod a-w $@-t \
236             && mv $@-t $@ )
237
238 Makefile: Makefile.in.in ../config.status POTFILES
239         cd .. \
240           && $(SHELL) ./config.status $(subdir)/$@.in
241
242 # Tell versions [3.59,3.63) of GNU make not to export all variables.
243 # Otherwise a system limit (for SysV at least) may be exceeded.
244 .NOEXPORT: