added vasprintf.obj
[fw/sdcc] / support / cpp2 / Makefile.in
1 # Makefile for GNU C Preprocessor.
2 #
3 # hacked from gcc Makefile by kvigor.
4 #
5 #   Copyright (C) 1987, 1988, 1990, 1991, 1992, 1993, 1994, 1995
6 #   1996, 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
7
8 #This file is part of GNU CC.
9
10 #GNU CC is free software; you can redistribute it and/or modify
11 #it under the terms of the GNU General Public License as published by
12 #the Free Software Foundation; either version 2, or (at your option)
13 #any later version.
14
15 #GNU CC is distributed in the hope that it will be useful,
16 #but WITHOUT ANY WARRANTY; without even the implied warranty of
17 #MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18 #GNU General Public License for more details.
19
20 #You should have received a copy of the GNU General Public License
21 #along with GNU CC; see the file COPYING.  If not, write to
22 #the Free Software Foundation, 59 Temple Place - Suite 330,
23 #Boston MA 02111-1307, USA.
24
25 EXEEXT = @EXEEXT@
26 TARGET = ../../bin/sdcpp$(EXEEXT)
27
28 VPATH  = @srcdir@
29
30 # This is the default target.
31 all: $(TARGET)
32
33 # Directory where sources are, from where we are.
34 srcdir = @srcdir@
35
36
37
38 LIBS = @LIBS@
39 CFLAGS = @CFLAGS@
40 ALL_CFLAGS = $(INTERNAL_CFLAGS) $(X_CFLAGS) $(T_CFLAGS) \
41   $(CFLAGS) $(WARN_CFLAGS) $(XCFLAGS) @DEFS@
42 ALL_CPPFLAGS = $(CPPFLAGS) $(X_CPPFLAGS) $(T_CPPFLAGS)
43 LDFLAGS = @LDFLAGS@
44
45 CC = @CC@
46 AR = ar
47 AR_FLAGS = rc
48 RANLIB = @RANLIB@
49 SHELL = /bin/sh
50 STRIP = @STRIP@
51 # on sysV, define this as cp.
52 INSTALL = @INSTALL@
53 # Some systems may be missing symbolic links, regular links, or both.
54 # Allow configure to check this and use "ln -s", "ln", or "cp" as appropriate.
55 LN=@LN@
56 LN_S=@LN_S@
57 # These permit overriding just for certain files.
58 INSTALL_PROGRAM = @INSTALL_PROGRAM@
59 INSTALL_DATA = @INSTALL_DATA@
60 @SET_MAKE@
61 # Some compilers can't handle cc -c blah.c -o foo/blah.o.
62 # In stage2 and beyond, we force this to "-o $@" since we know we're using gcc.
63 OUTPUT_OPTION = @OUTPUT_OPTION@
64
65 # Some versions of `touch' (such as the version on Solaris 2.8)
66 # do not correctly set the timestamp due to buggy versions of `utime'
67 # in the kernel.  So, we use `echo' instead.
68 STAMP = echo timestamp >
69
70 # Where to find some libiberty headers.
71 LIBIBERTY_DIR = $(srcdir)/libiberty
72 OBSTACK_H   = $(LIBIBERTY_DIR)/obstack.h
73 SPLAY_TREE_H= $(LIBIBERTY_DIR)/splay-tree.h
74
75 # Test to see whether <limits.h> exists in the system header files.
76 LIMITS_H_TEST = [ -f $(SYSTEM_HEADER_DIR)/limits.h ]
77
78 # Common prefix for installation directories.
79 # NOTE: This directory must exist when you start installation.
80 prefix = @prefix@
81 # Directory in which to put localized header files. On the systems with
82 # gcc as the native cc, `local_prefix' may not be `prefix' which is
83 # `/usr'.
84 # NOTE: local_prefix *should not* default from prefix.
85 local_prefix = @local_prefix@
86 # Directory in which to put host dependent programs and libraries
87 exec_prefix = @exec_prefix@
88 # Directory in which to put the executable for the command `gcc'
89 bindir = @bindir@
90 includedir = $(local_prefix)/include
91 # where the info files go
92 exeext = @host_exeext@
93
94 transform       = @program_transform_name@
95 lang_opt_files=$(srcdir)/sdcpp.opt
96
97 # Top build directory, relative to here.
98 top_builddir = @top_builddir@
99
100 # Whether we were configured with NLS.
101 USE_NLS = @USE_NLS@
102
103 # Internationalization library.
104 INTLLIBS = @INTLLIBS@
105
106 # Change this to a null string if obstacks are installed in the
107 # system library.
108 OBSTACK=obstack.o
109
110 # End of variables for you to override.
111
112 install: all
113         mkdir -p $(DESTDIR)$(bindir)
114         $(INSTALL) $(TARGET) `echo $(DESTDIR)$(bindir)/sdcpp$(EXEEXT)|sed '$(transform)'`
115         $(STRIP) `echo $(DESTDIR)$(bindir)/sdcpp$(EXEEXT)|sed '$(transform)'`
116
117 uninstall:
118         rm -f $(DESTDIR)$(bindir)/sdcpp$(EXEEXT)
119 clean:
120         -rm -f $(TARGET) *.o core libcpp.a
121
122 distclean: clean
123         -rm -f auto-host.h auto-build.h cstamp-h Makefile
124         -rm -f configargs.h config.status config.run config.cache config.bak config.log *~
125
126 # This tells GNU Make version 3 not to put all variables in the environment.
127 .NOEXPORT:
128
129 # GCONFIG_H lists the config files that the generator files depend on, while
130 # CONFIG_H lists the the ones ordinary gcc files depend on, which includes
131 # a file generated by gencodes.
132 CONFIG_H = config.h
133 SYSTEM_H = system.h hwint.h
134
135 # sed inserts variable overrides after the following line.
136 ####target overrides
137 #@target_overrides@
138
139 ####host overrides
140 #@host_overrides@
141
142 ####cross overrides
143 #@cross_defines@
144 #@cross_overrides@
145
146 ####build overrides
147 #@build_overrides@
148 #\f
149
150 INCLUDES = -I$(srcdir) -I$(LIBIBERTY_DIR) -I.
151
152 # Always use -I$(srcdir)/config when compiling.
153 .c.o:
154         $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $< $(OUTPUT_OPTION)
155
156 # cstamp-h.in controls rebuilding of config.in.
157 # It is named cstamp-h.in and not stamp-h.in so the mostlyclean rule doesn't
158 # delete it.  A stamp file is needed as autoheader won't update the file if
159 # nothing has changed.
160 # It remains in the source directory and is part of the distribution.
161 # This follows what is done in shellutils, fileutils, etc.
162 # "echo timestamp" is used instead of touch to be consistent with other
163 # packages that use autoconf (??? perhaps also to avoid problems with patch?).
164 # ??? Newer versions have a maintainer mode that may be useful here.
165 $(srcdir)/config.in: $(srcdir)/cstamp-h.in $(srcdir)/acconfig.h
166 $(srcdir)/cstamp-h.in: $(srcdir)/configure.in $(srcdir)/acconfig.h
167         (cd $(srcdir) && autoheader)
168         @rm -f $(srcdir)/cstamp-h.in
169         echo timestamp > $(srcdir)/cstamp-h.in
170 auto-host.h: cstamp-h ; @true
171 cstamp-h: config.in config.status
172         CONFIG_HEADERS=auto-host.h:config.in LANGUAGES="$(CONFIG_LANGUAGES)" $(SHELL) config.status
173
174 # Really, really stupid make features, such as SUN's KEEP_STATE, may force
175 # a target to build even if it is up-to-date.  So we must verify that
176 # config.status does not exist before failing.
177 config.status: $(srcdir)/configure  version.c
178         @if [ ! -f config.status ] ; then \
179           echo You must configure gcc.  Look at http://gcc.gnu.org/install/ for details.; \
180           false; \
181         else \
182           LANGUAGES="$(CONFIG_LANGUAGES)" $(SHELL) config.status --recheck; \
183         fi
184
185 options.c: $(lang_opt_files) $(srcdir)/opts.sh options.h intl.h
186
187 options.h: $(lang_opt_files) $(srcdir)/opts.sh Makefile
188         AWK=awk $(SHELL) $(srcdir)/opts.sh \
189                '$(SHELL) $(srcdir)/move-if-change' \
190                options.c options.h $(lang_opt_files)
191
192 version.o: version.c version.h
193
194 hashtable.o: hashtable.c hashtable.h $(CONFIG_H) $(SYSTEM_H) $(OBSTACK_H)
195
196 hashtab.o: hashtab.c hashtab.h $(CONFIG_H)
197
198 cppcharset.o: cppcharset.c $(CONFIG_H) $(SYSTEM_H)
199
200 prefix.o: prefix.c $(CONFIG_H) $(SYSTEM_H) Makefile prefix.h
201         $(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \
202         -DPREFIX=\"$(prefix)\" \
203           -c $(srcdir)/prefix.c
204
205 #\f
206 # Remake cpp and protoize.
207
208 PREPROCESSOR_DEFINES = \
209   -DGCC_INCLUDE_DIR=\"$(libsubdir)/include\" \
210   -DGPLUSPLUS_INCLUDE_DIR=\"$(gcc_gxx_include_dir)\" \
211   -DGPLUSPLUS_TOOL_INCLUDE_DIR=\"$(gcc_gxx_include_dir)/$(target_alias)\" \
212   -DGPLUSPLUS_BACKWARD_INCLUDE_DIR=\"$(gcc_gxx_include_dir)/backward\" \
213   -DLOCAL_INCLUDE_DIR=\"$(includedir)\" \
214   -DCROSS_INCLUDE_DIR=\"$(gcc_tooldir)/sys-include\" \
215   -DTOOL_INCLUDE_DIR=\"$(gcc_tooldir)/include\"
216
217 LIBCPP_OBJS =   c-ppoutput.o cppinit.o cpplib.o cpplex.o cppmacro.o cppexp.o cppfiles.o \
218                 cpphash.o cpperror.o cppdefault.o \
219                 hashtable.o mkdeps.o prefix.o version.o \
220                 line-map.o cpptrad.o cppcharset.o hashtab.o \
221                 opts.o options.o diagnostic.o pretty-print.o c-incpath.o
222
223 LIBCPP_DEPS =   cpplib.h cpphash.h hashtable.h intl.h options.h $(OBSTACK_H) $(SYSTEM_H)
224
225 # Most of the other archives built/used by this makefile are for
226 # targets.  This one is strictly for the host.
227 libcpp.a: $(LIBCPP_OBJS)
228         -rm -rf libcpp.a
229         $(AR) $(AR_FLAGS) libcpp.a $(LIBCPP_OBJS)
230         -$(RANLIB) libcpp.a
231
232 MY_LIBIBERTY_BITS = concat.o getpwd.o hex.o lbasename.o obstack.o \
233                     safe-ctype.o splay-tree.o vasprintf.c xexit.o xmalloc.o \
234                     xmemdup.o xstrdup.o xstrerror.o
235
236 $(TARGET): sdcpp.o sdcpp-opts.o $(MY_LIBIBERTY_BITS) libcpp.a $(LIBDEPS)
237         mkdir -p $(dir $@)
238         $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ sdcpp.o sdcpp-opts.o \
239         $(MY_LIBIBERTY_BITS) libcpp.a $(LIBS)
240
241 sdcpp.o:      sdcpp.c  $(CONFIG_H) cpplib.h $(SYSTEM_H) options.h
242 sdcpp-opts.o: sdcpp-opts.c $(CONFIG_H) $(LIBCPP_DEPS) options.h
243
244 c-ppoutput.o:  c-ppoutput.c  $(CONFIG_H) cpplib.h intl.h $(SYSTEM_H)
245 cppinit.o:  cppinit.c  $(CONFIG_H) $(LIBCPP_DEPS) cppdefault.h \
246                 mkdeps.h prefix.h output.h version.h
247 cpperror.o: cpperror.c $(CONFIG_H) $(LIBCPP_DEPS)
248 cppexp.o:   cppexp.c   $(CONFIG_H) $(LIBCPP_DEPS)
249 cpplex.o:   cpplex.c   $(CONFIG_H) $(LIBCPP_DEPS)
250 cppmacro.o: cppmacro.c $(CONFIG_H) $(LIBCPP_DEPS)
251 cpplib.o:   cpplib.c   $(CONFIG_H) $(LIBCPP_DEPS)
252 cpphash.o:  cpphash.c  $(CONFIG_H) $(LIBCPP_DEPS)
253 cppfiles.o: cppfiles.c $(CONFIG_H) $(LIBCPP_DEPS) $(SPLAY_TREE_H) mkdeps.h
254 cpptrad.o:  cpptrad.c  $(CONFIG_H) $(LIBCPP_DEPS)
255 opts.o:     opts.c     $(CONFIG_H) $(LIBCPP_DEPS) options.h
256 diagnostic.o: diagnostic.c $(CONFIG_H) $(LIBCPP_DEPS) diagnostic.h
257 pretty-print.o: pretty-print.c $(CONFIG_H) $(LIBCPP_DEPS) pretty-print.h
258 c-incpath.o: $(CONFIG_H) $(LIBCPP_DEPS) c-incpath.h
259
260 cppdefault.o: cppdefault.c $(CONFIG_H) $(SYSTEM_H) cppdefault.h Makefile
261         $(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \
262           $(PREPROCESSOR_DEFINES) \
263           -c $(srcdir)/cppdefault.c
264
265 mkdeps.o: mkdeps.c $(CONFIG_H) $(SYSTEM_H) mkdeps.h
266
267 # Libiberty
268
269 concat.o: $(LIBIBERTY_DIR)/concat.c  $(CONFIG_H) $(LIBCPP_DEPS)
270         $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $< $(OUTPUT_OPTION)
271
272 getpwd.o: $(LIBIBERTY_DIR)/getpwd.c  $(CONFIG_H) $(LIBCPP_DEPS)
273         $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $< $(OUTPUT_OPTION)
274
275 hex.o: $(LIBIBERTY_DIR)/hex.c  $(CONFIG_H) $(LIBCPP_DEPS)
276         $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $< $(OUTPUT_OPTION)
277
278 lbasename.o: $(LIBIBERTY_DIR)/lbasename.c  $(CONFIG_H) $(LIBCPP_DEPS)
279         $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $< $(OUTPUT_OPTION)
280
281 obstack.o: $(LIBIBERTY_DIR)/obstack.c $(LIBIBERTY_DIR)/obstack.h $(CONFIG_H) $(LIBCPP_DEPS)
282         $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $< $(OUTPUT_OPTION)
283
284 safe-ctype.o: $(LIBIBERTY_DIR)/safe-ctype.c $(LIBIBERTY_DIR)/safe-ctype.h $(CONFIG_H) $(LIBCPP_DEPS)
285         $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $< $(OUTPUT_OPTION)
286
287 splay-tree.o: $(LIBIBERTY_DIR)/splay-tree.c $(LIBIBERTY_DIR)/splay-tree.h $(CONFIG_H) $(LIBCPP_DEPS)
288         $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $< $(OUTPUT_OPTION)
289
290 vasprintf.o: $(LIBIBERTY_DIR)/vasprintf.c  $(CONFIG_H) $(LIBCPP_DEPS)
291         $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $< $(OUTPUT_OPTION)
292
293 xexit.o: $(LIBIBERTY_DIR)/xexit.c  $(CONFIG_H) $(LIBCPP_DEPS)
294         $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $< $(OUTPUT_OPTION)
295
296 xmalloc.o: $(LIBIBERTY_DIR)/xmalloc.c  $(CONFIG_H) $(LIBCPP_DEPS)
297         $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $< $(OUTPUT_OPTION)
298
299 xmemdup.o: $(LIBIBERTY_DIR)/xmemdup.c  $(CONFIG_H) $(LIBCPP_DEPS)
300         $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $< $(OUTPUT_OPTION)
301
302 xstrdup.o: $(LIBIBERTY_DIR)/xstrdup.c  $(CONFIG_H) $(LIBCPP_DEPS)
303         $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $< $(OUTPUT_OPTION)
304
305 xstrerror.o: $(LIBIBERTY_DIR)/xstrerror.c  $(CONFIG_H) $(LIBCPP_DEPS)
306         $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $< $(OUTPUT_OPTION)