1 |
270 |
jeremybenn |
# @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 |
|
|
#.
|
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 --keyword=cpp_errno:3 \
|
253 |
|
|
--keyword=cpp_error_with_line:5 \
|
254 |
|
|
--keyword=SYNTAX_ERROR --keyword=SYNTAX_ERROR2 \
|
255 |
|
|
--copyright-holder="Free Software Foundation, Inc." \
|
256 |
|
|
--msgid-bugs-address="http://gcc.gnu.org/bugs.html" \
|
257 |
|
|
--language=c -o po/$(PACKAGE).pot.tmp $^
|
258 |
|
|
sed 's:$(srcdir)/::g' po/$(PACKAGE).pot
|
259 |
|
|
rm po/$(PACKAGE).pot.tmp
|
260 |
|
|
|
261 |
|
|
TAGS_SOURCES = $(libcpp_a_SOURCES) internal.h ucnid.h \
|
262 |
|
|
include/line-map.h include/symtab.h include/cpp-id-data.h \
|
263 |
|
|
include/cpplib.h include/mkdeps.h system.h
|
264 |
|
|
|
265 |
|
|
TAGS: $(TAGS_SOURCES)
|
266 |
|
|
cd $(srcdir) && etags $(TAGS_SOURCES)
|
267 |
|
|
|
268 |
|
|
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
269 |
|
|
# Otherwise a system limit (for SysV at least) may be exceeded.
|
270 |
|
|
.NOEXPORT:
|
271 |
|
|
|
272 |
|
|
# Dependencies
|
273 |
|
|
-include $(patsubst %.o, $(DEPDIR)/%.Po, $(libcpp_a_OBJS))
|
274 |
|
|
|
275 |
|
|
# Dependencies on generated headers have to be explicit.
|
276 |
|
|
init.o: localedir.h
|