OSDN Git Service

PR 43839
[pf3gnuchains/gcc-fork.git] / libcpp / Makefile.in
1 # @configure_input@
2 # Makefile for libcpp.  Run 'configure' to generate Makefile from Makefile.in
3
4 # Copyright (C) 2004, 2008, 2009 Free Software Foundation, Inc.
5
6 #This file is part of libcpp.
7
8 #libcpp is free software; you can redistribute it and/or modify
9 #it under the terms of the GNU General Public License as published by
10 #the Free Software Foundation; either version 3, or (at your option)
11 #any later version.
12
13 #libcpp is distributed in the hope that it will be useful,
14 #but WITHOUT ANY WARRANTY; without even the implied warranty of
15 #MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16 #GNU General Public License for more details.
17
18 #You should have received a copy of the GNU General Public License
19 #along with libcpp; see the file COPYING3.  If not see
20 #<http://www.gnu.org/licenses/>.
21
22 @SET_MAKE@
23
24 srcdir = @srcdir@
25 top_builddir = .
26 VPATH = @srcdir@
27 INSTALL = @INSTALL@
28 AR = ar
29 ARFLAGS = cru
30 ACLOCAL = @ACLOCAL@
31 AUTOCONF = @AUTOCONF@
32 AUTOHEADER = @AUTOHEADER@
33 CATALOGS = $(patsubst %,po/%,@CATALOGS@)
34 CC = @CC@
35 CFLAGS = @CFLAGS@
36 WARN_CFLAGS = @warn@ @c_warn@ @WARN_PEDANTIC@ @WERROR@
37 CXX = @CXX@
38 CXXFLAGS = @CXXFLAGS@
39 WARN_CXXFLAGS = @warn@ @WARN_PEDANTIC@ @WERROR@
40 CPP = @CPP@
41 CPPFLAGS = @CPPFLAGS@
42 EXEEXT = @EXEEXT@
43 GMSGFMT = @GMSGFMT@
44 INCINTL = @INCINTL@
45 INSTALL_DATA = @INSTALL_DATA@
46 INSTALL_PROGRAM = @INSTALL_PROGRAM@
47 INSTALL_SCRIPT = @INSTALL_SCRIPT@
48 LDFLAGS = @LDFLAGS@
49 LIBICONV = @LIBICONV@
50 LIBINTL = @LIBINTL@
51 PACKAGE = @PACKAGE@
52 RANLIB = @RANLIB@
53 SHELL = @SHELL@
54 USED_CATALOGS = @USED_CATALOGS@
55 XGETTEXT = @XGETTEXT@
56 CCDEPMODE = @CCDEPMODE@
57 CXXDEPMODE = @CXXDEPMODE@
58 DEPDIR = @DEPDIR@
59
60 datarootdir = @datarootdir@
61 datadir = @datadir@
62 exec_prefix = @prefix@
63 libdir = @libdir@
64 localedir = $(datadir)/locale
65 prefix = @prefix@
66
67 MSGMERGE = msgmerge
68 mkinstalldirs = $(SHELL) $(srcdir)/../mkinstalldirs
69 depcomp = $(SHELL) $(srcdir)/../depcomp
70
71 INCLUDES = -I$(srcdir) -I. -I$(srcdir)/../include @INCINTL@ \
72         -I$(srcdir)/include
73
74 ALL_CFLAGS = $(CFLAGS) $(WARN_CFLAGS) $(INCLUDES) $(CPPFLAGS)
75 ALL_CXXFLAGS = $(CXXFLAGS) $(WARN_CXXFLAGS) $(INCLUDES) $(CPPFLAGS)
76
77 # The name of the compiler to use.
78 ENABLE_BUILD_WITH_CXX = @ENABLE_BUILD_WITH_CXX@
79 ifneq ($(ENABLE_BUILD_WITH_CXX),yes)
80 COMPILER = $(CC)
81 COMPILER_FLAGS = $(ALL_CFLAGS)
82 DEPMODE = $(CCDEPMODE)
83 else
84 COMPILER = $(CXX)
85 COMPILER_FLAGS = $(ALL_CXXFLAGS)
86 DEPMODE = $(CXXDEPMODE)
87 endif
88
89
90 libcpp_a_OBJS = charset.o directives.o directives-only.o errors.o \
91         expr.o files.o identifiers.o init.o lex.o line-map.o macro.o \
92         mkdeps.o pch.o symtab.o traditional.o
93
94 libcpp_a_SOURCES = charset.c directives.c directives-only.c errors.c \
95         expr.c files.c identifiers.c init.c lex.c line-map.c macro.c \
96         mkdeps.c pch.c symtab.c traditional.c
97
98 all: libcpp.a $(USED_CATALOGS)
99
100 .SUFFIXES:
101 .SUFFIXES: .c .gmo .o .obj .po .pox
102
103 libcpp.a: $(libcpp_a_OBJS)
104         -rm -f libcpp.a
105         $(AR) $(ARFLAGS) libcpp.a $(libcpp_a_OBJS)
106         $(RANLIB) libcpp.a
107
108 # Rules to rebuild the configuration
109
110 Makefile: $(srcdir)/Makefile.in config.status
111         $(SHELL) ./config.status Makefile
112
113 config.status: $(srcdir)/configure
114         $(SHELL) ./config.status --recheck
115
116 $(srcdir)/configure: @MAINT@ $(srcdir)/aclocal.m4
117         cd $(srcdir) && $(AUTOCONF)
118
119 $(srcdir)/aclocal.m4: @MAINT@ $(srcdir)/../config/acx.m4 \
120         $(srcdir)/../config/gettext-sister.m4 $(srcdir)/../config/iconv.m4 \
121         $(srcdir)/../config/codeset.m4 $(srcdir)/../config/lib-ld.m4 \
122         $(srcdir)/../config/lib-link.m4 $(srcdir)/../config/lib-prefix.m4 \
123         $(srcdir)/../config/override.m4 $(srcdir)/../config/proginstall.m4 \
124         $(srcdir)/configure.ac
125         cd $(srcdir) && $(ACLOCAL) -I ../config
126
127 config.h: stamp-h1
128         test -f config.h || (rm -f stamp-h1 && $(MAKE) stamp-h1)
129
130 stamp-h1: $(srcdir)/config.in config.status
131         -rm -f stamp-h1
132         $(SHELL) ./config.status config.h
133
134 $(srcdir)/config.in: @MAINT@ $(srcdir)/configure.ac
135         cd $(srcdir) && $(AUTOHEADER)
136         -rm -f stamp-h1
137
138 # It is not possible to get LOCALEDIR defined in config.h because
139 # the value it needs to be defined to is only determined in the
140 # Makefile.  Hence we do this instead.
141 localedir.h: localedir.hs; @true
142 localedir.hs: Makefile
143         echo "#define LOCALEDIR \"$(localedir)\"" > localedir.new
144         $(srcdir)/../move-if-change localedir.new localedir.h
145         echo timestamp > localedir.hs
146
147 # Installation rules and other phony targets
148
149 # These rule has to look for .gmo modules in both srcdir and
150 # the cwd, and has to check that we actually have a catalog
151 # for each language, in case they weren't built or included
152 # with the distribution.
153 installdirs:
154         @$(mkinstalldirs) $(DESTDIR)$(datadir); \
155         cats="$(CATALOGS)"; for cat in $$cats; do \
156           lang=`basename $$cat | sed 's/\.gmo$$//'`; \
157           if [ -f $$cat ] || [ -f $(srcdir)/$$cat ]; then \
158             dir=$(localedir)/$$lang/LC_MESSAGES; \
159             $(mkinstalldirs) $(DESTDIR)$$dir || exit 1; \
160           fi; \
161         done
162
163 install-strip install: all installdirs
164         cats="$(CATALOGS)"; for cat in $$cats; do \
165           lang=`basename $$cat | sed 's/\.gmo$$//'`; \
166           if [ -f $$cat ]; then :; \
167           elif [ -f $(srcdir)/$$cat ]; then cat=$(srcdir)/$$cat; \
168           else continue; \
169           fi; \
170           dir=$(localedir)/$$lang/LC_MESSAGES; \
171           echo $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/$(PACKAGE).mo; \
172           $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/$(PACKAGE).mo; \
173         done
174
175 mostlyclean:
176         -rm -f *.o
177
178 clean: mostlyclean
179         -rm -rf libcpp.a $(srcdir)/autom4te.cache
180
181 distclean: clean
182         -rm -f config.h stamp-h1 config.status config.cache config.log \
183           configure.lineno configure.status.lineno Makefile localedir.h \
184           localedir.hs $(DEPDIR)/*.Po
185         -rmdir $(DEPDIR)
186
187 maintainer-clean: distclean
188         @echo "This command is intended for maintainers to use"
189         @echo "it deletes files that may require special tools to rebuild."
190         -rm -f $(srcdir)/configure $(srcdir)/aclocal.m4
191
192 check:
193 installcheck:
194 dvi:
195 pdf:
196 html:
197 info:
198 install-info:
199 install-pdf:
200 install-man:
201 install-html:
202
203 update-po: $(CATALOGS:.gmo=.pox)
204
205 .PHONY: installdirs install install-strip mostlyclean clean distclean \
206   maintainer-clean check installcheck dvi pdf html info install-info \
207   install-man update-po install-html
208
209 # Dependency rule.
210 COMPILE.base = $(COMPILER) $(DEFS) $(INCLUDES) $(CPPFLAGS) $(COMPILER_FLAGS) -c
211 ifeq ($(DEPMODE),depmode=gcc3)
212 # Note that we put the dependencies into a .Tpo file, then move them
213 # into place if the compile succeeds.  We need this because gcc does
214 # not atomically write the dependency output file.
215 COMPILE = $(COMPILE.base) -o $@ -MT $@ -MMD -MP -MF $(DEPDIR)/$*.Tpo
216 POSTCOMPILE = @mv $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
217 else
218 COMPILE = source='$<' object='$@' libtool=no DEPDIR=$(DEPDIR) $(DEPMODE) \
219           $(depcomp) $(COMPILE.base)
220 # depcomp handles atomicity for us, so we don't need a postcompile
221 # step.
222 POSTCOMPILE =
223 endif
224
225 # Implicit rules and I18N
226
227 .c.o:
228         $(COMPILE) $<
229         $(POSTCOMPILE)
230
231 # N.B. We do not attempt to copy these into $(srcdir).
232 .po.gmo:
233         $(mkinstalldirs) po
234         $(GMSGFMT) --statistics -o $@ $<
235
236 # The new .po has to be gone over by hand, so we deposit it into
237 # build/po with a different extension.
238 # If build/po/$(PACKAGE).pot exists, use it (it was just created),
239 # else use the one in srcdir.
240 .po.pox:
241         $(mkinstalldirs) po
242         $(MSGMERGE) $< `if test -f po/$(PACKAGE).pot; \
243                         then echo po/$(PACKAGE).pot; \
244                         else echo $(srcdir)/po/$(PACKAGE).pot; fi` -o $@
245
246 # Rule for regenerating the message template.
247 $(PACKAGE).pot: po/$(PACKAGE).pot
248 po/$(PACKAGE).pot: $(libcpp_a_SOURCES)
249         $(mkinstalldirs) $(srcdir)/po
250         $(XGETTEXT) --default-domain=$(PACKAGE) \
251           --keyword=_ --keyword=N_ \
252           --keyword=cpp_error:3 \
253           --keyword=cpp_warning:3 \
254           --keyword=cpp_pedwarning:3 \
255           --keyword=cpp_warning_syshdr:3 \
256           --keyword=cpp_error_with_line:5 \
257           --keyword=cpp_warning_with_line:5 \
258           --keyword=cpp_pedwarning_with_line:5 \
259           --keyword=cpp_warning_with_line_syshdr:5 \
260           --keyword=cpp_errno:3 \
261           --keyword=SYNTAX_ERROR --keyword=SYNTAX_ERROR2 \
262           --copyright-holder="Free Software Foundation, Inc." \
263           --msgid-bugs-address="http://gcc.gnu.org/bugs.html" \
264           --language=c -o po/$(PACKAGE).pot.tmp $^
265         sed 's:$(srcdir)/::g' <po/$(PACKAGE).pot.tmp >po/$(PACKAGE).pot
266         rm po/$(PACKAGE).pot.tmp
267
268 TAGS_SOURCES = $(libcpp_a_SOURCES) internal.h ucnid.h \
269     include/line-map.h include/symtab.h include/cpp-id-data.h \
270     include/cpplib.h include/mkdeps.h system.h
271
272 TAGS: $(TAGS_SOURCES)
273         cd $(srcdir) && etags $(TAGS_SOURCES)
274
275 # Tell versions [3.59,3.63) of GNU make to not export all variables.
276 # Otherwise a system limit (for SysV at least) may be exceeded.
277 .NOEXPORT:
278
279 # Dependencies
280 -include $(patsubst %.o, $(DEPDIR)/%.Po, $(libcpp_a_OBJS))
281
282 # Dependencies on generated headers have to be explicit.
283 init.o: localedir.h