xref: /openbsd/gnu/usr.bin/texinfo/intl/Makefile.in (revision 78b63d65)
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
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 = $(prefix)/share/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. -I$(top_srcdir)/intl -I$(top_srcdir)/lib
83
84all: all-@USE_INCLUDED_LIBINTL@
85
86all-yes: libintl.$la intlh.inst
87all-no:
88
89libintl.a: $(OBJECTS)
90	rm -f $@
91	$(AR) cru $@ $(OBJECTS)
92	$(RANLIB) $@
93
94libintl.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
101check: 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'.
112install: install-exec install-data
113install-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
126install-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.
143installcheck:
144
145uninstall:
146	if test "$(PACKAGE)" = "gettext"; then \
147	  dists="$(DISTFILES.common)"; \
148	  for file in $$dists; do \
149	    rm -f $(gettextsrcdir)/$$file; \
150	  done; \
151	fi
152
153info dvi:
154
155$(OBJECTS): ../config.h libgettext.h
156bindtextdom.$lo finddomain.$lo loadmsgcat.$lo: gettextP.h gettext.h loadinfo.h
157dcgettext.$lo: gettextP.h gettext.h hash-string.h loadinfo.h
158
159tags: TAGS
160
161TAGS: $(HEADERS) $(SOURCES)
162	here=`pwd`; cd $(srcdir) && etags -o $$here/TAGS $(HEADERS) $(SOURCES)
163
164id: ID
165
166ID: $(HEADERS) $(SOURCES)
167	here=`pwd`; cd $(srcdir) && mkid -f$$here/ID $(HEADERS) $(SOURCES)
168
169
170mostlyclean:
171	rm -f *.a *.o *.lo core core.*
172
173clean: mostlyclean
174
175distclean: clean
176	rm -f Makefile ID TAGS po2msg.sed po2tbl.sed
177
178maintainer-clean: distclean
179	@echo "This command is intended for maintainers to use;"
180	@echo "it deletes files that may require special tools to rebuild."
181
182
183# GNU gettext needs not contain the file `VERSION' but contains some
184# other files which should not be distributed in other packages.
185distdir = ../$(PACKAGE)-$(VERSION)/$(subdir)
186dist distdir: Makefile $(DISTFILES)
187	if test "$(PACKAGE)" = gettext; then \
188	  additional="$(DISTFILES.gettext)"; \
189	else \
190	  additional="$(DISTFILES.normal)"; \
191	fi; \
192	for file in $(DISTFILES.common) $$additional; do \
193	  ln $(srcdir)/$$file $(distdir) 2> /dev/null \
194	    || cp -p $(srcdir)/$$file $(distdir); \
195	done
196
197dist-libc:
198	tar zcvf intl-glibc.tar.gz $(COMSRCS) $(COMHDRS) libintl.h.glibc
199
200Makefile: Makefile.in ../config.status
201	cd .. \
202	  && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
203
204# The dependency for intlh.inst is different in gettext and all other
205# packages.  Because we cannot you GNU make features we have to solve
206# the problem while rewriting Makefile.in.
207@GT_YES@intlh.inst: intlh.inst.in ../config.status
208@GT_YES@	cd .. \
209@GT_YES@	&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= \
210@GT_YES@	  $(SHELL) ./config.status
211@GT_NO@.PHONY: intlh.inst
212@GT_NO@intlh.inst:
213
214# Tell versions [3.59,3.63) of GNU make not to export all variables.
215# Otherwise a system limit (for SysV at least) may be exceeded.
216.NOEXPORT:
217