1
|
1 # Makefile for program source directory in GNU NLS utilities package.
|
|
2 # Copyright (C) 1995-1997, 2000, 2001 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 General 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 PACKAGE = @PACKAGE@
|
|
10 VERSION = @VERSION@
|
|
11
|
|
12 # These two variables depend on the location of this directory.
|
|
13 subdir = po
|
|
14 top_builddir = ..
|
|
15
|
|
16 SHELL = /bin/sh
|
|
17 @SET_MAKE@
|
|
18
|
|
19 srcdir = @srcdir@
|
|
20 top_srcdir = @top_srcdir@
|
|
21 VPATH = @srcdir@
|
|
22
|
|
23 prefix = @prefix@
|
|
24 exec_prefix = @exec_prefix@
|
|
25 datadir = @datadir@
|
|
26 localedir = $(datadir)/locale
|
|
27 gettextsrcdir = $(datadir)/gettext/po
|
|
28
|
|
29 INSTALL = @INSTALL@
|
|
30 INSTALL_DATA = @INSTALL_DATA@
|
|
31 MKINSTALLDIRS = @MKINSTALLDIRS@
|
|
32 mkinstalldirs = $(SHELL) `case "$(MKINSTALLDIRS)" in /*) echo "$(MKINSTALLDIRS)" ;; *) echo "$(top_builddir)/$(MKINSTALLDIRS)" ;; esac`
|
|
33
|
|
34 CC = @CC@
|
|
35 GMSGFMT = @GMSGFMT@
|
|
36 MSGFMT = @MSGFMT@
|
|
37 XGETTEXT = @XGETTEXT@
|
|
38 MSGMERGE = msgmerge
|
|
39
|
|
40 DEFS = @DEFS@
|
|
41 CFLAGS = @CFLAGS@
|
|
42 CPPFLAGS = @CPPFLAGS@
|
|
43
|
|
44 INCLUDES = -I.. -I$(top_srcdir)/intl
|
|
45
|
|
46 COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS)
|
|
47
|
|
48 POFILES = @POFILES@
|
|
49 GMOFILES = @GMOFILES@
|
|
50 DISTFILES = ChangeLog Makefile.in.in POTFILES.in $(PACKAGE).pot \
|
|
51 $(POFILES) $(GMOFILES)
|
|
52
|
|
53 POTFILES = \
|
|
54
|
|
55 CATALOGS = @CATALOGS@
|
|
56
|
|
57 .SUFFIXES:
|
|
58 .SUFFIXES: .c .o .po .pox .gmo .mo
|
|
59
|
|
60 .c.o:
|
|
61 $(COMPILE) $<
|
|
62
|
|
63 .po.pox:
|
|
64 $(MAKE) $(PACKAGE).pot
|
|
65 $(MSGMERGE) $< $(srcdir)/$(PACKAGE).pot -o $*.pox
|
|
66
|
|
67 .po.mo:
|
|
68 $(MSGFMT) -o $@ $<
|
|
69
|
|
70 .po.gmo:
|
|
71 file=$(srcdir)/`echo $* | sed 's,.*/,,'`.gmo \
|
|
72 && rm -f $$file && $(GMSGFMT) --statistics -o $$file $<
|
|
73
|
|
74
|
|
75 all: all-@USE_NLS@
|
|
76
|
|
77 all-yes: $(CATALOGS)
|
|
78 all-no:
|
|
79
|
|
80 # Note: Target 'all' must not depend on target '$(srcdir)/$(PACKAGE).pot',
|
|
81 # otherwise packages like GCC can not be built if only parts of the source
|
|
82 # have been downloaded.
|
|
83
|
|
84 $(srcdir)/$(PACKAGE).pot: $(POTFILES) $(srcdir)/POTFILES.in
|
|
85 $(XGETTEXT) --default-domain=$(PACKAGE) --directory=$(top_srcdir) \
|
|
86 --add-comments --keyword=_ --keyword=N_ \
|
|
87 --files-from=$(srcdir)/POTFILES.in \
|
|
88 && test ! -f $(PACKAGE).po \
|
|
89 || ( rm -f $(srcdir)/$(PACKAGE).pot \
|
|
90 && mv $(PACKAGE).po $(srcdir)/$(PACKAGE).pot )
|
|
91
|
|
92
|
|
93 install: install-exec install-data
|
|
94 install-exec:
|
|
95 install-data: install-data-@USE_NLS@
|
|
96 if test "$(PACKAGE)" = "gettext"; then \
|
|
97 $(mkinstalldirs) $(DESTDIR)$(gettextsrcdir); \
|
|
98 $(INSTALL_DATA) $(srcdir)/Makefile.in.in \
|
|
99 $(DESTDIR)$(gettextsrcdir)/Makefile.in.in; \
|
|
100 else \
|
|
101 : ; \
|
|
102 fi
|
|
103 install-data-no: all
|
|
104 install-data-yes: all
|
|
105 $(mkinstalldirs) $(DESTDIR)$(datadir)
|
|
106 @catalogs='$(CATALOGS)'; \
|
|
107 for cat in $$catalogs; do \
|
|
108 cat=`basename $$cat`; \
|
|
109 lang=`echo $$cat | sed 's/\.gmo$$//'`; \
|
|
110 dir=$(localedir)/$$lang/LC_MESSAGES; \
|
|
111 $(mkinstalldirs) $(DESTDIR)$$dir; \
|
|
112 if test -r $$cat; then \
|
|
113 $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/$(PACKAGE).mo; \
|
|
114 echo "installing $$cat as $(DESTDIR)$$dir/$(PACKAGE).mo"; \
|
|
115 else \
|
|
116 $(INSTALL_DATA) $(srcdir)/$$cat $(DESTDIR)$$dir/$(PACKAGE).mo; \
|
|
117 echo "installing $(srcdir)/$$cat as" \
|
|
118 "$(DESTDIR)$$dir/$(PACKAGE).mo"; \
|
|
119 fi; \
|
|
120 done
|
|
121
|
|
122 # Define this as empty until I found a useful application.
|
|
123 installcheck:
|
|
124
|
|
125 uninstall:
|
|
126 catalogs='$(CATALOGS)'; \
|
|
127 for cat in $$catalogs; do \
|
|
128 cat=`basename $$cat`; \
|
|
129 lang=`echo $$cat | sed 's/\.gmo$$//'`; \
|
|
130 rm -f $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(PACKAGE).mo; \
|
|
131 done
|
|
132 if test "$(PACKAGE)" = "gettext"; then \
|
|
133 rm -f $(DESTDIR)$(gettextsrcdir)/Makefile.in.in; \
|
|
134 else \
|
|
135 : ; \
|
|
136 fi
|
|
137
|
|
138 check: all
|
|
139
|
|
140 dvi info tags TAGS ID:
|
|
141
|
|
142 mostlyclean:
|
|
143 rm -f core core.* *.pox $(PACKAGE).po *.new.po
|
|
144 rm -fr *.o
|
|
145
|
|
146 clean: mostlyclean
|
|
147
|
|
148 distclean: clean
|
|
149 rm -f Makefile Makefile.in POTFILES *.mo
|
|
150
|
|
151 maintainer-clean: distclean
|
|
152 @echo "This command is intended for maintainers to use;"
|
|
153 @echo "it deletes files that may require special tools to rebuild."
|
|
154 rm -f $(GMOFILES)
|
|
155
|
|
156 distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
|
|
157 dist distdir:
|
|
158 $(MAKE) update-po
|
|
159 @$(MAKE) dist2
|
|
160 # This is a separate target because 'update-po' must be executed before.
|
|
161 dist2: $(DISTFILES)
|
|
162 dists="$(DISTFILES)"; \
|
|
163 for file in $$dists; do \
|
|
164 if test -f $$file; then dir=.; else dir=$(srcdir); fi; \
|
|
165 cp -p $$dir/$$file $(distdir); \
|
|
166 done
|
|
167
|
|
168 update-po: Makefile
|
|
169 $(MAKE) $(PACKAGE).pot
|
|
170 if test "$(PACKAGE)" = "gettext"; then PATH=`pwd`/../src:$$PATH; fi; \
|
|
171 cd $(srcdir); \
|
|
172 catalogs='$(GMOFILES)'; \
|
|
173 for cat in $$catalogs; do \
|
|
174 cat=`basename $$cat`; \
|
|
175 lang=`echo $$cat | sed 's/\.gmo$$//'`; \
|
|
176 echo "$$lang:"; \
|
|
177 if $(MSGMERGE) $$lang.po $(PACKAGE).pot -o $$lang.new.po; then \
|
|
178 mv -f $$lang.new.po $$lang.po; \
|
|
179 else \
|
|
180 echo "msgmerge for $$cat failed!"; \
|
|
181 rm -f $$lang.new.po; \
|
|
182 fi; \
|
|
183 done
|
|
184 $(MAKE) update-gmo
|
|
185
|
|
186 update-gmo: Makefile $(GMOFILES)
|
|
187 @:
|
|
188
|
|
189 Makefile: Makefile.in.in $(top_builddir)/config.status POTFILES.in
|
|
190 cd $(top_builddir) \
|
|
191 && CONFIG_FILES=$(subdir)/$@.in CONFIG_HEADERS= \
|
|
192 $(SHELL) ./config.status
|
|
193
|
|
194 # Tell versions [3.59,3.63) of GNU make not to export all variables.
|
|
195 # Otherwise a system limit (for SysV at least) may be exceeded.
|
|
196 .NOEXPORT:
|