1
# Makefile for directory with message catalog handling library of GNU gettext
2
# Copyright (C) 1995-1998, 2000-2003 Free Software Foundation, Inc.
4
# This program is free software; you can redistribute it and/or modify it
5
# under the terms of the GNU Library General Public License as published
6
# by the Free Software Foundation; either version 2, or (at your option)
9
# This program is distributed in the hope that it will be useful,
10
# but WITHOUT ANY WARRANTY; without even the implied warranty of
11
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12
# Library General Public License for more details.
14
# You should have received a copy of the GNU Library General Public
15
# License along with this program; if not, write to the Free Software
16
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
25
top_srcdir = @top_srcdir@
30
exec_prefix = @exec_prefix@
31
transform = @program_transform_name@
33
includedir = @includedir@
35
localedir = $(datadir)/locale
36
gettextsrcdir = $(datadir)/gettext/intl
37
aliaspath = $(localedir)
41
INSTALL_DATA = @INSTALL_DATA@
42
MKINSTALLDIRS = @MKINSTALLDIRS@
43
mkinstalldirs = $(SHELL) $(MKINSTALLDIRS)
45
l = @INTL_LIBTOOL_SUFFIX_PREFIX@
51
YACC = @INTLBISON@ -y -d
52
YFLAGS = --name-prefix=__gettext
54
DEFS = -DLOCALEDIR=\"$(localedir)\" -DLOCALE_ALIAS_PATH=\"$(aliaspath)\" \
55
-DLIBDIR=\"$(libdir)\" -DIN_LIBINTL \
56
-DENABLE_RELOCATABLE=1 -DIN_LIBRARY -DINSTALLDIR=\"$(libdir)\" -DNO_XMALLOC \
57
-Dset_relocation_prefix=libintl_set_relocation_prefix \
58
-Drelocate=libintl_relocate \
59
-DDEPENDS_ON_LIBICONV=1 @DEFS@
65
COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS)
77
printf-args.h printf-args.c \
78
printf-parse.h wprintf-parse.h printf-parse.c \
79
vasnprintf.h vasnwprintf.h vasnprintf.c \
131
DISTFILES.common = Makefile.in \
132
config.charset locale.alias ref-add.sin ref-del.sin $(HEADERS) $(SOURCES)
133
DISTFILES.generated = plural.c
134
DISTFILES.normal = VERSION
135
DISTFILES.gettext = COPYING.LIB-2.0 COPYING.LIB-2.1 libintl.glibc \
136
libgnuintl.h_vms Makefile.vms \
137
libgnuintl.h.msvc-static libgnuintl.h.msvc-shared README.woe32 Makefile.msvc
138
DISTFILES.obsolete = xopen-msg.sed linux-msg.sed po2tbl.sed.in cat-compat.c \
139
COPYING.LIB-2 gettext.h libgettext.h plural-eval.c libgnuintl.h
141
all: all-@USE_INCLUDED_LIBINTL@
142
all-yes: libintl.$la libintl.h charset.alias ref-add.sed ref-del.sed
143
all-no: all-no-@BUILD_INCLUDED_LIBINTL@
144
all-no-yes: libgnuintl.$la
147
libintl.a libgnuintl.a: $(OBJECTS)
149
$(AR) cru $@ $(OBJECTS)
152
libintl.la libgnuintl.la: $(OBJECTS)
153
$(LIBTOOL) --mode=link \
154
$(CC) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS) $(LDFLAGS) -o $@ \
155
$(OBJECTS) @LTLIBICONV@ $(LIBS) -lc \
156
-version-info $(LTV_CURRENT):$(LTV_REVISION):$(LTV_AGE) \
160
# Libtool's library version information for libintl.
161
# Before making a gettext release, the gettext maintainer must change this
162
# according to the libtool documentation, section "Library interface versions".
163
# Maintainers of other packages that include the intl directory must *not*
164
# change these values.
170
.SUFFIXES: .c .y .o .lo .sin .sed
176
$(YACC) $(YFLAGS) --output $@ $<
179
bindtextdom.lo: $(srcdir)/bindtextdom.c
180
$(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/bindtextdom.c
181
dcgettext.lo: $(srcdir)/dcgettext.c
182
$(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/dcgettext.c
183
dgettext.lo: $(srcdir)/dgettext.c
184
$(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/dgettext.c
185
gettext.lo: $(srcdir)/gettext.c
186
$(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/gettext.c
187
finddomain.lo: $(srcdir)/finddomain.c
188
$(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/finddomain.c
189
loadmsgcat.lo: $(srcdir)/loadmsgcat.c
190
$(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/loadmsgcat.c
191
localealias.lo: $(srcdir)/localealias.c
192
$(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/localealias.c
193
textdomain.lo: $(srcdir)/textdomain.c
194
$(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/textdomain.c
195
l10nflist.lo: $(srcdir)/l10nflist.c
196
$(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/l10nflist.c
197
explodename.lo: $(srcdir)/explodename.c
198
$(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/explodename.c
199
dcigettext.lo: $(srcdir)/dcigettext.c
200
$(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/dcigettext.c
201
dcngettext.lo: $(srcdir)/dcngettext.c
202
$(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/dcngettext.c
203
dngettext.lo: $(srcdir)/dngettext.c
204
$(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/dngettext.c
205
ngettext.lo: $(srcdir)/ngettext.c
206
$(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/ngettext.c
207
plural.lo: $(srcdir)/plural.c
208
$(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/plural.c
209
plural-exp.lo: $(srcdir)/plural-exp.c
210
$(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/plural-exp.c
211
localcharset.lo: $(srcdir)/localcharset.c
212
$(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/localcharset.c
213
relocatable.lo: $(srcdir)/relocatable.c
214
$(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/relocatable.c
215
localename.lo: $(srcdir)/localename.c
216
$(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/localename.c
217
log.lo: $(srcdir)/log.c
218
$(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/log.c
219
printf.lo: $(srcdir)/printf.c
220
$(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/printf.c
221
osdep.lo: $(srcdir)/osdep.c
222
$(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/osdep.c
223
intl-compat.lo: $(srcdir)/intl-compat.c
224
$(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/intl-compat.c
226
ref-add.sed: $(srcdir)/ref-add.sin
227
sed -e '/^#/d' -e 's/@''PACKAGE''@/@PACKAGE@/g' $(srcdir)/ref-add.sin > t-ref-add.sed
228
mv t-ref-add.sed ref-add.sed
229
ref-del.sed: $(srcdir)/ref-del.sin
230
sed -e '/^#/d' -e 's/@''PACKAGE''@/@PACKAGE@/g' $(srcdir)/ref-del.sin > t-ref-del.sed
231
mv t-ref-del.sed ref-del.sed
233
INCLUDES = -I. -I$(srcdir) -I..
235
libgnuintl.h: $(srcdir)/libgnuintl.h.in
236
sed -e 's,@''HAVE_POSIX_PRINTF''@,@HAVE_POSIX_PRINTF@,g' \
237
-e 's,@''HAVE_ASPRINTF''@,@HAVE_ASPRINTF@,g' \
238
-e 's,@''HAVE_SNPRINTF''@,@HAVE_SNPRINTF@,g' \
239
-e 's,@''HAVE_WPRINTF''@,@HAVE_WPRINTF@,g' \
240
< $(srcdir)/libgnuintl.h.in > libgnuintl.h
242
libintl.h: libgnuintl.h
243
cp libgnuintl.h libintl.h
245
charset.alias: $(srcdir)/config.charset
246
$(SHELL) $(srcdir)/config.charset '@host@' > t-$@
251
# We must not install the libintl.h/libintl.a files if we are on a
252
# system which has the GNU gettext() function in its C library or in a
254
# If you want to use the one which comes with this version of the
255
# package, you have to use `configure --with-included-gettext'.
256
install: install-exec install-data
258
if { test "$(PACKAGE)" = "gettext-runtime" || test "$(PACKAGE)" = "gettext-tools"; } \
259
&& test '@USE_INCLUDED_LIBINTL@' = yes; then \
260
$(mkinstalldirs) $(DESTDIR)$(libdir) $(DESTDIR)$(includedir); \
261
$(INSTALL_DATA) libintl.h $(DESTDIR)$(includedir)/libintl.h; \
262
$(LIBTOOL) --mode=install \
263
$(INSTALL_DATA) libintl.$la $(DESTDIR)$(libdir)/libintl.$la; \
264
if test "@RELOCATABLE@" = yes; then \
265
dependencies=`sed -n -e 's,^dependency_libs=\(.*\),\1,p' < $(DESTDIR)$(libdir)/libintl.la | sed -e "s,^',," -e "s,'\$$,,"`; \
266
if test -n "$$dependencies"; then \
267
rm -f $(DESTDIR)$(libdir)/libintl.la; \
273
if test "$(PACKAGE)" = "gettext-tools" \
274
&& test '@USE_INCLUDED_LIBINTL@' = no; then \
275
$(mkinstalldirs) $(DESTDIR)$(libdir); \
276
$(LIBTOOL) --mode=install \
277
$(INSTALL_DATA) libgnuintl.$la $(DESTDIR)$(libdir)/libgnuintl.$la; \
278
rm -f $(DESTDIR)$(libdir)/preloadable_libintl.so; \
279
$(INSTALL_DATA) $(DESTDIR)$(libdir)/libgnuintl.so $(DESTDIR)$(libdir)/preloadable_libintl.so; \
280
$(LIBTOOL) --mode=uninstall \
281
rm -f $(DESTDIR)$(libdir)/libgnuintl.$la; \
285
if test '@USE_INCLUDED_LIBINTL@' = yes; then \
286
test @GLIBC21@ != no || $(mkinstalldirs) $(DESTDIR)$(libdir); \
287
temp=$(DESTDIR)$(libdir)/t-charset.alias; \
288
dest=$(DESTDIR)$(libdir)/charset.alias; \
289
if test -f $(DESTDIR)$(libdir)/charset.alias; then \
290
orig=$(DESTDIR)$(libdir)/charset.alias; \
291
sed -f ref-add.sed $$orig > $$temp; \
292
$(INSTALL_DATA) $$temp $$dest; \
295
if test @GLIBC21@ = no; then \
296
orig=charset.alias; \
297
sed -f ref-add.sed $$orig > $$temp; \
298
$(INSTALL_DATA) $$temp $$dest; \
302
$(mkinstalldirs) $(DESTDIR)$(localedir); \
303
test -f $(DESTDIR)$(localedir)/locale.alias \
304
&& orig=$(DESTDIR)$(localedir)/locale.alias \
305
|| orig=$(srcdir)/locale.alias; \
306
temp=$(DESTDIR)$(localedir)/t-locale.alias; \
307
dest=$(DESTDIR)$(localedir)/locale.alias; \
308
sed -f ref-add.sed $$orig > $$temp; \
309
$(INSTALL_DATA) $$temp $$dest; \
315
if test "$(PACKAGE)" = "gettext-tools"; then \
316
$(mkinstalldirs) $(DESTDIR)$(gettextsrcdir); \
317
$(INSTALL_DATA) VERSION $(DESTDIR)$(gettextsrcdir)/VERSION; \
318
$(INSTALL_DATA) ChangeLog.inst $(DESTDIR)$(gettextsrcdir)/ChangeLog; \
319
dists="COPYING.LIB-2.0 COPYING.LIB-2.1 $(DISTFILES.common)"; \
320
for file in $$dists; do \
321
$(INSTALL_DATA) $(srcdir)/$$file \
322
$(DESTDIR)$(gettextsrcdir)/$$file; \
324
chmod a+x $(DESTDIR)$(gettextsrcdir)/config.charset; \
325
dists="$(DISTFILES.generated)"; \
326
for file in $$dists; do \
327
if test -f $$file; then dir=.; else dir=$(srcdir); fi; \
328
$(INSTALL_DATA) $$dir/$$file \
329
$(DESTDIR)$(gettextsrcdir)/$$file; \
331
dists="$(DISTFILES.obsolete)"; \
332
for file in $$dists; do \
333
rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \
339
install-strip: install
342
if { test "$(PACKAGE)" = "gettext-runtime" || test "$(PACKAGE)" = "gettext-tools"; } \
343
&& test '@USE_INCLUDED_LIBINTL@' = yes; then \
344
$(mkinstalldirs) $(DESTDIR)$(libdir) $(DESTDIR)$(includedir); \
348
if test "$(PACKAGE)" = "gettext-tools" \
349
&& test '@USE_INCLUDED_LIBINTL@' = no; then \
350
$(mkinstalldirs) $(DESTDIR)$(libdir); \
354
if test '@USE_INCLUDED_LIBINTL@' = yes; then \
355
test @GLIBC21@ != no || $(mkinstalldirs) $(DESTDIR)$(libdir); \
356
$(mkinstalldirs) $(DESTDIR)$(localedir); \
360
if test "$(PACKAGE)" = "gettext-tools"; then \
361
$(mkinstalldirs) $(DESTDIR)$(gettextsrcdir); \
366
# Define this as empty until I found a useful application.
370
if { test "$(PACKAGE)" = "gettext-runtime" || test "$(PACKAGE)" = "gettext-tools"; } \
371
&& test '@USE_INCLUDED_LIBINTL@' = yes; then \
372
rm -f $(DESTDIR)$(includedir)/libintl.h; \
373
$(LIBTOOL) --mode=uninstall \
374
rm -f $(DESTDIR)$(libdir)/libintl.$la; \
378
if test "$(PACKAGE)" = "gettext-tools" \
379
&& test '@USE_INCLUDED_LIBINTL@' = no; then \
380
rm -f $(DESTDIR)$(libdir)/preloadable_libintl.so; \
384
if test '@USE_INCLUDED_LIBINTL@' = yes; then \
385
if test -f $(DESTDIR)$(libdir)/charset.alias; then \
386
temp=$(DESTDIR)$(libdir)/t-charset.alias; \
387
dest=$(DESTDIR)$(libdir)/charset.alias; \
388
sed -f ref-del.sed $$dest > $$temp; \
389
if grep '^# Packages using this file: $$' $$temp > /dev/null; then \
392
$(INSTALL_DATA) $$temp $$dest; \
396
if test -f $(DESTDIR)$(localedir)/locale.alias; then \
397
temp=$(DESTDIR)$(localedir)/t-locale.alias; \
398
dest=$(DESTDIR)$(localedir)/locale.alias; \
399
sed -f ref-del.sed $$dest > $$temp; \
400
if grep '^# Packages using this file: $$' $$temp > /dev/null; then \
403
$(INSTALL_DATA) $$temp $$dest; \
410
if test "$(PACKAGE)" = "gettext-tools"; then \
411
for file in VERSION ChangeLog COPYING.LIB-2.0 COPYING.LIB-2.1 $(DISTFILES.common) $(DISTFILES.generated); do \
412
rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \
418
info dvi ps pdf html:
420
$(OBJECTS): ../config.h libgnuintl.h
421
bindtextdom.$lo dcgettext.$lo dcigettext.$lo dcngettext.$lo dgettext.$lo dngettext.$lo finddomain.$lo gettext.$lo intl-compat.$lo loadmsgcat.$lo localealias.$lo ngettext.$lo textdomain.$lo: $(srcdir)/gettextP.h $(srcdir)/gmo.h $(srcdir)/loadinfo.h
422
dcigettext.$lo loadmsgcat.$lo: $(srcdir)/hash-string.h
423
explodename.$lo l10nflist.$lo: $(srcdir)/loadinfo.h
424
dcigettext.$lo loadmsgcat.$lo plural.$lo plural-exp.$lo: $(srcdir)/plural-exp.h
425
dcigettext.$lo: $(srcdir)/eval-plural.h
426
localcharset.$lo: $(srcdir)/localcharset.h
427
localealias.$lo localcharset.$lo relocatable.$lo: $(srcdir)/relocatable.h
428
printf.$lo: $(srcdir)/printf-args.h $(srcdir)/printf-args.c $(srcdir)/printf-parse.h $(srcdir)/wprintf-parse.h $(srcdir)/xsize.h $(srcdir)/printf-parse.c $(srcdir)/vasnprintf.h $(srcdir)/vasnwprintf.h $(srcdir)/vasnprintf.c
432
TAGS: $(HEADERS) $(SOURCES)
433
here=`pwd`; cd $(srcdir) && etags -o $$here/TAGS $(HEADERS) $(SOURCES)
437
CTAGS: $(HEADERS) $(SOURCES)
438
here=`pwd`; cd $(srcdir) && ctags -o $$here/CTAGS $(HEADERS) $(SOURCES)
442
ID: $(HEADERS) $(SOURCES)
443
here=`pwd`; cd $(srcdir) && mkid -f$$here/ID $(HEADERS) $(SOURCES)
447
rm -f *.a *.la *.o *.obj *.lo core core.*
448
rm -f libgnuintl.h libintl.h charset.alias ref-add.sed ref-del.sed
454
rm -f Makefile ID TAGS
455
if test "$(PACKAGE)" = "gettext-runtime" || test "$(PACKAGE)" = "gettext-tools"; then \
456
rm -f ChangeLog.inst $(DISTFILES.normal); \
461
maintainer-clean: distclean
462
@echo "This command is intended for maintainers to use;"
463
@echo "it deletes files that may require special tools to rebuild."
466
# GNU gettext needs not contain the file `VERSION' but contains some
467
# other files which should not be distributed in other packages.
468
distdir = ../$(PACKAGE)-$(VERSION)/$(subdir)
469
dist distdir: Makefile
470
if test "$(PACKAGE)" = "gettext-tools"; then \
473
if test "$(PACKAGE)" = "gettext-runtime"; then \
474
additional="$(DISTFILES.gettext)"; \
476
additional="$(DISTFILES.normal)"; \
478
$(MAKE) $(DISTFILES.common) $(DISTFILES.generated) $$additional; \
479
for file in ChangeLog $(DISTFILES.common) $(DISTFILES.generated) $$additional; do \
480
if test -f $$file; then dir=.; else dir=$(srcdir); fi; \
481
cp -p $$dir/$$file $(distdir); \
485
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
486
cd $(top_builddir) && $(SHELL) ./config.status
487
# This would be more efficient, but doesn't work any more with autoconf-2.57,
488
# when AC_CONFIG_FILES([intl/Makefile:somedir/Makefile.in]) is used.
489
# cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
491
# Tell versions [3.59,3.63) of GNU make not to export all variables.
492
# Otherwise a system limit (for SysV at least) may be exceeded.