1 # Makefile for directory with message catalog handling in GNU NLS Utilities.
2 # Copyright (C) 1995-1998, 2000-2002 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 datarootdir
= @datarootdir@
36 localedir
= $(datadir)/locale
37 gettextsrcdir
= $(datadir)/gettext
/intl
38 aliaspath
= $(localedir
)
42 INSTALL_DATA
= @INSTALL_DATA@
43 MKINSTALLDIRS
= @MKINSTALLDIRS@
44 mkinstalldirs
= $(SHELL
) `case "$(MKINSTALLDIRS)" in /*) echo "$(MKINSTALLDIRS)" ;; *) echo "$(top_builddir)/$(MKINSTALLDIRS)" ;; esac`
46 l
= @INTL_LIBTOOL_SUFFIX_PREFIX@
52 YACC
= @INTLBISON@
-y
-d
53 YFLAGS
= --name-prefix
=__gettext
55 DEFS
= -DLOCALEDIR
=\"$(localedir
)\" -DLOCALE_ALIAS_PATH
=\"$(aliaspath
)\" \
56 -DLIBDIR
=\"$(libdir)\" -DIN_LIBINTL @DEFS@
61 COMPILE
= $(CC
) -c
$(DEFS
) $(INCLUDES
) $(CPPFLAGS
) $(CFLAGS
) $(XCFLAGS
)
63 HEADERS
= $(COMHDRS
) libgnuintl.h loadinfo.h
64 COMHDRS
= gmo.h gettextP.h hash-string.h plural-exp.h eval-plural.h os2compat.h
65 SOURCES
= $(COMSRCS
) intl-compat.c
66 COMSRCS
= bindtextdom.c dcgettext.c dgettext.c gettext.c \
67 finddomain.c loadmsgcat.c localealias.c textdomain.c l10nflist.c \
68 explodename.c dcigettext.c dcngettext.c dngettext.c ngettext.c plural.y \
69 plural-exp.c localcharset.c localename.c osdep.c os2compat.c
70 OBJECTS
= @INTLOBJS@ bindtextdom.
$lo dcgettext.
$lo dgettext.
$lo gettext.
$lo \
71 finddomain.
$lo loadmsgcat.
$lo localealias.
$lo textdomain.
$lo l10nflist.
$lo \
72 explodename.
$lo dcigettext.
$lo dcngettext.
$lo dngettext.
$lo ngettext.
$lo \
73 plural.
$lo plural-exp.
$lo localcharset.
$lo localename.
$lo osdep.
$lo
74 GETTOBJS
= intl-compat.
$lo
75 DISTFILES.common
= Makefile.in \
76 config.charset locale.alias ref-add.sin ref-del.sin
$(HEADERS
) $(SOURCES
)
77 DISTFILES.generated
= plural.c
78 DISTFILES.normal
= VERSION
79 DISTFILES.gettext
= COPYING.LIB-2.0 COPYING.LIB-2.1 libintl.glibc
80 DISTFILES.obsolete
= xopen-msg.sed linux-msg.sed po2tbl.sed.in cat-compat.c \
81 COPYING.LIB-2 gettext.h libgettext.h plural-eval.c
83 # Libtool's library version information for libintl.
84 # Before making a gettext release, the gettext maintainer must change this
85 # according to the libtool documentation, section "Library interface versions".
86 # Maintainers of other packages that include the intl directory must *not*
87 # change these values.
93 .SUFFIXES
: .c .y .o .lo .sin .sed
97 $(LIBTOOL
) --mode
=compile
$(COMPILE
) $<
100 $(YACC
) $(YFLAGS
) --output
$@
$<
104 sed
-e
'/^#/d' -e
's/@''PACKAGE''@/@PACKAGE@/g' $< > t-
$@
107 INCLUDES
= -I..
-I.
-I
$(top_srcdir
)/intl
109 all: all-@USE_INCLUDED_LIBINTL@
110 all-yes
: libintl.
$la libintl.h charset.alias ref-add.sed ref-del.sed
111 all-no
: all-no-@BUILD_INCLUDED_LIBINTL@
112 all-no-yes
: libgnuintl.
$la
115 libintl.a libgnuintl.a
: $(OBJECTS
)
117 $(AR
) cru
$@
$(OBJECTS
)
120 libintl.la libgnuintl.la
: $(OBJECTS
)
121 $(LIBTOOL
) --mode
=link \
122 $(CC
) $(CPPFLAGS
) $(CFLAGS
) $(XCFLAGS
) $(LDFLAGS
) -o
$@ \
123 $(OBJECTS
) @LTLIBICONV@
-lc \
124 -version-info
$(LTV_CURRENT
):$(LTV_REVISION
):$(LTV_AGE
) \
128 libintl.h
: libgnuintl.h
129 cp
$(srcdir)/libgnuintl.h libintl.h
131 charset.alias
: config.charset
132 $(SHELL
) $(srcdir)/config.charset
'@host@' > t-
$@
137 # This installation goal is only used in GNU gettext. Packages which
138 # only use the library should use install instead.
140 # We must not install the libintl.h/libintl.a files if we are on a
141 # system which has the GNU gettext() function in its C library or in a
143 # If you want to use the one which comes with this version of the
144 # package, you have to use `configure --with-included-gettext'.
145 install: install-exec install-data
147 if
test "$(PACKAGE)" = "gettext" \
148 && test '@INTLOBJS@' = '$(GETTOBJS)'; then \
149 $(mkinstalldirs
) $(DESTDIR
)$(libdir) $(DESTDIR
)$(includedir); \
150 $(INSTALL_DATA
) libintl.h
$(DESTDIR
)$(includedir)/libintl.h
; \
151 $(LIBTOOL
) --mode
=install \
152 $(INSTALL_DATA
) libintl.
$la $(DESTDIR
)$(libdir)/libintl.
$la; \
156 if
test '@USE_INCLUDED_LIBINTL@' = yes
; then \
157 test @GLIBC21@
!= no ||
$(mkinstalldirs
) $(DESTDIR
)$(libdir); \
158 temp
=$(DESTDIR
)$(libdir)/t-charset.alias
; \
159 dest
=$(DESTDIR
)$(libdir)/charset.alias
; \
160 if
test -f
$(DESTDIR
)$(libdir)/charset.alias
; then \
161 orig
=$(DESTDIR
)$(libdir)/charset.alias
; \
162 sed
-f ref-add.sed
$$orig > $$temp; \
163 $(INSTALL_DATA
) $$temp $$dest; \
166 if
test @GLIBC21@
= no
; then \
167 orig
=charset.alias
; \
168 sed
-f ref-add.sed
$$orig > $$temp; \
169 $(INSTALL_DATA
) $$temp $$dest; \
173 $(mkinstalldirs
) $(DESTDIR
)$(localedir
); \
174 test -f
$(DESTDIR
)$(localedir
)/locale.alias \
175 && orig
=$(DESTDIR
)$(localedir
)/locale.alias \
176 || orig
=$(srcdir)/locale.alias
; \
177 temp
=$(DESTDIR
)$(localedir
)/t-locale.alias
; \
178 dest
=$(DESTDIR
)$(localedir
)/locale.alias
; \
179 sed
-f ref-add.sed
$$orig > $$temp; \
180 $(INSTALL_DATA
) $$temp $$dest; \
186 if
test "$(PACKAGE)" = "gettext"; then \
187 $(mkinstalldirs
) $(DESTDIR
)$(gettextsrcdir
); \
188 $(INSTALL_DATA
) VERSION
$(DESTDIR
)$(gettextsrcdir
)/VERSION
; \
189 $(INSTALL_DATA
) ChangeLog.inst
$(DESTDIR
)$(gettextsrcdir
)/ChangeLog
; \
190 dists
="COPYING.LIB-2.0 COPYING.LIB-2.1 $(DISTFILES.common)"; \
191 for file in
$$dists; do \
192 $(INSTALL_DATA
) $(srcdir)/$$file \
193 $(DESTDIR
)$(gettextsrcdir
)/$$file; \
195 chmod a
+x
$(DESTDIR
)$(gettextsrcdir
)/config.charset
; \
196 dists
="$(DISTFILES.generated)"; \
197 for file in
$$dists; do \
198 if
test -f
$$file; then
dir=.
; else dir=$(srcdir); fi
; \
199 $(INSTALL_DATA
) $$dir/$$file \
200 $(DESTDIR
)$(gettextsrcdir
)/$$file; \
202 dists
="$(DISTFILES.obsolete)"; \
203 for file in
$$dists; do \
204 rm -f
$(DESTDIR
)$(gettextsrcdir
)/$$file; \
210 install-strip
: install
213 if
test "$(PACKAGE)" = "gettext" \
214 && test '@INTLOBJS@' = '$(GETTOBJS)'; then \
215 $(mkinstalldirs
) $(DESTDIR
)$(libdir) $(DESTDIR
)$(includedir); \
219 if
test '@USE_INCLUDED_LIBINTL@' = yes
; then \
220 test @GLIBC21@
!= no ||
$(mkinstalldirs
) $(DESTDIR
)$(libdir); \
221 $(mkinstalldirs
) $(DESTDIR
)$(localedir
); \
225 if
test "$(PACKAGE)" = "gettext"; then \
226 $(mkinstalldirs
) $(DESTDIR
)$(gettextsrcdir
); \
231 # Define this as empty until I found a useful application.
235 if
test "$(PACKAGE)" = "gettext" \
236 && test '@INTLOBJS@' = '$(GETTOBJS)'; then \
237 rm -f
$(DESTDIR
)$(includedir)/libintl.h
; \
238 $(LIBTOOL
) --mode
=uninstall \
239 rm -f
$(DESTDIR
)$(libdir)/libintl.
$la; \
243 if
test '@USE_INCLUDED_LIBINTL@' = yes
; then \
244 if
test -f
$(DESTDIR
)$(libdir)/charset.alias
; then \
245 temp
=$(DESTDIR
)$(libdir)/t-charset.alias
; \
246 dest
=$(DESTDIR
)$(libdir)/charset.alias
; \
247 sed
-f ref-del.sed
$$dest > $$temp; \
248 if grep
'^# Packages using this file: $$' $$temp > /dev
/null
; then \
251 $(INSTALL_DATA
) $$temp $$dest; \
255 if
test -f
$(DESTDIR
)$(localedir
)/locale.alias
; then \
256 temp
=$(DESTDIR
)$(localedir
)/t-locale.alias
; \
257 dest
=$(DESTDIR
)$(localedir
)/locale.alias
; \
258 sed
-f ref-del.sed
$$dest > $$temp; \
259 if grep
'^# Packages using this file: $$' $$temp > /dev
/null
; then \
262 $(INSTALL_DATA
) $$temp $$dest; \
269 if
test "$(PACKAGE)" = "gettext"; then \
270 for file in VERSION ChangeLog COPYING.LIB-2.0 COPYING.LIB-2.1
$(DISTFILES.common
) $(DISTFILES.generated
); do \
271 rm -f
$(DESTDIR
)$(gettextsrcdir
)/$$file; \
279 $(OBJECTS
): ..
/config.h libgnuintl.h
280 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: gettextP.h gmo.h loadinfo.h
281 dcigettext.
$lo: hash-string.h
282 explodename.
$lo l10nflist.
$lo: loadinfo.h
283 dcigettext.
$lo loadmsgcat.
$lo plural.
$lo plural-exp.
$lo: plural-exp.h
284 dcigettext.
$lo: eval-plural.h
288 TAGS
: $(HEADERS
) $(SOURCES
)
289 here
=`pwd`; cd
$(srcdir) && etags
-o
$$here/TAGS
$(HEADERS
) $(SOURCES
)
293 ID
: $(HEADERS
) $(SOURCES
)
294 here
=`pwd`; cd
$(srcdir) && mkid
-f
$$here/ID
$(HEADERS
) $(SOURCES
)
298 rm -f
*.a
*.la
*.o
*.lo core core.
*
299 rm -f libintl.h charset.alias ref-add.sed ref-del.sed
305 rm -f Makefile ID TAGS
306 if
test "$(PACKAGE)" = gettext
; then \
307 rm -f ChangeLog.inst
$(DISTFILES.normal
); \
312 maintainer-clean
: distclean
313 @echo
"This command is intended for maintainers to use;"
314 @echo
"it deletes files that may require special tools to rebuild."
317 # GNU gettext needs not contain the file `VERSION' but contains some
318 # other files which should not be distributed in other packages.
319 distdir
= ..
/$(PACKAGE
)-$(VERSION
)/$(subdir
)
320 dist distdir
: Makefile
321 if
test "$(PACKAGE)" = gettext
; then \
322 additional
="$(DISTFILES.gettext)"; \
324 additional
="$(DISTFILES.normal)"; \
326 $(MAKE
) $(DISTFILES.common
) $(DISTFILES.generated
) $$additional; \
327 for file in ChangeLog
$(DISTFILES.common
) $(DISTFILES.generated
) $$additional; do \
328 if
test -f
$$file; then
dir=.
; else dir=$(srcdir); fi
; \
329 cp
-p
$$dir/$$file $(distdir
); \
332 Makefile
: Makefile.in ..
/config.status
334 && CONFIG_FILES
=$(subdir
)/$@ CONFIG_HEADERS
= $(SHELL
) .
/config.status
336 # Tell versions [3.59,3.63) of GNU make not to export all variables.
337 # Otherwise a system limit (for SysV at least) may be exceeded.