1# Makefile for directory with message catalog handling in GNU NLS Utilities. 2# Copyright (C) 1995, 1996, 1997, 1998, 2006 Free Software Foundation, Inc. 3# 4# This program is free software; you can redistribute it and/or modify 5# it under the terms of the GNU General Public License as published by 6# the Free Software Foundation; either version 2, or (at your option) 7# any later version. 8# 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 12# GNU General Public License for more details. 13# 14# You should have received a copy of the GNU General Public License 15# along with this program; if not, write to the Free Software 16# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. 17 18PACKAGE = @PACKAGE@ 19VERSION = @VERSION@ 20 21SHELL = /bin/sh 22 23srcdir = @srcdir@ 24top_srcdir = @top_srcdir@ 25top_builddir = .. 26VPATH = @srcdir@ 27 28prefix = @prefix@ 29exec_prefix = @exec_prefix@ 30transform = @program_transform_name@ 31libdir = $(exec_prefix)/lib 32includedir = $(prefix)/include 33datadir = $(prefix)/@DATADIRNAME@ 34localedir = $(datadir)/locale 35gnulocaledir = $(datadir)/locale 36gettextsrcdir = @datadir@/gettext/intl 37aliaspath = $(localedir):. 38subdir = intl 39 40INSTALL = @INSTALL@ 41INSTALL_DATA = @INSTALL_DATA@ 42MKINSTALLDIRS = @MKINSTALLDIRS@ 43 44l = @l@ 45 46AR = ar 47CC = @CC@ 48LIBTOOL = @LIBTOOL@ 49RANLIB = @RANLIB@ 50 51DEFS = -DLOCALEDIR=\"$(localedir)\" -DGNULOCALEDIR=\"$(gnulocaledir)\" \ 52-DLOCALE_ALIAS_PATH=\"$(aliaspath)\" @DEFS@ 53CPPFLAGS = @CPPFLAGS@ 54CFLAGS = @CFLAGS@ 55LDFLAGS = @LDFLAGS@ 56 57COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS) 58 59HEADERS = $(COMHDRS) libgettext.h loadinfo.h 60COMHDRS = gettext.h gettextP.h hash-string.h 61SOURCES = $(COMSRCS) intl-compat.c cat-compat.c 62COMSRCS = bindtextdom.c dcgettext.c dgettext.c gettext.c \ 63finddomain.c loadmsgcat.c localealias.c textdomain.c l10nflist.c \ 64explodename.c 65OBJECTS = @INTLOBJS@ bindtextdom.$lo dcgettext.$lo dgettext.$lo gettext.$lo \ 66finddomain.$lo loadmsgcat.$lo localealias.$lo textdomain.$lo l10nflist.$lo \ 67explodename.$lo 68CATOBJS = cat-compat.$lo ../po/cat-id-tbl.$lo 69GETTOBJS = intl-compat.$lo 70DISTFILES.common = ChangeLog Makefile.in linux-msg.sed po2tbl.sed.in \ 71xopen-msg.sed $(HEADERS) $(SOURCES) 72DISTFILES.normal = VERSION 73DISTFILES.gettext = libintl.glibc intlh.inst.in 74 75.SUFFIXES: 76.SUFFIXES: .c .o .lo 77.c.o: 78 $(COMPILE) $< 79.c.lo: 80 $(LIBTOOL) --mode=compile $(COMPILE) $< 81 82INCLUDES = -I. -I$(srcdir) 83 84all: all-@USE_INCLUDED_LIBINTL@ 85 86all-yes: libintl.$la intlh.inst 87all-no: 88install-info: 89 90libintl.a: $(OBJECTS) 91 rm -f $@ 92 $(AR) cru $@ $(OBJECTS) 93 $(RANLIB) $@ 94 95libintl.la: $(OBJECTS) 96 $(LIBTOOL) --mode=link $(CC) $(LDFLAGS) -o $@ $(OBJECTS) \ 97 -version-info 1:0 -rpath $(libdir) 98 99../po/cat-id-tbl.$lo: ../po/cat-id-tbl.c $(top_srcdir)/po/$(PACKAGE).pot 100 cd ../po && $(MAKE) cat-id-tbl.$lo 101 102check: all 103 104# This installation goal is only used in GNU gettext. Packages which 105# only use the library should use install instead. 106 107# We must not install the libintl.h/libintl.a files if we are on a 108# system which has the gettext() function in its C library or in a 109# separate library or use the catgets interface. A special case is 110# where configure found a previously installed GNU gettext library. 111# If you want to use the one which comes with this version of the 112# package, you have to use `configure --with-included-gettext'. 113install: install-exec install-data 114install-exec: all 115 if test "$(PACKAGE)" = "gettext" \ 116 && test '@INTLOBJS@' = '$(GETTOBJS)'; then \ 117 if test -r $(MKINSTALLDIRS); then \ 118 $(MKINSTALLDIRS) $(libdir) $(includedir); \ 119 else \ 120 $(top_srcdir)/mkinstalldirs $(libdir) $(includedir); \ 121 fi; \ 122 $(INSTALL_DATA) intlh.inst $(includedir)/libintl.h; \ 123 $(INSTALL_DATA) libintl.a $(libdir)/libintl.a; \ 124 else \ 125 : ; \ 126 fi 127install-data: all 128 if test "$(PACKAGE)" = "gettext"; then \ 129 if test -r $(MKINSTALLDIRS); then \ 130 $(MKINSTALLDIRS) $(gettextsrcdir); \ 131 else \ 132 $(top_srcdir)/mkinstalldirs $(gettextsrcdir); \ 133 fi; \ 134 $(INSTALL_DATA) VERSION $(gettextsrcdir)/VERSION; \ 135 dists="$(DISTFILES.common)"; \ 136 for file in $$dists; do \ 137 $(INSTALL_DATA) $(srcdir)/$$file $(gettextsrcdir)/$$file; \ 138 done; \ 139 else \ 140 : ; \ 141 fi 142 143# Define this as empty until I found a useful application. 144installcheck: 145 146uninstall: 147 dists="$(DISTFILES.common)"; \ 148 for file in $$dists; do \ 149 rm -f $(gettextsrcdir)/$$file; \ 150 done 151 152.PHONY: html info dvi 153html info dvi: 154 155.PHONY: install-html 156install-html: 157 158$(OBJECTS): config.h libgettext.h 159bindtextdom.$lo finddomain.$lo loadmsgcat.$lo: gettextP.h gettext.h loadinfo.h 160dcgettext.$lo: gettextP.h gettext.h hash-string.h loadinfo.h 161 162tags: TAGS 163 164TAGS: $(HEADERS) $(SOURCES) 165 here=`pwd`; cd $(srcdir) && etags -o $$here/TAGS $(HEADERS) $(SOURCES) 166 167id: ID 168 169ID: $(HEADERS) $(SOURCES) 170 here=`pwd`; cd $(srcdir) && mkid -f$$here/ID $(HEADERS) $(SOURCES) 171 172 173mostlyclean: 174 rm -f *.a *.o *.lo core core.* 175 176clean: mostlyclean 177 178distclean: clean 179 rm -f Makefile ID TAGS po2msg.sed po2tbl.sed libintl.h config.log 180 181maintainer-clean: distclean 182 @echo "This command is intended for maintainers to use;" 183 @echo "it deletes files that may require special tools to rebuild." 184 185 186# GNU gettext needs not contain the file `VERSION' but contains some 187# other files which should not be distributed in other packages. 188distdir = ../$(PACKAGE)-$(VERSION)/$(subdir) 189dist distdir: Makefile $(DISTFILES) 190 if test "$(PACKAGE)" = gettext; then \ 191 additional="$(DISTFILES.gettext)"; \ 192 else \ 193 additional="$(DISTFILES.normal)"; \ 194 fi; \ 195 for file in $(DISTFILES.common) $$additional; do \ 196 ln $(srcdir)/$$file $(distdir) 2> /dev/null \ 197 || cp -p $(srcdir)/$$file $(distdir); \ 198 done 199 200dist-libc: 201 tar zcvf intl-glibc.tar.gz $(COMSRCS) $(COMHDRS) libintl.h.glibc 202 203Makefile: Makefile.in config.status 204 CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status 205 206# The dependency for intlh.inst is different in gettext and all other 207# packages. Because we cannot you GNU make features we have to solve 208# the problem while rewriting Makefile.in. 209@GT_YES@intlh.inst: intlh.inst.in ../config.status 210@GT_YES@ cd .. \ 211@GT_YES@ && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= \ 212@GT_YES@ $(SHELL) ./config.status 213@GT_NO@.PHONY: intlh.inst 214@GT_NO@intlh.inst: 215 216# Tell versions [3.59,3.63) of GNU make not to export all variables. 217# Otherwise a system limit (for SysV at least) may be exceeded. 218.NOEXPORT: 219