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