]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/Makefile.in
Initial asan cleanups
[thirdparty/gcc.git] / gcc / Makefile.in
CommitLineData
73458fb7
NN
1# Makefile for GNU Compiler Collection
2# Run 'configure' to generate Makefile from Makefile.in
3
4c4b3eb0 4# Copyright (C) 1987, 1988, 1990, 1991, 1992, 1993, 1994, 1995, 1996,
703fdf5a 5# 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
e08120b1 6# 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
79d8453e 7
1322177d 8#This file is part of GCC.
79d8453e 9
1322177d 10#GCC is free software; you can redistribute it and/or modify
79d8453e 11#it under the terms of the GNU General Public License as published by
9dcd6f09 12#the Free Software Foundation; either version 3, or (at your option)
79d8453e
RS
13#any later version.
14
1322177d 15#GCC is distributed in the hope that it will be useful,
79d8453e
RS
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
9dcd6f09
NC
21#along with GCC; see the file COPYING3. If not see
22#<http://www.gnu.org/licenses/>.
79d8453e
RS
23
24# The targets for external use include:
455c8f48 25# all, doc, install, install-cross, install-cross-rest, install-strip,
8b1f719a 26# uninstall, TAGS, mostlyclean, clean, distclean, maintainer-clean.
79d8453e 27
6c80a645 28# This is the default target.
73458fb7
NN
29# Set by autoconf to "all.internal" for a native build, or
30# "all.cross" to build a cross compiler.
31all: @ALL@
32
33# Depend on this to specify a phony target portably.
34force:
35
36# This tells GNU make version 3 not to export the variables
37# defined in this file into the environment (and thus recursive makes).
38.NOEXPORT:
39# And this tells it not to automatically pass command-line variables
40# to recursive makes.
41MAKEOVERRIDES =
6c80a645 42
03787dfd 43# Suppress smart makes who think they know how to automake yacc and flex file
2e494f70 44.y.c:
03787dfd 45.l.c:
2e494f70 46
73458fb7
NN
47# The only suffixes we want for implicit rules are .c and .o, so clear
48# the list and add them. This speeds up GNU Make, and allows -r to work.
49# For i18n support, we also need .gmo, .po, .pox.
50# This must come before the language makefile fragments to allow them to
51# add suffixes and rules of their own.
52.SUFFIXES:
53.SUFFIXES: .c .o .po .pox .gmo
54
55# -------------------------------
56# Standard autoconf-set variables
57# -------------------------------
58
4665e56c
NN
59build=@build@
60host=@host@
73458fb7 61target=@target@
e165d61b 62target_noncanonical:=@target_noncanonical@
73458fb7
NN
63
64# Sed command to transform gcc to installed name.
e165d61b 65program_transform_name := @program_transform_name@
73458fb7
NN
66
67# -----------------------------
68# Directories used during build
69# -----------------------------
70
71# Directory where sources are, from where we are.
72srcdir = @srcdir@
ad3a7ce3 73gcc_docdir = @srcdir@/doc
71cbe2c1
KC
74
75# Directory where sources are, absolute.
76abs_srcdir = @abs_srcdir@
77abs_docdir = @abs_srcdir@/doc
3859c32a 78
5da9128a
PB
79# Top build directory for this package, relative to here.
80top_builddir = .
3bbd5a19 81
da0f6381
PB
82# The absolute path to the current directory.
83objdir := $(shell pwd)
73458fb7 84
215c351a 85host_subdir=@host_subdir@
71b5d516 86build_subdir=@build_subdir@
3bbd5a19 87target_subdir=@target_subdir@
57255173 88build_libsubdir=@build_libsubdir@
71b5d516 89
3bbd5a19 90# Top build directory for the "Cygnus tree", relative to $(top_builddir).
215c351a 91ifeq ($(host_subdir),.)
3bbd5a19 92toplevel_builddir := ..
215c351a 93else
3bbd5a19 94toplevel_builddir := ../..
215c351a
PB
95endif
96
3bbd5a19
PB
97build_objdir := $(toplevel_builddir)/$(build_subdir)
98build_libobjdir := $(toplevel_builddir)/$(build_libsubdir)
99target_objdir := $(toplevel_builddir)/$(target_subdir)
100
65455962
KC
101# --------
102# Defined vpaths
103# --------
104
105# Directory where sources are, from where we are.
106VPATH = @srcdir@
107
5340bbea 108# We define a vpath for the sources of the .texi files here because they
65455962
KC
109# are split between multiple directories and we would rather use one implicit
110# pattern rule for everything.
111# This vpath could be extended within the Make-lang fragments.
112
d683ec81
PB
113vpath %.texi $(gcc_docdir)
114vpath %.texi $(gcc_docdir)/include
65455962 115
73458fb7
NN
116# --------
117# UNSORTED
118# --------
119
79d8453e
RS
120# Variables that exist for you to override.
121# See below for how to change them for certain systems.
122
013a2ee0 123# List of language subdirectories.
19361834 124SUBDIRS =@subdirs@ build
013a2ee0 125
79d8453e 126# Selection of languages to be made.
cc11cc9b 127CONFIG_LANGUAGES = @all_selected_languages@
4977bab6 128LANGUAGES = c gcov$(exeext) gcov-dump$(exeext) $(CONFIG_LANGUAGES)
79d8453e 129
00afcaa0 130# Default values for variables overridden in Makefile fragments.
78faa32d 131# CFLAGS is for the user to override to, e.g., do a cross build with -O2.
b8dad04b 132# TCFLAGS is used for compilations with the GCC just built.
00afcaa0
PB
133# T_CFLAGS is used for all compilations and is overridden by t-* files.
134T_CFLAGS =
b8dad04b 135TCFLAGS =
ec6c7392 136CFLAGS = @CFLAGS@
00020c16 137CXXFLAGS = @CXXFLAGS@
cc11cc9b 138LDFLAGS = @LDFLAGS@
b8dad04b 139
22aa533e
NS
140# Flags to determine code coverage. When coverage is disabled, this will
141# contain the optimization flags, as you normally want code coverage
e61a2eb7 142# without optimization.
22aa533e 143COVERAGE_FLAGS = @coverage_flags@
160e2e4f 144coverageexts = .{gcda,gcno}
22aa533e 145
8b1f719a 146# The warning flags are separate from CFLAGS because people tend to
5b67ad6f
DA
147# override optimization flags and we'd like them to still have warnings
148# turned on. These flags are also used to pass other stage dependent
149# flags from configure. The user is free to explicitly turn these flags
150# off if they wish.
b8dad04b 151# LOOSE_WARN are the warning flags to use when compiling something
8dd9a120 152# which is only compiled with gcc, such as libgcc.
00020c16 153# C_LOOSE_WARN is similar, but with C-only warnings.
8b1f719a 154# STRICT_WARN are the additional warning flags to
8dd9a120 155# apply to the back end and some front ends, which may be compiled
8b1f719a 156# with other compilers.
00020c16 157# C_STRICT_WARN is similar, with C-only warnings.
3bbd5a19 158LOOSE_WARN = @loose_warn@
00020c16 159C_LOOSE_WARN = @c_loose_warn@
8b1f719a 160STRICT_WARN = @strict_warn@
00020c16 161C_STRICT_WARN = @c_strict_warn@
b8dad04b 162
204250d2
RH
163# This is set by --enable-checking. The idea is to catch forgotten
164# "extern" tags in header files.
165NOCOMMON_FLAG = @nocommon_flag@
166
e9411247
MM
167NOEXCEPTION_FLAGS = @noexception_flags@
168
73e232f0 169# This is set by --disable-maintainer-mode (default) to "#"
a88fdc2a
NP
170# FIXME: 'MAINT' will always be set to an empty string, no matter if
171# --disable-maintainer-mode is used or not. This is because the
172# following will expand to "MAINT := " in maintainer mode, and to
173# "MAINT := #" in non-maintainer mode, but because '#' starts a comment,
174# they mean exactly the same thing for make.
e9c4897b 175MAINT := @MAINT@
73e232f0 176
a88fdc2a
NP
177# The following provides the variable ENABLE_MAINTAINER_RULES that can
178# be used in language Make-lang.in makefile fragments to enable
179# maintainer rules. So, ENABLE_MAINTAINER_RULES is 'true' in
180# maintainer mode, and '' otherwise.
181@MAINT@ ENABLE_MAINTAINER_RULES = true
182
414d23ae
HPN
183# These are set by --enable-checking=valgrind.
184RUN_GEN = @valgrind_command@
185VALGRIND_DRIVER_DEFINES = @valgrind_path_defines@
186
b8dad04b
ZW
187# This is how we control whether or not the additional warnings are applied.
188.-warn = $(STRICT_WARN)
9a43b902 189build-warn = $(STRICT_WARN)
00020c16
ILT
190GCC_WARN_CFLAGS = $(LOOSE_WARN) $(C_LOOSE_WARN) $($(@D)-warn) $(if $(filter-out $(STRICT_WARN),$($(@D)-warn)),,$(C_STRICT_WARN)) $(NOCOMMON_FLAG) $($@-warn)
191GCC_WARN_CXXFLAGS = $(LOOSE_WARN) $($(@D)-warn) $(NOCOMMON_FLAG) $($@-warn)
dd859b8a 192
89a42ac8
ZW
193# These files are to have specific diagnostics suppressed, or are not to
194# be subject to -Werror:
87f85ea0 195# flex output may yield harmless "no previous prototype" warnings
406176be 196build/gengtype-lex.o-warn = -Wno-error
f142b5bc 197gengtype-lex.o-warn = -Wno-error
12bd5a1e 198expmed.o-warn = -Wno-error
b8dad04b
ZW
199
200# All warnings have to be shut off in stage1 if the compiler used then
201# isn't gcc; configure determines that. WARN_CFLAGS will be either
00020c16
ILT
202# $(GCC_WARN_CFLAGS), or nothing. Similarly, WARN_CXXFLAGS will be
203# either $(GCC_WARN_CXXFLAGS), or nothing.
b8dad04b 204WARN_CFLAGS = @warn_cflags@
00020c16 205WARN_CXXFLAGS = @warn_cxxflags@
b8dad04b 206
f5d394a6
DB
207CPPFLAGS = @CPPFLAGS@
208
ab87f8c8 209AWK = @AWK@
b614ee64 210CC = @CC@
00020c16 211CXX = @CXX@
1e608388 212BISON = @BISON@
0777e4c6 213BISONFLAGS =
1e608388
ZW
214FLEX = @FLEX@
215FLEXFLAGS =
f6a874ac 216AR = @AR@
79d8453e 217AR_FLAGS = rc
f6a874ac 218NM = @NM@
6822468a 219RANLIB = @RANLIB@
343a6100 220RANLIB_FLAGS = @ranlib_flags@
73458fb7 221
ed2eaa9f
ILT
222# Libraries to use on the host.
223HOST_LIBS = @HOST_LIBS@
224
00020c16 225# The name of the compiler to use.
00020c16
ILT
226COMPILER = $(CXX)
227COMPILER_FLAGS = $(CXXFLAGS)
ed2eaa9f
ILT
228# If HOST_LIBS is set, then the user is controlling the libraries to
229# link against. In that case, link with $(CC) so that the -lstdc++
230# library is not introduced. If HOST_LIBS is not set, link with
231# $(CXX) to pick up -lstdc++.
232ifeq ($(HOST_LIBS),)
00020c16
ILT
233LINKER = $(CXX)
234LINKER_FLAGS = $(CXXFLAGS)
ed2eaa9f
ILT
235else
236LINKER = $(CC)
237LINKER_FLAGS = $(CFLAGS)
238endif
7980bfb8 239
73458fb7
NN
240# -------------------------------------------
241# Programs which operate on the build machine
242# -------------------------------------------
243
b41e09a7 244SHELL = @SHELL@
1e6347d8
RO
245# pwd command to use. Allow user to override default by setting PWDCMD in
246# the environment to account for automounters. The make variable must not
247# be called PWDCMD, otherwise the value set here is passed to make
248# subprocesses and overrides the setting from the user's environment.
8c90b13a
L
249# Don't use PWD since it is a common shell environment variable and we
250# don't want to corrupt it.
251PWD_COMMAND = $${PWDCMD-pwd}
79d8453e 252# on sysV, define this as cp.
3c18ea24 253INSTALL = @INSTALL@
ac64120e
JW
254# Some systems may be missing symbolic links, regular links, or both.
255# Allow configure to check this and use "ln -s", "ln", or "cp" as appropriate.
256LN=@LN@
257LN_S=@LN_S@
79d8453e 258# These permit overriding just for certain files.
fca9d4b0
MH
259INSTALL_PROGRAM = @INSTALL_PROGRAM@
260INSTALL_DATA = @INSTALL_DATA@
7c1e8336 261INSTALL_SCRIPT = @INSTALL@
455c8f48
RW
262install_sh = $(SHELL) $(srcdir)/../install-sh
263INSTALL_STRIP_PROGRAM = $(install_sh) -c -s
09fa0705 264MAKEINFO = @MAKEINFO@
a541f69d 265MAKEINFOFLAGS = --no-split
d8984b6e 266TEXI2DVI = texi2dvi
b5422ad7 267TEXI2PDF = texi2pdf
9d65c5cb 268TEXI2HTML = $(MAKEINFO) --html
fd939e46 269TEXI2POD = perl $(srcdir)/../contrib/texi2pod.pl
b361b153 270POD2MAN = pod2man --center="GNU" --release="gcc-$(version)" --date=$(shell sed 's/\(....\)\(..\)\(..\)/\1-\2-\3/' <$(DATESTAMP))
5262d6b6 271# Some versions of `touch' (such as the version on Solaris 2.8)
d9835ae8 272# do not correctly set the timestamp due to buggy versions of `utime'
5262d6b6 273# in the kernel. So, we use `echo' instead.
d9835ae8 274STAMP = echo timestamp >
703fdf5a
RW
275# If necessary (e.g., when using the MSYS shell on Microsoft Windows)
276# translate the shell's notion of absolute pathnames to the native
277# spelling.
a0e527e3 278build_file_translate = @build_file_translate@
d9835ae8 279
73458fb7
NN
280# Make sure the $(MAKE) variable is defined.
281@SET_MAKE@
282
947c6b00
NN
283# Locate mkinstalldirs.
284mkinstalldirs=$(SHELL) $(srcdir)/../mkinstalldirs
285
a4e4a2d6
RW
286# write_entries_to_file - writes each entry in a list
287# to the specified file. Entries are written in chunks of
073a8998 288# $(write_entries_to_file_split) to accommodate systems with
a4e4a2d6
RW
289# severe command-line-length limitations.
290# Parameters:
291# $(1): variable containing entries to iterate over
292# $(2): output file
293write_entries_to_file_split = 50
294write_entries_to_file = $(shell rm -f $(2) || :) $(shell touch $(2)) \
295 $(foreach range, \
296 $(shell i=1; while test $$i -le $(words $(1)); do \
297 echo $$i; i=`expr $$i + $(write_entries_to_file_split)`; done), \
1b77ee03
MM
298 $(shell echo "$(wordlist $(range), \
299 $(shell expr $(range) + $(write_entries_to_file_split) - 1), $(1))" \
2fdb618d 300 | tr ' ' '\012' >> $(2)))
a4e4a2d6 301
73458fb7
NN
302# --------
303# UNSORTED
304# --------
305
306# Some compilers can't handle cc -c blah.c -o foo/blah.o.
307# In stage2 and beyond, we force this to "-o $@" since we know we're using gcc.
308OUTPUT_OPTION = @OUTPUT_OPTION@
309
b8dad04b
ZW
310# This is where we get zlib from. zlibdir is -L../zlib and zlibinc is
311# -I../zlib, unless we were configured with --with-system-zlib, in which
312# case both are empty.
313ZLIB = @zlibdir@ -lz
314ZLIBINC = @zlibinc@
79d8453e 315
6de9cd9a
DN
316# How to find GMP
317GMPLIBS = @GMPLIBS@
318GMPINC = @GMPINC@
319
33ad93b9
RG
320# How to find ISL
321ISLINC = @ISLINC@
f8bf9252
SP
322
323# How to find CLOOG
324CLOOGLIBS = @CLOOGLIBS@
325CLOOGINC = @CLOOGINC@
326
d7f09764
DN
327# Set to 'yes' if the LTO front end is enabled.
328enable_lto = @enable_lto@
329
de3f621b 330# Compiler and flags needed for plugin support
de3f621b
JR
331PLUGINCC = @CXX@
332PLUGINCFLAGS = @CXXFLAGS@
eeb971c9
EB
333
334# Libs and linker options needed for plugin support
68a607d8
DN
335PLUGINLIBS = @pluginlibs@
336
bf016de8
RAE
337enable_plugin = @enable_plugin@
338
6046b0ed 339CPPLIB = ../libcpp/libcpp.a
4f4e53dd
PB
340CPPINC = -I$(srcdir)/../libcpp/include
341
909e2256 342# Where to find decNumber
79b87c74 343enable_decimal_float = @enable_decimal_float@
909e2256 344DECNUM = $(srcdir)/../libdecnumber
79b87c74
MM
345DECNUMFMT = $(srcdir)/../libdecnumber/$(enable_decimal_float)
346DECNUMINC = -I$(DECNUM) -I$(DECNUMFMT) -I../libdecnumber
909e2256
JG
347LIBDECNUMBER = ../libdecnumber/libdecnumber.a
348
d83697f4
ILT
349# The backtrace library.
350BACKTRACE = $(srcdir)/../libbacktrace
351BACKTRACEINC = -I$(BACKTRACE)
352LIBBACKTRACE = ../libbacktrace/.libs/libbacktrace.a
353
ba1811f1 354# Target to use when installing include directory. Either
ff3aaf17 355# install-headers-tar, install-headers-cpio or install-headers-cp.
3c18ea24 356INSTALL_HEADERS_DIR = @build_install_headers_dir@
ba1811f1 357
d7371761
RK
358# Header files that are made available under the same name
359# to programs compiled with GCC.
b7f0fff2 360USER_H = $(srcdir)/ginclude/float.h \
d57a4b98
RH
361 $(srcdir)/ginclude/iso646.h \
362 $(srcdir)/ginclude/stdarg.h \
363 $(srcdir)/ginclude/stdbool.h \
364 $(srcdir)/ginclude/stddef.h \
365 $(srcdir)/ginclude/varargs.h \
0f996086 366 $(srcdir)/ginclude/stdfix.h \
bbceee64 367 $(srcdir)/ginclude/stdnoreturn.h \
d19fa6b5 368 $(srcdir)/ginclude/stdalign.h \
d57a4b98 369 $(EXTRA_HEADERS)
d7371761 370
9b91e436
KT
371USER_H_INC_NEXT_PRE = @user_headers_inc_next_pre@
372USER_H_INC_NEXT_POST = @user_headers_inc_next_post@
373
fa958513 374# The GCC to use for compiling crt*.o.
bf428f48 375# Usually the one we just built.
fa958513 376# Don't use this as a dependency--use $(GCC_PASSES).
4977bab6 377GCC_FOR_TARGET = $(STAGE_CC_WRAPPER) ./xgcc -B./ -B$(build_tooldir)/bin/ -isystem $(build_tooldir)/include -isystem $(build_tooldir)/sys-include -L$(objdir)/../ld
79d8453e 378
c875f596
DN
379# Set if the compiler was configured with --with-build-sysroot.
380SYSROOT_CFLAGS_FOR_TARGET = @SYSROOT_CFLAGS_FOR_TARGET@
381
79d8453e 382# This is used instead of ALL_CFLAGS when compiling with GCC_FOR_TARGET.
da0f6381 383# It specifies -B./.
3c9a2b55 384# It also specifies -isystem ./include to find, e.g., stddef.h.
00020c16 385GCC_CFLAGS=$(CFLAGS_FOR_TARGET) $(INTERNAL_CFLAGS) $(T_CFLAGS) $(LOOSE_WARN) $(C_LOOSE_WARN) -Wold-style-definition $($@-warn) -isystem ./include $(TCFLAGS)
79d8453e 386
73458fb7
NN
387# ---------------------------------------------------
388# Programs which produce files for the target machine
389# ---------------------------------------------------
7e717196 390
4ac29b33 391AR_FOR_TARGET := $(shell \
7e717196
JL
392 if [ -f $(objdir)/../binutils/ar ] ; then \
393 echo $(objdir)/../binutils/ar ; \
394 else \
4665e56c 395 if [ "$(host)" = "$(target)" ] ; then \
f6a874ac 396 echo $(AR); \
7e717196 397 else \
455c8f48 398 t='$(program_transform_name)'; echo ar | sed -e "$$t" ; \
7e717196 399 fi; \
4ac29b33 400 fi)
5262d6b6 401AR_FLAGS_FOR_TARGET =
7bde2862
GK
402AR_CREATE_FOR_TARGET = $(AR_FOR_TARGET) $(AR_FLAGS_FOR_TARGET) rc
403AR_EXTRACT_FOR_TARGET = $(AR_FOR_TARGET) $(AR_FLAGS_FOR_TARGET) x
ed0db39f 404LIPO_FOR_TARGET = lipo
9f18db39 405ORIGINAL_AS_FOR_TARGET = @ORIGINAL_AS_FOR_TARGET@
4ac29b33 406RANLIB_FOR_TARGET := $(shell \
7e717196
JL
407 if [ -f $(objdir)/../binutils/ranlib ] ; then \
408 echo $(objdir)/../binutils/ranlib ; \
409 else \
4665e56c 410 if [ "$(host)" = "$(target)" ] ; then \
6dd05d08 411 echo $(RANLIB); \
7e717196 412 else \
455c8f48 413 t='$(program_transform_name)'; echo ranlib | sed -e "$$t" ; \
7e717196 414 fi; \
4ac29b33 415 fi)
9f18db39
PB
416ORIGINAL_LD_FOR_TARGET = @ORIGINAL_LD_FOR_TARGET@
417ORIGINAL_NM_FOR_TARGET = @ORIGINAL_NM_FOR_TARGET@
418NM_FOR_TARGET = ./nm
ed0db39f 419STRIP_FOR_TARGET := $(shell \
455c8f48
RW
420 if [ -f $(objdir)/../binutils/strip-new ] ; then \
421 echo $(objdir)/../binutils/strip-new ; \
ed0db39f
GK
422 else \
423 if [ "$(host)" = "$(target)" ] ; then \
424 echo strip; \
425 else \
455c8f48 426 t='$(program_transform_name)'; echo strip | sed -e "$$t" ; \
ed0db39f
GK
427 fi; \
428 fi)
7e717196 429
73458fb7
NN
430# --------
431# UNSORTED
432# --------
433
4e872036
AS
434# Where to find some libiberty headers.
435HASHTAB_H = $(srcdir)/../include/hashtab.h
e980df8e 436OBSTACK_H = $(srcdir)/../include/obstack.h
5193cc6d 437SPLAY_TREE_H= $(srcdir)/../include/splay-tree.h
e980df8e
TT
438FIBHEAP_H = $(srcdir)/../include/fibheap.h
439PARTITION_H = $(srcdir)/../include/partition.h
440MD5_H = $(srcdir)/../include/md5.h
ee666c25
SB
441DWARF2_H = $(srcdir)/../include/dwarf2.h $(srcdir)/../include/dwarf2.def
442XREGEX_H = $(srcdir)/../include/xregex.h
f9bf5a8e 443FNMATCH_H = $(srcdir)/../include/fnmatch.h
4e872036 444
d7f09764
DN
445# Linker plugin API headers
446LINKER_PLUGIN_API_H = $(srcdir)/../include/plugin-api.h
447LTO_SYMTAB_H = $(srcdir)/../include/lto-symtab.h
448
a078a589 449# Default native SYSTEM_HEADER_DIR, to be overridden by targets.
08b2bad2 450NATIVE_SYSTEM_HEADER_DIR = @NATIVE_SYSTEM_HEADER_DIR@
512b62fb 451# Default cross SYSTEM_HEADER_DIR, to be overridden by targets.
4977bab6 452CROSS_SYSTEM_HEADER_DIR = @CROSS_SYSTEM_HEADER_DIR@
512b62fb 453
a078a589 454# autoconf sets SYSTEM_HEADER_DIR to one of the above.
073a8998 455# Purge it of unnecessary internal relative paths
be448346
BS
456# to directories that might not exist yet.
457# The sed idiom for this is to repeat the search-and-replace until it doesn't match, using :a ... ta.
70d0631e
RW
458# Use single quotes here to avoid nested double- and backquotes, this
459# macro is also used in a double-quoted context.
460SYSTEM_HEADER_DIR = `echo @SYSTEM_HEADER_DIR@ | sed -e :a -e 's,[^/]*/\.\.\/,,' -e ta`
a078a589 461
52c0e446 462# Control whether to run fixincludes.
0df47f66 463STMP_FIXINC = @STMP_FIXINC@
ac1284f9 464
40dc28fc
ILT
465# Test to see whether <limits.h> exists in the system header files.
466LIMITS_H_TEST = [ -f $(SYSTEM_HEADER_DIR)/limits.h ]
467
4977bab6
ZW
468# Directory for prefix to system directories, for
469# each of $(system_prefix)/usr/include, $(system_prefix)/usr/lib, etc.
470TARGET_SYSTEM_ROOT = @TARGET_SYSTEM_ROOT@
ce86ad58 471TARGET_SYSTEM_ROOT_DEFINE = @TARGET_SYSTEM_ROOT_DEFINE@
4977bab6 472
2ed26f6b
ZW
473xmake_file=@xmake_file@
474tmake_file=@tmake_file@
aca600aa
AS
475TM_ENDIAN_CONFIG=@TM_ENDIAN_CONFIG@
476TM_MULTILIB_CONFIG=@TM_MULTILIB_CONFIG@
477TM_MULTILIB_EXCEPTIONS_CONFIG=@TM_MULTILIB_EXCEPTIONS_CONFIG@
3c18ea24
RK
478out_file=$(srcdir)/config/@out_file@
479out_object_file=@out_object_file@
c49a6962
JM
480common_out_file=$(srcdir)/common/config/@common_out_file@
481common_out_object_file=@common_out_object_file@
3c18ea24 482md_file=$(srcdir)/config/@md_file@
4977bab6 483tm_file_list=@tm_file_list@
e22340b0 484tm_include_list=@tm_include_list@
d5355cb2 485tm_defines=@tm_defines@
11642c3a 486tm_p_file_list=@tm_p_file_list@
e22340b0 487tm_p_include_list=@tm_p_include_list@
11642c3a 488build_xm_file_list=@build_xm_file_list@
e22340b0 489build_xm_include_list=@build_xm_include_list@
11642c3a
ZW
490build_xm_defines=@build_xm_defines@
491host_xm_file_list=@host_xm_file_list@
e22340b0 492host_xm_include_list=@host_xm_include_list@
11642c3a 493host_xm_defines=@host_xm_defines@
e22340b0
ZW
494xm_file_list=@xm_file_list@
495xm_include_list=@xm_include_list@
3d9d2476 496xm_defines=@xm_defines@
d4a10d0a
SB
497lang_checks=
498lang_checks_parallelized=
f1ee724c
JJ
499dg_target_exps:=alpha.exp,arm.exp,avr.exp,bfin.exp,cris.exp,frv.exp
500dg_target_exps:=$(dg_target_exps),i386.exp,ia64.exp,m68k.exp,microblaze.exp
501dg_target_exps:=$(dg_target_exps),mips.exp,powerpc.exp,rx.exp,s390.exp,sh.exp
502dg_target_exps:=$(dg_target_exps),sparc.exp,spu.exp,xstormy16.exp
7134e605
JJ
503# This lists a couple of test files that take most time during check-gcc.
504# When doing parallelized check-gcc, these can run in parallel with the
505# remaining tests. Each word in this variable stands for work for one
506# make goal and one extra make goal is added to handle all the *.exp
507# files not handled explicitly already. If multiple *.exp files
508# should be run in the same runtest invocation (usually if they aren't
509# very long running, but still should be split of from the check-parallel-$lang
510# remaining tests runtest invocation), they should be concatenated with commas.
511# Note that [a-zA-Z] wildcards need to have []s prefixed with \ (needed
512# by tcl) and as the *.exp arguments are mached both as is and with
513# */ prefixed to it in runtest_file_p, it is usually desirable to include
514# a subdirectory name.
515check_gcc_parallelize=execute.exp=execute/2* \
f1ee724c
JJ
516 execute.exp=execute/\[013-9a-fA-F\]* \
517 execute.exp=execute/\[pP\]*,dg.exp \
518 execute.exp=execute/\[g-oq-zG-OQ-Z\]*,compile.exp=compile/2* \
519 compile.exp=compile/\[9pP\]*,builtins.exp \
520 compile.exp=compile/\[013-8a-oq-zA-OQ-Z\]* \
521 dg-torture.exp,ieee.exp \
522 vect.exp,guality.exp,unsorted.exp \
523 struct-layout-1.exp,stackalign.exp,$(dg_target_exps)
39dabefd 524lang_opt_files=@lang_opt_files@ $(srcdir)/c-family/c.opt $(srcdir)/common.opt
3c18ea24 525lang_specs_files=@lang_specs_files@
3103b7db 526lang_tree_files=@lang_tree_files@
11642c3a 527target_cpu_default=@target_cpu_default@
d8bb17c8 528OBJC_BOEHM_GC=@objc_boehm_gc@
0974c7d7 529extra_modes_file=@extra_modes_file@
75685792 530extra_opt_files=@extra_opt_files@
476d9098 531host_hook_obj=@out_host_hook_obj@
79d8453e 532
73458fb7
NN
533# ------------------------
534# Installation directories
535# ------------------------
536
79d8453e
RS
537# Common prefix for installation directories.
538# NOTE: This directory must exist when you start installation.
3c18ea24 539prefix = @prefix@
c844ddda
RS
540# Directory in which to put localized header files. On the systems with
541# gcc as the native cc, `local_prefix' may not be `prefix' which is
542# `/usr'.
0b2fbcb2 543# NOTE: local_prefix *should not* default from prefix.
3c18ea24 544local_prefix = @local_prefix@
2e494f70 545# Directory in which to put host dependent programs and libraries
3c18ea24 546exec_prefix = @exec_prefix@
79d8453e 547# Directory in which to put the executable for the command `gcc'
3c18ea24 548bindir = @bindir@
79d8453e 549# Directory in which to put the directories used by the compiler.
3c18ea24 550libdir = @libdir@
a8ee6e2d
GK
551# Directory in which GCC puts its executables.
552libexecdir = @libexecdir@
73458fb7
NN
553
554# --------
555# UNSORTED
556# --------
557
a8ee6e2d 558# Directory in which the compiler finds libraries etc.
caa55b1e 559libsubdir = $(libdir)/gcc/$(target_noncanonical)/$(version)
a8ee6e2d 560# Directory in which the compiler finds executables
caa55b1e 561libexecsubdir = $(libexecdir)/gcc/$(target_noncanonical)/$(version)
f142b5bc
RG
562# Directory in which all plugin resources are installed
563plugin_resourcesdir = $(libsubdir)/plugin
564 # Directory in which plugin headers are installed
565plugin_includedir = $(plugin_resourcesdir)/include
566# Directory in which plugin specific executables are installed
567plugin_bindir = $(libexecsubdir)/plugin
91c7bd9b 568# Used to produce a relative $(gcc_tooldir) in gcc.o
1f72bfca 569unlibsubdir = ../../..
15c723f3
RS
570# $(prefix), expressed as a path relative to $(libsubdir).
571#
572# An explanation of the sed strings:
573# -e 's|^$(prefix)||' matches and eliminates 'prefix' from 'exec_prefix'
574# -e 's|/$$||' match a trailing forward slash and eliminates it
575# -e 's|^[^/]|/|' forces the string to start with a forward slash (*)
576# -e 's|/[^/]*|../|g' replaces each occurrence of /<directory> with ../
577#
578# (*) Note this pattern overwrites the first character of the string
579# with a forward slash if one is not already present. This is not a
580# problem because the exact names of the sub-directories concerned is
581# unimportant, just the number of them matters.
582#
583# The practical upshot of these patterns is like this:
584#
585# prefix exec_prefix result
586# ------ ----------- ------
587# /foo /foo/bar ../
588# /foo/ /foo/bar ../
589# /foo /foo/bar/ ../
590# /foo/ /foo/bar/ ../
591# /foo /foo/bar/ugg ../../
592libsubdir_to_prefix := \
593 $(unlibsubdir)/$(shell echo "$(libdir)" | \
594 sed -e 's|^$(prefix)||' -e 's|/$$||' -e 's|^[^/]|/|' \
595 -e 's|/[^/]*|../|g')
596# $(exec_prefix), expressed as a path relative to $(prefix).
597prefix_to_exec_prefix := \
598 $(shell echo "$(exec_prefix)" | \
599 sed -e 's|^$(prefix)||' -e 's|^/||' -e '/./s|$$|/|')
d062c304 600# Directory in which to find other cross-compilation tools and headers.
4c112cda 601dollar = @dollar@
d062c304
JL
602# Used in install-cross.
603gcc_tooldir = @gcc_tooldir@
f098ead2 604# Since gcc_tooldir does not exist at build-time, use -B$(build_tooldir)/bin/
caa55b1e 605build_tooldir = $(exec_prefix)/$(target_noncanonical)
e2187d3b
BK
606# Directory in which the compiler finds target-independent g++ includes.
607gcc_gxx_include_dir = @gcc_gxx_include_dir@
17719d09 608gcc_gxx_include_dir_add_sysroot = @gcc_gxx_include_dir_add_sysroot@
49ba557e 609# Directory to search for site-specific includes.
793e9558
PB
610local_includedir = $(local_prefix)/include
611includedir = $(prefix)/include
0b2fbcb2 612# where the info files go
3c18ea24 613infodir = @infodir@
587a4ba6
L
614# Where cpp should go besides $prefix/bin if necessary
615cpp_install_dir = @cpp_install_dir@
ab87f8c8 616# where the locale files go
191bf464 617datadir = @datadir@
ab87f8c8 618localedir = $(datadir)/locale
79d8453e 619# Extension (if any) to put in installed man-page filename.
77bd67cb
JM
620man1ext = .1
621man7ext = .7
173712fb 622objext = .o
6e26218f
ILT
623exeext = @host_exeext@
624build_exeext = @build_exeext@
173712fb 625
79d8453e 626# Directory in which to put man pages.
a76b6b40
MH
627mandir = @mandir@
628man1dir = $(mandir)/man1
77bd67cb 629man7dir = $(mandir)/man7
62c13b81
RS
630# Dir for temp files.
631tmpdir = /tmp
79d8453e 632
22482f74
MS
633datarootdir = @datarootdir@
634docdir = @docdir@
9288b845 635# Directory in which to build HTML
22482f74 636build_htmldir = $(objdir)/HTML/gcc-$(version)
9d65c5cb 637# Directory in which to put HTML
22482f74 638htmldir = @htmldir@
9d65c5cb 639
ab87f8c8
JL
640# Whether we were configured with NLS.
641USE_NLS = @USE_NLS@
642
643# Internationalization library.
56694dd9
ZW
644LIBINTL = @LIBINTL@
645LIBINTL_DEP = @LIBINTL_DEP@
ab87f8c8 646
62c62a4f
RO
647# Character encoding conversion library.
648LIBICONV = @LIBICONV@
56694dd9 649LIBICONV_DEP = @LIBICONV_DEP@
62c62a4f 650
0a25f1f5 651# The GC method to be used on this system.
81bf3d9e 652GGC=@GGC@.o
0a25f1f5
RH
653
654# If a supplementary library is being used for the GC.
655GGC_LIB=
656
160633c6
MM
657# "true" if the target C library headers are unavailable; "false"
658# otherwise.
659inhibit_libc = @inhibit_libc@
660ifeq ($(inhibit_libc),true)
661INHIBIT_LIBC_CFLAGS = -Dinhibit_libc
662endif
663
79d8453e 664# List of extra executables that should be compiled for this target machine
d82c57a8 665# that are used when linking.
79d8453e 666# The rules for compiling them should be in the t-* file for the machine.
3c18ea24 667EXTRA_PROGRAMS = @extra_programs@
2e494f70 668
2e494f70
RS
669# List of extra object files that should be compiled and linked with
670# compiler proper (cc1, cc1obj, cc1plus).
3c18ea24 671EXTRA_OBJS = @extra_objs@
2e494f70 672
43554690
RK
673# List of extra object files that should be compiled and linked with
674# the gcc driver.
30500d84 675EXTRA_GCC_OBJS =@extra_gcc_objs@
43554690 676
e3b3fa45
RO
677# List of extra libraries that should be linked with the gcc driver.
678EXTRA_GCC_LIBS = @EXTRA_GCC_LIBS@
679
f780d21b 680# List of additional header files to install.
3c18ea24 681EXTRA_HEADERS =@extra_headers_list@
f780d21b 682
207bf79d
JM
683# How to handle <stdint.h>.
684USE_GCC_STDINT = @use_gcc_stdint@
685
c38f02df
ILT
686# The configure script will set this to collect2$(exeext), except on a
687# (non-Unix) host which can not build collect2, for which it will be
688# set to empty.
689COLLECT2 = @collect2@
47547081 690
79d8453e 691# Program to convert libraries.
4c457b6b 692LIBCONVERT =
79d8453e
RS
693
694# Control whether header files are installed.
e34a3d31 695INSTALL_HEADERS=install-headers install-mkheaders
79d8453e 696
09fa0705
ZW
697# Control whether Info documentation is built and installed.
698BUILD_INFO = @BUILD_INFO@
09fa0705 699
fd939e46
JM
700# Control whether manpages generated by texi2pod.pl can be rebuilt.
701GENERATED_MANPAGES = @GENERATED_MANPAGES@
702
66d7ffbf 703# Additional directories of header files to run fixincludes on.
4ab08223
RS
704# These should be directories searched automatically by default
705# just as /usr/include is.
4c457b6b 706# *Do not* use this for directories that happen to contain
4ab08223 707# header files, but are not searched automatically by default.
66d7ffbf
RS
708# On most systems, this is empty.
709OTHER_FIXINCLUDES_DIRS=
710
7c27f801 711# A list of all the language-specific executables.
d4a10d0a 712COMPILERS = @all_compilers@
7c27f801 713
acbbf3d9 714# List of things which should already be built whenever we try to use xgcc
79d8453e 715# to compile anything (without linking).
d4a10d0a 716GCC_PASSES=xgcc$(exeext) specs
79d8453e 717
79d8453e
RS
718# Directory to link to, when using the target `maketest'.
719DIR = ../gcc
720
a078a589 721# Native compiler for the build machine and its switches.
eaf9f3b2 722CC_FOR_BUILD = @CC_FOR_BUILD@
bdd5dc28 723CXX_FOR_BUILD = @CXX_FOR_BUILD@
4977bab6 724BUILD_CFLAGS= @BUILD_CFLAGS@ -DGENERATOR_FILE
bdd5dc28 725BUILD_CXXFLAGS = @BUILD_CXXFLAGS@ -DGENERATOR_FILE
a078a589 726
7980bfb8 727# Native compiler that we use. This may be C++ some day.
bdd5dc28
DN
728COMPILER_FOR_BUILD = $(CXX_FOR_BUILD)
729BUILD_COMPILERFLAGS = $(BUILD_CXXFLAGS)
7980bfb8 730
c607156f 731# Native linker that we use.
bdd5dc28
DN
732LINKER_FOR_BUILD = $(CXX_FOR_BUILD)
733BUILD_LINKERFLAGS = $(BUILD_CXXFLAGS)
c607156f 734
a078a589 735# Native linker and preprocessor flags. For x-fragment overrides.
f8c33439 736BUILD_LDFLAGS=@BUILD_LDFLAGS@
4977bab6 737BUILD_CPPFLAGS=$(ALL_CPPFLAGS)
79d8453e 738
338023d4 739# Actual name to use when installing a native compiler.
e165d61b
KC
740GCC_INSTALL_NAME := $(shell echo gcc|sed '$(program_transform_name)')
741GCC_TARGET_INSTALL_NAME := $(target_noncanonical)-$(shell echo gcc|sed '$(program_transform_name)')
742CPP_INSTALL_NAME := $(shell echo cpp|sed '$(program_transform_name)')
e165d61b 743GCOV_INSTALL_NAME := $(shell echo gcov|sed '$(program_transform_name)')
338023d4 744
e933cbe0
JL
745# Setup the testing framework, if you have one
746EXPECT = `if [ -f $${rootme}/../expect/expect ] ; then \
747 echo $${rootme}/../expect/expect ; \
748 else echo expect ; fi`
749
750RUNTEST = `if [ -f $${srcdir}/../dejagnu/runtest ] ; then \
751 echo $${srcdir}/../dejagnu/runtest ; \
752 else echo runtest; fi`
753RUNTESTFLAGS =
754
3bd6d4c4
AO
755# This should name the specs file that we're going to install. Target
756# Makefiles may override it and name another file to be generated from
757# the built-in specs and installed as the default spec, as long as
758# they also introduce a rule to generate a file name specs, to be used
759# at build time.
760SPECS = specs
761
fd438373
MM
762# Extra include files that are defined by HeaderInclude directives in
763# the .opt files
764OPTIONS_H_EXTRA =
765
766# Extra include files that are defined by SourceInclude directives in
767# the .opt files
6f4185d7 768OPTIONS_C_EXTRA = $(PRETTY_PRINT_H)
fd438373
MM
769
770@option_includes@
771
79d8453e
RS
772# End of variables for you to override.
773
4977bab6
ZW
774# GTM_H lists the config files that the generator files depend on,
775# while TM_H lists the ones ordinary gcc files depend on, which
776# includes several files generated by those generators.
e980df8e 777BCONFIG_H = bconfig.h $(build_xm_file_list)
4977bab6 778CONFIG_H = config.h $(host_xm_file_list)
1b0c37d7 779TCONFIG_H = tconfig.h $(xm_file_list)
4977bab6 780TM_P_H = tm_p.h $(tm_p_file_list)
c513ce77 781GTM_H = tm.h $(tm_file_list) insn-constants.h
852b75ed 782TM_H = $(GTM_H) insn-flags.h $(OPTIONS_H)
4977bab6 783
a1286ef5 784# Variables for version information.
f08dd1f8
ZW
785BASEVER := $(srcdir)/BASE-VER # 4.x.y
786DEVPHASE := $(srcdir)/DEV-PHASE # experimental, prerelease, ""
787DATESTAMP := $(srcdir)/DATESTAMP # YYYYMMDD or empty
db5b4110 788REVISION := $(srcdir)/REVISION # [BRANCH revision XXXXXX]
a1286ef5 789
f08dd1f8
ZW
790BASEVER_c := $(shell cat $(BASEVER))
791DEVPHASE_c := $(shell cat $(DEVPHASE))
792DATESTAMP_c := $(shell cat $(DATESTAMP))
a1286ef5 793
db5b4110
L
794ifeq (,$(wildcard $(REVISION)))
795REVISION_c :=
f8ed6dc5 796REVISION :=
db5b4110
L
797else
798REVISION_c := $(shell cat $(REVISION))
799endif
800
f08dd1f8 801version := $(BASEVER_c)
a1286ef5
ZW
802
803# For use in version.c - double quoted strings, with appropriate
804# surrounding punctuation and spaces, and with the datestamp and
805# development phase collapsed to the empty string in release mode
806# (i.e. if DEVPHASE_c is empty). The space immediately after the
807# comma in the $(if ...) constructs is significant - do not remove it.
f08dd1f8
ZW
808BASEVER_s := "\"$(BASEVER_c)\""
809DEVPHASE_s := "\"$(if $(DEVPHASE_c), ($(DEVPHASE_c)))\""
810DATESTAMP_s := "\"$(if $(DEVPHASE_c), $(DATESTAMP_c))\""
2f41c1d6
PB
811PKGVERSION_s:= "\"@PKGVERSION@\""
812BUGURL_s := "\"@REPORT_BUGS_TO@\""
813
814PKGVERSION := @PKGVERSION@
815BUGURL_TEXI := @REPORT_BUGS_TEXI@
a1286ef5 816
db5b4110
L
817ifdef REVISION_c
818REVISION_s := "\"$(if $(DEVPHASE_c), $(REVISION_c))\""
819else
cf8aba7f 820REVISION_s := "\"\""
db5b4110
L
821endif
822
e980df8e 823# Shorthand variables for dependency lists.
3e097227 824VEC_H = vec.h statistics.h
0823efed 825HASH_TABLE_H = $(HASHTAB_H) hash-table.h
245763e3 826EXCEPT_H = except.h $(HASHTAB_H) vecprim.h vecir.h
acce4e77
JM
827TARGET_DEF = target.def target-hooks-macros.h
828C_TARGET_DEF = c-family/c-target.def target-hooks-macros.h
c49a6962 829COMMON_TARGET_DEF = common/common-target.def target-hooks-macros.h
acce4e77
JM
830TARGET_H = $(TM_H) target.h $(TARGET_DEF) insn-modes.h
831C_TARGET_H = c-family/c-target.h $(C_TARGET_DEF)
677f3fa8 832COMMON_TARGET_H = common/common-target.h $(INPUT_H) $(COMMON_TARGET_DEF)
e980df8e
TT
833MACHMODE_H = machmode.h mode-classes.def insn-modes.h
834HOOKS_H = hooks.h $(MACHMODE_H)
835HOSTHOOKS_DEF_H = hosthooks-def.h $(HOOKS_H)
836LANGHOOKS_DEF_H = langhooks-def.h $(HOOKS_H)
38f8b050 837TARGET_DEF_H = target-def.h target-hooks-def.h $(HOOKS_H) targhooks.h
acce4e77 838C_TARGET_DEF_H = c-family/c-target-def.h c-family/c-target-hooks-def.h \
677f3fa8 839 $(TREE_H) $(C_COMMON_H) $(HOOKS_H) common/common-targhooks.h
c49a6962
JM
840COMMON_TARGET_DEF_H = common/common-target-def.h \
841 common/common-target-hooks-def.h $(HOOKS_H)
79bdca32
SB
842RTL_BASE_H = coretypes.h rtl.h rtl.def $(MACHMODE_H) reg-notes.def \
843 insn-notes.def $(INPUT_H) $(REAL_H) statistics.h $(VEC_H) \
844 $(FIXED_VALUE_H) alias.h $(HASHTAB_H)
e63ea00c 845FIXED_VALUE_H = fixed-value.h $(MACHMODE_H) double-int.h
532aafad 846RTL_H = $(RTL_BASE_H) $(FLAGS_H) genrtl.h vecir.h
ee666c25 847RTL_ERROR_H = rtl-error.h $(RTL_H) $(DIAGNOSTIC_CORE_H)
9f418533 848READ_MD_H = $(OBSTACK_H) $(HASHTAB_H) read-md.h
e980df8e 849PARAMS_H = params.h params.def
0a35513e
AH
850BUILTINS_DEF = builtins.def sync-builtins.def omp-builtins.def \
851 gtm-builtins.def
25583c4f
RS
852INTERNAL_FN_DEF = internal-fn.def
853INTERNAL_FN_H = internal-fn.h $(INTERNAL_FN_DEF)
79bdca32 854TREE_H = coretypes.h tree.h all-tree.def tree.def c-family/c-common.def \
39dabefd
SB
855 $(lang_tree_files) $(MACHMODE_H) tree-check.h $(BUILTINS_DEF) \
856 $(INPUT_H) statistics.h $(VEC_H) treestruct.def $(HASHTAB_H) \
a75bfaa6 857 double-int.h alias.h $(SYMTAB_H) $(FLAGS_H) vecir.h \
39dabefd 858 $(REAL_H) $(FIXED_VALUE_H)
7a8cba34 859REGSET_H = regset.h $(BITMAP_H) hard-reg-set.h
6889a650
FW
860BASIC_BLOCK_H = basic-block.h $(PREDICT_H) $(VEC_H) $(FUNCTION_H) \
861 cfg-flags.def cfghooks.h
3e097227 862GIMPLE_H = gimple.h gimple.def gsstruct.def pointer-set.h $(VEC_H) \
532aafad 863 vecir.h $(GGC_H) $(BASIC_BLOCK_H) $(TREE_H) tree-ssa-operands.h \
25583c4f 864 tree-ssa-alias.h $(INTERNAL_FN_H)
0a35513e 865TRANS_MEM_H = trans-mem.h
e980df8e
TT
866GCOV_IO_H = gcov-io.h gcov-iov.h auto-host.h
867COVERAGE_H = coverage.h $(GCOV_IO_H)
868DEMANGLE_H = $(srcdir)/../include/demangle.h
869RECOG_H = recog.h
79bdca32 870ALIAS_H = alias.h
e980df8e 871EMIT_RTL_H = emit-rtl.h
79bdca32 872FLAGS_H = flags.h flag-types.h $(OPTIONS_H)
fd438373 873OPTIONS_H = options.h flag-types.h $(OPTIONS_H_EXTRA)
532aafad
SB
874FUNCTION_H = function.h $(HASHTAB_H) vecprim.h $(TM_H) hard-reg-set.h \
875 $(VEC_H) vecir.h $(INPUT_H) $(MACHMODE_H)
e980df8e 876EXPR_H = expr.h insn-config.h $(FUNCTION_H) $(RTL_H) $(FLAGS_H) $(TREE_H) $(MACHMODE_H) $(EMIT_RTL_H)
cd1440b1 877OPTABS_H = optabs.h insn-codes.h insn-opinit.h
539bac37 878REGS_H = regs.h $(MACHMODE_H) hard-reg-set.h
7a8cba34
SB
879SCHED_INT_H = sched-int.h $(INSN_ATTR_H) $(BASIC_BLOCK_H) $(RTL_H) $(DF_H) \
880 vecprim.h $(REGSET_H)
e855c69d 881SEL_SCHED_IR_H = sel-sched-ir.h $(INSN_ATTR_H) $(BASIC_BLOCK_H) $(RTL_H) \
7a8cba34 882 $(GGC_H) $(BITMAP_H) vecprim.h $(SCHED_INT_H) $(CFGLOOP_H) $(REGSET_H)
e855c69d 883SEL_SCHED_DUMP_H = sel-sched-dump.h $(SEL_SCHED_IR_H)
1c1ad7bb 884CFGLOOP_H = cfgloop.h $(BASIC_BLOCK_H) vecprim.h double-int.h \
7a8cba34 885 $(BITMAP_H) sbitmap.h
e980df8e 886IPA_UTILS_H = ipa-utils.h $(TREE_H) $(CGRAPH_H)
e63ea00c 887IPA_REFERENCE_H = ipa-reference.h $(BITMAP_H) $(TREE_H)
3e097227 888CGRAPH_H = cgraph.h $(VEC_H) $(TREE_H) $(BASIC_BLOCK_H) $(FUNCTION_H) \
5d59b5e1 889 cif-code.def ipa-ref.h ipa-ref-inline.h $(LINKER_PLUGIN_API_H) is-a.h
7a8cba34
SB
890DF_H = df.h $(BITMAP_H) $(REGSET_H) sbitmap.h $(BASIC_BLOCK_H) \
891 alloc-pool.h $(TIMEVAR_H)
e9f950ba
AO
892VALTRACK_H = valtrack.h $(BITMAP_H) $(DF_H) $(RTL_H) $(BASIC_BLOCK_H) \
893 $(HASH_TABLE_H)
e980df8e
TT
894RESOURCE_H = resource.h hard-reg-set.h $(DF_H)
895DDG_H = ddg.h sbitmap.h $(DF_H)
6afbc885 896GCC_H = gcc.h version.h $(DIAGNOSTIC_CORE_H)
e63ea00c 897GGC_H = ggc.h gtype-desc.h statistics.h
a9429e29 898GGC_INTERNAL_H = ggc-internal.h $(GGC_H)
e980df8e 899TIMEVAR_H = timevar.h timevar.def
88a00ef7 900INSN_ATTR_H = insn-attr.h insn-attr-common.h $(INSN_ADDR_H)
e63ea00c 901INSN_ADDR_H = $(srcdir)/insn-addr.h vecprim.h
532aafad 902C_COMMON_H = c-family/c-common.h c-family/c-common.def $(TREE_H) \
39dabefd
SB
903 $(SPLAY_TREE_H) $(CPPLIB_H) $(GGC_H) $(DIAGNOSTIC_CORE_H)
904C_PRAGMA_H = c-family/c-pragma.h $(CPPLIB_H)
7c475d11 905C_TREE_H = c-tree.h $(C_COMMON_H) $(DIAGNOSTIC_H)
e63ea00c
RW
906SYSTEM_H = system.h hwint.h $(srcdir)/../include/libiberty.h \
907 $(srcdir)/../include/safe-ctype.h $(srcdir)/../include/filenames.h
e980df8e 908PREDICT_H = predict.h predict.def
d8044160
GK
909CPPLIB_H = $(srcdir)/../libcpp/include/line-map.h \
910 $(srcdir)/../libcpp/include/cpplib.h
e63ea00c 911INPUT_H = $(srcdir)/../libcpp/include/line-map.h input.h
21bf1558 912OPTS_H = $(INPUT_H) $(VEC_H) opts.h
e980df8e
TT
913DECNUM_H = $(DECNUM)/decContext.h $(DECNUM)/decDPD.h $(DECNUM)/decNumber.h \
914 $(DECNUMFMT)/decimal32.h $(DECNUMFMT)/decimal64.h \
915 $(DECNUMFMT)/decimal128.h $(DECNUMFMT)/decimal128Local.h
d83697f4 916BACKTRACE_H = $(BACKTRACE)/backtrace.h
e980df8e 917MKDEPS_H = $(srcdir)/../libcpp/include/mkdeps.h
e63ea00c 918SYMTAB_H = $(srcdir)/../libcpp/include/symtab.h $(OBSTACK_H)
d8044160 919CPP_ID_DATA_H = $(CPPLIB_H) $(srcdir)/../libcpp/include/cpp-id-data.h
e63ea00c 920CPP_INTERNAL_H = $(srcdir)/../libcpp/internal.h $(CPP_ID_DATA_H)
78c60e3d 921TREE_DUMP_H = tree-dump.h $(SPLAY_TREE_H) dumpfile.h
7ee2468b 922TREE_PASS_H = tree-pass.h $(TIMEVAR_H) dumpfile.h
e980df8e 923TREE_FLOW_H = tree-flow.h tree-flow-inline.h tree-ssa-operands.h \
7a8cba34 924 $(BITMAP_H) sbitmap.h $(BASIC_BLOCK_H) $(GIMPLE_H) \
5006671f
RG
925 $(HASHTAB_H) $(CGRAPH_H) $(IPA_REFERENCE_H) \
926 tree-ssa-alias.h
e980df8e 927TREE_SSA_LIVE_H = tree-ssa-live.h $(PARTITION_H) vecprim.h
4e3825db 928SSAEXPAND_H = ssaexpand.h $(TREE_SSA_LIVE_H)
e63ea00c 929PRETTY_PRINT_H = pretty-print.h $(INPUT_H) $(OBSTACK_H)
ee666c25
SB
930TREE_PRETTY_PRINT_H = tree-pretty-print.h $(PRETTY_PRINT_H)
931GIMPLE_PRETTY_PRINT_H = gimple-pretty-print.h $(TREE_PRETTY_PRINT_H)
7c475d11 932DIAGNOSTIC_CORE_H = diagnostic-core.h $(INPUT_H) bversion.h diagnostic.def
1da2ed5f 933DIAGNOSTIC_H = diagnostic.h $(DIAGNOSTIC_CORE_H) $(PRETTY_PRINT_H)
6f4185d7 934DWARF2OUT_H = dwarf2out.h $(DWARF2_H)
39dabefd
SB
935C_PRETTY_PRINT_H = c-family/c-pretty-print.h $(PRETTY_PRINT_H) \
936 $(C_COMMON_H) $(TREE_H)
e980df8e 937SCEV_H = tree-scalar-evolution.h $(GGC_H) tree-chrec.h $(PARAMS_H)
6f4185d7
SB
938OMEGA_H = omega.h $(PARAMS_H)
939TREE_DATA_REF_H = tree-data-ref.h $(OMEGA_H) graphds.h $(SCEV_H)
f4ce02c5 940TREE_INLINE_H = tree-inline.h vecir.h
e980df8e 941REAL_H = real.h $(MACHMODE_H)
058e97ec 942IRA_INT_H = ira.h ira-int.h $(CFGLOOP_H) alloc-pool.h
55a2c322 943LRA_INT_H = lra.h $(BITMAP_H) $(RECOG_H) $(INSN_ATTR_H) insn-codes.h lra-int.h
e980df8e 944DBGCNT_H = dbgcnt.h dbgcnt.def
d7f09764 945LTO_STREAMER_H = lto-streamer.h $(LINKER_PLUGIN_API_H) $(TARGET_H) \
40e584a1 946 $(CGRAPH_H) $(VEC_H) vecprim.h $(TREE_H) $(GIMPLE_H) \
ee666c25 947 $(GCOV_IO_H) $(DIAGNOSTIC_H) alloc-pool.h
f0efc7aa
DN
948DATA_STREAMER_H = data-streamer.h $(VEC_H) $(LTO_STREAMER_H)
949GIMPLE_STREAMER_H = gimple-streamer.h $(LTO_STREAMER_H) $(BASIC_BLOCK_H) \
950 $(FUNCTION_H)
b9393656
DN
951TREE_STREAMER_H = tree-streamer.h $(TREE_H) $(LTO_STREAMER_H) \
952 $(STREAMER_HOOKS_H)
f0efc7aa 953STREAMER_HOOKS_H = streamer-hooks.h $(TREE_H)
b6cef4e0 954TREE_VECTORIZER_H = tree-vectorizer.h $(TREE_DATA_REF_H) $(TARGET_H)
310bc633 955IPA_PROP_H = ipa-prop.h $(TREE_H) $(VEC_H) $(CGRAPH_H) $(GIMPLE_H) alloc-pool.h
2c9561b5 956IPA_INLINE_H = ipa-inline.h $(IPA_PROP_H)
e63ea00c
RW
957GSTAB_H = gstab.h stab.def
958BITMAP_H = bitmap.h $(HASHTAB_H) statistics.h
ee666c25
SB
959GCC_PLUGIN_H = gcc-plugin.h highlev-plugin-common.h plugin.def \
960 $(CONFIG_H) $(SYSTEM_H) $(HASHTAB_H)
3e17e31d 961PLUGIN_H = plugin.h $(GCC_PLUGIN_H)
0c463e16 962PLUGIN_VERSION_H = plugin-version.h configargs.h
5714c34f 963LIBFUNCS_H = libfuncs.h $(HASHTAB_H)
c4df8f8c 964
544eb21e 965#\f
79d8453e
RS
966# Now figure out from those variables how to compile and link.
967
a078a589
ZW
968# IN_GCC distinguishes between code compiled into GCC itself and other
969# programs built during a bootstrap.
2989d30c
GK
970# autoconf inserts -DCROSS_DIRECTORY_STRUCTURE if we are building a
971# cross compiler which does not use the native headers and libraries.
8733892f 972INTERNAL_CFLAGS = -DIN_GCC @CROSS@
79d8453e 973
83599948 974# This is the variable actually used when we compile. If you change this,
a6a5e4c9 975# you probably want to update BUILD_CFLAGS in configure.ac
7a3b4887 976ALL_CFLAGS = $(T_CFLAGS) $(CFLAGS-$@) \
da0f6381 977 $(CFLAGS) $(INTERNAL_CFLAGS) $(COVERAGE_FLAGS) $(WARN_CFLAGS) @DEFS@
79d8453e 978
00020c16 979# The C++ version.
295409e1 980ALL_CXXFLAGS = $(T_CFLAGS) $(CFLAGS-$@) $(CXXFLAGS) $(INTERNAL_CFLAGS) \
e9411247 981 $(COVERAGE_FLAGS) $(NOEXCEPTION_FLAGS) $(WARN_CXXFLAGS) @DEFS@
00020c16 982
3a6ebcdc
PB
983# Likewise. Put INCLUDES at the beginning: this way, if some autoconf macro
984# puts -I options in CPPFLAGS, our include files in the srcdir will always
985# win against random include files in /usr/include.
da0f6381 986ALL_CPPFLAGS = $(INCLUDES) $(CPPFLAGS)
79d8453e 987
7980bfb8 988# This is the variable to use when using $(COMPILER).
00020c16 989ALL_COMPILERFLAGS = $(ALL_CXXFLAGS)
7980bfb8 990
c607156f 991# This is the variable to use when using $(LINKER).
00020c16 992ALL_LINKERFLAGS = $(ALL_CXXFLAGS)
c607156f 993
71b5d516 994# Build and host support libraries.
06f0b04c 995LIBIBERTY = ../libiberty/libiberty.a
57255173 996BUILD_LIBIBERTY = $(build_libobjdir)/libiberty/libiberty.a
79d8453e 997
935bfb44 998# Dependencies on the intl and portability libraries.
2691e6d7 999LIBDEPS= libcommon.a $(CPPLIB) $(LIBIBERTY) $(LIBINTL_DEP) $(LIBICONV_DEP) \
d83697f4 1000 $(LIBDECNUMBER) $(LIBBACKTRACE)
79d8453e
RS
1001
1002# Likewise, for use in the tools that must run on this machine
1003# even if we are cross-building GCC.
4977bab6 1004BUILD_LIBDEPS= $(BUILD_LIBIBERTY)
79d8453e
RS
1005
1006# How to link with both our special library facilities
1007# and the system's installed libraries.
d83697f4
ILT
1008LIBS = @LIBS@ libcommon.a $(CPPLIB) $(LIBINTL) $(LIBICONV) $(LIBBACKTRACE) \
1009 $(LIBIBERTY) $(LIBDECNUMBER) $(HOST_LIBS)
33ad93b9 1010BACKENDLIBS = $(CLOOGLIBS) $(GMPLIBS) $(PLUGINLIBS) $(HOST_LIBS) \
181e5ea4 1011 $(ZLIB)
7d600178
RO
1012# Any system libraries needed just for GNAT.
1013SYSLIBS = @GNAT_LIBEXC@
1014
96ee6e08 1015# Used from ada/gcc-interface/Make-lang.in
3d4e720a
ST
1016GNATBIND = @GNATBIND@
1017GNATMAKE = @GNATMAKE@
1018
62c9aa5f
ZW
1019# Libs needed (at present) just for jcf-dump.
1020LDEXP_LIB = @LDEXP_LIB@
1021
79d8453e
RS
1022# Likewise, for use in the tools that must run on this machine
1023# even if we are cross-building GCC.
4977bab6 1024BUILD_LIBS = $(BUILD_LIBIBERTY)
79d8453e 1025
9b68b6ea 1026BUILD_RTL = build/rtl.o build/read-rtl.o build/ggc-none.o \
10692477
RS
1027 build/vec.o build/min-insn-modes.o build/gensupport.o \
1028 build/print-rtl.o
9b68b6ea 1029BUILD_MD = build/read-md.o
3b620440 1030BUILD_ERRORS = build/errors.o
79d8453e
RS
1031
1032# Specify the directories to be searched for header files.
1033# Both . and srcdir are used, in that order,
eaf4e618 1034# so that *config.h will be found in the compilation
79d8453e 1035# subdirectory rather than in the source directory.
b8dad04b
ZW
1036# -I$(@D) and -I$(srcdir)/$(@D) cause the subdirectory of the file
1037# currently being compiled, in both source trees, to be examined as well.
6eb95e99 1038# libintl.h will be found in ../intl if we are using the included libintl.
b8dad04b 1039INCLUDES = -I. -I$(@D) -I$(srcdir) -I$(srcdir)/$(@D) \
6de9cd9a 1040 -I$(srcdir)/../include @INCINTL@ \
d83697f4 1041 $(CPPINC) $(GMPINC) $(DECNUMINC) $(BACKTRACEINC) \
33ad93b9 1042 $(CLOOGINC) $(ISLINC)
79d8453e 1043
e980df8e 1044.c.o:
7980bfb8 1045 $(COMPILER) -c $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) $< $(OUTPUT_OPTION)
79d8453e 1046
544eb21e 1047#\f
73458fb7
NN
1048# Support for additional languages (other than C).
1049# C can be supported this way too (leave for later).
013a2ee0 1050
2ed26f6b 1051LANG_MAKEFRAGS = @all_lang_makefrags@
013a2ee0
DE
1052
1053# Flags to pass to recursive makes.
8b1f719a 1054# CC is set by configure.
013a2ee0 1055# ??? The choices here will need some experimenting with.
e158a5fb
MM
1056
1057export AR_FOR_TARGET
1058export AR_CREATE_FOR_TARGET
1059export AR_FLAGS_FOR_TARGET
1060export AR_EXTRACT_FOR_TARGET
1061export AWK
e158a5fb
MM
1062export DESTDIR
1063export GCC_FOR_TARGET
1064export INCLUDES
1065export INSTALL_DATA
040b1c5a 1066export LIPO_FOR_TARGET
e158a5fb
MM
1067export MACHMODE_H
1068export NM_FOR_TARGET
040b1c5a 1069export STRIP_FOR_TARGET
e158a5fb
MM
1070export RANLIB_FOR_TARGET
1071export libsubdir
e158a5fb 1072
8b1f719a 1073FLAGS_TO_PASS = \
da0f6381 1074 "ADA_CFLAGS=$(ADA_CFLAGS)" \
013a2ee0
DE
1075 "BISON=$(BISON)" \
1076 "BISONFLAGS=$(BISONFLAGS)" \
5b67ad6f 1077 "CFLAGS=$(CFLAGS) $(WARN_CFLAGS)" \
013a2ee0 1078 "LDFLAGS=$(LDFLAGS)" \
1e608388
ZW
1079 "FLEX=$(FLEX)" \
1080 "FLEXFLAGS=$(FLEXFLAGS)" \
ac64120e
JW
1081 "LN=$(LN)" \
1082 "LN_S=$(LN_S)" \
013a2ee0
DE
1083 "MAKEINFO=$(MAKEINFO)" \
1084 "MAKEINFOFLAGS=$(MAKEINFOFLAGS)" \
03bbd83f 1085 "MAKEOVERRIDES=" \
013a2ee0 1086 "SHELL=$(SHELL)" \
aab26e16 1087 "exeext=$(exeext)" \
6e26218f 1088 "build_exeext=$(build_exeext)" \
aab26e16 1089 "objext=$(objext)" \
013a2ee0
DE
1090 "exec_prefix=$(exec_prefix)" \
1091 "prefix=$(prefix)" \
3bf810d8 1092 "local_prefix=$(local_prefix)" \
8f8d3278 1093 "gxx_include_dir=$(gcc_gxx_include_dir)" \
f098ead2 1094 "build_tooldir=$(build_tooldir)" \
91c7bd9b 1095 "gcc_tooldir=$(gcc_tooldir)" \
013a2ee0 1096 "bindir=$(bindir)" \
0ac3cb2a 1097 "libexecsubdir=$(libexecsubdir)" \
2d09b640 1098 "datarootdir=$(datarootdir)" \
ab87f8c8 1099 "datadir=$(datadir)" \
ab87f8c8 1100 "localedir=$(localedir)"
544eb21e 1101#\f
79d8453e
RS
1102# Lists of files for various purposes.
1103
75685792
RS
1104# All option source files
1105ALL_OPT_FILES=$(lang_opt_files) $(extra_opt_files)
1106
aac69a49
NC
1107# Target specific, C specific object file
1108C_TARGET_OBJS=@c_target_objs@
1109
1110# Target specific, C++ specific object file
1111CXX_TARGET_OBJS=@cxx_target_objs@
1112
c776a6d0
DF
1113# Target specific, Fortran specific object file
1114FORTRAN_TARGET_OBJS=@fortran_target_objs@
1115
d4a10d0a 1116# Object files for gcc many-languages driver.
677f3fa8 1117GCC_OBJS = gcc.o ggc-none.o
14c7833c 1118
39dabefd 1119# Language-specific object files shared by all C-family front ends.
d4a10d0a
SB
1120# FIXME: tree-mudflap is C-family only, but it is also part of the middle-end.
1121# The mudflap machinery should be properly separated from the front ends, and
1122# perhaps turned into a plugin.
39dabefd
SB
1123C_COMMON_OBJS = c-family/c-common.o c-family/c-cppbuiltin.o c-family/c-dump.o \
1124 c-family/c-format.o c-family/c-gimplify.o c-family/c-lex.o \
1125 c-family/c-omp.o c-family/c-opts.o c-family/c-pch.o \
1126 c-family/c-ppoutput.o c-family/c-pragma.o c-family/c-pretty-print.o \
d4a10d0a 1127 c-family/c-semantics.o c-family/c-ada-spec.o tree-mudflap.o
e8066a5d 1128
79d8453e 1129# Language-independent object files.
d5dc6bad
ILT
1130# We put the insn-*.o files first so that a parallel make will build
1131# them sooner, because they are large and otherwise tend to be the
1132# last objects to finish building.
252b3e8c 1133OBJS = \
d5dc6bad
ILT
1134 insn-attrtab.o \
1135 insn-automata.o \
41723253 1136 insn-dfatab.o \
d5dc6bad
ILT
1137 insn-emit.o \
1138 insn-extract.o \
41723253 1139 insn-latencytab.o \
d5dc6bad
ILT
1140 insn-modes.o \
1141 insn-opinit.o \
1142 insn-output.o \
1143 insn-peep.o \
1144 insn-preds.o \
1145 insn-recog.o \
0fe60a1b 1146 insn-enums.o \
d5dc6bad
ILT
1147 $(GGC) \
1148 alias.o \
1149 alloc-pool.o \
6fb5fa3c 1150 auto-inc-dec.o \
d5dc6bad
ILT
1151 bb-reorder.o \
1152 bitmap.o \
1153 bt-load.o \
1154 builtins.o \
1155 caller-save.o \
1156 calls.o \
1157 cfg.o \
1158 cfganal.o \
1159 cfgbuild.o \
1160 cfgcleanup.o \
1161 cfgexpand.o \
1162 cfghooks.o \
d5dc6bad
ILT
1163 cfgloop.o \
1164 cfgloopanal.o \
1165 cfgloopmanip.o \
1166 cfgrtl.o \
2aae7680 1167 symtab.o \
252b3e8c
MM
1168 cgraph.o \
1169 cgraphbuild.o \
1170 cgraphunit.o \
66a20fc2 1171 cgraphclones.o \
d5dc6bad 1172 combine.o \
c7a0240a 1173 combine-stack-adj.o \
e692f276 1174 compare-elim.o \
d5dc6bad
ILT
1175 convert.o \
1176 coverage.o \
252b3e8c
MM
1177 cppbuiltin.o \
1178 cppdefault.o \
e45425ec 1179 cprop.o \
d5dc6bad
ILT
1180 cse.o \
1181 cselib.o \
f0efc7aa
DN
1182 data-streamer.o \
1183 data-streamer-in.o \
1184 data-streamer-out.o \
d5dc6bad 1185 dbxout.o \
6fb5fa3c
DB
1186 dbgcnt.o \
1187 dce.o \
d5dc6bad
ILT
1188 ddg.o \
1189 debug.o \
1190 df-core.o \
1191 df-problems.o \
1192 df-scan.o \
1193 dfp.o \
d5dc6bad
ILT
1194 dojump.o \
1195 dominance.o \
1196 domwalk.o \
1197 double-int.o \
6fb5fa3c 1198 dse.o \
78c60e3d 1199 dumpfile.o \
d5dc6bad 1200 dwarf2asm.o \
647a1567 1201 dwarf2cfi.o \
d5dc6bad
ILT
1202 dwarf2out.o \
1203 emit-rtl.o \
1204 et-forest.o \
1205 except.o \
1206 explow.o \
1207 expmed.o \
1208 expr.o \
1209 final.o \
1e1ba002 1210 fixed-value.o \
d5dc6bad
ILT
1211 fold-const.o \
1212 function.o \
1213 fwprop.o \
1214 gcse.o \
d5dc6bad 1215 ggc-common.o \
726a989a
RB
1216 gimple.o \
1217 gimple-iterator.o \
cbdd87d4 1218 gimple-fold.o \
d5dc6bad 1219 gimple-low.o \
726a989a 1220 gimple-pretty-print.o \
f9453c07 1221 gimple-ssa-strength-reduction.o \
f0efc7aa
DN
1222 gimple-streamer-in.o \
1223 gimple-streamer-out.o \
d5dc6bad 1224 gimplify.o \
c6a13190 1225 godump.o \
d5dc6bad 1226 graph.o \
66f97d31 1227 graphds.o \
f8bf9252 1228 graphite.o \
204b560f
SP
1229 graphite-blocking.o \
1230 graphite-clast-to-gimple.o \
1231 graphite-dependences.o \
1232 graphite-interchange.o \
b60cc080 1233 graphite-optimize-isl.o \
204b560f 1234 graphite-poly.o \
204b560f
SP
1235 graphite-scop-detection.o \
1236 graphite-sese-to-poly.o \
d5dc6bad
ILT
1237 gtype-desc.o \
1238 haifa-sched.o \
9d9c740d 1239 hw-doloop.o \
c59ffc41 1240 hwint.o \
d5dc6bad 1241 ifcvt.o \
26cd9add 1242 ree.o \
252b3e8c 1243 incpath.o \
6fb5fa3c 1244 init-regs.o \
25583c4f 1245 internal-fn.o \
252b3e8c
MM
1246 ipa-cp.o \
1247 ipa-split.o \
1248 ipa-inline.o \
1249 ipa-inline-analysis.o \
1250 ipa-inline-transform.o \
1251 ipa-prop.o \
1252 ipa-pure-const.o \
1253 ipa-reference.o \
1254 ipa-ref.o \
1255 ipa-utils.o \
1256 ipa.o \
058e97ec
VM
1257 ira.o \
1258 ira-build.o \
1259 ira-costs.o \
1260 ira-conflicts.o \
1261 ira-color.o \
1262 ira-emit.o \
1263 ira-lives.o \
d5dc6bad 1264 jump.o \
d5dc6bad
ILT
1265 langhooks.o \
1266 lcm.o \
1267 lists.o \
d5dc6bad
ILT
1268 loop-doloop.o \
1269 loop-init.o \
1270 loop-invariant.o \
1271 loop-iv.o \
1272 loop-unroll.o \
1273 loop-unswitch.o \
e53a16e7 1274 lower-subreg.o \
55a2c322
VM
1275 lra.o \
1276 lra-assigns.o \
1277 lra-coalesce.o \
1278 lra-constraints.o \
1279 lra-eliminations.o \
1280 lra-lives.o \
1281 lra-spills.o \
d7f09764 1282 lto-cgraph.o \
f0efc7aa 1283 lto-streamer.o \
d7f09764
DN
1284 lto-streamer-in.o \
1285 lto-streamer-out.o \
1286 lto-section-in.o \
1287 lto-section-out.o \
1288 lto-symtab.o \
1289 lto-opts.o \
d7f09764 1290 lto-compress.o \
52c76998 1291 mcf.o \
d5dc6bad
ILT
1292 mode-switching.o \
1293 modulo-sched.o \
3d8864c0 1294 omega.o \
d5dc6bad
ILT
1295 omp-low.o \
1296 optabs.o \
57dfdff0 1297 options-save.o \
21bf1558 1298 opts-global.o \
d5dc6bad 1299 passes.o \
68a607d8 1300 plugin.o \
d5dc6bad
ILT
1301 pointer-set.o \
1302 postreload-gcse.o \
1303 postreload.o \
1304 predict.o \
d5dc6bad
ILT
1305 print-rtl.o \
1306 print-tree.o \
1307 profile.o \
1308 real.o \
d49b6e1e 1309 realmpfr.o \
d5dc6bad
ILT
1310 recog.o \
1311 reg-stack.o \
fac41238 1312 regcprop.o \
2af2dbdc 1313 reginfo.o \
d5dc6bad
ILT
1314 regmove.o \
1315 regrename.o \
6fb5fa3c 1316 regstat.o \
d5dc6bad
ILT
1317 reload.o \
1318 reload1.o \
1319 reorg.o \
1320 resource.o \
1321 rtl-error.o \
d5dc6bad
ILT
1322 rtl.o \
1323 rtlanal.o \
1324 rtlhooks.o \
1325 sbitmap.o \
1326 sched-deps.o \
1327 sched-ebb.o \
1328 sched-rgn.o \
1329 sched-vis.o \
1330 sdbout.o \
e855c69d
AB
1331 sel-sched-ir.o \
1332 sel-sched-dump.o \
1333 sel-sched.o \
204b560f 1334 sese.o \
d5dc6bad 1335 simplify-rtx.o \
b4da855a 1336 sparseset.o \
d5dc6bad 1337 sreal.o \
6fb5fa3c 1338 stack-ptr-mod.o \
9fe0cb7d 1339 statistics.o \
d5dc6bad
ILT
1340 stmt.o \
1341 stor-layout.o \
df35c271 1342 store-motion.o \
f0efc7aa 1343 streamer-hooks.o \
d5dc6bad 1344 stringpool.o \
3bd36029 1345 target-globals.o \
d5dc6bad
ILT
1346 targhooks.o \
1347 timevar.o \
1348 toplev.o \
1349 tracer.o \
0a35513e 1350 trans-mem.o \
d5dc6bad 1351 tree-affine.o \
37d6f666 1352 asan.o \
c2699190 1353 tree-call-cdce.o \
d5dc6bad
ILT
1354 tree-cfg.o \
1355 tree-cfgcleanup.o \
1356 tree-chrec.o \
1357 tree-complex.o \
1358 tree-data-ref.o \
1359 tree-dfa.o \
cf835838 1360 tree-diagnostic.o \
d5dc6bad
ILT
1361 tree-dump.o \
1362 tree-eh.o \
8b84c596 1363 tree-emutls.o \
d5dc6bad 1364 tree-if-conv.o \
252b3e8c 1365 tree-inline.o \
d5dc6bad
ILT
1366 tree-into-ssa.o \
1367 tree-iterator.o \
dea61d92 1368 tree-loop-distribution.o \
d5dc6bad 1369 tree-nested.o \
252b3e8c 1370 tree-nomudflap.o \
d5dc6bad
ILT
1371 tree-nrv.o \
1372 tree-object-size.o \
1373 tree-optimize.o \
1374 tree-outof-ssa.o \
5f40b3cb 1375 tree-parloops.o \
d5dc6bad 1376 tree-phinodes.o \
bbc8a8dc 1377 tree-predcom.o \
d5dc6bad
ILT
1378 tree-pretty-print.o \
1379 tree-profile.o \
1380 tree-scalar-evolution.o \
1381 tree-sra.o \
b6e99746 1382 tree-switch-conversion.o \
d5dc6bad
ILT
1383 tree-ssa-address.o \
1384 tree-ssa-alias.o \
1385 tree-ssa-ccp.o \
1386 tree-ssa-coalesce.o \
1387 tree-ssa-copy.o \
1388 tree-ssa-copyrename.o \
1389 tree-ssa-dce.o \
1390 tree-ssa-dom.o \
1391 tree-ssa-dse.o \
1392 tree-ssa-forwprop.o \
18d08014 1393 tree-ssa-ifcombine.o \
d5dc6bad
ILT
1394 tree-ssa-live.o \
1395 tree-ssa-loop-ch.o \
1396 tree-ssa-loop-im.o \
1397 tree-ssa-loop-ivcanon.o \
1398 tree-ssa-loop-ivopts.o \
1399 tree-ssa-loop-manip.o \
1400 tree-ssa-loop-niter.o \
1401 tree-ssa-loop-prefetch.o \
1402 tree-ssa-loop-unswitch.o \
1403 tree-ssa-loop.o \
1404 tree-ssa-math-opts.o \
1405 tree-ssa-operands.o \
1406 tree-ssa-phiopt.o \
67514449 1407 tree-ssa-phiprop.o \
d5dc6bad
ILT
1408 tree-ssa-pre.o \
1409 tree-ssa-propagate.o \
1410 tree-ssa-reassoc.o \
89fb70a3 1411 tree-ssa-sccvn.o \
d5dc6bad 1412 tree-ssa-sink.o \
8b57bfeb 1413 tree-ssa-strlen.o \
d5dc6bad 1414 tree-ssa-structalias.o \
c9e93168 1415 tree-ssa-tail-merge.o \
d5dc6bad
ILT
1416 tree-ssa-ter.o \
1417 tree-ssa-threadedge.o \
1418 tree-ssa-threadupdate.o \
1419 tree-ssa-uncprop.o \
34f97b94 1420 tree-ssa-uninit.o \
d5dc6bad
ILT
1421 tree-ssa.o \
1422 tree-ssanames.o \
1423 tree-stdarg.o \
f0efc7aa
DN
1424 tree-streamer.o \
1425 tree-streamer-in.o \
1426 tree-streamer-out.o \
d5dc6bad 1427 tree-tailcall.o \
d5dc6bad
ILT
1428 tree-vect-generic.o \
1429 tree-vect-patterns.o \
252b3e8c
MM
1430 tree-vect-data-refs.o \
1431 tree-vect-stmts.o \
1432 tree-vect-loop.o \
1433 tree-vect-loop-manip.o \
1434 tree-vect-slp.o \
d5dc6bad 1435 tree-vectorizer.o \
d5dc6bad
ILT
1436 tree-vrp.o \
1437 tree.o \
08df6c0d 1438 valtrack.o \
d5dc6bad
ILT
1439 value-prof.o \
1440 var-tracking.o \
1441 varasm.o \
252b3e8c 1442 varpool.o \
d5dc6bad
ILT
1443 vmsdbgout.o \
1444 web.o \
252b3e8c
MM
1445 xcoffout.o \
1446 $(out_object_file) \
d5dc6bad 1447 $(EXTRA_OBJS) \
252b3e8c 1448 $(host_hook_obj)
d1bd0ded 1449
2691e6d7
JM
1450# Objects in libcommon.a, potentially used by all host binaries and with
1451# no target dependencies.
1452OBJS-libcommon = diagnostic.o pretty-print.o intl.o input.o version.o
1453
1ed1641d
JM
1454# Objects in libcommon-target.a, used by drivers and by the core
1455# compiler and containing target-dependent code.
4c77620d 1456OBJS-libcommon-target = $(common_out_object_file) prefix.o params.o \
0823efed
DN
1457 opts.o opts-common.o options.o vec.o hooks.o common/common-targhooks.o \
1458 hash-table.o
1ed1641d 1459
7a3b4887 1460# This lists all host objects for the front ends.
d4a10d0a 1461ALL_HOST_FRONTEND_OBJS = $(foreach v,$(CONFIG_LANGUAGES),$($(v)_OBJS))
7a3b4887 1462
2691e6d7 1463ALL_HOST_BACKEND_OBJS = $(GCC_OBJS) $(OBJS) $(OBJS-libcommon) \
d4a10d0a 1464 $(OBJS-libcommon-target) @TREEBROWSER@ main.o c-family/cppspec.o \
5c30094f 1465 $(COLLECT2_OBJS) $(EXTRA_GCC_OBJS) $(GCOV_OBJS) $(GCOV_DUMP_OBJS)
6cba282a 1466
7a3b4887
SB
1467# This lists all host object files, whether they are included in this
1468# compilation or not.
1469ALL_HOST_OBJS = $(ALL_HOST_FRONTEND_OBJS) $(ALL_HOST_BACKEND_OBJS)
1470
41723253 1471BACKEND = libbackend.a main.o @TREEBROWSER@ libcommon-target.a libcommon.a \
1ed1641d 1472 $(CPPLIB) $(LIBDECNUMBER)
a36556a8 1473
8b1f719a 1474MOSTLYCLEANFILES = insn-flags.h insn-config.h insn-codes.h \
79d8453e 1475 insn-output.c insn-recog.c insn-emit.c insn-extract.c insn-peep.c \
41723253 1476 insn-attr.h insn-attr-common.h insn-attrtab.c insn-dfatab.c \
cd1440b1 1477 insn-latencytab.c insn-opinit.c insn-opinit.h insn-preds.c insn-constants.h \
d6d5951a 1478 tm-preds.h tm-constrs.h checksum-options \
1c7352cd 1479 tree-check.h min-insn-modes.c insn-modes.c insn-modes.h \
6ac9d3a3 1480 genrtl.h gt-*.h gtype-*.h gtype-desc.c gtyp-input.list \
d4a10d0a 1481 xgcc$(exeext) cpp$(exeext) \
5f73c6cc 1482 $(EXTRA_PROGRAMS) gcc-cross$(exeext) \
b6b89215
AK
1483 $(SPECS) collect2$(exeext) gcc-ar$(exeext) gcc-nm$(exeext) \
1484 gcc-ranlib$(exeext) \
4977bab6 1485 gcov-iov$(build_exeext) gcov$(exeext) gcov-dump$(exeext) \
f142b5bc
RG
1486 gengtype$(exeext) *.[0-9][0-9].* *.[si] *-checksum.c libbackend.a \
1487 libcommon-target.a libcommon.a libgcc.mk
79d8453e 1488
544eb21e 1489#\f
013a2ee0
DE
1490# Language makefile fragments.
1491
1492# The following targets define the interface between us and the languages.
1493#
a078a589 1494# all.cross, start.encap, rest.encap,
bd97af06 1495# install-common, install-info, install-man,
436a88a6 1496# uninstall,
a03ad584 1497# mostlyclean, clean, distclean, maintainer-clean,
013a2ee0 1498#
62b81e45
MM
1499# Each language is linked in with a series of hooks. The name of each
1500# hooked is "lang.${target_name}" (eg: lang.info). Configure computes
1501# and adds these here. We use double-colon rules for some of the hooks;
1502# double-colon rules should be preferred for any new hooks.
013a2ee0 1503
2ed26f6b 1504# language hooks, generated by configure
3c18ea24 1505@language_hooks@
013a2ee0 1506
2ed26f6b
ZW
1507# per-language makefile fragments
1508ifneq ($(LANG_MAKEFRAGS),)
1509include $(LANG_MAKEFRAGS)
1510endif
013a2ee0 1511
7e63a64e
RO
1512# target and host overrides must follow the per-language makefile fragments
1513# so they can override or augment language-specific variables
1514
1515# target overrides
1516ifneq ($(tmake_file),)
1517include $(tmake_file)
1518endif
1519
1520# host overrides
1521ifneq ($(xmake_file),)
1522include $(xmake_file)
1523endif
1524
c0ed0531
ILT
1525# all-tree.def includes all the tree.def files.
1526all-tree.def: s-alltree; @true
1527s-alltree: Makefile
1528 rm -f tmp-all-tree.def
1529 echo '#include "tree.def"' > tmp-all-tree.def
1530 echo 'END_OF_BASE_TREE_CODES' >> tmp-all-tree.def
39dabefd 1531 echo '#include "c-family/c-common.def"' >> tmp-all-tree.def
c0ed0531
ILT
1532 ltf="$(lang_tree_files)"; for f in $$ltf; do \
1533 echo "#include \"$$f\""; \
1534 done | sed 's|$(srcdir)/||' >> tmp-all-tree.def
1535 $(SHELL) $(srcdir)/../move-if-change tmp-all-tree.def all-tree.def
1536 $(STAMP) s-alltree
1537
7a3b4887
SB
1538# Now that LANG_MAKEFRAGS are included, we can add special flags to the
1539# objects that belong to the front ends. We add an extra define that
1540# causes back-end specific include files to be poisoned, in the hope that
1541# we can avoid introducing dependencies of the front ends on things that
1542# no front end should ever look at (e.g. everything RTL related).
1543$(foreach file,$(ALL_HOST_FRONTEND_OBJS),$(eval CFLAGS-$(file) += -DIN_GCC_FRONTEND))
1544
544eb21e 1545#\f
79d8453e 1546
73458fb7
NN
1547# -----------------------------
1548# Rebuilding this configuration
1549# -----------------------------
1550
f637f072
RÁE
1551# On the use of stamps:
1552# Consider the example of tree-check.h. It is constructed with build/gencheck.
1553# A simple rule to build tree-check.h would be
1554# tree-check.h: build/gencheck$(build_exeext)
1555# $(RUN_GEN) build/gencheck$(build_exeext) > tree-check.h
1556#
1557# but tree-check.h doesn't change every time gencheck changes. It would the
e980df8e 1558# nice if targets that depend on tree-check.h wouldn't be rebuild
f637f072
RÁE
1559# unnecessarily when tree-check.h is unchanged. To make this, tree-check.h
1560# must not be overwritten with a identical copy. One solution is to use a
1561# temporary file
1562# tree-check.h: build/gencheck$(build_exeext)
f7ca46d6 1563# $(RUN_GEN) build/gencheck$(build_exeext) > tmp-check.h
f637f072
RÁE
1564# $(SHELL) $(srcdir)/../move-if-change tmp-check.h tree-check.h
1565#
1566# This solution has a different problem. Since the time stamp of tree-check.h
1567# is unchanged, make will try to update tree-check.h every time it runs.
1568# To prevent this, one can add a stamp
1569# tree-check.h: s-check
1570# s-check : build/gencheck$(build_exeext)
f7ca46d6 1571# $(RUN_GEN) build/gencheck$(build_exeext) > tmp-check.h
f637f072
RÁE
1572# $(SHELL) $(srcdir)/../move-if-change tmp-check.h tree-check.h
1573# $(STAMP) s-check
1574#
1575# The problem with this solution is that make thinks that tree-check.h is
1576# always unchanged. Make must be deceived into thinking that tree-check.h is
f7ca46d6 1577# rebuild by the "tree-check.h: s-check" rule. To do this, add a dummy command:
f637f072
RÁE
1578# tree-check.h: s-check; @true
1579# s-check : build/gencheck$(build_exeext)
f7ca46d6 1580# $(RUN_GEN) build/gencheck$(build_exeext) > tmp-check.h
f637f072
RÁE
1581# $(SHELL) $(srcdir)/../move-if-change tmp-check.h tree-check.h
1582# $(STAMP) s-check
1583#
1584# This is what is done in this makefile. Note that mkconfig.sh has a
1585# move-if-change built-in
1586
a1286ef5 1587Makefile: config.status $(srcdir)/Makefile.in $(LANG_MAKEFRAGS)
2ed26f6b
ZW
1588 LANGUAGES="$(CONFIG_LANGUAGES)" \
1589 CONFIG_HEADERS= \
e75f9147 1590 CONFIG_SHELL="$(SHELL)" \
2ed26f6b 1591 CONFIG_FILES=$@ $(SHELL) config.status
79d8453e 1592
11642c3a 1593config.h: cs-config.h ; @true
4977bab6 1594bconfig.h: cs-bconfig.h ; @true
11642c3a 1595tconfig.h: cs-tconfig.h ; @true
4977bab6 1596tm.h: cs-tm.h ; @true
11642c3a
ZW
1597tm_p.h: cs-tm_p.h ; @true
1598
1599cs-config.h: Makefile
4977bab6 1600 TARGET_CPU_DEFAULT="" \
e22340b0 1601 HEADERS="$(host_xm_include_list)" DEFINES="$(host_xm_defines)" \
11642c3a
ZW
1602 $(SHELL) $(srcdir)/mkconfig.sh config.h
1603
4977bab6
ZW
1604cs-bconfig.h: Makefile
1605 TARGET_CPU_DEFAULT="" \
e22340b0 1606 HEADERS="$(build_xm_include_list)" DEFINES="$(build_xm_defines)" \
4977bab6 1607 $(SHELL) $(srcdir)/mkconfig.sh bconfig.h
11642c3a 1608
0d24f4d1 1609cs-tconfig.h: Makefile
3d9d2476 1610 TARGET_CPU_DEFAULT="" \
232b67d9 1611 HEADERS="$(xm_include_list)" DEFINES="USED_FOR_TARGET $(xm_defines)" \
11642c3a
ZW
1612 $(SHELL) $(srcdir)/mkconfig.sh tconfig.h
1613
4977bab6
ZW
1614cs-tm.h: Makefile
1615 TARGET_CPU_DEFAULT="$(target_cpu_default)" \
e22340b0 1616 HEADERS="$(tm_include_list)" DEFINES="$(tm_defines)" \
4977bab6
ZW
1617 $(SHELL) $(srcdir)/mkconfig.sh tm.h
1618
11642c3a 1619cs-tm_p.h: Makefile
4977bab6 1620 TARGET_CPU_DEFAULT="" \
e22340b0 1621 HEADERS="$(tm_p_include_list)" DEFINES="" \
11642c3a
ZW
1622 $(SHELL) $(srcdir)/mkconfig.sh tm_p.h
1623
a6a5e4c9 1624# Don't automatically run autoconf, since configure.ac might be accidentally
e7f62dcf
NC
1625# newer than configure. Also, this writes into the source directory which
1626# might be on a read-only file system. If configured for maintainer mode
1627# then do allow autoconf to be run.
1628
6efbd53f
RW
1629AUTOCONF = autoconf
1630ACLOCAL = aclocal
1631ACLOCAL_AMFLAGS = -I ../config -I ..
1632aclocal_deps = \
1633 $(srcdir)/../libtool.m4 \
1634 $(srcdir)/../ltoptions.m4 \
1635 $(srcdir)/../ltsugar.m4 \
1636 $(srcdir)/../ltversion.m4 \
1637 $(srcdir)/../lt~obsolete.m4 \
1638 $(srcdir)/../config/acx.m4 \
1639 $(srcdir)/../config/codeset.m4 \
1640 $(srcdir)/../config/extensions.m4 \
1641 $(srcdir)/../config/gettext-sister.m4 \
1642 $(srcdir)/../config/iconv.m4 \
1643 $(srcdir)/../config/lcmessage.m4 \
1644 $(srcdir)/../config/lib-ld.m4 \
1645 $(srcdir)/../config/lib-link.m4 \
1646 $(srcdir)/../config/lib-prefix.m4 \
1647 $(srcdir)/../config/override.m4 \
1648 $(srcdir)/../config/progtest.m4 \
7c2a2dbf 1649 $(srcdir)/../config/stdint.m4 \
6efbd53f
RW
1650 $(srcdir)/../config/unwind_ipinfo.m4 \
1651 $(srcdir)/../config/warnings.m4 \
3c39bca6 1652 $(srcdir)/../config/dfp.m4 \
2f6935f4 1653 $(srcdir)/../config/mmap.m4 \
6efbd53f
RW
1654 $(srcdir)/acinclude.m4
1655
1656$(srcdir)/configure: @MAINT@ $(srcdir)/configure.ac $(srcdir)/aclocal.m4
1657 (cd $(srcdir) && $(AUTOCONF))
1658
1659$(srcdir)/aclocal.m4 : @MAINT@ $(aclocal_deps)
1660 (cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS))
3c18ea24 1661
da7ece9a 1662# cstamp-h.in controls rebuilding of config.in.
7c0ae5f1
DE
1663# It is named cstamp-h.in and not stamp-h.in so the mostlyclean rule doesn't
1664# delete it. A stamp file is needed as autoheader won't update the file if
1665# nothing has changed.
da7ece9a
DE
1666# It remains in the source directory and is part of the distribution.
1667# This follows what is done in shellutils, fileutils, etc.
5408f8d0
DE
1668# "echo timestamp" is used instead of touch to be consistent with other
1669# packages that use autoconf (??? perhaps also to avoid problems with patch?).
da7ece9a 1670# ??? Newer versions have a maintainer mode that may be useful here.
e7f62dcf
NC
1671
1672# Don't run autoheader automatically either.
1673# Only run it if maintainer mode is enabled.
6efbd53f 1674@MAINT@ AUTOHEADER = autoheader
e7f62dcf 1675@MAINT@ $(srcdir)/config.in: $(srcdir)/cstamp-h.in
a6a5e4c9 1676@MAINT@ $(srcdir)/cstamp-h.in: $(srcdir)/configure.ac
6efbd53f 1677@MAINT@ (cd $(srcdir) && $(AUTOHEADER))
e7f62dcf
NC
1678@MAINT@ @rm -f $(srcdir)/cstamp-h.in
1679@MAINT@ echo timestamp > $(srcdir)/cstamp-h.in
b7cb92ad 1680auto-host.h: cstamp-h ; @true
da7ece9a 1681cstamp-h: config.in config.status
2ed26f6b
ZW
1682 CONFIG_HEADERS=auto-host.h:config.in \
1683 CONFIG_FILES= \
1684 LANGUAGES="$(CONFIG_LANGUAGES)" $(SHELL) config.status
d68b51ef 1685
7c0ae5f1
DE
1686# Really, really stupid make features, such as SUN's KEEP_STATE, may force
1687# a target to build even if it is up-to-date. So we must verify that
1688# config.status does not exist before failing.
a1286ef5 1689config.status: $(srcdir)/configure $(srcdir)/config.gcc
7c0ae5f1 1690 @if [ ! -f config.status ] ; then \
436a88a6 1691 echo You must configure gcc. Look at http://gcc.gnu.org/install/ for details.; \
7c0ae5f1
DE
1692 false; \
1693 else \
71205e0b 1694 LANGUAGES="$(CONFIG_LANGUAGES)" $(SHELL) config.status --recheck; \
7c0ae5f1
DE
1695 fi
1696
73458fb7
NN
1697# --------
1698# UNSORTED
1699# --------
1700
3bbd5a19
PB
1701# Provide quickstrap as a target that people can type into the gcc directory,
1702# and that fails if you're not into it.
1703quickstrap: all
1704 cd $(toplevel_builddir) && $(MAKE) all-target-libgcc
1705
43297964 1706all.internal: start.encap rest.encap doc
79d8453e 1707# This is what to compile if making a cross-compiler.
b3b2cbc4 1708all.cross: native gcc-cross$(exeext) cpp$(exeext) specs \
fa958513 1709 libgcc-support lang.all.cross doc @GENINSRC@ srcextra
79d8453e 1710# This is what must be made before installing GCC and converting libraries.
4871239e 1711start.encap: native xgcc$(exeext) cpp$(exeext) specs \
14da6073 1712 libgcc-support lang.start.encap @GENINSRC@ srcextra
eea77e5f 1713# These can't be made until after GCC can run.
52c0e446 1714rest.encap: lang.rest.encap
79d8453e
RS
1715# This is what is made with the host's compiler
1716# whether making a cross compiler or not.
6eb95e99 1717native: config.status auto-host.h build-@POSUB@ $(LANGUAGES) \
d82c57a8 1718 $(EXTRA_PROGRAMS) $(COLLECT2) lto-wrapper$(exeext) \
b6b89215 1719 gcc-ar$(exeext) gcc-nm$(exeext) gcc-ranlib$(exeext)
79d8453e 1720
f142b5bc
RG
1721ifeq ($(enable_plugin),yes)
1722native: gengtype$(exeext)
1723endif
1724
3aa072f2
RS
1725# On the target machine, finish building a cross compiler.
1726# This does the things that can't be done on the host machine.
fa958513 1727rest.cross: specs
3aa072f2 1728
3aa072f2
RS
1729# Recompile all the language-independent object files.
1730# This is used only if the user explicitly asks for it.
a36556a8 1731compilations: $(BACKEND)
79d8453e 1732
4f4e53dd 1733# This archive is strictly for the host.
de6ba7ae 1734libbackend.a: $(OBJS)
a36556a8 1735 -rm -rf libbackend.a
de6ba7ae 1736 $(AR) $(AR_FLAGS) libbackend.a $(OBJS)
343a6100 1737 -$(RANLIB) $(RANLIB_FLAGS) libbackend.a
6c1cc7fa 1738
1ed1641d
JM
1739libcommon-target.a: $(OBJS-libcommon-target)
1740 -rm -rf libcommon-target.a
1741 $(AR) $(AR_FLAGS) libcommon-target.a $(OBJS-libcommon-target)
1742 -$(RANLIB) $(RANLIB_FLAGS) libcommon-target.a
1743
2691e6d7
JM
1744libcommon.a: $(OBJS-libcommon)
1745 -rm -rf libcommon.a
1746 $(AR) $(AR_FLAGS) libcommon.a $(OBJS-libcommon)
1747 -$(RANLIB) $(RANLIB_FLAGS) libcommon.a
1748
acbbf3d9
RS
1749# We call this executable `xgcc' rather than `gcc'
1750# to avoid confusion if the current directory is in the path
1751# and CC is `gcc'. It is renamed to `gcc' when it is installed.
d4a10d0a 1752xgcc$(exeext): $(GCC_OBJS) c/gccspec.o libcommon-target.a $(LIBDEPS) \
1ed1641d 1753 $(EXTRA_GCC_OBJS)
a90163e9 1754 +$(LINKER) $(ALL_LINKERFLAGS) $(LDFLAGS) -o $@ $(GCC_OBJS) \
d4a10d0a 1755 c/gccspec.o $(EXTRA_GCC_OBJS) libcommon-target.a \
e3b3fa45 1756 $(EXTRA_GCC_LIBS) $(LIBS)
3aa072f2 1757
d4a10d0a
SB
1758# cpp is to cpp0 as e.g. g++ is to cc1plus: Just another driver.
1759# It is part of c-family because the handled extensions are hard-coded
1760# and only contain c-family extensions (see known_suffixes).
1761cpp$(exeext): $(GCC_OBJS) c-family/cppspec.o libcommon-target.a $(LIBDEPS) \
1ed1641d 1762 $(EXTRA_GCC_OBJS)
a90163e9 1763 +$(LINKER) $(ALL_LINKERFLAGS) $(LDFLAGS) -o $@ $(GCC_OBJS) \
d4a10d0a 1764 c-family/cppspec.o $(EXTRA_GCC_OBJS) libcommon-target.a \
e3b3fa45 1765 $(EXTRA_GCC_LIBS) $(LIBS)
922cf99e 1766
3aa072f2 1767# Dump a specs file to make -B./ read these specs over installed ones.
3bd6d4c4 1768$(SPECS): xgcc$(exeext)
d521a023 1769 $(GCC_FOR_TARGET) -dumpspecs > tmp-specs
3bd6d4c4 1770 mv tmp-specs $(SPECS)
79d8453e 1771
acbbf3d9 1772# We do want to create an executable named `xgcc', so we can use it to
79d8453e
RS
1773# compile libgcc2.a.
1774# Also create gcc-cross, so that install-common will install properly.
b3b2cbc4 1775gcc-cross$(exeext): xgcc$(exeext)
aab26e16 1776 cp xgcc$(exeext) gcc-cross$(exeext)
79d8453e 1777
d6d5951a
AK
1778checksum-options:
1779 echo "$(LINKER) $(ALL_LINKERFLAGS) $(LDFLAGS)" > checksum-options.tmp \
1780 && $(srcdir)/../move-if-change checksum-options.tmp checksum-options
e980df8e 1781
544eb21e 1782#\f
79d8453e 1783# Build libgcc.a.
a2ab7f2b 1784
52c0e446 1785libgcc-support: libgcc.mvars stmp-int-hdrs $(TCONFIG_H) \
f9989b51 1786 $(MACHMODE_H) gcov-iov.h
fa958513 1787
f9989b51 1788libgcc.mvars: config.status Makefile specs xgcc$(exeext)
fa958513 1789 : > tmp-libgcc.mvars
5f73c6cc
RO
1790 echo GCC_CFLAGS = '$(GCC_CFLAGS)' >> tmp-libgcc.mvars
1791 echo INHIBIT_LIBC_CFLAGS = '$(INHIBIT_LIBC_CFLAGS)' >> tmp-libgcc.mvars
7f142d33 1792 echo TARGET_SYSTEM_ROOT = '$(TARGET_SYSTEM_ROOT)' >> tmp-libgcc.mvars
fa958513
DJ
1793
1794 mv tmp-libgcc.mvars libgcc.mvars
79d8453e 1795
f6cdc7ea
DE
1796# Use the genmultilib shell script to generate the information the gcc
1797# driver program needs to select the library directory based on the
1798# switches.
e5e809f4
JL
1799multilib.h: s-mlib; @true
1800s-mlib: $(srcdir)/genmultilib Makefile
c49d2df6
JJ
1801 if test @enable_multilib@ = yes \
1802 || test -n "$(MULTILIB_OSDIRNAMES)"; then \
4d2fb38b
JJ
1803 $(SHELL) $(srcdir)/genmultilib \
1804 "$(MULTILIB_OPTIONS)" \
1805 "$(MULTILIB_DIRNAMES)" \
1806 "$(MULTILIB_MATCHES)" \
1807 "$(MULTILIB_EXCEPTIONS)" \
1808 "$(MULTILIB_EXTRA_OPTS)" \
1809 "$(MULTILIB_EXCLUSIONS)" \
5bbcd587 1810 "$(MULTILIB_OSDIRNAMES)" \
43661dc4 1811 "$(MULTILIB_REQUIRED)" \
c49d2df6 1812 "@enable_multilib@" \
4d2fb38b
JJ
1813 > tmp-mlib.h; \
1814 else \
43661dc4 1815 $(SHELL) $(srcdir)/genmultilib '' '' '' '' '' '' '' '' no\
c49d2df6 1816 > tmp-mlib.h; \
4d2fb38b 1817 fi
88e3a2a3 1818 $(SHELL) $(srcdir)/../move-if-change tmp-mlib.h multilib.h
d9835ae8 1819 $(STAMP) s-mlib
544eb21e 1820#\f
79d8453e
RS
1821# Compiling object files from source files.
1822
e980df8e
TT
1823# Note that dependencies on obstack.h are not written
1824# because that file is not part of GCC.
1825
02ba6b22
KC
1826srcextra: gcc.srcextra lang.srcextra
1827
01d419ae 1828gcc.srcextra: gengtype-lex.c
03787dfd
KC
1829 -cp -p $^ $(srcdir)
1830
be7a421e 1831graph.o: graph.c $(SYSTEM_H) coretypes.h $(TM_H) toplev.h $(DIAGNOSTIC_CORE_H) $(FLAGS_H) \
e63ea00c 1832 $(RTL_H) $(FUNCTION_H) hard-reg-set.h $(BASIC_BLOCK_H) graph.h $(OBSTACK_H) \
5936d944 1833 $(CONFIG_H) $(EMIT_RTL_H)
39dabefd 1834
3c2c4f22 1835sbitmap.o: sbitmap.c sbitmap.h $(CONFIG_H) $(SYSTEM_H) coretypes.h
e63ea00c 1836sparseset.o: sparseset.c $(SYSTEM_H) sparseset.h $(CONFIG_H)
e980df8e 1837
b6b89215
AK
1838AR_LIBS = @COLLECT2_LIBS@
1839
1840gcc-ar$(exeext): gcc-ar.o $(LIBDEPS)
1841 +$(LINKER) $(ALL_LINKERFLAGS) $(LDFLAGS) gcc-ar.o -o $@ \
1842 $(LIBS) $(AR_LIBS)
1843
1844gcc-nm$(exeext): gcc-nm.o $(LIBDEPS)
1845 +$(LINKER) $(ALL_LINKERFLAGS) $(LDFLAGS) gcc-nm.o -o $@ \
1846 $(LIBS) $(AR_LIBS)
1847
1848gcc-ranlib$(exeext): gcc-ranlib.o $(LIBDEPS)
1849 +$(LINKER) $(ALL_LINKERFLAGS) $(LDFLAGS) gcc-ranlib.o -o $@ \
1850 $(LIBS) $(AR_LIBS)
1851
1852CFLAGS-gcc-ar.o += $(DRIVER_DEFINES) \
1853 -DTARGET_MACHINE=\"$(target_noncanonical)\" \
1854 @TARGET_SYSTEM_ROOT_DEFINE@ -DPERSONALITY=\"ar\"
1855
1856gcc-ar.o: gcc-ar.c $(CONFIG_H) $(SYSTEM_H) $(LIBIBERTY_H)
1857
1858CFLAGS-gcc-ranlib.o += $(DRIVER_DEFINES) \
1859 -DTARGET_MACHINE=\"$(target_noncanonical)\" \
1860 @TARGET_SYSTEM_ROOT_DEFINE@ -DPERSONALITY=\"ranlib\"
1861
1862gcc-ranlib.o: gcc-ranlib.c $(CONFIG_H) $(SYSTEM_H) $(LIBIBERTY_H)
1863
1864CFLAGS-gcc-nm.o += $(DRIVER_DEFINES) \
1865 -DTARGET_MACHINE=\"$(target_noncanonical)\" \
1866 @TARGET_SYSTEM_ROOT_DEFINE@ -DPERSONALITY=\"nm\"
1867
1868gcc-nm.o: gcc-nm.c $(CONFIG_H) $(SYSTEM_H) $(LIBIBERTY_H)
1869
1870# ??? the implicit rules dont trigger if the source file has a different name
1871# so copy instead
1872gcc-ranlib.c: gcc-ar.c
1873 cp $^ $@
1874
1875gcc-nm.c: gcc-ar.c
1876 cp $^ $@
1877
4e92c31f 1878COLLECT2_OBJS = collect2.o collect2-aix.o tlink.o vec.o ggc-none.o
4e70264f 1879COLLECT2_LIBS = @COLLECT2_LIBS@
a2d25763 1880collect2$(exeext): $(COLLECT2_OBJS) $(LIBDEPS)
057f494b 1881# Don't try modifying collect2 (aka ld) in place--it might be linking this.
a90163e9 1882 +$(LINKER) $(ALL_LINKERFLAGS) $(LDFLAGS) -o T$@ \
4e70264f 1883 $(COLLECT2_OBJS) $(LIBS) $(COLLECT2_LIBS)
ff0a63e8 1884 mv -f T$@ $@
79d8453e 1885
c5bc3df6
JM
1886CFLAGS-collect2.o += -DTARGET_MACHINE=\"$(target_noncanonical)\" \
1887 @TARGET_SYSTEM_ROOT_DEFINE@
e980df8e 1888collect2.o : collect2.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) intl.h \
9e350e99
JM
1889 $(OBSTACK_H) $(DEMANGLE_H) collect2.h collect2-aix.h version.h \
1890 $(DIAGNOSTIC_H)
dfb636dc
RS
1891
1892collect2-aix.o : collect2-aix.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
1893 collect2-aix.h
e980df8e
TT
1894
1895tlink.o: tlink.c $(DEMANGLE_H) $(HASHTAB_H) $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
9e350e99 1896 $(OBSTACK_H) collect2.h intl.h $(DIAGNOSTIC_CORE_H)
e980df8e 1897
f31c0018
RG
1898lto-wrapper$(exeext): lto-wrapper.o ggc-none.o libcommon-target.a $(LIBDEPS)
1899 +$(LINKER) $(ALL_COMPILERFLAGS) $(LDFLAGS) -o T$@ \
1900 lto-wrapper.o ggc-none.o libcommon-target.a $(LIBS)
d7f09764
DN
1901 mv -f T$@ $@
1902
10692477 1903lto-wrapper.o: lto-wrapper.c $(CONFIG_H) $(SYSTEM_H) coretypes.h intl.h \
f31c0018 1904 $(OBSTACK_H) $(DIAGNOSTIC_H) $(OPTS_H) $(OPTIONS_H)
d7f09764 1905
d4a10d0a
SB
1906# Files used by all variants of C or by the stand-alone pre-processor.
1907c-family/cppspec.o: c-family/cppspec.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
1908 $(TM_H) $(GCC_H) $(OPTS_H)
1909
39dabefd
SB
1910c-family/c-common.o : c-family/c-common.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
1911 $(TM_H) $(TREE_H) \
7c475d11 1912 $(OBSTACK_H) $(C_COMMON_H) $(FLAGS_H) toplev.h output.h $(C_PRAGMA_H) \
4d451982 1913 $(GGC_H) builtin-types.def builtin-attrs.def \
61d3ce20 1914 $(DIAGNOSTIC_H) langhooks.h c-family/c-objc.h \
39dabefd 1915 $(TARGET_H) tree-iterator.h langhooks.h tree-mudflap.h \
a4d8c676 1916 intl.h $(OPTS_H) $(CPPLIB_H) $(TREE_INLINE_H) $(HASHTAB_H) \
6bdf3519 1917 $(BUILTINS_DEF) $(CGRAPH_H) $(TARGET_DEF_H) \
677f3fa8 1918 gt-c-family-c-common.h $(COMMON_TARGET_H)
e980df8e 1919
39dabefd
SB
1920c-family/c-cppbuiltin.o : c-family/c-cppbuiltin.c $(CONFIG_H) $(SYSTEM_H) \
1921 coretypes.h $(TM_H) $(TREE_H) version.h $(C_COMMON_H) $(C_PRAGMA_H) \
677f3fa8 1922 $(FLAGS_H) output.h $(TREE_H) $(TARGET_H) $(COMMON_TARGET_H) \
82a1c2fe 1923 $(TM_P_H) debug.h $(CPP_ID_DATA_H) cppbuiltin.h
39dabefd
SB
1924
1925c-family/c-dump.o : c-family/c-dump.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
1926 $(TM_H) $(TREE_H) $(TREE_DUMP_H)
e980df8e 1927
39dabefd
SB
1928c-family/c-format.o : c-family/c-format.c c-family/c-format.h \
1929 $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) langhooks.h \
acce4e77 1930 $(C_COMMON_H) $(FLAGS_H) intl.h $(C_TARGET_H) \
61d3ce20 1931 $(DIAGNOSTIC_CORE_H) alloc-pool.h c-family/c-objc.h
39dabefd
SB
1932
1933c-family/c-gimplify.o : c-family/c-gimplify.c $(CONFIG_H) $(SYSTEM_H) $(TREE_H) \
1934 $(C_COMMON_H) $(DIAGNOSTIC_CORE_H) $(GIMPLE_H) \
7c475d11 1935 $(FLAGS_H) langhooks.h $(LANGHOOKS_DEF_H) \
6bdf3519 1936 $(TM_H) coretypes.h $(C_PRETTY_PRINT_H) $(CGRAPH_H) \
7ee2468b 1937 dumpfile.h $(TREE_INLINE_H)
39dabefd
SB
1938
1939c-family/c-lex.o : c-family/c-lex.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
1940 $(TM_H) $(TREE_H) $(FIXED_VALUE_H) debug.h $(C_COMMON_H) $(SPLAY_TREE_H) \
a8781821 1941 $(C_PRAGMA_H) $(INPUT_H) intl.h $(FLAGS_H) \
39dabefd
SB
1942 $(CPPLIB_H) $(TARGET_H) $(TIMEVAR_H)
1943
1944c-family/c-omp.o : c-family/c-omp.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
7c475d11 1945 $(TREE_H) $(C_COMMON_H) $(GIMPLE_H) langhooks.h
39dabefd 1946
c5bc3df6 1947CFLAGS-c-family/c-opts.o += @TARGET_SYSTEM_ROOT_DEFINE@
39dabefd 1948c-family/c-opts.o : c-family/c-opts.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
7c475d11 1949 $(TREE_H) $(C_PRAGMA_H) $(FLAGS_H) toplev.h langhooks.h \
acce4e77 1950 $(DIAGNOSTIC_H) intl.h debug.h $(C_COMMON_H) $(C_TARGET_H) \
a4d8c676 1951 $(OPTS_H) $(OPTIONS_H) $(MKDEPS_H) incpath.h cppdefault.h
e980df8e 1952
c5bc3df6
JM
1953CFLAGS-c-family/c-pch.o += -DHOST_MACHINE=\"$(host)\" \
1954 -DTARGET_MACHINE=\"$(target)\"
39dabefd 1955c-family/c-pch.o : c-family/c-pch.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
7c475d11 1956 $(CPPLIB_H) $(TREE_H) $(C_COMMON_H) output.h $(C_PRAGMA_H) \
39dabefd 1957 $(GGC_H) debug.h langhooks.h $(FLAGS_H) hosthooks.h version.h \
a4d8c676 1958 $(TARGET_H) $(OPTS_H) $(TIMEVAR_H)
e980df8e 1959
39dabefd
SB
1960c-family/c-ppoutput.o : c-family/c-ppoutput.c $(CONFIG_H) $(SYSTEM_H) \
1961 coretypes.h $(C_COMMON_H) $(TREE_H) $(CPPLIB_H) $(CPP_INTERNAL_H) \
1962 $(C_PRAGMA_H)
e980df8e 1963
39dabefd 1964c-family/c-pragma.o: c-family/c-pragma.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
7c475d11 1965 $(TM_H) $(TREE_H) $(FUNCTION_H) $(C_PRAGMA_H) output.h \
39dabefd 1966 $(TM_P_H) $(C_COMMON_H) $(TARGET_H) $(CPPLIB_H) $(FLAGS_H) \
a4d8c676 1967 $(DIAGNOSTIC_H) $(OPTS_H) $(PLUGINS_H) \
39dabefd 1968 gt-c-family-c-pragma.h
e980df8e 1969
39dabefd
SB
1970c-family/c-pretty-print.o : c-family/c-pretty-print.c $(C_PRETTY_PRINT_H) \
1971 $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
ee666c25 1972 $(DIAGNOSTIC_H) tree-iterator.h intl.h $(TREE_PRETTY_PRINT_H)
e980df8e 1973
39dabefd 1974c-family/c-semantics.o : c-family/c-semantics.c $(CONFIG_H) $(SYSTEM_H) \
be7a421e 1975 coretypes.h $(TM_H) $(TREE_H) $(FLAGS_H) \
39dabefd
SB
1976 $(C_COMMON_H) $(FUNCTION_H) langhooks.h $(SPLAY_TREE_H) $(TIMEVAR_H) \
1977 tree-iterator.h
e980df8e 1978
39dabefd
SB
1979c-family/c-ada-spec.o : c-family/c-ada-spec.c c-family/c-ada-spec.h \
1980 $(CONFIG_H) $(SYSTEM_H) $(TREE_H) $(CPP_ID_DATA_H) $(TM_H) \
7ee2468b 1981 coretypes.h tree-iterator.h dumpfile.h
39dabefd
SB
1982
1983c-family/stub-objc.o : c-family/stub-objc.c $(CONFIG_H) $(SYSTEM_H) \
61d3ce20 1984 coretypes.h $(TREE_H) $(C_COMMON_H) c-family/c-objc.h
e980df8e 1985
acce4e77
JM
1986default-c.o: config/default-c.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
1987 $(C_TARGET_H) $(C_TARGET_DEF_H)
1988 $(COMPILER) -c $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) \
1989 $< $(OUTPUT_OPTION)
e980df8e 1990
39dabefd
SB
1991# Files used by all variants of C and some other languages.
1992
1993attribs.o : attribs.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \
ee666c25 1994 $(FLAGS_H) $(DIAGNOSTIC_CORE_H) $(GGC_H) $(TM_P_H) \
39dabefd
SB
1995 $(TARGET_H) langhooks.h $(CPPLIB_H) $(PLUGIN_H)
1996
1997incpath.o: incpath.c incpath.h $(CONFIG_H) $(SYSTEM_H) $(CPPLIB_H) \
1998 intl.h prefix.h coretypes.h $(TM_H) cppdefault.h $(TARGET_H) \
1999 $(MACHMODE_H)
2000
c5bc3df6 2001CFLAGS-prefix.o += -DPREFIX=\"$(prefix)\" -DBASEVER=$(BASEVER_s)
c49a6962
JM
2002prefix.o: prefix.c $(CONFIG_H) $(SYSTEM_H) coretypes.h prefix.h \
2003 $(COMMON_TARGET_H) Makefile $(BASEVER)
79d8453e 2004
e980df8e 2005# Language-independent files.
2fe3178b 2006
610c62ac 2007DRIVER_DEFINES = \
0deb20df 2008 -DSTANDARD_STARTFILE_PREFIX=\"$(unlibsubdir)/\" \
a8ee6e2d
GK
2009 -DSTANDARD_EXEC_PREFIX=\"$(libdir)/gcc/\" \
2010 -DSTANDARD_LIBEXEC_PREFIX=\"$(libexecdir)/gcc/\" \
964ceda1 2011 -DDEFAULT_TARGET_VERSION=\"$(version)\" \
caa55b1e 2012 -DDEFAULT_TARGET_MACHINE=\"$(target_noncanonical)\" \
0deb20df 2013 -DSTANDARD_BINDIR_PREFIX=\"$(bindir)/\" \
15c723f3 2014 -DTOOLDIR_BASE_PREFIX=\"$(libsubdir_to_prefix)$(prefix_to_exec_prefix)\" \
4977bab6 2015 @TARGET_SYSTEM_ROOT_DEFINE@ \
414d23ae 2016 $(VALGRIND_DRIVER_DEFINES) \
b040f2be 2017 `test "X$${SHLIB}" = "X" || test "@enable_shared@" != "yes" || echo "-DENABLE_SHARED_LIBGCC"` \
e11ddaf5 2018 -DCONFIGURE_SPECS="\"@CONFIGURE_SPECS@\""
e980df8e
TT
2019
2020gcc.o: gcc.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) intl.h multilib.h \
2021 Makefile $(lang_specs_files) specs.h prefix.h $(GCC_H) $(FLAGS_H) \
a7d0d30f 2022 configargs.h $(OBSTACK_H) $(OPTS_H) $(DIAGNOSTIC_H) $(VEC_H) $(PARAMS_H)
b040f2be 2023 (SHLIB='$(SHLIB)'; \
7980bfb8 2024 $(COMPILER) $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) \
e980df8e
TT
2025 $(DRIVER_DEFINES) \
2026 -c $(srcdir)/gcc.c $(OUTPUT_OPTION))
2027
0d24f4d1
ZW
2028specs.h : s-specs ; @true
2029s-specs : Makefile
766c7ad1
ZW
2030 lsf="$(lang_specs_files)"; for f in $$lsf; do \
2031 echo "#include \"$$f\""; \
0d24f4d1 2032 done | sed 's|$(srcdir)/||' > tmp-specs.h
88e3a2a3 2033 $(SHELL) $(srcdir)/../move-if-change tmp-specs.h specs.h
0d24f4d1
ZW
2034 $(STAMP) s-specs
2035
776dc15d 2036optionlist: s-options ; @true
75685792
RS
2037s-options: $(ALL_OPT_FILES) Makefile $(srcdir)/opt-gather.awk
2038 $(AWK) -f $(srcdir)/opt-gather.awk $(ALL_OPT_FILES) > tmp-optionlist
776dc15d 2039 $(SHELL) $(srcdir)/../move-if-change tmp-optionlist optionlist
469ef4a3
ILT
2040 $(STAMP) s-options
2041
86fa5de4
JM
2042options.c: optionlist $(srcdir)/opt-functions.awk $(srcdir)/opt-read.awk \
2043 $(srcdir)/optc-gen.awk
2044 $(AWK) -f $(srcdir)/opt-functions.awk -f $(srcdir)/opt-read.awk \
2045 -f $(srcdir)/optc-gen.awk \
6be4d3ac 2046 -v header_name="config.h system.h coretypes.h options.h tm.h" < $< > $@
776dc15d 2047
57dfdff0
JM
2048options-save.c: optionlist $(srcdir)/opt-functions.awk $(srcdir)/opt-read.awk \
2049 $(srcdir)/optc-save-gen.awk
2050 $(AWK) -f $(srcdir)/opt-functions.awk -f $(srcdir)/opt-read.awk \
2051 -f $(srcdir)/optc-save-gen.awk \
2052 -v header_name="config.h system.h coretypes.h tm.h" < $< > $@
2053
75685792 2054options.h: s-options-h ; @true
86fa5de4
JM
2055s-options-h: optionlist $(srcdir)/opt-functions.awk $(srcdir)/opt-read.awk \
2056 $(srcdir)/opth-gen.awk
2057 $(AWK) -f $(srcdir)/opt-functions.awk -f $(srcdir)/opt-read.awk \
2058 -f $(srcdir)/opth-gen.awk \
75685792
RS
2059 < $< > tmp-options.h
2060 $(SHELL) $(srcdir)/../move-if-change tmp-options.h options.h
2061 $(STAMP) $@
776dc15d 2062
57dfdff0 2063options.o: options.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
c344a866 2064 $(TM_H) $(OPTS_H) intl.h $(OPTIONS_C_EXTRA) insn-attr-common.h
e980df8e 2065
57dfdff0
JM
2066options-save.o: options-save.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TARGET_H) $(FLAGS_H) \
2067 $(TM_H) $(OPTS_H) intl.h $(OPTIONS_C_EXTRA)
e980df8e 2068
79d8453e
RS
2069dumpvers: dumpvers.c
2070
c5bc3df6 2071CFLAGS-version.o += -DBASEVER=$(BASEVER_s) -DDATESTAMP=$(DATESTAMP_s) \
e980df8e
TT
2072 -DREVISION=$(REVISION_s) \
2073 -DDEVPHASE=$(DEVPHASE_s) -DPKGVERSION=$(PKGVERSION_s) \
c5bc3df6
JM
2074 -DBUGURL=$(BUGURL_s)
2075version.o: version.c version.h $(REVISION) $(DATESTAMP) $(BASEVER) $(DEVPHASE)
e980df8e
TT
2076
2077gtype-desc.o: gtype-desc.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
b6feb796 2078 $(HASHTAB_H) $(SPLAY_TREE_H) $(OBSTACK_H) $(BITMAP_H) \
464778c0 2079 $(INPUT_H) $(TREE_H) $(RTL_H) $(FUNCTION_H) insn-config.h $(EXPR_H) \
e63ea00c 2080 hard-reg-set.h $(BASIC_BLOCK_H) cselib.h $(INSN_ADDR_H) $(OPTABS_H) \
9f7f1892 2081 $(LIBFUNCS_H) debug.h $(GGC_H) $(CGRAPH_H) $(TREE_FLOW_H) reload.h \
78bde837 2082 $(CPP_ID_DATA_H) tree-chrec.h $(EXCEPT_H) output.h \
3bd36029
RS
2083 $(CFGLOOP_H) $(TARGET_H) $(IPA_PROP_H) $(LTO_STREAMER_H) \
2084 target-globals.h
e980df8e 2085
0a35513e
AH
2086trans-mem.o : trans-mem.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
2087 $(TREE_H) $(GIMPLE_H) $(TREE_FLOW_H) $(TREE_PASS_H) $(TREE_INLINE_H) \
2088 $(DIAGNOSTIC_CORE_H) $(DEMANGLE_H) output.h $(TRANS_MEM_H) \
2089 $(PARAMS_H) $(TARGET_H) langhooks.h \
6f4185d7
SB
2090 $(GIMPLE_PRETTY_PRINT_H) $(CFGLOOP_H) \
2091 gt-trans-mem.h
0a35513e 2092
ae2392a9 2093ggc-common.o: ggc-common.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
7c475d11 2094 $(GGC_H) $(HASHTAB_H) $(DIAGNOSTIC_CORE_H) $(PARAMS_H) hosthooks.h \
a9429e29 2095 $(HOSTHOOKS_DEF_H) $(VEC_H) $(PLUGIN_H) $(GGC_INTERNAL_H) $(TIMEVAR_H)
e980df8e
TT
2096
2097ggc-page.o: ggc-page.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) $(TREE_H) \
c59ffc41 2098 $(FLAGS_H) $(DIAGNOSTIC_CORE_H) $(GGC_H) $(TIMEVAR_H) $(TM_P_H) $(PARAMS_H) \
a9429e29 2099 $(TREE_FLOW_H) $(PLUGIN_H) $(GGC_INTERNAL_H)
e980df8e
TT
2100
2101ggc-zone.o: ggc-zone.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
c59ffc41 2102 $(TREE_H) $(FLAGS_H) $(DIAGNOSTIC_CORE_H) $(GGC_H) $(TIMEVAR_H) $(TM_P_H) \
a9429e29 2103 $(PARAMS_H) $(BITMAP_H) $(PLUGIN_H) $(GGC_INTERNAL_H)
e980df8e
TT
2104
2105ggc-none.o: ggc-none.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(GGC_H) \
2106 $(BCONFIG_H)
2107
8e65c286 2108stringpool.o: stringpool.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
a9429e29 2109 $(TREE_H) $(GGC_H) $(GGC_INTERNAL_H) gt-stringpool.h $(CPPLIB_H) $(SYMTAB_H)
e980df8e 2110
e980df8e 2111convert.o: convert.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \
7c475d11 2112 $(FLAGS_H) convert.h $(DIAGNOSTIC_CORE_H) langhooks.h
e980df8e 2113
ee666c25 2114double-int.o: double-int.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H)
e980df8e 2115
d7f09764 2116# lto-compress.o needs $(ZLIBINC) added to the include flags.
c5bc3df6 2117CFLAGS-lto-compress.o += $(ZLIBINC)
d7f09764 2118lto-compress.o: lto-compress.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
47c79d56 2119 $(TREE_H) langhooks.h $(LTO_STREAMER_H) $(LTO_SECTION_H) \
7c475d11 2120 lto-compress.h $(DIAGNOSTIC_CORE_H) $(DIAGNOSTIC_CORE_H)
f0efc7aa
DN
2121data-streamer-in.o: data-streamer-in.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
2122 $(DATA_STREAMER_H) $(DIAGNOSTIC_H)
2123data-streamer-out.o: data-streamer-out.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
2124 $(DATA_STREAMER_H)
2125data-streamer.o: data-streamer.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
2126 $(DATA_STREAMER_H)
2127gimple-streamer-in.o: gimple-streamer-in.c $(CONFIG_H) $(SYSTEM_H) \
2128 coretypes.h $(GIMPLE_STREAMER_H) $(TREE_FLOW_H) $(DATA_STREAMER_H) \
2129 $(TREE_STREAMER_H) $(DIAGNOSTIC_H)
2130gimple-streamer-out.o: gimple-streamer-out.c $(CONFIG_H) $(SYSTEM_H) \
2131 coretypes.h $(GIMPLE_STREAMER_H) $(DATA_STREAMER_H) $(TREE_FLOW_H) \
b9393656 2132 $(LTO_STREAMER_H) $(TREE_STREAMER_H)
f0efc7aa
DN
2133tree-streamer.o: tree-streamer.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
2134 $(TREE_STREAMER_H) $(STREAMER_HOOKS_H)
2135tree-streamer-in.o: tree-streamer-in.c $(CONFIG_H) $(SYSTEM_H) \
2136 coretypes.h $(DIAGNOSTIC_H) $(TREE_H) $(TREE_FLOW_H) $(TREE_STREAMER_H) \
2137 $(DATA_STREAMER_H) $(STREAMER_HOOKS_H) $(LTO_STREAMER_H)
2138tree-streamer-out.o: tree-streamer-out.c $(CONFIG_H) $(SYSTEM_H) \
2139 coretypes.h $(DIAGNOSTIC_H) $(TREE_STREAMER_H) $(DATA_STREAMER_H) \
2140 $(STREAMER_HOOKS_H)
2141streamer-hooks.o: streamer-hooks.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
2142 $(STREAMER_HOOKS_H)
d7f09764 2143lto-cgraph.o: lto-cgraph.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
7c475d11 2144 $(TM_H) $(DIAGNOSTIC_CORE_H) $(EXPR_H) $(FLAGS_H) $(PARAMS_H) input.h \
9aae8d16 2145 $(HASHTAB_H) langhooks.h $(BASIC_BLOCK_H) \
1da2ed5f 2146 $(TREE_FLOW_H) $(CGRAPH_H) $(FUNCTION_H) $(GGC_H) $(DIAGNOSTIC_CORE_H) \
be7a421e 2147 $(EXCEPT_H) $(TIMEVAR_H) pointer-set.h $(LTO_STREAMER_H) \
7d57274b 2148 $(GCOV_IO_H) $(DATA_STREAMER_H) $(TREE_STREAMER_H) $(TREE_PASS_H)
d7f09764 2149lto-streamer-in.o: lto-streamer-in.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
723cd7ab
RH
2150 $(TM_H) toplev.h $(DIAGNOSTIC_CORE_H) $(EXPR_H) $(FLAGS_H) $(PARAMS_H) \
2151 input.h $(HASHTAB_H) $(BASIC_BLOCK_H) $(TREE_FLOW_H) $(TREE_PASS_H) \
2152 $(CGRAPH_H) $(FUNCTION_H) $(GGC_H) $(DIAGNOSTIC_H) $(EXCEPT_H) debug.h \
7ee2468b 2153 $(IPA_UTILS_H) $(LTO_STREAMER_H) toplev.h \
f0efc7aa 2154 $(DATA_STREAMER_H) $(GIMPLE_STREAMER_H) $(TREE_STREAMER_H)
d7f09764 2155lto-streamer-out.o : lto-streamer-out.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
7c475d11 2156 $(TM_H) $(DIAGNOSTIC_CORE_H) $(TREE_H) $(EXPR_H) $(FLAGS_H) $(PARAMS_H) input.h \
9aae8d16 2157 $(HASHTAB_H) $(BASIC_BLOCK_H) tree-iterator.h \
d7f09764 2158 $(TREE_FLOW_H) $(TREE_PASS_H) $(CGRAPH_H) $(FUNCTION_H) $(GGC_H) \
f0efc7aa
DN
2159 $(DIAGNOSTIC_CORE_H) $(EXCEPT_H) $(LTO_STREAMER_H) $(DIAGNOSTIC_CORE_H) \
2160 $(DATA_STREAMER_H) $(STREAMER_HOOKS_H) $(GIMPLE_STREAMER_H) \
2161 $(TREE_STREAMER_H)
d7f09764 2162lto-section-in.o: lto-section-in.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
7c475d11 2163 $(DIAGNOSTIC_CORE_H) $(EXPR_H) $(FLAGS_H) $(PARAMS_H) input.h \
d7f09764 2164 $(HASHTAB_H) $(BASIC_BLOCK_H) $(TREE_FLOW_H) $(CGRAPH_H) $(FUNCTION_H) \
be7a421e 2165 $(GGC_H) $(DIAGNOSTIC_CORE_H) $(EXCEPT_H) $(TIMEVAR_H) \
d7f09764
DN
2166 $(LTO_STREAMER_H) lto-compress.h
2167lto-section-out.o : lto-section-out.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
7c475d11 2168 $(TM_H) $(DIAGNOSTIC_CORE_H) $(TREE_H) $(EXPR_H) $(PARAMS_H) input.h \
7ee2468b 2169 $(HASHTAB_H) $(BASIC_BLOCK_H) $(TREE_FLOW_H) \
3b06d379 2170 $(CGRAPH_H) $(FUNCTION_H) $(GGC_H) $(EXCEPT_H) pointer-set.h \
412288f1
DN
2171 $(BITMAP_H) langhooks.h $(LTO_STREAMER_H) lto-compress.h \
2172 $(DATA_STREAMER_H)
d7f09764 2173lto-symtab.o: lto-symtab.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
b305e3da 2174 $(TREE_H) $(GIMPLE_H) $(GGC_H) $(HASHTAB_H) \
74adb444 2175 $(LTO_STREAMER_H) $(LINKER_PLUGIN_API_H)
d7f09764 2176lto-opts.o: lto-opts.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TREE_H) \
a4d8c676 2177 $(HASHTAB_H) $(GGC_H) $(BITMAP_H) $(FLAGS_H) $(OPTS_H) $(OPTIONS_H) \
677f3fa8 2178 $(COMMON_TARGET_H) $(DIAGNOSTIC_H) $(LTO_STREAMER_H)
d7f09764
DN
2179lto-streamer.o: lto-streamer.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
2180 $(TM_H) $(TREE_H) $(GIMPLE_H) $(BITMAP_H) $(LTO_STREAMER_H) $(FLAGS_H) \
f0efc7aa
DN
2181 $(TREE_FLOW_H) $(DIAGNOSTIC_CORE_H) $(LTO_SYMTAB_H) toplev.h \
2182 $(DIAGNOSTIC_CORE_H) $(STREAMER_HOOKS_H)
7ee2468b 2183langhooks.o : langhooks.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TIMEVAR_H) \
6399c0ab 2184 $(TREE_H) toplev.h $(DIAGNOSTIC_CORE_H) $(TREE_INLINE_H) $(RTL_H) insn-config.h \
e63ea00c 2185 langhooks.h $(TARGET_H) $(LANGHOOKS_DEF_H) $(FLAGS_H) $(GGC_H) $(DIAGNOSTIC_H) \
cf835838 2186 intl.h $(GIMPLE_H) $(CGRAPH_H) output.h tree-diagnostic.h
40013784 2187tree.o: tree.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \
c0ed0531 2188 all-tree.def $(FLAGS_H) $(FUNCTION_H) $(PARAMS_H) \
7c475d11 2189 toplev.h $(DIAGNOSTIC_CORE_H) $(GGC_H) $(HASHTAB_H) $(TARGET_H) output.h $(TM_P_H) \
40013784
SB
2190 langhooks.h gt-tree.h $(TREE_INLINE_H) tree-iterator.h \
2191 $(BASIC_BLOCK_H) $(TREE_FLOW_H) $(OBSTACK_H) pointer-set.h \
7ee2468b 2192 $(TREE_PASS_H) $(LANGHOOKS_DEF_H) $(DIAGNOSTIC_H) $(CGRAPH_H) \
ee666c25 2193 $(EXCEPT_H) debug.h intl.h tree-diagnostic.h $(TREE_PRETTY_PRINT_H) \
677f3fa8 2194 $(COMMON_TARGET_H)
78c60e3d
SS
2195tree-dump.o: tree-dump.c $(CONFIG_H) $(SYSTEM_H) $(TM_H) $(TREE_H) \
2196 langhooks.h $(TREE_DUMP_H) tree-iterator.h
e980df8e 2197tree-inline.o : tree-inline.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
6f4185d7 2198 $(TREE_H) $(RTL_H) $(FLAGS_H) $(PARAMS_H) $(INPUT_H) insn-config.h \
a803773f 2199 $(HASHTAB_H) langhooks.h $(TREE_INLINE_H) $(CGRAPH_H) \
086058c2 2200 intl.h $(FUNCTION_H) $(GIMPLE_H) \
a8da523f 2201 debug.h $(DIAGNOSTIC_H) $(EXCEPT_H) $(TREE_FLOW_H) tree-iterator.h tree-mudflap.h \
6399c0ab 2202 $(IPA_PROP_H) value-prof.h $(TREE_PASS_H) $(TARGET_H) \
ee666c25 2203 $(TREE_PRETTY_PRINT_H)
7ee2468b
SB
2204print-tree.o : print-tree.c $(CONFIG_H) $(SYSTEM_H) coretypes.h dumpfile.h \
2205 $(TM_H) $(TREE_H) $(GGC_H) langhooks.h tree-iterator.h \
2206 $(DIAGNOSTIC_H) $(TREE_FLOW_H) $(GIMPLE_PRETTY_PRINT_H)
e980df8e 2207stor-layout.o : stor-layout.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
be7a421e 2208 $(TREE_H) $(PARAMS_H) $(FLAGS_H) $(FUNCTION_H) $(EXPR_H) $(RTL_H) \
e980df8e 2209 $(GGC_H) $(TM_P_H) $(TARGET_H) langhooks.h $(REGS_H) gt-stor-layout.h \
c59ffc41 2210 $(DIAGNOSTIC_CORE_H) $(CGRAPH_H) $(TREE_INLINE_H) $(TREE_DUMP_H) $(GIMPLE_H)
37d6f666
WM
2211asan.o : asan.c asan.h $(CONFIG_H) pointer-set.h \
2212 $(SYSTEM_H) $(TREE_H) $(GIMPLE_H) \
2213 output.h $(DIAGNOSTIC_H) coretypes.h $(TREE_DUMP_H) $(FLAGS_H) \
dfe06d3e 2214 tree-pretty-print.h $(TARGET_H)
c9e93168
TV
2215tree-ssa-tail-merge.o: tree-ssa-tail-merge.c \
2216 $(SYSTEM_H) $(CONFIG_H) coretypes.h $(TM_H) $(BITMAP_H) \
be7a421e 2217 $(FLAGS_H) $(TM_P_H) $(BASIC_BLOCK_H) \
0823efed 2218 $(TREE_H) $(TREE_FLOW_H) $(TREE_INLINE_H) $(TREE_DUMP_H) $(HASH_TABLE_H) \
7ee2468b 2219 $(GIMPLE_H) $(FUNCTION_H) tree-ssa-sccvn.h \
ee666c25 2220 $(CGRAPH_H) $(GIMPLE_PRETTY_PRINT_H) $(PARAMS_H)
5006671f 2221tree-ssa-structalias.o: tree-ssa-structalias.c \
e63ea00c 2222 $(SYSTEM_H) $(CONFIG_H) coretypes.h $(TM_H) $(GGC_H) $(OBSTACK_H) $(BITMAP_H) \
be7a421e 2223 $(FLAGS_H) $(TM_P_H) $(BASIC_BLOCK_H) \
7c475d11 2224 $(DIAGNOSTIC_H) $(TREE_H) $(TREE_FLOW_H) $(TREE_INLINE_H) \
237ee620 2225 $(GIMPLE_H) $(HASHTAB_H) $(FUNCTION_H) $(CGRAPH_H) \
7ee2468b 2226 $(TREE_PASS_H) alloc-pool.h $(SPLAY_TREE_H) $(PARAMS_H) \
7d6e2521 2227 $(CGRAPH_H) $(ALIAS_H) pointer-set.h
34f97b94 2228tree-ssa-uninit.o : tree-ssa-uninit.c $(TREE_FLOW_H) $(CONFIG_H) $(SYSTEM_H) \
be7a421e 2229 $(TREE_H) $(TM_P_H) $(DIAGNOSTIC_H) \
7ee2468b
SB
2230 $(FUNCTION_H) $(TM_H) coretypes.h \
2231 $(TREE_PASS_H) $(BASIC_BLOCK_H) $(BITMAP_H) \
40013784 2232 $(FLAGS_H) $(HASHTAB_H) pointer-set.h \
ee666c25 2233 $(GIMPLE_H) $(TREE_INLINE_H) $(GIMPLE_PRETTY_PRINT_H)
e980df8e 2234tree-ssa.o : tree-ssa.c $(TREE_FLOW_H) $(CONFIG_H) $(SYSTEM_H) \
be7a421e 2235 $(TREE_H) $(TM_P_H) $(EXPR_H) $(DIAGNOSTIC_H) \
7ee2468b
SB
2236 toplev.h $(FUNCTION_H) $(TM_H) coretypes.h \
2237 langhooks.h $(TREE_PASS_H) $(BASIC_BLOCK_H) $(BITMAP_H) \
40013784 2238 $(FLAGS_H) $(GGC_H) $(HASHTAB_H) pointer-set.h \
ee666c25
SB
2239 $(GIMPLE_H) $(TREE_INLINE_H) $(TARGET_H) \
2240 $(GIMPLE_PRETTY_PRINT_H) $(CFGLOOP_H)
e980df8e 2241tree-into-ssa.o : tree-into-ssa.c $(TREE_FLOW_H) $(CONFIG_H) $(SYSTEM_H) \
d8d707b4 2242 $(TREE_H) $(TM_P_H) $(DIAGNOSTIC_CORE_H) \
7ee2468b 2243 $(FUNCTION_H) $(TM_H) coretypes.h \
40013784
SB
2244 langhooks.h domwalk.h $(TREE_PASS_H) $(PARAMS_H) $(BASIC_BLOCK_H) \
2245 $(BITMAP_H) $(CFGLOOP_H) $(FLAGS_H) $(HASHTAB_H) \
ee666c25
SB
2246 $(GIMPLE_H) $(TREE_INLINE_H) vecprim.h \
2247 $(GIMPLE_PRETTY_PRINT_H)
e980df8e 2248tree-ssa-ter.o : tree-ssa-ter.c $(TREE_FLOW_H) $(CONFIG_H) $(SYSTEM_H) \
7ee2468b 2249 $(TREE_H) $(DIAGNOSTIC_H) $(TM_H) coretypes.h dumpfile.h \
ee666c25
SB
2250 $(TREE_SSA_LIVE_H) $(BITMAP_H) $(FLAGS_H) \
2251 $(GIMPLE_PRETTY_PRINT_H)
e980df8e 2252tree-ssa-coalesce.o : tree-ssa-coalesce.c $(TREE_FLOW_H) $(CONFIG_H) \
7ee2468b 2253 $(SYSTEM_H) $(TREE_H) $(DIAGNOSTIC_H) $(TM_H) coretypes.h dumpfile.h \
0823efed 2254 $(TREE_SSA_LIVE_H) $(BITMAP_H) $(FLAGS_H) $(HASH_TABLE_H) \
ee666c25 2255 $(TREE_PRETTY_PRINT_H)
e980df8e 2256tree-outof-ssa.o : tree-outof-ssa.c $(TREE_FLOW_H) $(CONFIG_H) $(SYSTEM_H) \
7ee2468b
SB
2257 $(TREE_H) $(DIAGNOSTIC_H) $(TM_H) coretypes.h dumpfile.h \
2258 $(TREE_SSA_LIVE_H) $(BASIC_BLOCK_H) $(BITMAP_H) $(GGC_H) \
ee666c25 2259 $(EXPR_H) $(SSAEXPAND_H) $(GIMPLE_PRETTY_PRINT_H)
e980df8e 2260tree-ssa-dse.o : tree-ssa-dse.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
6f4185d7 2261 $(TM_H) $(GGC_H) $(TREE_H) $(TM_P_H) $(BASIC_BLOCK_H) \
7ee2468b
SB
2262 $(TREE_FLOW_H) $(TREE_PASS_H) domwalk.h $(FLAGS_H) \
2263 $(GIMPLE_PRETTY_PRINT_H) langhooks.h
e980df8e 2264tree-ssa-forwprop.o : tree-ssa-forwprop.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
391886c8 2265 $(TM_H) $(TREE_H) $(TM_P_H) $(BASIC_BLOCK_H) $(CFGLOOP_H) \
7ee2468b 2266 $(TREE_FLOW_H) $(TREE_PASS_H) $(DIAGNOSTIC_H) \
148e45e5 2267 langhooks.h $(FLAGS_H) $(GIMPLE_H) $(GIMPLE_PRETTY_PRINT_H) $(EXPR_H) \
f2167d68 2268 $(OPTABS_H) tree-ssa-propagate.h
5a3db6d5 2269tree-ssa-phiprop.o : tree-ssa-phiprop.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
40013784 2270 $(TM_H) $(TREE_H) $(TM_P_H) $(BASIC_BLOCK_H) \
7ee2468b 2271 $(TREE_FLOW_H) $(TREE_PASS_H) $(DIAGNOSTIC_H) \
ee666c25 2272 langhooks.h $(FLAGS_H) $(GIMPLE_PRETTY_PRINT_H)
e980df8e
TT
2273tree-ssa-ifcombine.o : tree-ssa-ifcombine.c $(CONFIG_H) $(SYSTEM_H) \
2274 coretypes.h $(TM_H) $(TREE_H) $(BASIC_BLOCK_H) \
7ee2468b 2275 $(TREE_FLOW_H) $(TREE_PASS_H) $(DIAGNOSTIC_H) \
ee666c25 2276 $(TREE_PRETTY_PRINT_H)
e980df8e 2277tree-ssa-phiopt.o : tree-ssa-phiopt.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
40013784 2278 $(TM_H) $(GGC_H) $(TREE_H) $(TM_P_H) $(BASIC_BLOCK_H) \
7ee2468b
SB
2279 $(TREE_FLOW_H) $(TREE_PASS_H) langhooks.h $(FLAGS_H) \
2280 $(DIAGNOSTIC_H) pointer-set.h domwalk.h $(CFGLOOP_H) \
372a6eb8
BS
2281 $(TREE_DATA_REF_H) $(TREE_PRETTY_PRINT_H) $(GIMPLE_PRETTY_PRINT_H) \
2282 insn-config.h $(EXPR_H) $(OPTABS_H)
e980df8e 2283tree-nrv.o : tree-nrv.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
40013784 2284 $(TM_H) $(TREE_H) $(FUNCTION_H) $(BASIC_BLOCK_H) $(FLAGS_H) \
7ee2468b 2285 $(DIAGNOSTIC_H) $(TREE_FLOW_H) $(TREE_PASS_H) \
ee666c25 2286 langhooks.h $(TREE_PRETTY_PRINT_H)
e980df8e 2287tree-ssa-copy.o : tree-ssa-copy.c $(TREE_FLOW_H) $(CONFIG_H) $(SYSTEM_H) \
be7a421e 2288 $(TREE_H) $(TM_P_H) $(GGC_H) $(DIAGNOSTIC_H) \
7ee2468b 2289 $(FUNCTION_H) $(TM_H) coretypes.h \
7072a650 2290 $(BASIC_BLOCK_H) $(TREE_PASS_H) langhooks.h tree-ssa-propagate.h \
ee666c25 2291 $(FLAGS_H) $(CFGLOOP_H) $(GIMPLE_PRETTY_PRINT_H)
e980df8e 2292tree-ssa-propagate.o : tree-ssa-propagate.c $(TREE_FLOW_H) $(CONFIG_H) \
be7a421e 2293 $(SYSTEM_H) $(TREE_H) $(TM_P_H) \
7ee2468b
SB
2294 $(DIAGNOSTIC_H) $(FUNCTION_H) $(TM_H) coretypes.h dumpfile.h \
2295 $(BASIC_BLOCK_H) langhooks.h \
3e097227 2296 tree-ssa-propagate.h $(VEC_H) value-prof.h gt-tree-ssa-propagate.h $(FLAGS_H) \
ee666c25 2297 $(GIMPLE_H) $(GIMPLE_PRETTY_PRINT_H)
e980df8e 2298tree-ssa-dom.o : tree-ssa-dom.c $(TREE_FLOW_H) $(CONFIG_H) $(SYSTEM_H) \
be7a421e 2299 $(TREE_H) $(TM_P_H) $(DIAGNOSTIC_H) \
7ee2468b 2300 $(FUNCTION_H) $(TM_H) coretypes.h \
7072a650 2301 $(BASIC_BLOCK_H) domwalk.h $(TREE_PASS_H) $(FLAGS_H) langhooks.h \
ee666c25
SB
2302 tree-ssa-propagate.h $(CFGLOOP_H) $(PARAMS_H) \
2303 $(GIMPLE_PRETTY_PRINT_H)
e980df8e 2304tree-ssa-uncprop.o : tree-ssa-uncprop.c $(TREE_FLOW_H) $(CONFIG_H) \
be7a421e 2305 $(SYSTEM_H) $(TREE_H) $(TM_P_H) \
7ee2468b
SB
2306 $(DIAGNOSTIC_H) $(FUNCTION_H) $(TM_H) coretypes.h \
2307 $(BASIC_BLOCK_H) domwalk.h $(TREE_PASS_H) $(FLAGS_H) \
2308 tree-ssa-propagate.h
e980df8e 2309tree-ssa-threadedge.o : tree-ssa-threadedge.c $(TREE_FLOW_H) $(CONFIG_H) \
7ee2468b 2310 $(SYSTEM_H) coretypes.h dumpfile.h $(TM_H) $(TREE_H) $(FLAGS_H) $(TM_P_H) \
be7a421e 2311 $(BASIC_BLOCK_H) $(CFGLOOP_H) \
7ee2468b
SB
2312 $(FUNCTION_H) $(DIAGNOSTIC_H) $(TIMEVAR_H) $(TREE_FLOW_H) \
2313 tree-ssa-propagate.h langhooks.h \
7072a650 2314 $(PARAMS_H)
e980df8e 2315tree-ssa-threadupdate.o : tree-ssa-threadupdate.c $(TREE_FLOW_H) $(CONFIG_H) \
0823efed 2316 $(SYSTEM_H) $(TREE_H) $(TM_P_H) $(HASH_TABLE_H) \
7ee2468b
SB
2317 $(DIAGNOSTIC_H) $(FUNCTION_H) $(TM_H) coretypes.h dumpfile.h \
2318 $(BASIC_BLOCK_H) $(FLAGS_H) $(CFGLOOP_H)
e980df8e 2319tree-ssanames.o : tree-ssanames.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
40013784 2320 $(TM_H) $(TREE_H) $(TREE_FLOW_H) $(TREE_PASS_H)
e980df8e 2321tree-phinodes.o : tree-phinodes.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
9aae8d16 2322 $(TM_H) $(TREE_H) $(GGC_H) $(BASIC_BLOCK_H) $(TREE_FLOW_H) \
46d33ae9 2323 gt-tree-phinodes.h $(DIAGNOSTIC_CORE_H) $(GIMPLE_H)
e980df8e 2324domwalk.o : domwalk.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
7a8cba34 2325 $(BASIC_BLOCK_H) domwalk.h sbitmap.h
e980df8e 2326tree-ssa-live.o : tree-ssa-live.c $(TREE_FLOW_H) $(CONFIG_H) $(SYSTEM_H) \
7ee2468b 2327 $(TREE_H) $(DIAGNOSTIC_H) $(TM_H) coretypes.h dumpfile.h $(TIMEVAR_H) \
7c475d11 2328 $(TREE_SSA_LIVE_H) $(BITMAP_H) debug.h $(FLAGS_H) \
ee666c25 2329 $(GIMPLE_PRETTY_PRINT_H) $(GIMPLE_H)
e980df8e 2330tree-ssa-copyrename.o : tree-ssa-copyrename.c $(TREE_FLOW_H) $(CONFIG_H) \
7ee2468b
SB
2331 $(SYSTEM_H) $(TREE_H) $(DIAGNOSTIC_H) $(FUNCTION_H) \
2332 $(TREE_PASS_H) $(TM_H) coretypes.h $(TREE_SSA_LIVE_H) \
7072a650 2333 $(BASIC_BLOCK_H) $(BITMAP_H) $(FLAGS_H) $(HASHTAB_H) langhooks.h \
ee666c25 2334 $(GIMPLE_H) $(TREE_INLINE_H) $(GIMPLE_H)
e980df8e 2335tree-ssa-pre.o : tree-ssa-pre.c $(TREE_FLOW_H) $(CONFIG_H) \
7ee2468b
SB
2336 $(SYSTEM_H) $(TREE_H) $(DIAGNOSTIC_H) \
2337 $(TM_H) coretypes.h $(TREE_PASS_H) $(FLAGS_H) langhooks.h \
0823efed 2338 $(CFGLOOP_H) alloc-pool.h $(BASIC_BLOCK_H) $(BITMAP_H) $(HASH_TABLE_H) \
7072a650 2339 $(GIMPLE_H) $(TREE_INLINE_H) tree-iterator.h tree-ssa-sccvn.h $(PARAMS_H) \
40b178f4 2340 $(DBGCNT_H) tree-scalar-evolution.h $(GIMPLE_PRETTY_PRINT_H) domwalk.h
e980df8e 2341tree-ssa-sccvn.o : tree-ssa-sccvn.c $(TREE_FLOW_H) $(CONFIG_H) \
7ee2468b
SB
2342 $(SYSTEM_H) $(TREE_H) $(DIAGNOSTIC_H) \
2343 $(TM_H) coretypes.h dumpfile.h $(FLAGS_H) $(CFGLOOP_H) \
2344 alloc-pool.h $(BASIC_BLOCK_H) $(BITMAP_H) $(HASHTAB_H) $(GIMPLE_H) \
2345 $(TREE_INLINE_H) tree-ssa-propagate.h tree-ssa-sccvn.h \
ee666c25 2346 $(PARAMS_H) $(GIMPLE_PRETTY_PRINT_H) gimple-fold.h
f9453c07
BS
2347gimple-ssa-strength-reduction.o : gimple-ssa-strength-reduction.c $(CONFIG_H) \
2348 $(SYSTEM_H) coretypes.h $(TREE_H) $(GIMPLE_H) $(BASIC_BLOCK_H) \
7ee2468b 2349 $(TREE_PASS_H) $(CFGLOOP_H) $(TREE_PRETTY_PRINT_H) \
f9453c07 2350 $(GIMPLE_PRETTY_PRINT_H) alloc-pool.h $(TREE_FLOW_H) domwalk.h \
6dd8f4bb 2351 pointer-set.h expmed.h
e980df8e 2352tree-vrp.o : tree-vrp.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \
7ee2468b 2353 $(TREE_FLOW_H) $(TREE_PASS_H) $(DIAGNOSTIC_CORE_H) $(GGC_H) \
e980df8e 2354 $(BASIC_BLOCK_H) tree-ssa-propagate.h $(FLAGS_H) $(TREE_DUMP_H) \
7ee2468b 2355 $(CFGLOOP_H) $(SCEV_H) intl.h \
ee666c25 2356 $(GIMPLE_PRETTY_PRINT_H) gimple-fold.h $(OPTABS_H) $(EXPR_H)
e980df8e 2357tree-cfg.o : tree-cfg.c $(TREE_FLOW_H) $(CONFIG_H) $(SYSTEM_H) \
5dfe1ad4 2358 $(TREE_H) $(TM_P_H) $(GGC_H) $(FLAGS_H) $(TARGET_H) \
7ee2468b
SB
2359 $(DIAGNOSTIC_CORE_H) $(FUNCTION_H) $(TM_H) coretypes.h \
2360 $(TREE_DUMP_H) $(EXCEPT_H) $(CFGLOOP_H) $(TREE_PASS_H) \
78bde837 2361 $(BASIC_BLOCK_H) \
ee666c25 2362 value-prof.h tree-ssa-propagate.h $(TREE_INLINE_H) $(GIMPLE_PRETTY_PRINT_H)
e980df8e 2363tree-cfgcleanup.o : tree-cfgcleanup.c $(TREE_FLOW_H) $(CONFIG_H) $(SYSTEM_H) \
be7a421e 2364 $(TREE_H) $(TM_P_H) $(GGC_H) $(FLAGS_H) \
7ee2468b
SB
2365 $(DIAGNOSTIC_CORE_H) $(FUNCTION_H) $(TM_H) coretypes.h \
2366 $(EXCEPT_H) langhooks.h $(CFGLOOP_H) $(TREE_PASS_H) \
6f4185d7 2367 $(BASIC_BLOCK_H) $(HASHTAB_H) \
223cf84d 2368 tree-ssa-propagate.h $(SCEV_H)
e980df8e 2369tree-tailcall.o : tree-tailcall.c $(TREE_FLOW_H) $(CONFIG_H) $(SYSTEM_H) \
40013784 2370 $(TREE_H) $(TM_P_H) $(FUNCTION_H) $(TM_H) coretypes.h \
7ee2468b 2371 $(EXCEPT_H) $(TREE_PASS_H) $(FLAGS_H) langhooks.h \
ee666c25 2372 $(BASIC_BLOCK_H) $(DBGCNT_H) $(GIMPLE_PRETTY_PRINT_H) $(TARGET_H) \
677f3fa8 2373 $(COMMON_TARGET_H)
e980df8e 2374tree-ssa-sink.o : tree-ssa-sink.c $(TREE_FLOW_H) $(CONFIG_H) \
7ee2468b
SB
2375 $(SYSTEM_H) $(TREE_H) $(DIAGNOSTIC_H) \
2376 $(TM_H) coretypes.h $(TREE_PASS_H) $(FLAGS_H) alloc-pool.h \
2377 $(BASIC_BLOCK_H) $(BITMAP_H) $(CFGLOOP_H) $(HASHTAB_H) \
2378 $(GIMPLE_H) $(TREE_INLINE_H) tree-iterator.h \
ee666c25 2379 $(GIMPLE_PRETTY_PRINT_H)
e980df8e 2380tree-nested.o: tree-nested.c $(CONFIG_H) $(SYSTEM_H) $(TM_H) $(TREE_H) \
40013784 2381 $(TM_P_H) $(FUNCTION_H) $(TREE_DUMP_H) $(TREE_INLINE_H) \
726a989a 2382 tree-iterator.h $(GIMPLE_H) $(CGRAPH_H) $(EXPR_H) langhooks.h \
40013784 2383 gt-tree-nested.h coretypes.h $(TREE_FLOW_H) pointer-set.h
e980df8e 2384tree-if-conv.o: tree-if-conv.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
7ee2468b 2385 $(TREE_H) $(FLAGS_H) $(BASIC_BLOCK_H) $(TREE_FLOW_H) \
40013784 2386 $(CFGLOOP_H) $(TREE_DATA_REF_H) $(TREE_PASS_H) $(DIAGNOSTIC_H) \
7ee2468b 2387 $(DBGCNT_H) $(GIMPLE_PRETTY_PRINT_H)
e980df8e 2388tree-iterator.o : tree-iterator.c $(CONFIG_H) $(SYSTEM_H) $(TREE_H) \
726a989a 2389 coretypes.h $(GGC_H) tree-iterator.h $(GIMPLE_H) gt-tree-iterator.h
e980df8e 2390tree-dfa.o : tree-dfa.c $(TREE_FLOW_H) $(CONFIG_H) $(SYSTEM_H) \
be7a421e 2391 $(TREE_H) $(TM_P_H) $(GGC_H) $(DIAGNOSTIC_H) \
e980df8e 2392 $(TREE_INLINE_H) $(HASHTAB_H) pointer-set.h $(FLAGS_H) $(FUNCTION_H) \
7ee2468b 2393 convert.h $(TM_H) coretypes.h langhooks.h \
cf835838 2394 $(TREE_PASS_H) $(PARAMS_H) $(CGRAPH_H) $(BASIC_BLOCK_H) $(GIMPLE_H) \
ee666c25 2395 $(TREE_PRETTY_PRINT_H)
e980df8e 2396tree-ssa-operands.o : tree-ssa-operands.c $(TREE_FLOW_H) $(CONFIG_H) \
e63ea00c 2397 $(SYSTEM_H) $(TREE_H) $(GGC_H) $(DIAGNOSTIC_H) $(TREE_INLINE_H) \
7ee2468b
SB
2398 $(FLAGS_H) $(FUNCTION_H) $(TM_H) $(TIMEVAR_H) \
2399 coretypes.h dumpfile.h langhooks.h $(IPA_REFERENCE_H) $(GIMPLE_PRETTY_PRINT_H)
e980df8e 2400tree-eh.o : tree-eh.c $(TREE_FLOW_H) $(CONFIG_H) $(SYSTEM_H) \
40013784 2401 $(TREE_H) $(TM_H) $(FLAGS_H) $(FUNCTION_H) $(EXCEPT_H) langhooks.h \
7ee2468b
SB
2402 $(GGC_H) $(TREE_PASS_H) coretypes.h pointer-set.h \
2403 $(TREE_INLINE_H) tree-iterator.h toplev.h \
296f202e 2404 $(DIAGNOSTIC_CORE_H) $(TARGET_H) $(CFGLOOP_H)
e63ea00c 2405tree-ssa-loop.o : tree-ssa-loop.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
be7a421e 2406 $(TREE_H) $(TM_P_H) $(BASIC_BLOCK_H) \
7ee2468b 2407 $(DIAGNOSTIC_H) $(TREE_FLOW_H) $(TREE_PASS_H) \
7c475d11 2408 $(CFGLOOP_H) $(FLAGS_H) $(TREE_INLINE_H) $(SCEV_H) $(DIAGNOSTIC_CORE_H) $(TREE_VECTORIZER_H)
e980df8e 2409tree-ssa-loop-unswitch.o : tree-ssa-loop-unswitch.c $(TREE_FLOW_H) \
40013784 2410 $(CONFIG_H) $(SYSTEM_H) $(TREE_H) $(TM_P_H) $(CFGLOOP_H) \
7ee2468b
SB
2411 $(PARAMS_H) $(DIAGNOSTIC_H) $(TM_H) \
2412 coretypes.h $(TREE_PASS_H) $(BASIC_BLOCK_H) \
e980df8e
TT
2413 $(TREE_INLINE_H)
2414tree-ssa-address.o : tree-ssa-address.c $(TREE_FLOW_H) $(CONFIG_H) \
2415 $(SYSTEM_H) $(RTL_H) $(TREE_H) $(TM_P_H) \
7ee2468b
SB
2416 $(DIAGNOSTIC_H) $(TM_H) coretypes.h dumpfile.h \
2417 $(FLAGS_H) $(TREE_INLINE_H) $(RECOG_H) insn-config.h \
cf835838 2418 $(EXPR_H) gt-tree-ssa-address.h $(GGC_H) tree-affine.h $(TARGET_H) \
6dd8f4bb 2419 $(TREE_PRETTY_PRINT_H) expmed.h
e980df8e 2420tree-ssa-loop-niter.o : tree-ssa-loop-niter.c $(TREE_FLOW_H) $(CONFIG_H) \
40013784 2421 $(SYSTEM_H) $(TREE_H) $(TM_P_H) $(CFGLOOP_H) $(PARAMS_H) \
7ee2468b
SB
2422 $(TREE_INLINE_H) $(DIAGNOSTIC_H) $(TM_H) coretypes.h dumpfile.h \
2423 $(DIAGNOSTIC_CORE_H) $(FLAGS_H) $(TREE_DATA_REF_H) \
ee666c25 2424 $(BASIC_BLOCK_H) $(GGC_H) intl.h $(GIMPLE_PRETTY_PRINT_H)
e980df8e 2425tree-ssa-loop-ivcanon.o : tree-ssa-loop-ivcanon.c $(TREE_FLOW_H) $(CONFIG_H) \
40013784 2426 $(SYSTEM_H) $(TREE_H) $(TM_P_H) $(CFGLOOP_H) $(PARAMS_H) \
7ee2468b 2427 $(TREE_INLINE_H) $(DIAGNOSTIC_H) $(TM_H) coretypes.h \
cf835838 2428 $(FLAGS_H) $(TREE_PASS_H) $(SCEV_H) $(BASIC_BLOCK_H) $(TARGET_H) \
ee666c25 2429 $(GIMPLE_PRETTY_PRINT_H)
e980df8e
TT
2430tree-ssa-loop-ch.o : tree-ssa-loop-ch.c $(TREE_FLOW_H) $(CONFIG_H) \
2431 $(SYSTEM_H) $(RTL_H) $(TREE_H) $(TM_P_H) $(CFGLOOP_H) $(TREE_INLINE_H) \
7ee2468b 2432 $(DIAGNOSTIC_H) $(TM_H) coretypes.h \
40013784 2433 $(TREE_PASS_H) $(FLAGS_H) $(BASIC_BLOCK_H)
e980df8e 2434tree-ssa-loop-prefetch.o: tree-ssa-loop-prefetch.c $(TREE_FLOW_H) $(CONFIG_H) \
40013784 2435 $(SYSTEM_H) $(TREE_H) $(TM_P_H) $(CFGLOOP_H) $(EXPR_H) \
7ee2468b 2436 $(DIAGNOSTIC_H) $(TM_H) coretypes.h \
40013784
SB
2437 $(TREE_PASS_H) $(RECOG_H) insn-config.h $(HASHTAB_H) \
2438 $(CFGLOOP_H) $(PARAMS_H) langhooks.h $(BASIC_BLOCK_H) \
7c475d11 2439 $(DIAGNOSTIC_CORE_H) langhooks.h $(TREE_INLINE_H) $(TREE_DATA_REF_H) \
ee666c25 2440 $(OPTABS_H) $(TREE_PRETTY_PRINT_H)
e980df8e 2441tree-predcom.o: tree-predcom.c $(CONFIG_H) $(SYSTEM_H) $(TREE_H) $(TM_P_H) \
223cf84d 2442 $(CFGLOOP_H) $(TREE_FLOW_H) $(GGC_H) $(TREE_DATA_REF_H) \
7072a650 2443 $(PARAMS_H) $(DIAGNOSTIC_H) $(TREE_PASS_H) $(TM_H) coretypes.h \
ee666c25 2444 tree-affine.h $(TREE_INLINE_H) $(TREE_PRETTY_PRINT_H)
e980df8e 2445tree-ssa-loop-ivopts.o : tree-ssa-loop-ivopts.c $(TREE_FLOW_H) $(CONFIG_H) \
40013784 2446 $(SYSTEM_H) $(TREE_H) $(TM_P_H) $(CFGLOOP_H) $(EXPR_H) \
7ee2468b 2447 $(DIAGNOSTIC_H) $(TM_H) coretypes.h \
7072a650 2448 $(TREE_PASS_H) $(GGC_H) $(RECOG_H) insn-config.h $(HASHTAB_H) $(SCEV_H) \
40013784 2449 $(CFGLOOP_H) $(PARAMS_H) langhooks.h $(BASIC_BLOCK_H) \
ee666c25
SB
2450 tree-affine.h pointer-set.h $(TARGET_H) \
2451 $(GIMPLE_PRETTY_PRINT_H) tree-ssa-propagate.h
e980df8e 2452tree-affine.o : tree-affine.c tree-affine.h $(CONFIG_H) pointer-set.h \
40013784 2453 $(SYSTEM_H) $(TREE_H) $(GIMPLE_H) \
7ee2468b 2454 coretypes.h dumpfile.h $(FLAGS_H) \
ee666c25 2455 $(TREE_PRETTY_PRINT_H)
e980df8e 2456tree-ssa-loop-manip.o : tree-ssa-loop-manip.c $(TREE_FLOW_H) $(CONFIG_H) \
7ee2468b
SB
2457 $(SYSTEM_H) coretypes.h dumpfile.h $(TM_H) $(TREE_H) \
2458 $(BASIC_BLOCK_H) $(DIAGNOSTIC_H) $(TREE_FLOW_H) \
2459 $(CFGLOOP_H) $(TREE_PASS_H) \
08dab97a 2460 $(SCEV_H) $(PARAMS_H) $(TREE_INLINE_H) langhooks.h
e980df8e 2461tree-ssa-loop-im.o : tree-ssa-loop-im.c $(TREE_FLOW_H) $(CONFIG_H) \
40013784 2462 $(SYSTEM_H) $(TREE_H) $(TM_P_H) $(CFGLOOP_H) domwalk.h \
7ee2468b
SB
2463 $(PARAMS_H) $(DIAGNOSTIC_H) $(TM_H) coretypes.h \
2464 $(TREE_PASS_H) $(FLAGS_H) $(BASIC_BLOCK_H) \
ee666c25 2465 pointer-set.h tree-affine.h tree-ssa-propagate.h $(GIMPLE_PRETTY_PRINT_H)
e63ea00c 2466tree-ssa-math-opts.o : tree-ssa-math-opts.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
7ee2468b 2467 $(TM_H) $(FLAGS_H) $(TREE_H) $(TREE_FLOW_H) \
464778c0 2468 $(TREE_PASS_H) alloc-pool.h $(BASIC_BLOCK_H) $(TARGET_H) \
ee666c25 2469 $(DIAGNOSTIC_H) $(RTL_H) $(EXPR_H) $(OPTABS_H) $(GIMPLE_PRETTY_PRINT_H)
e980df8e 2470tree-ssa-alias.o : tree-ssa-alias.c $(TREE_FLOW_H) $(CONFIG_H) $(SYSTEM_H) \
6f4185d7 2471 $(TREE_H) $(TM_P_H) $(GGC_H) $(TREE_INLINE_H) $(FLAGS_H) \
7ee2468b
SB
2472 $(FUNCTION_H) $(TIMEVAR_H) convert.h $(TM_H) coretypes.h dumpfile.h \
2473 langhooks.h \
2474 $(PARAMS_H) $(BASIC_BLOCK_H) $(DIAGNOSTIC_H) \
7352c013 2475 $(GIMPLE_H) $(VEC_H) $(TARGET_H) \
b8beb4d1 2476 vecprim.h pointer-set.h alloc-pool.h \
ee666c25 2477 $(TREE_PRETTY_PRINT_H)
e980df8e 2478tree-ssa-reassoc.o : tree-ssa-reassoc.c $(TREE_FLOW_H) $(CONFIG_H) \
7ee2468b
SB
2479 $(SYSTEM_H) $(TREE_H) $(DIAGNOSTIC_H) \
2480 $(TM_H) coretypes.h $(TREE_PASS_H) $(FLAGS_H) \
40013784 2481 tree-iterator.h $(BASIC_BLOCK_H) $(GIMPLE_H) $(TREE_INLINE_H) \
3e097227 2482 $(VEC_H) langhooks.h alloc-pool.h pointer-set.h $(CFGLOOP_H) \
296f202e 2483 $(TARGET_H) $(GIMPLE_PRETTY_PRINT_H) $(DIAGNOSTIC_CORE_H)
e980df8e 2484tree-optimize.o : tree-optimize.c $(TREE_FLOW_H) $(CONFIG_H) $(SYSTEM_H) \
be7a421e 2485 $(TREE_H) $(TM_P_H) $(GGC_H) \
7ee2468b
SB
2486 $(DIAGNOSTIC_H) $(BASIC_BLOCK_H) $(FLAGS_H) $(TM_H) \
2487 coretypes.h toplev.h $(DIAGNOSTIC_CORE_H) $(FUNCTION_H) langhooks.h \
090fa0ab 2488 $(FLAGS_H) $(CGRAPH_H) $(PLUGIN_H) \
8554df86 2489 $(TREE_INLINE_H) $(GGC_H) graph.h $(CGRAPH_H) \
0878843f 2490 $(TREE_PASS_H) $(CFGLOOP_H) $(EXCEPT_H)
e63ea00c 2491
726a989a 2492gimplify.o : gimplify.c $(CONFIG_H) $(SYSTEM_H) $(TREE_H) $(GIMPLE_H) \
ee666c25 2493 $(DIAGNOSTIC_H) $(TREE_INLINE_H) langhooks.h \
e980df8e 2494 $(LANGHOOKS_DEF_H) $(TREE_FLOW_H) $(CGRAPH_H) $(TIMEVAR_H) $(TM_H) \
a4b7d13c 2495 coretypes.h $(EXCEPT_H) $(FLAGS_H) $(RTL_H) $(FUNCTION_H) $(EXPR_H) \
7c475d11 2496 $(GGC_H) gt-gimplify.h $(HASHTAB_H) $(TARGET_H) $(DIAGNOSTIC_CORE_H) $(OPTABS_H) \
6f4185d7 2497 $(SPLAY_TREE_H) $(VEC_H) tree-iterator.h $(TREE_PASS_H) $(TREE_PRETTY_PRINT_H)
726a989a
RB
2498gimple-iterator.o : gimple-iterator.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
2499 $(TREE_H) $(GIMPLE_H) $(TREE_FLOW_H) value-prof.h
7ee2468b 2500gimple-fold.o : gimple-fold.c $(TREE_FLOW_H) $(CONFIG_H) coretypes.h dumpfile.h \
6f4185d7 2501 $(SYSTEM_H) $(RTL_H) $(TREE_H) $(TM_P_H) $(GGC_H) \
7ee2468b 2502 $(FUNCTION_H) $(TM_H) $(BASIC_BLOCK_H) langhooks.h \
6f4185d7 2503 tree-ssa-propagate.h $(FLAGS_H) $(TARGET_H) gimple-fold.h
e980df8e 2504gimple-low.o : gimple-low.c $(CONFIG_H) $(SYSTEM_H) $(TREE_H) \
6f4185d7 2505 $(DIAGNOSTIC_CORE_H) $(GIMPLE_H) $(TREE_INLINE_H) langhooks.h \
7ee2468b 2506 $(LANGHOOKS_DEF_H) $(TREE_FLOW_H) $(TM_H) coretypes.h \
6f4185d7 2507 $(EXCEPT_H) $(FLAGS_H) $(RTL_H) $(FUNCTION_H) $(TREE_PASS_H) \
a803773f 2508 $(HASHTAB_H) $(DIAGNOSTIC_CORE_H) tree-iterator.h
e980df8e 2509omp-low.o : omp-low.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \
1da2ed5f 2510 $(RTL_H) $(GIMPLE_H) $(TREE_INLINE_H) langhooks.h $(DIAGNOSTIC_CORE_H) \
7ee2468b 2511 $(TREE_FLOW_H) $(FLAGS_H) $(EXPR_H) $(DIAGNOSTIC_CORE_H) \
7072a650 2512 $(TREE_PASS_H) $(GGC_H) $(EXCEPT_H) $(SPLAY_TREE_H) $(OPTABS_H) \
464778c0 2513 $(CFGLOOP_H) tree-iterator.h gt-omp-low.h
e980df8e 2514tree-browser.o : tree-browser.c tree-browser.def $(CONFIG_H) $(SYSTEM_H) \
ee666c25 2515 coretypes.h $(TREE_H) $(TREE_PRETTY_PRINT_H)
7ee2468b
SB
2516omega.o : omega.c $(OMEGA_H) $(CONFIG_H) $(SYSTEM_H) coretypes.h dumpfile.h \
2517 $(TREE_H) $(DIAGNOSTIC_CORE_H)
2518tree-chrec.o : tree-chrec.c $(CONFIG_H) $(SYSTEM_H) coretypes.h dumpfile.h \
2519 $(TREE_PRETTY_PRINT_H) $(CFGLOOP_H) $(TREE_FLOW_H) $(SCEV_H) \
1bd6497c
SP
2520 $(PARAMS_H)
2521tree-scalar-evolution.o : tree-scalar-evolution.c $(CONFIG_H) $(SYSTEM_H) \
7ee2468b
SB
2522 coretypes.h dumpfile.h $(GIMPLE_PRETTY_PRINT_H) $(TREE_FLOW_H) $(CFGLOOP_H) $(SCEV_H) \
2523 $(PARAMS_H) gt-tree-scalar-evolution.h
2524tree-data-ref.o : tree-data-ref.c $(CONFIG_H) $(SYSTEM_H) coretypes.h dumpfile.h \
ee666c25 2525 $(GIMPLE_PRETTY_PRINT_H) $(TREE_FLOW_H) $(CFGLOOP_H) $(TREE_DATA_REF_H) \
7ee2468b 2526 langhooks.h tree-affine.h $(PARAMS_H)
ee666c25 2527sese.o : sese.c sese.h $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TREE_PRETTY_PRINT_H) \
6f4185d7 2528 $(TREE_FLOW_H) $(CFGLOOP_H) $(TREE_DATA_REF_H) $(TREE_PASS_H) value-prof.h
32a73fc4 2529graphite.o : graphite.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(DIAGNOSTIC_CORE_H) \
e8c2fb69 2530 $(TREE_FLOW_H) $(TREE_DUMP_H) $(CFGLOOP_H) $(TREE_DATA_REF_H) sese.h \
33ad93b9 2531 $(DBGCNT_H) graphite-poly.h graphite-scop-detection.h \
1bd6497c
SP
2532 graphite-clast-to-gimple.h graphite-sese-to-poly.h
2533graphite-blocking.o : graphite-blocking.c $(CONFIG_H) $(SYSTEM_H) \
7ee2468b 2534 coretypes.h dumpfile.h $(TREE_FLOW_H) $(CFGLOOP_H) $(TREE_DATA_REF_H) \
33ad93b9 2535 sese.h graphite-poly.h
1bd6497c 2536graphite-clast-to-gimple.o : graphite-clast-to-gimple.c $(CONFIG_H) \
7a1c57d3 2537 $(SYSTEM_H) coretypes.h $(DIAGNOSTIC_CORE_H) $(TREE_FLOW_H) $(TREE_PASS_H) \
33ad93b9
RG
2538 $(CFGLOOP_H) $(TREE_DATA_REF_H) sese.h \
2539 graphite-poly.h graphite-clast-to-gimple.h
1bd6497c 2540graphite-dependences.o : graphite-dependences.c $(CONFIG_H) $(SYSTEM_H) \
7a1c57d3 2541 coretypes.h $(TREE_FLOW_H) $(TREE_PASS_H) $(CFGLOOP_H) $(TREE_DATA_REF_H) \
33ad93b9 2542 sese.h graphite-poly.h
1bd6497c 2543graphite-interchange.o : graphite-interchange.c $(CONFIG_H) $(SYSTEM_H) \
7ee2468b 2544 coretypes.h dumpfile.h $(TREE_FLOW_H) $(CFGLOOP_H) $(TREE_DATA_REF_H) \
33ad93b9 2545 sese.h graphite-poly.h
7ee2468b
SB
2546graphite-poly.o : graphite-poly.c $(CONFIG_H) $(SYSTEM_H) coretypes.h dumpfile.h \
2547 $(DIAGNOSTIC_CORE_H) $(TREE_FLOW_H) $(GIMPLE_PRETTY_PRINT_H) \
33ad93b9 2548 $(CFGLOOP_H) $(TREE_DATA_REF_H) sese.h graphite-poly.h
1bd6497c
SP
2549graphite-scop-detection.o : graphite-scop-detection.c $(CONFIG_H) $(SYSTEM_H) \
2550 coretypes.h $(TREE_FLOW_H) $(CFGLOOP_H) $(TREE_DATA_REF_H) $(TREE_PASS_H) \
33ad93b9 2551 sese.h graphite-poly.h graphite-scop-detection.h
1bd6497c 2552graphite-sese-to-poly.o : graphite-sese-to-poly.c $(CONFIG_H) \
7a1c57d3 2553 $(SYSTEM_H) coretypes.h $(TREE_FLOW_H) $(TREE_PASS_H) $(CFGLOOP_H) \
33ad93b9 2554 $(TREE_DATA_REF_H) domwalk.h sese.h graphite-poly.h \
1bd6497c 2555 graphite-sese-to-poly.h
b60cc080 2556graphite-optimize-isl.o : graphite-optimize-isl.c $(CONFIG_H) $(SYSTEM_H) \
7ee2468b
SB
2557 coretypes.h dumpfile.h $(TREE_FLOW_H) $(CFGLOOP_H) $(TREE_DATA_REF_H) $(SCEV_H) \
2558 sese.h graphite-poly.h
ebfd146a 2559tree-vect-loop.o: tree-vect-loop.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
78c60e3d 2560 $(TM_H) $(GGC_H) $(TREE_H) $(BASIC_BLOCK_H) $(TREE_FLOW_H) dumpfile.h \
7ee2468b 2561 $(CFGLOOP_H) $(EXPR_H) $(RECOG_H) $(OPTABS_H) \
ee666c25
SB
2562 $(DIAGNOSTIC_CORE_H) $(SCEV_H) $(TREE_VECTORIZER_H) \
2563 $(GIMPLE_PRETTY_PRINT_H) $(TARGET_H) $(TREE_DATA_REF_H)
ebfd146a 2564tree-vect-loop-manip.o: tree-vect-loop-manip.c $(CONFIG_H) $(SYSTEM_H) \
78c60e3d 2565 coretypes.h dumpfile.h $(TM_H) $(GGC_H) $(TREE_H) $(BASIC_BLOCK_H) \
7ee2468b 2566 $(TREE_FLOW_H) $(CFGLOOP_H) $(DIAGNOSTIC_CORE_H) \
ee666c25 2567 $(SCEV_H) $(TREE_VECTORIZER_H) langhooks.h $(GIMPLE_PRETTY_PRINT_H)
7ee2468b
SB
2568tree-vect-patterns.o: tree-vect-patterns.c $(CONFIG_H) $(SYSTEM_H) \
2569 coretypes.h dumpfile.h \
6f4185d7 2570 $(TM_H) $(GGC_H) $(TREE_H) $(TARGET_H) $(BASIC_BLOCK_H) \
7ee2468b 2571 $(TREE_FLOW_H) $(CFGLOOP_H) $(EXPR_H) $(OPTABS_H) $(PARAMS_H) \
7c475d11 2572 $(TREE_DATA_REF_H) $(TREE_VECTORIZER_H) $(RECOG_H) $(DIAGNOSTIC_CORE_H) \
ee666c25 2573 $(GIMPLE_PRETTY_PRINT_H)
78c60e3d
SS
2574tree-vect-slp.o: tree-vect-slp.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
2575 dumpfile.h $(TM_H) $(GGC_H) $(TREE_H) $(TARGET_H) $(BASIC_BLOCK_H) \
7ee2468b 2576 $(DIAGNOSTIC_H) $(TREE_FLOW_H) $(CFGLOOP_H) \
ee666c25
SB
2577 $(EXPR_H) $(RECOG_H) $(OPTABS_H) $(TREE_VECTORIZER_H) \
2578 $(GIMPLE_PRETTY_PRINT_H) $(TREE_DATA_REF_H) langhooks.h
ebfd146a 2579tree-vect-stmts.o: tree-vect-stmts.c $(CONFIG_H) $(SYSTEM_H) \
7ee2468b
SB
2580 coretypes.h dumpfile.h $(TM_H) $(GGC_H) $(TREE_H) $(TARGET_H) \
2581 $(BASIC_BLOCK_H) $(TREE_FLOW_H) $(CFGLOOP_H) \
6f4185d7 2582 $(EXPR_H) $(RECOG_H) $(OPTABS_H) $(TREE_VECTORIZER_H) \
ee666c25 2583 langhooks.h $(GIMPLE_PRETTY_PRINT_H)
ebfd146a 2584tree-vect-data-refs.o: tree-vect-data-refs.c $(CONFIG_H) $(SYSTEM_H) \
7ee2468b
SB
2585 coretypes.h dumpfile.h $(TM_H) $(GGC_H) $(TREE_H) $(TARGET_H) $(BASIC_BLOCK_H) \
2586 $(TREE_FLOW_H) $(CFGLOOP_H) \
c59ffc41 2587 $(EXPR_H) $(OPTABS_H) $(SCEV_H) $(TREE_VECTORIZER_H) \
ee666c25 2588 $(DIAGNOSTIC_CORE_H) $(TM_P_H) $(GIMPLE_PRETTY_PRINT_H)
e980df8e 2589tree-vectorizer.o: tree-vectorizer.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
78c60e3d 2590 dumpfile.h $(TM_H) $(GGC_H) $(TREE_H) $(TREE_FLOW_H) \
7ee2468b 2591 $(CFGLOOP_H) $(TREE_PASS_H) $(TREE_VECTORIZER_H) \
ee666c25 2592 $(TREE_PRETTY_PRINT_H)
1bd6497c
SP
2593tree-loop-distribution.o: tree-loop-distribution.c $(CONFIG_H) $(SYSTEM_H) \
2594 coretypes.h $(TREE_FLOW_H) $(CFGLOOP_H) $(TREE_DATA_REF_H) $(TREE_PASS_H)
2595tree-parloops.o: tree-parloops.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
ee666c25 2596 $(TREE_FLOW_H) $(CFGLOOP_H) $(TREE_DATA_REF_H) $(GIMPLE_PRETTY_PRINT_H) \
1bd6497c 2597 $(TREE_PASS_H) langhooks.h gt-tree-parloops.h $(TREE_VECTORIZER_H)
e980df8e 2598tree-stdarg.o: tree-stdarg.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
6f4185d7 2599 $(TREE_H) $(FUNCTION_H) $(TREE_FLOW_H) $(TREE_PASS_H) \
ee666c25 2600 tree-stdarg.h $(TARGET_H) langhooks.h $(GIMPLE_PRETTY_PRINT_H)
e980df8e 2601tree-object-size.o: tree-object-size.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
7c475d11 2602 $(TM_H) $(TREE_H) $(DIAGNOSTIC_CORE_H) $(DIAGNOSTIC_H) $(TREE_FLOW_H) \
ee666c25 2603 $(TREE_PASS_H) tree-ssa-propagate.h $(GIMPLE_PRETTY_PRINT_H)
25583c4f
RS
2604internal-fn.o : internal-fn.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
2605 $(INTERNAL_FN_H) $(TREE_H) $(EXPR_H) $(OPTABS_H) $(GIMPLE_H)
726a989a 2606gimple.o : gimple.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TREE_H) \
7c475d11 2607 $(GGC_H) $(GIMPLE_H) $(DIAGNOSTIC_CORE_H) $(DIAGNOSTIC_H) gt-gimple.h \
d7f09764
DN
2608 $(TREE_FLOW_H) value-prof.h $(FLAGS_H) $(DEMANGLE_H) \
2609 $(TARGET_H) $(ALIAS_H)
726a989a 2610gimple-pretty-print.o : gimple-pretty-print.c $(CONFIG_H) $(SYSTEM_H) \
7ee2468b 2611 coretypes.h dumpfile.h \
40013784 2612 $(TREE_H) $(DIAGNOSTIC_H) $(HASHTAB_H) $(TREE_FLOW_H) \
7ee2468b 2613 $(TM_H) $(GIMPLE_H) value-prof.h \
ee666c25 2614 $(TRANS_MEM_H) $(GIMPLE_PRETTY_PRINT_H)
e980df8e 2615tree-mudflap.o : $(CONFIG_H) $(SYSTEM_H) $(TREE_H) $(TREE_INLINE_H) \
464778c0 2616 $(GIMPLE_H) $(DIAGNOSTIC_H) $(DEMANGLE_H) $(HASHTAB_H) langhooks.h tree-mudflap.h \
7ee2468b 2617 $(TM_H) coretypes.h $(TREE_PASS_H) $(CGRAPH_H) $(GGC_H) \
40013784 2618 gt-tree-mudflap.h $(BASIC_BLOCK_H) $(FLAGS_H) $(FUNCTION_H) \
7c475d11 2619 $(TM_P_H) $(TREE_FLOW_H) $(DIAGNOSTIC_CORE_H) $(GIMPLE_H) tree-iterator.h
e980df8e 2620tree-nomudflap.o : $(CONFIG_H) $(SYSTEM_H) $(TREE_H) $(TREE_INLINE_H) \
726a989a 2621 $(C_TREE_H) $(C_COMMON_H) $(GIMPLE_H) $(DIAGNOSTIC_H) $(HASHTAB_H) \
9aae8d16 2622 output.h langhooks.h tree-mudflap.h $(TM_H) coretypes.h \
7c475d11 2623 $(GGC_H) gt-tree-mudflap.h $(TREE_PASS_H) $(DIAGNOSTIC_CORE_H)
e980df8e 2624tree-pretty-print.o : tree-pretty-print.c $(CONFIG_H) $(SYSTEM_H) \
40013784 2625 $(TREE_H) $(DIAGNOSTIC_H) $(HASHTAB_H) $(TREE_FLOW_H) \
7ee2468b
SB
2626 $(TM_H) coretypes.h dumpfile.h tree-iterator.h $(SCEV_H) langhooks.h \
2627 value-prof.h output.h $(TREE_PRETTY_PRINT_H)
2628tree-diagnostic.o : tree-diagnostic.c $(CONFIG_H) $(SYSTEM_H) coretypes.h dumpfile.h \
07a0b324 2629 $(TREE_H) $(DIAGNOSTIC_H) tree-diagnostic.h langhooks.h $(LANGHOOKS_DEF_H) \
7ee2468b 2630 $(VEC_H) $(TREE_PRETTY_PRINT_H)
e980df8e 2631fold-const.o : fold-const.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
703c8606
LC
2632 $(TREE_H) $(FLAGS_H) $(DIAGNOSTIC_CORE_H) $(HASH_TABLE_H) $(EXPR_H) \
2633 $(RTL_H) $(GGC_H) $(TM_P_H) langhooks.h $(MD5_H) intl.h $(TARGET_H) \
70f34814 2634 $(GIMPLE_H) realmpfr.h $(TREE_FLOW_H)
cf835838 2635diagnostic.o : diagnostic.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
d83697f4
ILT
2636 version.h $(DEMANGLE_H) $(INPUT_H) intl.h $(BACKTRACE_H) $(DIAGNOSTIC_H) \
2637 diagnostic.def
299404a1 2638opts.o : opts.c $(OPTS_H) $(OPTIONS_H) $(DIAGNOSTIC_CORE_H) $(CONFIG_H) $(SYSTEM_H) \
78c60e3d 2639 coretypes.h dumpfile.h $(TM_H) \
88a00ef7 2640 $(DIAGNOSTIC_H) insn-attr-common.h intl.h $(COMMON_TARGET_H) \
299404a1 2641 $(FLAGS_H) $(PARAMS_H) opts-diagnostic.h
21bf1558 2642opts-global.o : opts-global.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
c98cd5bf 2643 $(DIAGNOSTIC_H) $(OPTS_H) $(FLAGS_H) $(GGC_H) $(TREE_H) langhooks.h \
299404a1 2644 $(TM_H) $(RTL_H) $(DBGCNT_H) debug.h $(LTO_STREAMER_H) output.h \
7c475d11 2645 $(PLUGIN_H) toplev.h $(TREE_PASS_H)
a4d8c676 2646opts-common.o : opts-common.c $(OPTS_H) $(FLAGS_H) $(CONFIG_H) $(SYSTEM_H) \
eea13ead 2647 coretypes.h intl.h $(DIAGNOSTIC_H) $(TM_H)
e980df8e 2648targhooks.o : targhooks.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TREE_H) \
7c475d11 2649 $(EXPR_H) $(TM_H) $(RTL_H) $(TM_P_H) $(FUNCTION_H) output.h $(DIAGNOSTIC_CORE_H) \
e980df8e 2650 $(MACHMODE_H) $(TARGET_DEF_H) $(TARGET_H) $(GGC_H) gt-targhooks.h \
6f4185d7 2651 $(OPTABS_H) $(RECOG_H) $(REGS_H) reload.h hard-reg-set.h intl.h $(OPTS_H) \
7352c013 2652 tree-ssa-alias.h $(TREE_FLOW_H)
677f3fa8
JM
2653common/common-targhooks.o : common/common-targhooks.c $(CONFIG_H) $(SYSTEM_H) \
2654 coretypes.h $(INPUT_H) $(TM_H) $(COMMON_TARGET_H) common/common-targhooks.h
e980df8e 2655
134ef638
BE
2656bversion.h: s-bversion; @true
2657s-bversion: BASE-VER
2658 echo "#define BUILDING_GCC_MAJOR `echo $(BASEVER_c) | sed -e 's/^\([0-9]*\).*$$/\1/'`" > bversion.h
2659 echo "#define BUILDING_GCC_MINOR `echo $(BASEVER_c) | sed -e 's/^[0-9]*\.\([0-9]*\).*$$/\1/'`" >> bversion.h
2660 echo "#define BUILDING_GCC_PATCHLEVEL `echo $(BASEVER_c) | sed -e 's/^[0-9]*\.[0-9]*\.\([0-9]*\)$$/\1/'`" >> bversion.h
2661 echo "#define BUILDING_GCC_VERSION (BUILDING_GCC_MAJOR * 1000 + BUILDING_GCC_MINOR)" >> bversion.h
2662 $(STAMP) s-bversion
2663
447924ef
JM
2664input.o : input.c $(CONFIG_H) $(SYSTEM_H) coretypes.h intl.h $(INPUT_H)
2665
c5bc3df6 2666CFLAGS-toplev.o += -DTARGET_NAME=\"$(target_noncanonical)\"
e980df8e 2667toplev.o : toplev.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \
e63ea00c 2668 version.h $(RTL_H) $(FUNCTION_H) $(FLAGS_H) xcoffout.h $(INPUT_H) \
e980df8e 2669 $(INSN_ATTR_H) output.h $(DIAGNOSTIC_H) debug.h insn-config.h intl.h \
6bdf3519 2670 $(RECOG_H) Makefile toplev.h sdbout.h dbxout.h $(EXPR_H) \
a8da523f 2671 hard-reg-set.h $(BASIC_BLOCK_H) graph.h $(EXCEPT_H) $(REGS_H) $(TIMEVAR_H) \
058e97ec 2672 value-prof.h $(PARAMS_H) $(TM_P_H) reload.h ira.h dwarf2asm.h $(TARGET_H) \
78bde837 2673 langhooks.h insn-flags.h $(CFGLOOP_H) hosthooks.h \
6399c0ab 2674 $(CGRAPH_H) $(COVERAGE_H) alloc-pool.h $(GGC_H) \
a4d8c676 2675 $(OPTS_H) params.def tree-mudflap.h $(TREE_PASS_H) $(GIMPLE_H) \
cf835838 2676 tree-ssa-alias.h $(PLUGIN_H) realmpfr.h tree-diagnostic.h \
ee666c25 2677 $(TREE_PRETTY_PRINT_H) opts-diagnostic.h $(COMMON_TARGET_H)
e980df8e 2678
3c67fd9c 2679hwint.o : hwint.c $(CONFIG_H) $(SYSTEM_H) $(DIAGNOSTIC_CORE_H)
c59ffc41 2680
e980df8e 2681passes.o : passes.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \
6f4185d7 2682 $(RTL_H) $(FUNCTION_H) $(FLAGS_H) $(INPUT_H) $(INSN_ATTR_H) output.h \
7c475d11 2683 $(DIAGNOSTIC_CORE_H) debug.h insn-config.h intl.h $(RECOG_H) toplev.h \
6f4185d7 2684 $(EXPR_H) hard-reg-set.h $(BASIC_BLOCK_H) \
7ee2468b 2685 graph.h $(EXCEPT_H) $(REGS_H) value-prof.h \
6f4185d7
SB
2686 $(PARAMS_H) $(TM_P_H) reload.h $(TARGET_H) \
2687 langhooks.h insn-flags.h $(CFGLOOP_H) \
7072a650 2688 hosthooks.h $(CGRAPH_H) $(COVERAGE_H) $(TREE_PASS_H) $(TREE_DUMP_H) \
6f4185d7
SB
2689 $(GGC_H) $(OPTS_H) $(TREE_FLOW_H) $(TREE_INLINE_H) \
2690 gt-passes.h $(DF_H) $(PREDICT_H) $(LTO_STREAMER_H) \
af8bca3c 2691 $(PLUGIN_H) $(IPA_UTILS_H)
e980df8e 2692
68a607d8 2693plugin.o : plugin.c $(PLUGIN_H) $(CONFIG_H) $(SYSTEM_H) coretypes.h \
a803773f 2694 $(DIAGNOSTIC_CORE_H) $(TREE_H) $(TREE_PASS_H) intl.h $(PLUGIN_VERSION_H) $(GGC_H)
cf8aba7f 2695
7c475d11 2696main.o : main.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) toplev.h $(DIAGNOSTIC_CORE_H)
e980df8e
TT
2697
2698host-default.o : host-default.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
2699 hosthooks.h $(HOSTHOOKS_DEF_H)
2700
0cbd9993
MLI
2701rtl-error.o: rtl-error.c $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_ERROR_H) \
2702 $(INSN_ATTR_H) insn-config.h $(INPUT_H) intl.h $(DIAGNOSTIC_H) \
b6feb796 2703 $(CONFIG_H)
e980df8e
TT
2704
2705rtl.o : rtl.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
6f4185d7 2706 $(GGC_H) $(BCONFIG_H) insn-notes.def reg-notes.def $(DIAGNOSTIC_CORE_H)
e980df8e 2707
7ee2468b 2708print-rtl.o : print-rtl.c $(CONFIG_H) $(SYSTEM_H) coretypes.h dumpfile.h $(TM_H) \
e980df8e 2709 $(RTL_H) $(TREE_H) hard-reg-set.h $(BASIC_BLOCK_H) $(FLAGS_H) \
7ee2468b 2710 $(BCONFIG_H) $(DIAGNOSTIC_H) cselib.h $(TREE_PRETTY_PRINT_H) \
6f4185d7
SB
2711 $(DWARF2OUT_H)
2712rtlanal.o : rtlanal.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(DIAGNOSTIC_CORE_H) \
40013784 2713 $(RTL_H) hard-reg-set.h $(TM_P_H) insn-config.h $(RECOG_H) \
e980df8e 2714 $(FLAGS_H) $(REGS_H) output.h $(TARGET_H) $(FUNCTION_H) $(TREE_H) \
277f65de 2715 $(DF_H) $(EMIT_RTL_H) addresses.h
e980df8e
TT
2716
2717varasm.o : varasm.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \
2718 $(RTL_H) $(FLAGS_H) $(FUNCTION_H) $(EXPR_H) hard-reg-set.h $(REGS_H) \
a803773f 2719 output.h $(DIAGNOSTIC_CORE_H) xcoffout.h debug.h $(GGC_H) $(TM_P_H) \
e980df8e 2720 $(HASHTAB_H) $(TARGET_H) langhooks.h gt-varasm.h $(BASIC_BLOCK_H) \
6f4185d7
SB
2721 $(CGRAPH_H) $(TARGET_DEF_H) tree-mudflap.h \
2722 pointer-set.h $(COMMON_TARGET_H)
0cbd9993 2723function.o : function.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_ERROR_H) \
78bde837 2724 $(TREE_H) $(GIMPLE_H) $(FLAGS_H) $(FUNCTION_H) $(EXPR_H) \
9f7f1892 2725 $(OPTABS_H) $(LIBFUNCS_H) $(REGS_H) hard-reg-set.h insn-config.h $(RECOG_H) \
0cbd9993 2726 output.h $(EXCEPT_H) $(HASHTAB_H) $(GGC_H) $(TM_P_H) langhooks.h \
6399c0ab 2727 gt-function.h $(TARGET_H) $(BASIC_BLOCK_H) $(PREDICT_H) \
7ee2468b 2728 $(TREE_PASS_H) $(DF_H) vecprim.h $(PARAMS_H) bb-reorder.h \
ffe14686 2729 $(COMMON_TARGET_H)
9fe0cb7d 2730statistics.o : statistics.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
8e65c286 2731 $(TREE_PASS_H) $(TREE_DUMP_H) $(HASHTAB_H) statistics.h $(FUNCTION_H)
7ee2468b 2732stmt.o : stmt.c $(CONFIG_H) $(SYSTEM_H) coretypes.h dumpfile.h $(TM_H) $(RTL_H) \
e980df8e 2733 $(TREE_H) $(FLAGS_H) $(FUNCTION_H) insn-config.h hard-reg-set.h $(EXPR_H) \
7c475d11 2734 $(LIBFUNCS_H) $(EXCEPT_H) $(RECOG_H) $(DIAGNOSTIC_CORE_H) \
9f7f1892
RS
2735 output.h $(GGC_H) $(TM_P_H) langhooks.h $(PREDICT_H) $(OPTABS_H) \
2736 $(TARGET_H) $(GIMPLE_H) $(MACHMODE_H) $(REGS_H) alloc-pool.h \
3aa439ed 2737 $(PRETTY_PRINT_H) $(BITMAP_H) $(PARAMS_H)
e980df8e 2738except.o : except.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
9f7f1892 2739 $(TREE_H) $(FLAGS_H) $(EXCEPT_H) $(FUNCTION_H) $(EXPR_H) $(LIBFUNCS_H) \
e980df8e 2740 langhooks.h insn-config.h hard-reg-set.h $(BASIC_BLOCK_H) output.h \
6f4185d7 2741 dwarf2asm.h $(DWARF2OUT_H) toplev.h $(DIAGNOSTIC_CORE_H) $(HASHTAB_H) intl.h $(GGC_H) \
6399c0ab 2742 gt-except.h $(CGRAPH_H) $(DIAGNOSTIC_H) $(DWARF2_H) \
7ee2468b 2743 $(TARGET_H) $(TM_P_H) $(TREE_PASS_H) $(TREE_FLOW_H) \
ee666c25 2744 $(TREE_PRETTY_PRINT_H) sbitmap.h $(COMMON_TARGET_H) $(CFGLOOP_H)
e980df8e
TT
2745expr.o : expr.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
2746 $(TREE_H) $(FLAGS_H) $(FUNCTION_H) $(REGS_H) $(EXPR_H) $(OPTABS_H) \
9f7f1892 2747 $(LIBFUNCS_H) $(INSN_ATTR_H) insn-config.h $(RECOG_H) output.h \
7c475d11 2748 typeclass.h hard-reg-set.h toplev.h $(DIAGNOSTIC_CORE_H) hard-reg-set.h $(EXCEPT_H) \
40013784 2749 reload.h langhooks.h intl.h $(TM_P_H) $(TARGET_H) \
e980df8e 2750 tree-iterator.h gt-expr.h $(MACHMODE_H) $(TIMEVAR_H) $(TREE_FLOW_H) \
677f3fa8 2751 $(TREE_PASS_H) $(DF_H) $(DIAGNOSTIC_H) vecprim.h $(SSAEXPAND_H) \
ee666c25
SB
2752 $(PARAMS_H) $(COMMON_TARGET_H) target-globals.h
2753dojump.o : dojump.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TM_P_H) \
2754 $(RTL_H) $(TREE_H) \
e980df8e 2755 $(FLAGS_H) $(FUNCTION_H) $(EXPR_H) $(OPTABS_H) $(INSN_ATTR_H) insn-config.h \
be7a421e 2756 langhooks.h $(GGC_H) gt-dojump.h vecprim.h $(BASIC_BLOCK_H)
ee666c25
SB
2757builtins.o : builtins.c builtins.h $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
2758 $(RTL_H) $(TREE_H) $(GIMPLE_H) $(FLAGS_H) $(TARGET_H) $(FUNCTION_H) $(REGS_H) \
e980df8e 2759 $(EXPR_H) $(OPTABS_H) insn-config.h $(RECOG_H) output.h typeclass.h \
c59ffc41 2760 hard-reg-set.h $(DIAGNOSTIC_CORE_H) hard-reg-set.h $(EXCEPT_H) \
9f7f1892
RS
2761 $(TM_P_H) $(PREDICT_H) $(LIBFUNCS_H) langhooks.h $(BASIC_BLOCK_H) \
2762 tree-mudflap.h realmpfr.h $(BUILTINS_DEF) $(MACHMODE_H) \
2763 $(DIAGNOSTIC_CORE_H) $(TREE_FLOW_H) value-prof.h
e980df8e
TT
2764calls.o : calls.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
2765 $(TREE_H) $(FLAGS_H) $(EXPR_H) $(OPTABS_H) langhooks.h $(TARGET_H) \
ee666c25 2766 $(LIBFUNCS_H) $(REGS_H) $(DIAGNOSTIC_CORE_H) output.h \
9f7f1892
RS
2767 $(FUNCTION_H) $(TIMEVAR_H) $(TM_P_H) $(CGRAPH_H) $(EXCEPT_H) sbitmap.h \
2768 $(DBGCNT_H) $(TREE_FLOW_H)
e980df8e 2769expmed.o : expmed.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) $(TREE_H) \
40013784 2770 $(FLAGS_H) insn-config.h $(EXPR_H) $(OPTABS_H) $(RECOG_H) \
c59ffc41 2771 $(DIAGNOSTIC_CORE_H) $(TM_P_H) langhooks.h $(DF_H) $(TARGET_H) \
462f85ce 2772 expmed.h
e980df8e
TT
2773explow.o : explow.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) $(TREE_H) \
2774 $(FLAGS_H) hard-reg-set.h insn-config.h $(EXPR_H) $(OPTABS_H) $(RECOG_H) \
c59ffc41 2775 $(DIAGNOSTIC_CORE_H) $(EXCEPT_H) $(FUNCTION_H) $(GGC_H) $(TM_P_H) langhooks.h gt-explow.h \
ee666c25 2776 $(TARGET_H) $(COMMON_TARGET_H) output.h $(LIBFUNCS_H)
e980df8e 2777optabs.o : optabs.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
9f7f1892 2778 $(TREE_H) $(FLAGS_H) insn-config.h $(EXPR_H) $(OPTABS_H) $(LIBFUNCS_H) \
7c475d11 2779 $(RECOG_H) reload.h $(DIAGNOSTIC_CORE_H) $(GGC_H) $(TM_P_H) \
9f7f1892 2780 $(EXCEPT_H) gt-optabs.h $(BASIC_BLOCK_H) $(TARGET_H) $(FUNCTION_H)
e980df8e
TT
2781dbxout.o : dbxout.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \
2782 $(RTL_H) $(FLAGS_H) $(REGS_H) debug.h $(TM_P_H) $(TARGET_H) $(FUNCTION_H) \
e63ea00c 2783 langhooks.h insn-config.h reload.h $(GSTAB_H) xcoffout.h output.h dbxout.h \
9166988f 2784 toplev.h $(DIAGNOSTIC_CORE_H) $(GGC_H) $(OBSTACK_H) $(EXPR_H) $(CGRAPH_H) \
677f3fa8 2785 gt-dbxout.h $(COMMON_TARGET_H)
c6a13190 2786debug.o : debug.c debug.h $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H)
e980df8e
TT
2787sdbout.o : sdbout.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) debug.h \
2788 $(TREE_H) $(GGC_H) $(RTL_H) $(REGS_H) $(FLAGS_H) insn-config.h \
7c475d11 2789 output.h $(DIAGNOSTIC_CORE_H) $(TM_P_H) gsyms.h langhooks.h $(TARGET_H) sdbout.h \
b6feb796 2790 gt-sdbout.h reload.h
723cd7ab
RH
2791dwarf2out.o : dwarf2out.c $(CONFIG_H) $(SYSTEM_H) coretypes.h dumpfile.h \
2792 $(TM_H) $(TREE_H) version.h $(RTL_H) $(DWARF2_H) debug.h $(FLAGS_H) \
2793 insn-config.h output.h $(DIAGNOSTIC_H) hard-reg-set.h $(REGS_H) $(EXPR_H) \
2794 toplev.h $(DIAGNOSTIC_CORE_H) $(DWARF2OUT_H) reload.h \
9f7f1892
RS
2795 $(GGC_H) $(EXCEPT_H) dwarf2asm.h $(TM_P_H) langhooks.h $(HASHTAB_H) \
2796 gt-dwarf2out.h $(TARGET_H) $(CGRAPH_H) $(MD5_H) $(INPUT_H) $(FUNCTION_H) \
55a2c322 2797 $(GIMPLE_H) ira.h lra.h $(TREE_FLOW_H) \
ee666c25 2798 $(TREE_PRETTY_PRINT_H) $(COMMON_TARGET_H) $(OPTS_H)
647a1567 2799dwarf2cfi.o : dwarf2cfi.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
ee666c25 2800 version.h $(RTL_H) $(EXPR_H) $(REGS_H) $(FUNCTION_H) output.h \
6f4185d7 2801 gt-dwarf2cfi.h debug.h $(DWARF2_H) dwarf2asm.h $(DWARF2OUT_H) $(COMMON_TARGET_H) \
ee666c25 2802 $(GGC_H) $(TM_P_H) $(TARGET_H) $(TREE_PASS_H) $(BASIC_BLOCK_H) $(EXCEPT_H)
e980df8e
TT
2803dwarf2asm.o : dwarf2asm.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
2804 $(FLAGS_H) $(RTL_H) $(TREE_H) output.h dwarf2asm.h $(TM_P_H) $(GGC_H) \
bbf531f0 2805 gt-dwarf2asm.h $(DWARF2_H) $(SPLAY_TREE_H) $(TARGET_H)
e980df8e 2806vmsdbgout.o : vmsdbgout.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) version.h \
e63ea00c 2807 $(FLAGS_H) $(RTL_H) output.h vmsdbg.h debug.h langhooks.h $(FUNCTION_H) $(TARGET_H)
e980df8e 2808xcoffout.o : xcoffout.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
a803773f 2809 $(TREE_H) $(RTL_H) xcoffout.h $(FLAGS_H) $(DIAGNOSTIC_CORE_H) output.h dbxout.h \
e63ea00c 2810 $(GGC_H) $(TARGET_H) debug.h $(GSTAB_H) xcoff.h
c6a13190 2811godump.o : godump.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(DIAGNOSTIC_CORE_H) \
6f4185d7 2812 $(TREE_H) $(GGC_H) pointer-set.h $(OBSTACK_H) debug.h gt-godump.h
e980df8e 2813emit-rtl.o : emit-rtl.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
78bde837 2814 $(TREE_H) $(FLAGS_H) $(FUNCTION_H) $(REGS_H) insn-config.h $(RECOG_H) vecprim.h \
7c475d11 2815 $(GGC_H) $(EXPR_H) hard-reg-set.h $(BITMAP_H) $(DIAGNOSTIC_CORE_H) $(BASIC_BLOCK_H) \
7072a650 2816 $(HASHTAB_H) $(TM_P_H) debug.h langhooks.h $(TREE_PASS_H) gt-emit-rtl.h \
78bde837 2817 $(DF_H) $(PARAMS_H) $(TARGET_H)
e980df8e 2818real.o : real.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \
c59ffc41 2819 $(DIAGNOSTIC_CORE_H) $(TM_P_H) $(REAL_H) dfp.h realmpfr.h
79bdca32 2820realmpfr.o : realmpfr.c realmpfr.h $(CONFIG_H) $(SYSTEM_H) coretypes.h $(REAL_H) $(TREE_H)
e980df8e 2821dfp.o : dfp.c dfp.h $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \
ee666c25 2822 $(TM_P_H) $(REAL_H) $(DECNUM_H)
e980df8e 2823fixed-value.o: fixed-value.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
7c475d11 2824 $(TREE_H) $(REAL_H) $(DIAGNOSTIC_CORE_H)
e980df8e
TT
2825jump.o : jump.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
2826 $(FLAGS_H) hard-reg-set.h $(REGS_H) insn-config.h $(RECOG_H) $(EXPR_H) \
1da2ed5f 2827 $(EXCEPT_H) $(FUNCTION_H) $(BASIC_BLOCK_H) $(TREE_PASS_H) \
7c475d11 2828 $(DIAGNOSTIC_CORE_H) $(DIAGNOSTIC_CORE_H) $(INSN_ATTR_H) $(TM_P_H) reload.h \
7ee2468b 2829 $(PREDICT_H) $(TARGET_H)
e980df8e 2830simplify-rtx.o : simplify-rtx.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
40013784 2831 $(RTL_H) $(REGS_H) hard-reg-set.h $(FLAGS_H) insn-config.h \
be7a421e 2832 $(RECOG_H) $(EXPR_H) $(DIAGNOSTIC_CORE_H) $(FUNCTION_H) $(GGC_H) $(TM_P_H) \
e980df8e 2833 $(TREE_H) $(TARGET_H)
2aae7680 2834symtab.o : symtab.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \
6f4185d7 2835 langhooks.h $(DIAGNOSTIC_CORE_H) $(FLAGS_H) $(GGC_H) $(TARGET_H) $(CGRAPH_H) \
7ee2468b
SB
2836 $(TIMEVAR_H) $(HASHTAB_H) gt-symtab.h
2837cgraph.o : cgraph.c $(CONFIG_H) $(SYSTEM_H) coretypes.h dumpfile.h \
2838 $(TM_H) $(TREE_H) $(TIMEVAR_H) \
7c475d11 2839 langhooks.h toplev.h $(DIAGNOSTIC_CORE_H) $(FLAGS_H) $(GGC_H) $(TARGET_H) $(CGRAPH_H) \
be7a421e 2840 gt-cgraph.h intl.h $(BASIC_BLOCK_H) debug.h $(HASHTAB_H) \
7ee2468b 2841 $(TREE_INLINE_H) $(TREE_FLOW_H) cif-code.def \
e7f23018 2842 value-prof.h $(EXCEPT_H) $(IPA_UTILS_H) $(DIAGNOSTIC_CORE_H) \
2c9561b5 2843 $(IPA_INLINE_H) $(LTO_STREAMER_H) $(CFGLOOP_H) $(GIMPLE_PRETTY_PRINT_H)
e980df8e 2844cgraphunit.o : cgraphunit.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
7c475d11 2845 $(TREE_H) langhooks.h $(TREE_INLINE_H) toplev.h $(DIAGNOSTIC_CORE_H) $(FLAGS_H) $(GGC_H) \
726a989a 2846 $(TARGET_H) $(CGRAPH_H) intl.h pointer-set.h $(FUNCTION_H) $(GIMPLE_H) \
237ee620 2847 $(TREE_FLOW_H) $(TREE_PASS_H) debug.h $(DIAGNOSTIC_H) \
7ee2468b 2848 $(FIBHEAP_H) output.h $(PARAMS_H) $(RTL_H) $(IPA_PROP_H) \
cf835838 2849 gt-cgraphunit.h tree-iterator.h $(COVERAGE_H) $(TREE_DUMP_H) \
2c9561b5 2850 $(GIMPLE_PRETTY_PRINT_H) $(IPA_INLINE_H) $(IPA_UTILS_H) \
ee666c25 2851 $(LTO_STREAMER_H) output.h $(REGSET_H) $(EXCEPT_H) $(GCC_PLUGIN_H) plugin.h
66a20fc2
JH
2852cgraphclones.o : cgraphclones.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
2853 $(TREE_H) langhooks.h $(TREE_INLINE_H) toplev.h $(DIAGNOSTIC_CORE_H) $(FLAGS_H) $(GGC_H) \
2854 $(TARGET_H) $(CGRAPH_H) intl.h pointer-set.h $(FUNCTION_H) $(GIMPLE_H) \
7ee2468b
SB
2855 $(TREE_FLOW_H) $(TREE_PASS_H) debug.h $(DIAGNOSTIC_H) $(TREE_DUMP_H) \
2856 $(PARAMS_H) $(RTL_H) $(IPA_PROP_H) \
2857 tree-iterator.h $(COVERAGE_H) \
2c9561b5 2858 $(GIMPLE_PRETTY_PRINT_H) $(IPA_INLINE_H) $(IPA_UTILS_H) \
a4b7d13c 2859 $(LTO_STREAMER_H) $(EXCEPT_H) $(GCC_PLUGIN_H) gt-cgraphclones.h
e980df8e 2860cgraphbuild.o : cgraphbuild.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
726a989a 2861 $(TREE_H) langhooks.h $(CGRAPH_H) intl.h pointer-set.h $(GIMPLE_H) \
e7f23018 2862 $(TREE_FLOW_H) $(TREE_PASS_H) $(IPA_UTILS_H) $(EXCEPT_H) \
2c9561b5 2863 $(IPA_INLINE_H)
e980df8e 2864varpool.o : varpool.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
1da2ed5f 2865 $(TREE_H) $(CGRAPH_H) langhooks.h $(DIAGNOSTIC_CORE_H) $(HASHTAB_H) \
726a989a 2866 $(GGC_H) $(TIMEVAR_H) debug.h $(TARGET_H) output.h $(GIMPLE_H) \
66058468 2867 $(TREE_FLOW_H)
e63ea00c 2868ipa.o : ipa.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(CGRAPH_H) \
7ee2468b 2869 $(TREE_PASS_H) $(GIMPLE_H) $(TARGET_H) $(GGC_H) pointer-set.h \
af8bca3c 2870 $(IPA_UTILS_H)
3e293154
MJ
2871ipa-prop.o : ipa-prop.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
2872 langhooks.h $(GGC_H) $(TARGET_H) $(CGRAPH_H) $(IPA_PROP_H) $(DIAGNOSTIC_H) \
7072a650 2873 $(TREE_FLOW_H) $(TM_H) $(TREE_PASS_H) $(FLAGS_H) $(TREE_H) \
7ee2468b 2874 $(TREE_INLINE_H) $(GIMPLE_H) \
ee666c25 2875 $(GIMPLE_PRETTY_PRINT_H) $(LTO_STREAMER_H) \
dfea20f1 2876 $(DATA_STREAMER_H) $(TREE_STREAMER_H) $(PARAMS_H)
369451ec
JH
2877ipa-ref.o : ipa-ref.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
2878 langhooks.h $(GGC_H) $(TARGET_H) $(CGRAPH_H) $(TREE_H) $(TARGET_H) \
2879 $(TREE_FLOW_H) $(TM_H) $(TREE_PASS_H) $(FLAGS_H) $(TREE_H) $(GGC_H)
e980df8e 2880ipa-cp.o : ipa-cp.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
3949c4a7 2881 $(TREE_H) $(TARGET_H) $(GIMPLE_H) $(CGRAPH_H) $(IPA_PROP_H) $(TREE_FLOW_H) \
7ee2468b 2882 $(TREE_PASS_H) $(FLAGS_H) $(DIAGNOSTIC_H) \
2c9561b5 2883 $(TREE_INLINE_H) $(PARAMS_H) $(TREE_PRETTY_PRINT_H) $(IPA_INLINE_H)
ee666c25 2884ipa-split.o : ipa-split.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
3e485f62 2885 $(TREE_H) $(TARGET_H) $(CGRAPH_H) $(IPA_PROP_H) $(TREE_FLOW_H) \
7ee2468b 2886 $(TREE_PASS_H) $(FLAGS_H) $(DIAGNOSTIC_H) $(TREE_DUMP_H) \
2c9561b5 2887 $(TREE_INLINE_H) $(PARAMS_H) $(GIMPLE_PRETTY_PRINT_H) $(IPA_INLINE_H)
09a2806f 2888ipa-inline.o : ipa-inline.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
e980df8e 2889 $(TREE_H) langhooks.h $(TREE_INLINE_H) $(FLAGS_H) $(CGRAPH_H) intl.h \
7ee2468b 2890 $(DIAGNOSTIC_H) $(FIBHEAP_H) $(PARAMS_H) $(TREE_PASS_H) \
4c0f7679 2891 $(COVERAGE_H) $(GGC_H) $(TREE_FLOW_H) $(RTL_H) $(IPA_PROP_H) \
2c9561b5
MJ
2892 $(EXCEPT_H) $(GIMPLE_PRETTY_PRINT_H) $(IPA_INLINE_H) $(TARGET_H) \
2893 $(IPA_UTILS_H)
03dfc36d
JH
2894ipa-inline-analysis.o : ipa-inline-analysis.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
2895 $(TREE_H) langhooks.h $(TREE_INLINE_H) $(FLAGS_H) $(CGRAPH_H) intl.h \
391886c8 2896 $(DIAGNOSTIC_H) $(PARAMS_H) $(TREE_PASS_H) $(CFGLOOP_H) \
03dfc36d 2897 $(HASHTAB_H) $(COVERAGE_H) $(GGC_H) $(TREE_FLOW_H) $(IPA_PROP_H) \
2c9561b5 2898 $(GIMPLE_PRETTY_PRINT_H) $(IPA_INLINE_H) $(LTO_STREAMER_H) $(DATA_STREAMER_H) \
f0efc7aa 2899 $(TREE_STREAMER_H)
fee8b6da
JH
2900ipa-inline-transform.o : ipa-inline-transform.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
2901 $(TREE_H) langhooks.h $(TREE_INLINE_H) $(FLAGS_H) $(CGRAPH_H) intl.h \
7ee2468b 2902 $(TREE_PASS_H) \
fee8b6da 2903 $(HASHTAB_H) $(COVERAGE_H) $(GGC_H) $(TREE_FLOW_H) $(IPA_PROP_H) \
6f4185d7 2904 $(TREE_PASS_H)
e980df8e 2905ipa-utils.o : ipa-utils.c $(IPA_UTILS_H) $(CONFIG_H) $(SYSTEM_H) \
7ee2468b
SB
2906 coretypes.h dumpfile.h $(TM_H) $(TREE_H) $(TREE_FLOW_H) $(TREE_INLINE_H) \
2907 langhooks.h pointer-set.h $(GGC_H) $(GIMPLE_H) $(SPLAY_TREE_H) \
2908 $(CGRAPH_H) $(FLAGS_H) $(DIAGNOSTIC_H)
e980df8e
TT
2909ipa-reference.o : ipa-reference.c $(CONFIG_H) $(SYSTEM_H) \
2910 coretypes.h $(TM_H) $(TREE_H) $(TREE_FLOW_H) $(TREE_INLINE_H) langhooks.h \
237ee620 2911 pointer-set.h $(GGC_H) $(IPA_REFERENCE_H) $(IPA_UTILS_H) $(SPLAY_TREE_H) \
be7a421e 2912 $(GIMPLE_H) $(CGRAPH_H) $(FLAGS_H) $(TREE_PASS_H) \
7ee2468b 2913 $(DIAGNOSTIC_H) $(FUNCTION_H) $(LTO_STREAMER_H) \
412288f1 2914 $(DIAGNOSTIC_CORE_H) $(DATA_STREAMER_H)
e980df8e
TT
2915ipa-pure-const.o : ipa-pure-const.c $(CONFIG_H) $(SYSTEM_H) \
2916 coretypes.h $(TM_H) $(TREE_H) $(TREE_FLOW_H) $(TREE_INLINE_H) langhooks.h \
237ee620 2917 pointer-set.h $(GGC_H) $(IPA_UTILS_H) $(TARGET_H) \
7ee2468b 2918 $(GIMPLE_H) $(CGRAPH_H) $(FLAGS_H) $(TREE_PASS_H) \
cf835838 2919 $(DIAGNOSTIC_H) $(CFGLOOP_H) $(SCEV_H) $(LTO_STREAMER_H) \
ee666c25 2920 $(GIMPLE_PRETTY_PRINT_H) $(DATA_STREAMER_H) $(TREE_STREAMER_H)
7ee2468b 2921coverage.o : coverage.c $(GCOV_IO_H) $(CONFIG_H) $(SYSTEM_H) coretypes.h dumpfile.h \
e980df8e 2922 $(TM_H) $(RTL_H) $(TREE_H) $(FLAGS_H) output.h $(REGS_H) $(EXPR_H) \
7c475d11 2923 $(FUNCTION_H) $(BASIC_BLOCK_H) toplev.h $(DIAGNOSTIC_CORE_H) $(GGC_H) langhooks.h $(COVERAGE_H) \
0823efed
DN
2924 tree-iterator.h $(CGRAPH_H) gcov-io.c $(TM_P_H) \
2925 $(DIAGNOSTIC_CORE_H) intl.h gt-coverage.h $(TARGET_H) $(HASH_TABLE_H)
7ee2468b 2926cselib.o : cselib.c $(CONFIG_H) $(SYSTEM_H) coretypes.h dumpfile.h $(TM_H) $(RTL_H) \
40013784 2927 $(REGS_H) hard-reg-set.h $(FLAGS_H) insn-config.h $(RECOG_H) \
7ee2468b 2928 $(EMIT_RTL_H) $(DIAGNOSTIC_CORE_H) $(FUNCTION_H) \
b5b8b0ac 2929 cselib.h gt-cselib.h $(GGC_H) $(TM_P_H) $(PARAMS_H) alloc-pool.h \
532aafad 2930 $(HASHTAB_H) $(TARGET_H) $(BITMAP_H) $(TREE_H)
e980df8e 2931cse.o : cse.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) $(REGS_H) \
7c475d11 2932 hard-reg-set.h $(FLAGS_H) insn-config.h $(RECOG_H) $(EXPR_H) toplev.h $(DIAGNOSTIC_CORE_H) \
7ee2468b 2933 $(FUNCTION_H) $(BASIC_BLOCK_H) $(GGC_H) $(TM_P_H) \
7072a650 2934 $(EXCEPT_H) $(TARGET_H) $(PARAMS_H) rtlhooks-def.h $(TREE_PASS_H) \
40013784 2935 $(DF_H) $(DBGCNT_H)
e980df8e 2936dce.o : dce.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
35debead 2937 $(TREE_H) $(REGS_H) hard-reg-set.h $(FLAGS_H) $(EXCEPT_H) $(DF_H) cselib.h \
08df6c0d 2938 $(DBGCNT_H) dce.h $(VALTRACK_H) $(TREE_PASS_H) $(DBGCNT_H) $(TM_P_H) \
5936d944 2939 $(EMIT_RTL_H)
78c60e3d
SS
2940dumpfile.o: dumpfile.c dumpfile.h $(CONFIG_H) $(SYSTEM_H) coretypes.h \
2941 $(DIAGNOSTIC_CORE_H) $(GIMPLE_PRETTY_PRINT_H) $(TREE_H)
e980df8e
TT
2942dse.o : dse.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
2943 $(TREE_H) $(TM_P_H) $(REGS_H) hard-reg-set.h $(FLAGS_H) insn-config.h \
7ee2468b 2944 $(RECOG_H) $(EXPR_H) $(DF_H) cselib.h $(DBGCNT_H) \
711417cd 2945 $(TREE_PASS_H) alloc-pool.h $(ALIAS_H) $(OPTABS_H) $(TARGET_H) \
703c8606 2946 $(BITMAP_H) $(PARAMS_H) $(TREE_FLOW_H) $(HASH_TABLE_H)
e980df8e 2947fwprop.o : fwprop.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
7c475d11 2948 $(DIAGNOSTIC_CORE_H) insn-config.h $(RECOG_H) $(FLAGS_H) $(OBSTACK_H) $(BASIC_BLOCK_H) \
7ee2468b 2949 $(DF_H) alloc-pool.h $(TREE_PASS_H) $(TARGET_H) \
dc007c1f 2950 $(TM_P_H) $(CFGLOOP_H) $(EMIT_RTL_H) domwalk.h sparseset.h
e980df8e 2951web.o : web.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
be7a421e 2952 hard-reg-set.h $(FLAGS_H) $(BASIC_BLOCK_H) $(FUNCTION_H) $(DIAGNOSTIC_CORE_H) \
7ee2468b 2953 insn-config.h $(RECOG_H) $(DF_H) $(OBSTACK_H) $(TREE_PASS_H)
26cd9add 2954ree.o : ree.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
be7a421e 2955 hard-reg-set.h $(FLAGS_H) $(BASIC_BLOCK_H) $(FUNCTION_H) \
7ee2468b 2956 $(DF_H) $(TREE_PASS_H) $(RECOG_H) $(EXPR_H) \
7c475d11 2957 $(REGS_H) $(TREE_H) $(TM_P_H) insn-config.h $(INSN_ATTR_H) $(DIAGNOSTIC_CORE_H) \
87a0ebfd 2958 $(TARGET_H) $(OPTABS_H) insn-codes.h rtlhooks-def.h $(PARAMS_H) $(CGRAPH_H)
e45425ec 2959cprop.o : cprop.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
ee666c25 2960 $(REGS_H) hard-reg-set.h $(FLAGS_H) insn-config.h \
be7a421e 2961 $(RECOG_H) $(EXPR_H) $(BASIC_BLOCK_H) $(FUNCTION_H) toplev.h $(DIAGNOSTIC_CORE_H) \
7ee2468b 2962 $(TM_P_H) $(PARAMS_H) cselib.h $(EXCEPT_H) $(TREE_H) \
e45425ec 2963 intl.h $(OBSTACK_H) $(TREE_PASS_H) $(DF_H) $(DBGCNT_H) $(TARGET_H) \
7d776ee2 2964 $(DF_H) $(CFGLOOP_H)
e980df8e 2965gcse.o : gcse.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
40013784 2966 $(REGS_H) hard-reg-set.h $(FLAGS_H) insn-config.h $(GGC_H) \
be7a421e 2967 $(RECOG_H) $(EXPR_H) $(BASIC_BLOCK_H) $(FUNCTION_H) toplev.h $(DIAGNOSTIC_CORE_H) \
7ee2468b 2968 $(TM_P_H) $(PARAMS_H) cselib.h $(EXCEPT_H) gt-gcse.h $(TREE_H) \
7a8cba34 2969 intl.h $(OBSTACK_H) $(TREE_PASS_H) $(DF_H) $(DBGCNT_H) $(TARGET_H) \
7c6811fe 2970 $(DF_H) gcse.h
df35c271 2971store-motion.o : store-motion.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
40013784 2972 $(REGS_H) hard-reg-set.h $(FLAGS_H) insn-config.h $(GGC_H) \
be7a421e 2973 $(RECOG_H) $(EXPR_H) $(BASIC_BLOCK_H) $(FUNCTION_H) toplev.h $(DIAGNOSTIC_CORE_H) \
7ee2468b 2974 $(TM_P_H) $(EXCEPT_H) $(TREE_H) \
7072a650 2975 intl.h $(OBSTACK_H) $(TREE_PASS_H) $(DF_H) $(DBGCNT_H)
e980df8e
TT
2976resource.o : resource.c $(CONFIG_H) $(RTL_H) hard-reg-set.h $(SYSTEM_H) \
2977 coretypes.h $(TM_H) $(REGS_H) $(FLAGS_H) output.h $(RESOURCE_H) $(DF_H) \
7c475d11 2978 $(FUNCTION_H) $(DIAGNOSTIC_CORE_H) $(INSN_ATTR_H) $(EXCEPT_H) $(PARAMS_H) $(TM_P_H)
7ee2468b 2979lcm.o : lcm.c $(CONFIG_H) $(SYSTEM_H) coretypes.h dumpfile.h $(TM_H) $(RTL_H) $(REGS_H) \
e980df8e 2980 hard-reg-set.h $(FLAGS_H) insn-config.h $(INSN_ATTR_H) $(RECOG_H) \
be7a421e 2981 $(BASIC_BLOCK_H) $(TM_P_H) $(FUNCTION_H) sbitmap.h
e980df8e
TT
2982mode-switching.o : mode-switching.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
2983 $(TM_H) $(RTL_H) $(REGS_H) hard-reg-set.h $(FLAGS_H) insn-config.h \
2984 $(INSN_ATTR_H) $(RECOG_H) $(BASIC_BLOCK_H) $(TM_P_H) $(FUNCTION_H) \
7ee2468b 2985 $(TREE_PASS_H) $(DF_H) $(TARGET_H) $(EMIT_RTL_H)
e980df8e 2986tree-ssa-dce.o : tree-ssa-dce.c $(CONFIG_H) $(SYSTEM_H) $(TREE_H) \
7ee2468b
SB
2987 $(TREE_FLOW_H) $(DIAGNOSTIC_H) $(TM_H) \
2988 coretypes.h $(TREE_PASS_H) $(FLAGS_H) $(BASIC_BLOCK_H) \
ee666c25 2989 $(GGC_H) $(GIMPLE_H) $(CFGLOOP_H) $(SCEV_H) $(GIMPLE_PRETTY_PRINT_H)
c2699190 2990tree-call-cdce.o : tree-call-cdce.c $(CONFIG_H) $(SYSTEM_H) $(TREE_H) \
7ee2468b
SB
2991 $(TREE_FLOW_H) $(TM_H) \
2992 coretypes.h $(TREE_PASS_H) $(FLAGS_H) $(BASIC_BLOCK_H) \
ee666c25 2993 $(GIMPLE_H) $(GIMPLE_PRETTY_PRINT_H)
e980df8e 2994tree-ssa-ccp.o : tree-ssa-ccp.c $(TREE_FLOW_H) $(CONFIG_H) \
be7a421e 2995 $(SYSTEM_H) $(TREE_H) $(TM_P_H) \
7ee2468b
SB
2996 $(DIAGNOSTIC_H) $(FUNCTION_H) $(TM_H) coretypes.h \
2997 $(BASIC_BLOCK_H) $(TREE_PASS_H) langhooks.h $(PARAMS_H) \
0823efed
DN
2998 tree-ssa-propagate.h value-prof.h $(FLAGS_H) $(TARGET_H) \
2999 $(DIAGNOSTIC_CORE_H) $(HASH_TABLE_H) \
ee666c25 3000 $(DBGCNT_H) $(GIMPLE_PRETTY_PRINT_H) gimple-fold.h
8b57bfeb
JJ
3001tree-ssa-strlen.o : tree-ssa-strlen.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
3002 $(TREE_FLOW_H) $(TREE_PASS_H) domwalk.h alloc-pool.h tree-ssa-propagate.h \
ee666c25 3003 $(GIMPLE_PRETTY_PRINT_H) $(PARAMS_H) $(EXPR_H)
0674b9d0 3004tree-sra.o : tree-sra.c $(CONFIG_H) $(SYSTEM_H) coretypes.h alloc-pool.h \
7c475d11 3005 $(TM_H) $(TREE_H) $(GIMPLE_H) $(CGRAPH_H) $(TREE_FLOW_H) \
7ee2468b 3006 $(IPA_PROP_H) $(DIAGNOSTIC_H) statistics.h \
6f4185d7 3007 $(PARAMS_H) $(TARGET_H) $(FLAGS_H) \
ee666c25 3008 $(DBGCNT_H) $(TREE_INLINE_H) $(GIMPLE_PRETTY_PRINT_H)
b6e99746
MJ
3009tree-switch-conversion.o : tree-switch-conversion.c $(CONFIG_H) $(SYSTEM_H) \
3010 $(TREE_H) $(TM_P_H) $(TREE_FLOW_H) $(DIAGNOSTIC_H) $(TREE_INLINE_H) \
7ee2468b 3011 $(TM_H) coretypes.h $(GIMPLE_H) \
be7a421e 3012 $(TREE_PASS_H) $(FLAGS_H) $(EXPR_H) $(BASIC_BLOCK_H) \
cf835838 3013 $(GGC_H) $(OBSTACK_H) $(PARAMS_H) $(CPPLIB_H) $(PARAMS_H) \
ee666c25 3014 $(GIMPLE_PRETTY_PRINT_H) langhooks.h
e980df8e 3015tree-complex.o : tree-complex.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TREE_H) \
40013784 3016 $(TM_H) $(FLAGS_H) $(TREE_FLOW_H) $(GIMPLE_H) \
6f4185d7 3017 tree-iterator.h $(TREE_PASS_H) tree-ssa-propagate.h
8b84c596
RH
3018tree-emutls.o : tree-emutls.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TREE_H) \
3019 $(GIMPLE_H) $(TREE_PASS_H) $(TREE_FLOW_H) $(CGRAPH_H) langhooks.h \
6f4185d7 3020 $(TARGET_H) $(TARGET_DEF_H) tree-iterator.h
e980df8e 3021tree-vect-generic.o : tree-vect-generic.c $(CONFIG_H) $(SYSTEM_H) $(TREE_H) \
7072a650 3022 $(TM_H) $(TREE_FLOW_H) $(GIMPLE_H) tree-iterator.h $(TREE_PASS_H) \
40013784 3023 $(FLAGS_H) $(OPTABS_H) $(MACHMODE_H) $(EXPR_H) \
e980df8e 3024 langhooks.h $(FLAGS_H) $(DIAGNOSTIC_H) gt-tree-vect-generic.h $(GGC_H) \
0fcc85cd 3025 coretypes.h insn-codes.h $(DIAGNOSTIC_H) $(TARGET_H)
e980df8e
TT
3026df-core.o : df-core.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
3027 insn-config.h $(RECOG_H) $(FUNCTION_H) $(REGS_H) alloc-pool.h \
7ee2468b 3028 hard-reg-set.h $(BASIC_BLOCK_H) $(DF_H) $(BITMAP_H) sbitmap.h \
7072a650 3029 $(TM_P_H) $(FLAGS_H) output.h $(TREE_PASS_H) $(PARAMS_H)
7ee2468b 3030df-problems.o : df-problems.c $(CONFIG_H) $(SYSTEM_H) coretypes.h dumpfile.h $(TM_H) \
e980df8e 3031 $(RTL_H) insn-config.h $(RECOG_H) $(FUNCTION_H) $(REGS_H) alloc-pool.h \
e63ea00c 3032 hard-reg-set.h $(BASIC_BLOCK_H) $(DF_H) $(BITMAP_H) sbitmap.h $(TIMEVAR_H) \
08df6c0d 3033 $(TM_P_H) $(TARGET_H) $(FLAGS_H) $(EXCEPT_H) dce.h vecprim.h $(VALTRACK_H)
7ee2468b 3034df-scan.o : df-scan.c $(CONFIG_H) $(SYSTEM_H) coretypes.h dumpfile.h $(TM_H) $(RTL_H) \
e980df8e 3035 insn-config.h $(RECOG_H) $(FUNCTION_H) $(REGS_H) alloc-pool.h \
7ee2468b 3036 hard-reg-set.h $(BASIC_BLOCK_H) $(DF_H) $(BITMAP_H) sbitmap.h \
be7a421e 3037 $(TM_P_H) $(FLAGS_H) $(TARGET_H) $(TARGET_DEF_H) $(TREE_H) \
7ee2468b 3038 $(EMIT_RTL_H)
e980df8e 3039regstat.o : regstat.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
be7a421e 3040 $(TM_P_H) $(FLAGS_H) $(REGS_H) $(EXCEPT_H) hard-reg-set.h \
e980df8e 3041 $(BASIC_BLOCK_H) $(TIMEVAR_H) $(DF_H)
08df6c0d
AO
3042valtrack.o : valtrack.c $(VALTRACK_H) $(CONFIG_H) $(SYSTEM_H) \
3043 coretypes.h $(TM_H) $(FUNCTION_H) $(REGS_H) $(EMIT_RTL_H)
e980df8e
TT
3044var-tracking.o : var-tracking.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
3045 $(RTL_H) $(TREE_H) hard-reg-set.h insn-config.h reload.h $(FLAGS_H) \
be7a421e 3046 $(BASIC_BLOCK_H) bitmap.h alloc-pool.h $(FIBHEAP_H) $(HASHTAB_H) \
7ee2468b 3047 $(REGS_H) $(EXPR_H) $(TREE_PASS_H) $(TREE_FLOW_H) \
8cda8ad3
AO
3048 cselib.h $(TARGET_H) $(DIAGNOSTIC_CORE_H) $(PARAMS_H) $(DIAGNOSTIC_H) \
3049 pointer-set.h $(RECOG_H) $(TM_P_H) $(TREE_PRETTY_PRINT_H) $(ALIAS_H)
7ee2468b 3050profile.o : profile.c $(CONFIG_H) $(SYSTEM_H) coretypes.h dumpfile.h $(TM_H) $(RTL_H) \
be7a421e 3051 $(TREE_H) $(FLAGS_H) $(REGS_H) $(EXPR_H) $(FUNCTION_H) $(BASIC_BLOCK_H) \
78bde837 3052 $(DIAGNOSTIC_CORE_H) $(COVERAGE_H) $(TREE_FLOW_H) value-prof.h \
7ee2468b
SB
3053 $(CFGLOOP_H) profile.h
3054mcf.o : mcf.c profile.h $(CONFIG_H) $(SYSTEM_H) $(TM_H) coretypes.h dumpfile.h \
be7a421e 3055 $(BASIC_BLOCK_H) langhooks.h $(GCOV_IO_H) $(TREE_H)
e980df8e 3056tree-profile.o : tree-profile.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
296f202e 3057 $(TM_H) $(TARGET_H) $(TREE_H) $(FLAGS_H) $(FUNCTION_H) \
7ee2468b
SB
3058 $(BASIC_BLOCK_H) $(DIAGNOSTIC_CORE_H) $(COVERAGE_H) $(TREE_H) value-prof.h \
3059 $(TREE_PASS_H) $(TREE_FLOW_H) gt-tree-profile.h $(CGRAPH_H)
3060value-prof.o : value-prof.c $(CONFIG_H) $(SYSTEM_H) coretypes.h dumpfile.h $(TM_H) \
be7a421e 3061 $(BASIC_BLOCK_H) hard-reg-set.h profile.h value-prof.h $(EXPR_H) $(FLAGS_H) \
e980df8e
TT
3062 $(RECOG_H) insn-config.h $(OPTABS_H) $(REGS_H) $(GGC_H) $(DIAGNOSTIC_H) \
3063 $(TREE_H) $(COVERAGE_H) $(RTL_H) $(GCOV_IO_H) $(TREE_FLOW_H) \
7ee2468b 3064 tree-flow-inline.h $(TIMEVAR_H) $(DIAGNOSTIC_CORE_H) pointer-set.h \
ee666c25 3065 $(GIMPLE_PRETTY_PRINT_H)
7ee2468b 3066loop-doloop.o : loop-doloop.c $(CONFIG_H) $(SYSTEM_H) coretypes.h dumpfile.h $(TM_H) \
e980df8e 3067 $(RTL_H) $(FLAGS_H) $(EXPR_H) hard-reg-set.h $(BASIC_BLOCK_H) $(TM_P_H) \
be7a421e 3068 $(DIAGNOSTIC_CORE_H) $(CFGLOOP_H) $(PARAMS_H) $(TARGET_H)
e980df8e
TT
3069alloc-pool.o : alloc-pool.c $(CONFIG_H) $(SYSTEM_H) alloc-pool.h $(HASHTAB_H)
3070auto-inc-dec.o : auto-inc-dec.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
3071 $(TREE_H) $(RTL_H) $(TM_P_H) hard-reg-set.h $(BASIC_BLOCK_H) insn-config.h \
be7a421e 3072 $(REGS_H) $(FLAGS_H) $(FUNCTION_H) $(EXCEPT_H) $(DIAGNOSTIC_CORE_H) $(RECOG_H) \
7ee2468b
SB
3073 $(EXPR_H) $(TREE_PASS_H) $(DF_H) $(DBGCNT_H) $(TARGET_H)
3074cfg.o : cfg.c $(CONFIG_H) $(SYSTEM_H) coretypes.h dumpfile.h $(DIAGNOSTIC_CORE_H) \
703c8606 3075 $(GGC_H) $(OBSTACK_H) alloc-pool.h $(HASH_TABLE_H) $(CFGLOOP_H) $(TREE_H) \
2eb712b4 3076 $(BASIC_BLOCK_H)
e980df8e 3077cfghooks.o: cfghooks.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
7c475d11 3078 $(TREE_H) $(BASIC_BLOCK_H) $(TREE_FLOW_H) $(TIMEVAR_H) toplev.h $(DIAGNOSTIC_CORE_H) $(CFGLOOP_H)
e980df8e 3079cfgexpand.o : cfgexpand.c $(TREE_FLOW_H) $(CONFIG_H) $(SYSTEM_H) \
7ee2468b
SB
3080 $(RTL_H) $(TREE_H) $(TM_P_H) $(EXPR_H) $(FUNCTION_H) $(TM_H) \
3081 coretypes.h $(EXCEPT_H) langhooks.h $(TREE_PASS_H) $(RTL_H) \
7c475d11 3082 $(DIAGNOSTIC_H) toplev.h $(DIAGNOSTIC_CORE_H) $(BASIC_BLOCK_H) $(FLAGS_H) debug.h $(PARAMS_H) \
be147e84 3083 value-prof.h $(TREE_INLINE_H) $(TARGET_H) $(SSAEXPAND_H) $(REGS_H) \
ee666c25 3084 $(GIMPLE_PRETTY_PRINT_H) $(BITMAP_H) sbitmap.h \
6399c0ab 3085 $(INSN_ATTR_H) $(CFGLOOP_H)
0cbd9993 3086cfgrtl.o : cfgrtl.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_ERROR_H) \
e980df8e 3087 $(FLAGS_H) insn-config.h $(BASIC_BLOCK_H) $(REGS_H) hard-reg-set.h \
be7a421e 3088 $(FUNCTION_H) $(EXCEPT_H) $(TM_P_H) $(INSN_ATTR_H) \
2a34bece 3089 insn-config.h $(EXPR_H) \
78bde837
SB
3090 $(CFGLOOP_H) $(OBSTACK_H) $(TARGET_H) $(TREE_H) \
3091 $(TREE_PASS_H) $(DF_H) $(GGC_H) $(COMMON_TARGET_H) gt-cfgrtl.h
532aafad
SB
3092cfganal.o : cfganal.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(BASIC_BLOCK_H) \
3093 $(TIMEVAR_H) vecprim.h sbitmap.h $(BITMAP_H)
e980df8e 3094cfgbuild.o : cfgbuild.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
be7a421e 3095 $(FLAGS_H) $(BASIC_BLOCK_H) $(REGS_H) hard-reg-set.h $(DIAGNOSTIC_CORE_H) \
7a8cba34 3096 $(FUNCTION_H) $(EXCEPT_H) $(TIMEVAR_H) $(TREE_H) $(EXPR_H) sbitmap.h
e980df8e 3097cfgcleanup.o : cfgcleanup.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
7ee2468b 3098 $(RTL_H) hard-reg-set.h $(FLAGS_H) $(RECOG_H) \
7c475d11 3099 $(DIAGNOSTIC_CORE_H) insn-config.h cselib.h $(TARGET_H) $(TM_P_H) $(PARAMS_H) \
78bde837 3100 $(REGS_H) $(EMIT_RTL_H) $(FUNCTION_H) $(TREE_PASS_H) $(CFGLOOP_H) $(EXPR_H) \
e63ea00c 3101 $(DF_H) $(DBGCNT_H) dce.h
7ee2468b 3102cfgloop.o : cfgloop.c $(CONFIG_H) $(SYSTEM_H) $(RTL_H) coretypes.h dumpfile.h $(TM_H) \
e980df8e 3103 $(BASIC_BLOCK_H) hard-reg-set.h $(CFGLOOP_H) $(FLAGS_H) $(FUNCTION_H) \
be7a421e 3104 $(OBSTACK_H) toplev.h $(DIAGNOSTIC_CORE_H) $(TREE_FLOW_H) $(TREE_H) pointer-set.h \
e980df8e 3105 $(GGC_H)
7ee2468b
SB
3106cfgloopanal.o : cfgloopanal.c coretypes.h dumpfile.h $(CONFIG_H) $(SYSTEM_H) $(RTL_H) \
3107 $(BASIC_BLOCK_H) hard-reg-set.h $(CFGLOOP_H) $(EXPR_H) $(TM_H) \
be7a421e 3108 $(OBSTACK_H) graphds.h $(PARAMS_H)
e63ea00c 3109graphds.o : graphds.c graphds.h $(CONFIG_H) $(SYSTEM_H) $(BITMAP_H) $(OBSTACK_H) \
3e097227 3110 coretypes.h $(VEC_H) vecprim.h
7ee2468b
SB
3111loop-iv.o : loop-iv.c $(CONFIG_H) $(SYSTEM_H) coretypes.h dumpfile.h \
3112 $(RTL_H) $(BASIC_BLOCK_H) \
3113 hard-reg-set.h $(CFGLOOP_H) $(EXPR_H) $(TM_H) $(OBSTACK_H) \
be7a421e 3114 intl.h $(DIAGNOSTIC_CORE_H) $(DF_H) $(HASHTAB_H)
7ee2468b
SB
3115loop-invariant.o : loop-invariant.c $(CONFIG_H) $(SYSTEM_H) coretypes.h dumpfile.h \
3116 $(RTL_H) $(BASIC_BLOCK_H) hard-reg-set.h $(CFGLOOP_H) $(EXPR_H) $(RECOG_H) \
1a17bd35 3117 $(TM_H) $(TM_P_H) $(FUNCTION_H) $(FLAGS_H) $(DF_H) $(TARGET_H) \
be7a421e 3118 $(OBSTACK_H) $(HASHTAB_H) $(EXCEPT_H) $(PARAMS_H) $(REGS_H) ira.h
e980df8e 3119cfgloopmanip.o : cfgloopmanip.c $(CONFIG_H) $(SYSTEM_H) $(RTL_H) \
78bde837
SB
3120 $(BASIC_BLOCK_H) hard-reg-set.h $(CFGLOOP_H) \
3121 coretypes.h $(TM_H) $(OBSTACK_H) $(TREE_FLOW_H)
e980df8e 3122loop-init.o : loop-init.c $(CONFIG_H) $(SYSTEM_H) $(RTL_H) $(GGC_H) \
78bde837 3123 $(BASIC_BLOCK_H) hard-reg-set.h $(CFGLOOP_H) \
7ee2468b 3124 coretypes.h $(TM_H) $(OBSTACK_H) $(TREE_PASS_H) $(FLAGS_H) \
532aafad 3125 $(REGS_H) $(DF_H)
7ee2468b
SB
3126loop-unswitch.o : loop-unswitch.c $(CONFIG_H) $(SYSTEM_H) coretypes.h dumpfile.h \
3127 $(RTL_H) $(TM_H) $(BASIC_BLOCK_H) hard-reg-set.h $(CFGLOOP_H) $(PARAMS_H) \
3128 $(EXPR_H) $(TM_H) $(OBSTACK_H)
3129loop-unroll.o: loop-unroll.c $(CONFIG_H) $(SYSTEM_H) coretypes.h dumpfile.h \
3130 $(RTL_H) $(TM_H) $(BASIC_BLOCK_H) hard-reg-set.h $(CFGLOOP_H) $(PARAMS_H) \
3131 $(EXPR_H) $(TM_H) $(HASHTAB_H) $(RECOG_H) \
e980df8e
TT
3132 $(OBSTACK_H)
3133dominance.o : dominance.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
7c475d11 3134 hard-reg-set.h $(BASIC_BLOCK_H) et-forest.h $(OBSTACK_H) $(DIAGNOSTIC_CORE_H) \
7a8cba34 3135 $(TIMEVAR_H) graphds.h vecprim.h pointer-set.h $(BITMAP_H)
8e65c286 3136et-forest.o : et-forest.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
e980df8e
TT
3137 et-forest.h alloc-pool.h $(BASIC_BLOCK_H)
3138combine.o : combine.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
3139 $(FLAGS_H) $(FUNCTION_H) insn-config.h $(INSN_ATTR_H) $(REGS_H) $(EXPR_H) \
40013784 3140 rtlhooks-def.h $(BASIC_BLOCK_H) $(RECOG_H) hard-reg-set.h \
08df6c0d
AO
3141 $(DIAGNOSTIC_CORE_H) $(TM_P_H) $(TREE_H) $(TARGET_H) \
3142 output.h $(PARAMS_H) $(OPTABS_H) \
3143 insn-codes.h $(TREE_PASS_H) $(DF_H) $(VALTRACK_H) \
3144 vecprim.h $(CGRAPH_H) $(OBSTACK_H)
2af2dbdc 3145reginfo.o : reginfo.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
360d045b 3146 hard-reg-set.h $(FLAGS_H) $(BASIC_BLOCK_H) addresses.h $(REGS_H) \
7c475d11 3147 insn-config.h $(RECOG_H) reload.h $(DIAGNOSTIC_CORE_H) \
7ee2468b 3148 $(FUNCTION_H) output.h $(TM_P_H) $(EXPR_H) $(HASHTAB_H) \
7072a650 3149 $(TARGET_H) $(TREE_PASS_H) $(DF_H) ira.h
8e65c286
NF
3150bitmap.o : bitmap.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
3151 $(GGC_H) gt-bitmap.h $(BITMAP_H) $(OBSTACK_H) $(HASHTAB_H)
3e097227 3152vec.o : vec.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(VEC_H) $(GGC_H) \
6f4185d7 3153 $(DIAGNOSTIC_CORE_H) $(HASHTAB_H)
0823efed
DN
3154hash-table.o : hash-table.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
3155 $(HASHTAB_H)
0cbd9993 3156reload.o : reload.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_ERROR_H) \
a4b7d13c 3157 $(FLAGS_H) $(EXPR_H) $(OPTABS_H) reload.h $(RECOG_H) \
0cbd9993 3158 hard-reg-set.h insn-config.h $(REGS_H) $(FUNCTION_H) real.h \
c59ffc41 3159 addresses.h $(TM_P_H) $(PARAMS_H) $(TARGET_H) $(DF_H) ira.h $(DIAGNOSTIC_CORE_H)
7ee2468b
SB
3160reload1.o : reload1.c $(CONFIG_H) $(SYSTEM_H) coretypes.h dumpfile.h \
3161 $(TM_H) $(RTL_ERROR_H) \
e980df8e 3162 $(EXPR_H) $(OPTABS_H) reload.h $(REGS_H) hard-reg-set.h insn-config.h \
be7a421e 3163 $(BASIC_BLOCK_H) $(RECOG_H) $(FUNCTION_H) $(TM_P_H) \
40013784 3164 addresses.h $(EXCEPT_H) $(TREE_H) $(FLAGS_H) $(MACHMODE_H) \
f6129d66 3165 $(OBSTACK_H) $(DF_H) $(TARGET_H) $(EMIT_RTL_H) ira.h
e980df8e
TT
3166rtlhooks.o : rtlhooks.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
3167 rtlhooks-def.h $(EXPR_H) $(RECOG_H)
3168postreload.o : postreload.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
40013784 3169 $(RTL_H) $(FLAGS_H) $(EXPR_H) $(OPTABS_H) reload.h $(REGS_H) \
be7a421e 3170 hard-reg-set.h insn-config.h $(BASIC_BLOCK_H) $(RECOG_H) \
7c475d11 3171 $(FUNCTION_H) $(DIAGNOSTIC_CORE_H) cselib.h $(TM_P_H) $(EXCEPT_H) $(TREE_H) $(MACHMODE_H) \
7ee2468b 3172 $(OBSTACK_H) $(TARGET_H) $(TREE_PASS_H) $(DF_H) $(DBGCNT_H)
e980df8e
TT
3173postreload-gcse.o : postreload-gcse.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
3174 $(TM_H) $(RTL_H) $(REGS_H) hard-reg-set.h $(FLAGS_H) insn-config.h \
be7a421e 3175 $(RECOG_H) $(EXPR_H) $(BASIC_BLOCK_H) $(FUNCTION_H) $(DIAGNOSTIC_CORE_H) \
a8da523f 3176 $(TM_P_H) $(EXCEPT_H) $(TREE_H) $(TARGET_H) $(HASHTAB_H) intl.h $(OBSTACK_H) \
7ee2468b
SB
3177 $(PARAMS_H) $(TREE_PASS_H) $(DBGCNT_H)
3178caller-save.o : caller-save.c $(CONFIG_H) $(SYSTEM_H) coretypes.h dumpfile.h \
3179 $(TM_H) $(RTL_H) \
e980df8e 3180 $(FLAGS_H) $(REGS_H) hard-reg-set.h insn-config.h $(BASIC_BLOCK_H) $(FUNCTION_H) \
7c475d11 3181 addresses.h $(RECOG_H) reload.h $(EXPR_H) $(DIAGNOSTIC_CORE_H) $(TM_P_H) $(DF_H) \
be7a421e 3182 gt-caller-save.h $(GGC_H)
a8da523f 3183bt-load.o : bt-load.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(EXCEPT_H) \
be7a421e 3184 $(RTL_H) hard-reg-set.h $(REGS_H) $(TM_P_H) $(FIBHEAP_H) $(EXPR_H) \
7072a650 3185 $(TARGET_H) $(FLAGS_H) $(INSN_ATTR_H) $(FUNCTION_H) $(TREE_PASS_H) \
391886c8 3186 $(DIAGNOSTIC_CORE_H) $(DF_H) vecprim.h $(RECOG_H) $(CFGLOOP_H)
e980df8e
TT
3187reorg.o : reorg.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
3188 conditions.h hard-reg-set.h $(BASIC_BLOCK_H) $(REGS_H) insn-config.h \
a8da523f 3189 $(INSN_ATTR_H) $(EXCEPT_H) $(RECOG_H) $(FUNCTION_H) $(FLAGS_H) output.h \
7c475d11 3190 $(EXPR_H) $(DIAGNOSTIC_CORE_H) $(PARAMS_H) $(TM_P_H) $(OBSTACK_H) $(RESOURCE_H) \
7ee2468b
SB
3191 $(TARGET_H) $(TREE_PASS_H)
3192alias.o : alias.c $(CONFIG_H) $(SYSTEM_H) coretypes.h dumpfile.h $(TM_H) $(RTL_H) \
be7a421e 3193 $(FLAGS_H) hard-reg-set.h $(BASIC_BLOCK_H) $(REGS_H) $(DIAGNOSTIC_CORE_H) \
e980df8e
TT
3194 $(ALIAS_H) $(EMIT_RTL_H) $(GGC_H) $(FUNCTION_H) cselib.h $(TREE_H) $(TM_P_H) \
3195 langhooks.h $(TARGET_H) gt-alias.h $(TIMEVAR_H) $(CGRAPH_H) \
7ee2468b 3196 $(SPLAY_TREE_H) $(DF_H) \
55b34b5f 3197 tree-ssa-alias.h pointer-set.h $(TREE_FLOW_H)
e980df8e 3198stack-ptr-mod.o : stack-ptr-mod.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
7072a650 3199 $(TM_H) $(TREE_H) $(RTL_H) $(REGS_H) $(EXPR_H) $(TREE_PASS_H) \
e980df8e
TT
3200 $(BASIC_BLOCK_H) $(FLAGS_H) output.h $(DF_H)
3201init-regs.o : init-regs.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
7072a650 3202 $(TM_H) $(TREE_H) $(RTL_H) $(REGS_H) $(EXPR_H) $(TREE_PASS_H) \
e980df8e 3203 $(BASIC_BLOCK_H) $(FLAGS_H) $(DF_H)
058e97ec
VM
3204ira-build.o: ira-build.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
3205 $(TARGET_H) $(RTL_H) $(REGS_H) hard-reg-set.h $(FLAGS_H) \
7c475d11 3206 insn-config.h $(RECOG_H) $(BASIC_BLOCK_H) $(DIAGNOSTIC_CORE_H) $(TM_P_H) \
be7a421e 3207 $(PARAMS_H) $(DF_H) sparseset.h $(IRA_INT_H) reload.h
058e97ec 3208ira-costs.o: ira-costs.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
464778c0 3209 hard-reg-set.h $(RTL_H) $(EXPR_H) $(TM_P_H) $(FLAGS_H) $(BASIC_BLOCK_H) \
7c475d11 3210 $(REGS_H) addresses.h insn-config.h $(RECOG_H) $(DIAGNOSTIC_CORE_H) $(TARGET_H) \
8ff49c29 3211 $(PARAMS_H) $(IRA_INT_H) reload.h
058e97ec 3212ira-conflicts.o: ira-conflicts.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
532aafad 3213 $(TARGET_H) $(RTL_H) $(REGS_H) hard-reg-set.h $(TREE_H) $(FLAGS_H) \
7c475d11 3214 insn-config.h $(RECOG_H) $(BASIC_BLOCK_H) $(DIAGNOSTIC_CORE_H) $(TM_P_H) $(PARAMS_H) \
f2c2d5e3 3215 $(DF_H) sparseset.h addresses.h $(IRA_INT_H)
058e97ec
VM
3216ira-color.o: ira-color.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
3217 $(TARGET_H) $(RTL_H) $(REGS_H) hard-reg-set.h $(FLAGS_H) \
c59ffc41 3218 $(EXPR_H) $(BASIC_BLOCK_H) $(DIAGNOSTIC_CORE_H) $(TM_P_H) reload.h $(PARAMS_H) \
1756cb66 3219 $(DF_H) $(IRA_INT_H)
058e97ec 3220ira-emit.o: ira-emit.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
464778c0 3221 $(REGS_H) $(RTL_H) $(TM_P_H) $(TARGET_H) $(FLAGS_H) hard-reg-set.h \
7ee2468b 3222 $(BASIC_BLOCK_H) $(EXPR_H) $(RECOG_H) $(PARAMS_H) \
be7a421e 3223 $(TREE_PASS_H) reload.h $(DF_H) $(IRA_INT_H)
058e97ec 3224ira-lives.o: ira-lives.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
a8da523f 3225 $(TARGET_H) $(RTL_H) $(REGS_H) $(EXCEPT_H) hard-reg-set.h $(FLAGS_H) \
7c475d11 3226 insn-config.h $(RECOG_H) $(BASIC_BLOCK_H) $(DIAGNOSTIC_CORE_H) $(TM_P_H) $(PARAMS_H) \
058e97ec
VM
3227 $(DF_H) sparseset.h $(IRA_INT_H)
3228ira.o: ira.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
464778c0 3229 $(TM_H) $(REGS_H) $(RTL_H) $(TM_P_H) $(TARGET_H) $(FLAGS_H) $(OBSTACK_H) \
ee666c25 3230 $(BITMAP_H) hard-reg-set.h $(BASIC_BLOCK_H) $(DBGCNT_H) $(FUNCTION_H) \
7ee2468b 3231 $(EXPR_H) $(RECOG_H) $(PARAMS_H) $(TREE_PASS_H) output.h \
55a2c322
VM
3232 $(EXCEPT_H) reload.h toplev.h $(DIAGNOSTIC_CORE_H) \
3233 $(DF_H) $(GGC_H) $(IRA_INT_H) lra.h
3234lra.o : lra.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
3235 $(RTL_H) $(REGS_H) insn-config.h insn-codes.h $(TIMEVAR_H) $(TREE_PASS_H) \
3236 $(DF_H) $(RECOG_H) output.h addresses.h $(REGS_H) hard-reg-set.h \
3237 $(FLAGS_H) $(FUNCTION_H) $(EXPR_H) $(BASIC_BLOCK_H) $(TM_P_H) \
3238 $(EXCEPT_H) ira.h $(LRA_INT_H)
3239lra-assigns.o : lra-assigns.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
3240 $(TM_H) $(RTL_H) $(REGS_H) insn-config.h $(DF_H) \
3241 $(RECOG_H) output.h $(REGS_H) hard-reg-set.h $(FLAGS_H) $(FUNCTION_H) \
3242 $(EXPR_H) $(BASIC_BLOCK_H) $(TM_P_H) $(EXCEPT_H) ira.h \
3243 rtl-error.h sparseset.h $(LRA_INT_H)
3244lra-coalesce.o : lra-coalesce.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
3245 $(TM_H) $(RTL_H) $(REGS_H) insn-config.h $(DF_H) \
3246 $(RECOG_H) output.h $(REGS_H) hard-reg-set.h $(FLAGS_H) $(FUNCTION_H) \
3247 $(EXPR_H) $(BASIC_BLOCK_H) $(TM_P_H) $(EXCEPT_H) ira.h \
3248 rtl-error.h ira.h $(LRA_INT_H)
3249lra-constraints.o : lra-constraints.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
3250 $(TM_H) $(RTL_H) $(REGS_H) insn-config.h insn-codes.h $(DF_H) \
3251 $(RECOG_H) output.h addresses.h $(REGS_H) hard-reg-set.h $(FLAGS_H) \
3252 $(FUNCTION_H) $(EXPR_H) $(BASIC_BLOCK_H) $(TM_P_H) $(EXCEPT_H) \
3253 ira.h rtl-error.h $(LRA_INT_H)
3254lra-eliminations.o : lra-eliminations.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
3255 $(TM_H) $(RTL_H) $(REGS_H) insn-config.h $(DF_H) \
3256 $(RECOG_H) output.h $(REGS_H) hard-reg-set.h $(FLAGS_H) $(FUNCTION_H) \
3257 $(EXPR_H) $(BASIC_BLOCK_H) $(TM_P_H) $(EXCEPT_H) ira.h \
3258 rtl-error.h $(LRA_INT_H)
3259lra-lives.o : lra-lives.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
3260 $(RTL_H) $(REGS_H) insn-config.h $(DF_H) \
3261 $(RECOG_H) output.h $(REGS_H) hard-reg-set.h $(FLAGS_H) $(FUNCTION_H) \
3262 $(EXPR_H) $(BASIC_BLOCK_H) $(TM_P_H) $(EXCEPT_H) \
3263 $(LRA_INT_H)
3264lra-spills.o : lra-spills.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
3265 $(RTL_H) $(REGS_H) insn-config.h $(DF_H) \
3266 $(RECOG_H) output.h $(REGS_H) hard-reg-set.h $(FLAGS_H) $(FUNCTION_H) \
3267 $(EXPR_H) $(BASIC_BLOCK_H) $(TM_P_H) $(EXCEPT_H) \
3268 ira.h $(LRA_INT_H)
e980df8e 3269regmove.o : regmove.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
7ee2468b 3270 insn-config.h $(TREE_PASS_H) $(DF_H) \
be7a421e 3271 $(RECOG_H) $(REGS_H) hard-reg-set.h $(FLAGS_H) $(FUNCTION_H) \
7c475d11 3272 $(EXPR_H) $(BASIC_BLOCK_H) $(DIAGNOSTIC_CORE_H) $(TM_P_H) \
85194319 3273 $(EXCEPT_H) ira.h reload.h $(TARGET_H)
e980df8e 3274combine-stack-adj.o : combine-stack-adj.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
7ee2468b 3275 $(TM_H) $(RTL_H) insn-config.h $(TREE_PASS_H) \
be7a421e 3276 $(RECOG_H) $(REGS_H) hard-reg-set.h $(FLAGS_H) $(FUNCTION_H) \
ee666c25 3277 $(EXPR_H) $(BASIC_BLOCK_H) $(TM_P_H) $(DF_H) $(EXCEPT_H) reload.h
e692f276
RH
3278compare-elim.o : compare-elim.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
3279 $(TM_H) $(RTL_H) $(TM_P_H) insn-config.h $(RECOG_H) $(FLAGS_H) \
3280 $(BASIC_BLOCK_H) $(TREE_PASS_H) $(TARGET_H) $(DF_H) domwalk.h
e980df8e 3281ddg.o : ddg.c $(DDG_H) $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TARGET_H) \
7c475d11 3282 $(DIAGNOSTIC_CORE_H) $(RTL_H) $(TM_P_H) $(REGS_H) $(FUNCTION_H) \
a8da523f 3283 $(FLAGS_H) insn-config.h $(INSN_ATTR_H) $(EXCEPT_H) $(RECOG_H) \
78bde837 3284 $(SCHED_INT_H) $(CFGLOOP_H) $(EXPR_H) $(BITMAP_H) \
e980df8e
TT
3285 hard-reg-set.h sbitmap.h $(TM_H)
3286modulo-sched.o : modulo-sched.c $(DDG_H) $(CONFIG_H) $(CONFIG_H) $(SYSTEM_H) \
7c475d11 3287 coretypes.h $(TARGET_H) $(DIAGNOSTIC_CORE_H) $(RTL_H) $(TM_P_H) $(REGS_H) $(FUNCTION_H) \
a8da523f 3288 $(FLAGS_H) insn-config.h $(INSN_ATTR_H) $(EXCEPT_H) $(RECOG_H) \
78bde837 3289 $(SCHED_INT_H) $(CFGLOOP_H) $(EXPR_H) $(PARAMS_H) \
7ee2468b 3290 $(GCOV_IO_H) hard-reg-set.h $(TM_H) $(TREE_PASS_H) \
e980df8e 3291 $(DF_H) $(DBGCNT_H)
7ee2468b
SB
3292haifa-sched.o : haifa-sched.c $(CONFIG_H) $(SYSTEM_H) coretypes.h dumpfile.h \
3293 $(TM_H) $(RTL_H) \
e980df8e 3294 $(SCHED_INT_H) $(REGS_H) hard-reg-set.h $(FLAGS_H) insn-config.h $(FUNCTION_H) \
be7a421e 3295 $(INSN_ATTR_H) $(DIAGNOSTIC_CORE_H) $(RECOG_H) $(EXCEPT_H) $(TM_P_H) $(TARGET_H) \
26965010
BS
3296 $(PARAMS_H) $(DBGCNT_H) $(CFGLOOP_H) ira.h $(EMIT_RTL_H) $(COMMON_TARGET_H) \
3297 $(HASHTAB_H)
e980df8e
TT
3298sched-deps.o : sched-deps.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
3299 $(RTL_H) $(SCHED_INT_H) $(REGS_H) hard-reg-set.h $(FLAGS_H) insn-config.h \
7c475d11 3300 $(FUNCTION_H) $(INSN_ATTR_H) $(DIAGNOSTIC_CORE_H) $(RECOG_H) $(EXCEPT_H) cselib.h \
1a83e602 3301 ira.h $(PARAMS_H) $(TM_P_H) ira.h $(TARGET_H) $(TREE_H) $(EMIT_RTL_H)
e980df8e
TT
3302sched-rgn.o : sched-rgn.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
3303 $(RTL_H) $(SCHED_INT_H) $(REGS_H) hard-reg-set.h $(FLAGS_H) insn-config.h \
7c475d11 3304 $(FUNCTION_H) $(INSN_ATTR_H) $(DIAGNOSTIC_CORE_H) $(RECOG_H) $(EXCEPT_H) $(PARAMS_H) \
7ee2468b 3305 $(TM_P_H) sel-sched.h $(TARGET_H) $(TREE_PASS_H) \
e855c69d 3306 $(DBGCNT_H)
e980df8e
TT
3307sched-ebb.o : sched-ebb.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
3308 $(RTL_H) $(SCHED_INT_H) $(REGS_H) hard-reg-set.h $(FLAGS_H) insn-config.h \
7c475d11 3309 $(FUNCTION_H) $(INSN_ATTR_H) $(DIAGNOSTIC_CORE_H) $(RECOG_H) $(EXCEPT_H) $(TM_P_H) \
78bde837 3310 $(PARAMS_H) $(TARGET_H)
7ee2468b 3311sched-vis.o : sched-vis.c $(CONFIG_H) $(SYSTEM_H) coretypes.h dumpfile.h $(TM_H) \
e980df8e 3312 $(RTL_H) $(SCHED_INT_H) hard-reg-set.h $(BASIC_BLOCK_H) $(OBSTACK_H) \
7ee2468b 3313 $(INSN_ATTR_H) $(TREE_H)
e855c69d 3314sel-sched.o : sel-sched.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
0cbd9993
MLI
3315 $(RTL_ERROR_H) $(REGS_H) hard-reg-set.h $(FLAGS_H) insn-config.h \
3316 $(FUNCTION_H) $(INSN_ATTR_H) $(RECOG_H) $(EXCEPT_H) $(PARAMS_H) \
7ee2468b 3317 $(TM_P_H) output.h $(TARGET_H) $(TREE_PASS_H) \
464778c0 3318 $(SCHED_INT_H) $(GGC_H) $(TREE_H) langhooks.h rtlhooks-def.h \
5936d944 3319 $(SEL_SCHED_IR_H) $(SEL_SCHED_DUMP_H) sel-sched.h $(DBGCNT_H) $(EMIT_RTL_H)
e855c69d
AB
3320sel-sched-dump.o : sel-sched-dump.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
3321 $(RTL_H) $(REGS_H) hard-reg-set.h $(FLAGS_H) insn-config.h \
7c475d11 3322 $(FUNCTION_H) $(INSN_ATTR_H) $(DIAGNOSTIC_CORE_H) $(RECOG_H) $(EXCEPT_H) $(PARAMS_H) \
7ee2468b 3323 $(TM_P_H) $(TARGET_H) $(TREE_PASS_H) \
464778c0 3324 $(SEL_SCHED_DUMP_H) $(GGC_H) $(TREE_H) $(LANGHOOKS_DEF_H) $(SEL_SCHED_IR_H) \
be7a421e 3325 $(BASIC_BLOCK_H) cselib.h
e855c69d
AB
3326sel-sched-ir.o : sel-sched-ir.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
3327 $(RTL_H) $(REGS_H) hard-reg-set.h $(FLAGS_H) insn-config.h \
7c475d11 3328 $(FUNCTION_H) $(INSN_ATTR_H) $(DIAGNOSTIC_CORE_H) $(RECOG_H) $(EXCEPT_H) $(PARAMS_H) \
7ee2468b 3329 $(TM_P_H) $(TARGET_H) $(TREE_PASS_H) $(SCHED_INT_H) $(GGC_H) \
5936d944
JH
3330 $(TREE_H) langhooks.h rtlhooks-def.h $(SEL_SCHED_IR_H) $(SEL_SCHED_DUMP_H) \
3331 $(EMIT_RTL_H)
0cbd9993 3332final.o : final.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_ERROR_H) \
e980df8e
TT
3333 $(TREE_H) $(FLAGS_H) intl.h $(REGS_H) $(RECOG_H) conditions.h \
3334 insn-config.h $(INSN_ATTR_H) $(FUNCTION_H) output.h hard-reg-set.h \
6f4185d7 3335 $(EXCEPT_H) debug.h xcoffout.h toplev.h $(DIAGNOSTIC_CORE_H) reload.h $(DWARF2OUT_H) \
7072a650 3336 $(TREE_PASS_H) $(BASIC_BLOCK_H) $(TM_P_H) $(TARGET_H) $(EXPR_H) \
7ee2468b 3337 dbxout.h $(CGRAPH_H) $(COVERAGE_H) \
ee666c25 3338 $(DF_H) vecprim.h $(GGC_H) $(CFGLOOP_H) $(PARAMS_H) $(TREE_FLOW_H) \
6f4185d7 3339 $(TARGET_DEF_H) $(TREE_PRETTY_PRINT_H)
0cbd9993 3340recog.o : recog.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_ERROR_H) \
e980df8e 3341 $(FUNCTION_H) $(BASIC_BLOCK_H) $(REGS_H) $(RECOG_H) $(EXPR_H) \
a4b7d13c 3342 $(FLAGS_H) insn-config.h $(INSN_ATTR_H) reload.h \
7ee2468b 3343 addresses.h $(TM_P_H) $(TREE_PASS_H) hard-reg-set.h \
c59ffc41 3344 $(DF_H) $(DBGCNT_H) $(TARGET_H) $(DIAGNOSTIC_CORE_H)
e980df8e 3345reg-stack.o : reg-stack.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
0cbd9993
MLI
3346 $(RTL_ERROR_H) $(TREE_H) $(RECOG_H) $(REGS_H) hard-reg-set.h $(FLAGS_H) \
3347 insn-config.h reload.h $(FUNCTION_H) $(TM_P_H) $(GGC_H) \
7ee2468b 3348 $(BASIC_BLOCK_H) \
5936d944 3349 $(TREE_PASS_H) $(TARGET_H) vecprim.h $(DF_H) $(EMIT_RTL_H)
8e65c286 3350sreal.o: sreal.c $(CONFIG_H) $(SYSTEM_H) coretypes.h sreal.h
e980df8e
TT
3351predict.o: predict.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
3352 $(TREE_H) $(FLAGS_H) insn-config.h $(BASIC_BLOCK_H) $(REGS_H) \
be7a421e 3353 hard-reg-set.h $(DIAGNOSTIC_CORE_H) $(RECOG_H) $(FUNCTION_H) $(EXCEPT_H) \
e980df8e 3354 $(TM_P_H) $(PREDICT_H) sreal.h $(PARAMS_H) $(TARGET_H) $(CFGLOOP_H) \
7ee2468b 3355 $(COVERAGE_H) $(SCEV_H) $(GGC_H) predict.def \
7072a650 3356 $(TREE_FLOW_H) $(TREE_PASS_H) $(EXPR_H) pointer-set.h
7c475d11 3357lists.o: lists.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(DIAGNOSTIC_CORE_H) \
e980df8e
TT
3358 $(RTL_H) $(GGC_H) gt-lists.h
3359bb-reorder.o : bb-reorder.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
7ee2468b 3360 $(RTL_H) $(FLAGS_H) output.h $(FIBHEAP_H) \
e980df8e 3361 $(TARGET_H) $(FUNCTION_H) $(TM_P_H) $(OBSTACK_H) $(EXPR_H) $(REGS_H) \
7c475d11 3362 $(PARAMS_H) toplev.h $(DIAGNOSTIC_CORE_H) $(TREE_PASS_H) $(DF_H) \
0be7e7a6 3363 $(EXCEPT_H) bb-reorder.h
e980df8e 3364tracer.o : tracer.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
78bde837 3365 $(TREE_H) $(BASIC_BLOCK_H) hard-reg-set.h \
7ee2468b 3366 $(FLAGS_H) $(PARAMS_H) $(COVERAGE_H) $(FIBHEAP_H) \
0b9066cf 3367 $(TREE_PASS_H) $(TREE_FLOW_H) $(TREE_INLINE_H) $(CFGLOOP_H)
6f4185d7 3368timevar.o : timevar.c $(CONFIG_H) $(SYSTEM_H) $(TIMEVAR_H)
fac41238
PB
3369regcprop.o : regcprop.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
3370 $(RTL_H) insn-config.h $(BASIC_BLOCK_H) $(REGS_H) hard-reg-set.h \
be7a421e 3371 $(RECOG_H) $(FUNCTION_H) $(OBSTACK_H) $(FLAGS_H) $(TM_P_H) \
7ee2468b 3372 addresses.h reload.h $(DIAGNOSTIC_CORE_H) $(TREE_PASS_H) $(DF_H)
e980df8e 3373regrename.o : regrename.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
0cbd9993 3374 $(RTL_ERROR_H) insn-config.h $(BASIC_BLOCK_H) $(REGS_H) hard-reg-set.h \
e980df8e 3375 output.h $(RECOG_H) $(FUNCTION_H) $(OBSTACK_H) $(FLAGS_H) $(TM_P_H) \
7ee2468b 3376 addresses.h reload.h $(TREE_PASS_H) $(DF_H) $(TARGET_H) \
1f234b83 3377 regrename.h $(EMIT_RTL_H)
e980df8e 3378ifcvt.o : ifcvt.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
c59ffc41 3379 $(REGS_H) $(DIAGNOSTIC_CORE_H) $(FLAGS_H) insn-config.h $(FUNCTION_H) $(RECOG_H) \
a8da523f 3380 $(TARGET_H) $(BASIC_BLOCK_H) $(EXPR_H) output.h $(EXCEPT_H) $(TM_P_H) \
985e963f 3381 $(OPTABS_H) $(CFGLOOP_H) hard-reg-set.h pointer-set.h \
7072a650 3382 $(TREE_PASS_H) $(DF_H) $(DBGCNT_H)
4c77620d
JM
3383params.o : params.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(COMMON_TARGET_H) \
3384 $(PARAMS_H) $(DIAGNOSTIC_CORE_H)
e980df8e
TT
3385pointer-set.o: pointer-set.c pointer-set.h $(CONFIG_H) $(SYSTEM_H)
3386hooks.o: hooks.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(HOOKS_H)
ab9b814d 3387pretty-print.o: $(CONFIG_H) $(SYSTEM_H) coretypes.h intl.h $(PRETTY_PRINT_H)
7de61209 3388errors.o : errors.c $(CONFIG_H) $(SYSTEM_H) errors.h
7ee2468b
SB
3389dbgcnt.o: dbgcnt.c $(CONFIG_H) $(SYSTEM_H) coretypes.h dumpfile.h \
3390 $(DIAGNOSTIC_CORE_H) $(DBGCNT_H)
e980df8e 3391lower-subreg.o : lower-subreg.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
7ee2468b 3392 $(MACHMODE_H) $(TM_H) $(RTL_H) $(TM_P_H) $(FLAGS_H) \
e63ea00c 3393 insn-config.h $(BASIC_BLOCK_H) $(RECOG_H) $(OBSTACK_H) $(BITMAP_H) \
af4ba423
KZ
3394 $(EXPR_H) $(EXCEPT_H) $(REGS_H) $(TREE_PASS_H) $(DF_H) dce.h \
3395 lower-subreg.h
3bd36029 3396target-globals.o : target-globals.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
7c475d11 3397 $(TM_H) insn-config.h $(MACHMODE_H) $(GGC_H) toplev.h target-globals.h \
3e9c326a 3398 $(FLAGS_H) $(REGS_H) $(RTL_H) reload.h expmed.h $(EXPR_H) $(OPTABS_H) \
af4ba423
KZ
3399 $(LIBFUNCS_H) $(CFGLOOP_H) $(IRA_INT_H) builtins.h gcse.h bb-reorder.h \
3400 lower-subreg.h
7ee2468b 3401hw-doloop.o : hw-doloop.c $(CONFIG_H) $(SYSTEM_H) coretypes.h dumpfile.h $(TM_H) \
9d9c740d 3402 $(RTL_H) $(FLAGS_H) $(EXPR_H) hard-reg-set.h $(BASIC_BLOCK_H) $(TM_P_H) \
78bde837 3403 $(DF_H) $(CFGLOOP_H) $(RECOG_H) $(TARGET_H) \
9d9c740d 3404 $(REGS_H) hw-doloop.h
e980df8e
TT
3405$(out_object_file): $(out_file) $(CONFIG_H) coretypes.h $(TM_H) $(TREE_H) \
3406 $(RTL_H) $(REGS_H) hard-reg-set.h insn-config.h conditions.h \
7c475d11 3407 output.h $(INSN_ATTR_H) $(SYSTEM_H) toplev.h $(DIAGNOSTIC_CORE_H) \
9f7f1892
RS
3408 $(TARGET_H) $(LIBFUNCS_H) $(TARGET_DEF_H) $(FUNCTION_H) $(SCHED_INT_H) \
3409 $(TM_P_H) $(EXPR_H) langhooks.h $(GGC_H) $(OPTABS_H) $(REAL_H) \
8076c3e3
BS
3410 tm-constrs.h $(GIMPLE_H) $(DF_H) cselib.h $(COMMON_TARGET_H) hw-doloop.h \
3411 regrename.h
7980bfb8 3412 $(COMPILER) -c $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) \
e980df8e
TT
3413 $(out_file) $(OUTPUT_OPTION)
3414
c49a6962 3415$(common_out_object_file): $(common_out_file) $(CONFIG_H) $(SYSTEM_H) \
4c77620d 3416 coretypes.h $(COMMON_TARGET_H) $(COMMON_TARGET_DEF_H) $(PARAMS_H) \
677f3fa8 3417 $(DIAGNOSTIC_CORE_H) $(FLAGS_H) $(OPTS_H) $(TM_H) $(TM_P_H) $(MACHMODE_H)
c49a6962
JM
3418 $(COMPILER) -c $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) \
3419 $< $(OUTPUT_OPTION)
544eb21e 3420#\f
4c457b6b 3421# Generate header and source files from the machine description,
79d8453e
RS
3422# and compile them.
3423
1b0c37d7 3424.PRECIOUS: insn-config.h insn-flags.h insn-codes.h insn-constants.h \
79d8453e 3425 insn-emit.c insn-recog.c insn-extract.c insn-output.c insn-peep.c \
41723253
SB
3426 insn-attr.h insn-attr-common.h insn-attrtab.c insn-dfatab.c \
3427 insn-latencytab.c insn-preds.c
79d8453e 3428
26be549a
RH
3429# Dependencies for the md file. The first time through, we just assume
3430# the md file itself and the generated dependency file (in order to get
3431# it built). The second time through we have the dependency file.
3432-include mddeps.mk
3433MD_DEPS = s-mddeps $(md_file) $(MD_INCLUDES)
3434
3435s-mddeps: $(md_file) $(MD_INCLUDES) build/genmddeps$(build_exeext)
3436 $(RUN_GEN) build/genmddeps$(build_exeext) $(md_file) > tmp-mddeps
3437 $(SHELL) $(srcdir)/../move-if-change tmp-mddeps mddeps.mk
3438 $(STAMP) s-mddeps
3439
e980df8e 3440# Header dependencies for generated source files.
e980df8e 3441insn-attrtab.o : insn-attrtab.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
40013784 3442 $(TM_H) $(RTL_H) $(REGS_H) output.h $(INSN_ATTR_H) \
c59ffc41 3443 insn-config.h $(DIAGNOSTIC_CORE_H) $(RECOG_H) $(TM_P_H) $(FLAGS_H)
e980df8e 3444insn-automata.o : insn-automata.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
40013784 3445 $(TM_H) $(RTL_H) $(REGS_H) output.h $(INSN_ATTR_H) \
41723253
SB
3446 insn-config.h toplev.h $(DIAGNOSTIC_CORE_H) $(RECOG_H) \
3447 $(TM_P_H) $(FLAGS_H) $(EMIT_RTL_H)
3448insn-dfatab.o : insn-dfatab.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
3449 $(TM_H) $(RTL_H) $(REGS_H) output.h $(INSN_ATTR_H) \
3450 insn-config.h $(DIAGNOSTIC_CORE_H) $(RECOG_H) $(TM_P_H) $(FLAGS_H)
e980df8e 3451insn-emit.o : insn-emit.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
40013784 3452 $(RTL_H) $(TM_P_H) $(FUNCTION_H) $(EXPR_H) $(OPTABS_H) \
e63ea00c 3453 dfp.h $(FLAGS_H) output.h insn-config.h hard-reg-set.h $(RECOG_H) \
3b1552c1 3454 $(RESOURCE_H) reload.h $(DIAGNOSTIC_CORE_H) $(REGS_H) tm-constrs.h \
6399c0ab 3455 $(GGC_H) $(BASIC_BLOCK_H) $(TARGET_H)
3341aeda 3456insn-enums.o : insn-enums.c $(CONFIG_H) $(SYSTEM_H) insn-constants.h
e980df8e 3457insn-extract.o : insn-extract.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
c59ffc41 3458 $(TM_H) $(RTL_H) $(DIAGNOSTIC_CORE_H) insn-config.h $(RECOG_H)
41723253
SB
3459insn-latencytab.o : insn-latencytab.c $(CONFIG_H) $(SYSTEM_H) \
3460 coretypes.h $(TM_H) $(RTL_H) $(REGS_H) output.h $(INSN_ATTR_H) \
3461 insn-config.h $(DIAGNOSTIC_CORE_H) $(RECOG_H) $(TM_P_H) $(FLAGS_H)
e980df8e 3462insn-modes.o : insn-modes.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
40013784 3463 $(MACHMODE_H)
e980df8e 3464insn-opinit.o : insn-opinit.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
e63ea00c 3465 $(TM_H) $(RTL_H) $(TM_P_H) insn-config.h $(FLAGS_H) $(RECOG_H) \
cd1440b1 3466 $(EXPR_H) $(OPTABS_H)
e980df8e 3467insn-output.o : insn-output.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
40013784 3468 $(TM_H) $(RTL_H) $(GGC_H) $(REGS_H) conditions.h \
e980df8e 3469 hard-reg-set.h insn-config.h $(INSN_ATTR_H) $(EXPR_H) output.h \
c59ffc41 3470 $(RECOG_H) $(FUNCTION_H) $(DIAGNOSTIC_CORE_H) $(FLAGS_H) insn-codes.h $(TM_P_H)\
e980df8e
TT
3471 $(TARGET_H) tm-constrs.h
3472insn-peep.o : insn-peep.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
40013784 3473 insn-config.h $(RTL_H) $(TM_P_H) $(REGS_H) output.h \
c59ffc41 3474 $(RECOG_H) $(EXCEPT_H) $(FUNCTION_H) $(DIAGNOSTIC_CORE_H) $(FLAGS_H) tm-constrs.h
e980df8e
TT
3475insn-preds.o : insn-preds.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
3476 $(TM_H) $(RTL_H) $(TREE_H) insn-config.h $(RECOG_H) output.h \
3477 $(FLAGS_H) $(FUNCTION_H) hard-reg-set.h $(RESOURCE_H) $(TM_P_H) \
c59ffc41 3478 $(DIAGNOSTIC_CORE_H) reload.h $(REGS_H) tm-constrs.h
e980df8e
TT
3479insn-recog.o : insn-recog.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
3480 $(TM_H) $(RTL_H) insn-config.h $(RECOG_H) output.h $(FLAGS_H) \
c59ffc41 3481 $(FUNCTION_H) hard-reg-set.h $(RESOURCE_H) $(TM_P_H) $(DIAGNOSTIC_CORE_H) \
40013784 3482 reload.h $(REGS_H) tm-constrs.h
e980df8e 3483
cbbbdc2c 3484# For each of the files generated by running a generator program over
9b68b6ea
RS
3485# the machine description, the following static pattern rules run the
3486# generator program only if the machine description has changed,
3487# but touch the target file only when its contents actually change.
3488# The "; @true" construct forces Make to recheck the timestamp on
3489# the target file.
cbbbdc2c 3490
88a00ef7
JM
3491simple_rtl_generated_h = insn-attr.h insn-attr-common.h insn-codes.h \
3492 insn-config.h insn-flags.h
cbbbdc2c 3493
41723253 3494simple_rtl_generated_c = insn-automata.c insn-emit.c \
cd1440b1 3495 insn-extract.c insn-output.c \
9b68b6ea
RS
3496 insn-peep.c insn-recog.c
3497
3498simple_generated_h = $(simple_rtl_generated_h) insn-constants.h
3499
0fe60a1b 3500simple_generated_c = $(simple_rtl_generated_c) insn-enums.c
9b68b6ea
RS
3501
3502$(simple_generated_h:insn-%.h=s-%) \
3503$(simple_generated_c:insn-%.c=s-%): s-%: $(MD_DEPS)
3504
3505$(simple_rtl_generated_h:insn-%.h=s-%) \
3506$(simple_rtl_generated_c:insn-%.c=s-%): s-%: insn-conditions.md
cbbbdc2c
ZW
3507
3508$(simple_generated_h): insn-%.h: s-%; @true
3509
9b68b6ea 3510$(simple_generated_h:insn-%.h=s-%): s-%: build/gen%$(build_exeext)
1c7352cd 3511 $(RUN_GEN) build/gen$*$(build_exeext) $(md_file) \
9b68b6ea 3512 $(filter insn-conditions.md,$^) > tmp-$*.h
cbbbdc2c
ZW
3513 $(SHELL) $(srcdir)/../move-if-change tmp-$*.h insn-$*.h
3514 $(STAMP) s-$*
3515
3516$(simple_generated_c): insn-%.c: s-%; @true
9b68b6ea 3517$(simple_generated_c:insn-%.c=s-%): s-%: build/gen%$(build_exeext)
1c7352cd 3518 $(RUN_GEN) build/gen$*$(build_exeext) $(md_file) \
9b68b6ea 3519 $(filter insn-conditions.md,$^) > tmp-$*.c
cbbbdc2c
ZW
3520 $(SHELL) $(srcdir)/../move-if-change tmp-$*.c insn-$*.c
3521 $(STAMP) s-$*
3522
3523# gencheck doesn't read the machine description, and the file produced
3524# doesn't use the insn-* convention.
3525tree-check.h: s-check ; @true
3526s-check : build/gencheck$(build_exeext)
3527 $(RUN_GEN) build/gencheck$(build_exeext) > tmp-check.h
3528 $(SHELL) $(srcdir)/../move-if-change tmp-check.h tree-check.h
3529 $(STAMP) s-check
2199e5fa 3530
41723253
SB
3531# genattrtab produces three files: tmp-{attrtab.c,dfatab.c,latencytab.c}
3532insn-attrtab.c insn-dfatab.c insn-latencytab.c: s-attrtab ; @true
3533s-attrtab : $(MD_DEPS) build/genattrtab$(build_exeext) \
3534 insn-conditions.md
3535 $(RUN_GEN) build/genattrtab$(build_exeext) $(md_file) insn-conditions.md \
3536 -Atmp-attrtab.c -Dtmp-dfatab.c -Ltmp-latencytab.c
3537 $(SHELL) $(srcdir)/../move-if-change tmp-attrtab.c insn-attrtab.c
3538 $(SHELL) $(srcdir)/../move-if-change tmp-dfatab.c insn-dfatab.c
3539 $(SHELL) $(srcdir)/../move-if-change tmp-latencytab.c insn-latencytab.c
3540 $(STAMP) s-attrtab
3541
cd1440b1
RH
3542# genopinit produces two files.
3543insn-opinit.c insn-opinit.h: s-opinit ; @true
3544s-opinit: $(MD_DEPS) build/genopinit$(build_exeext) insn-conditions.md
3545 $(RUN_GEN) build/genopinit$(build_exeext) $(md_file) \
3546 insn-conditions.md -htmp-opinit.h -ctmp-opinit.c
3547 $(SHELL) $(srcdir)/../move-if-change tmp-opinit.h insn-opinit.h
3548 $(SHELL) $(srcdir)/../move-if-change tmp-opinit.c insn-opinit.c
3549 $(STAMP) s-opinit
3550
1c7352cd 3551# gencondmd doesn't use the standard naming convention.
e980df8e 3552build/gencondmd.c: s-conditions; @true
1c7352cd
ZW
3553s-conditions: $(MD_DEPS) build/genconditions$(build_exeext)
3554 $(RUN_GEN) build/genconditions$(build_exeext) $(md_file) > tmp-condmd.c
e980df8e 3555 $(SHELL) $(srcdir)/../move-if-change tmp-condmd.c build/gencondmd.c
1c7352cd
ZW
3556 $(STAMP) s-conditions
3557
3558insn-conditions.md: s-condmd; @true
3559s-condmd: build/gencondmd$(build_exeext)
3560 $(RUN_GEN) build/gencondmd$(build_exeext) > tmp-cond.md
3561 $(SHELL) $(srcdir)/../move-if-change tmp-cond.md insn-conditions.md
3562 $(STAMP) s-condmd
3563
3564
cbbbdc2c
ZW
3565# These files are generated by running the same generator more than
3566# once with different options, so they have custom rules. The
3567# stampfile idiom is the same.
cbbbdc2c 3568genrtl.h: s-genrtl-h; @true
2199e5fa 3569
cbbbdc2c 3570s-genrtl-h: build/gengenrtl$(build_exeext)
6ac9d3a3 3571 $(RUN_GEN) build/gengenrtl$(build_exeext) > tmp-genrtl.h
cbbbdc2c
ZW
3572 $(SHELL) $(srcdir)/../move-if-change tmp-genrtl.h genrtl.h
3573 $(STAMP) s-genrtl-h
3574
3575insn-modes.c: s-modes; @true
3576insn-modes.h: s-modes-h; @true
3577min-insn-modes.c: s-modes-m; @true
0974c7d7 3578
3b620440 3579s-modes: build/genmodes$(build_exeext)
cbbbdc2c
ZW
3580 $(RUN_GEN) build/genmodes$(build_exeext) > tmp-modes.c
3581 $(SHELL) $(srcdir)/../move-if-change tmp-modes.c insn-modes.c
3582 $(STAMP) s-modes
3583
3584s-modes-h: build/genmodes$(build_exeext)
3b620440 3585 $(RUN_GEN) build/genmodes$(build_exeext) -h > tmp-modes.h
88e3a2a3 3586 $(SHELL) $(srcdir)/../move-if-change tmp-modes.h insn-modes.h
cbbbdc2c
ZW
3587 $(STAMP) s-modes-h
3588
3589s-modes-m: build/genmodes$(build_exeext)
3b620440 3590 $(RUN_GEN) build/genmodes$(build_exeext) -m > tmp-min-modes.c
88e3a2a3 3591 $(SHELL) $(srcdir)/../move-if-change tmp-min-modes.c min-insn-modes.c
cbbbdc2c 3592 $(STAMP) s-modes-m
0974c7d7 3593
cbbbdc2c
ZW
3594insn-preds.c: s-preds; @true
3595tm-preds.h: s-preds-h; @true
279bb624 3596tm-constrs.h: s-constrs-h; @true
1b0c37d7 3597
26be549a 3598s-preds: $(MD_DEPS) build/genpreds$(build_exeext)
3b620440 3599 $(RUN_GEN) build/genpreds$(build_exeext) $(md_file) > tmp-preds.c
e543e219 3600 $(SHELL) $(srcdir)/../move-if-change tmp-preds.c insn-preds.c
1b0c37d7
ZW
3601 $(STAMP) s-preds
3602
cbbbdc2c
ZW
3603s-preds-h: $(MD_DEPS) build/genpreds$(build_exeext)
3604 $(RUN_GEN) build/genpreds$(build_exeext) -h $(md_file) > tmp-preds.h
3605 $(SHELL) $(srcdir)/../move-if-change tmp-preds.h tm-preds.h
3606 $(STAMP) s-preds-h
e543e219 3607
279bb624
DE
3608s-constrs-h: $(MD_DEPS) build/genpreds$(build_exeext)
3609 $(RUN_GEN) build/genpreds$(build_exeext) -c $(md_file) > tmp-constrs.h
3610 $(SHELL) $(srcdir)/../move-if-change tmp-constrs.h tm-constrs.h
3611 $(STAMP) s-constrs-h
3612
38f8b050 3613target-hooks-def.h: s-target-hooks-def-h; @true
c18a9bc4
JR
3614# make sure that when we build info files, the used tm.texi is up to date.
3615$(srcdir)/doc/tm.texi: s-tm-texi; @true
38f8b050
JR
3616
3617s-target-hooks-def-h: build/genhooks$(build_exeext)
acce4e77
JM
3618 $(RUN_GEN) build/genhooks$(build_exeext) "Target Hook" \
3619 > tmp-target-hooks-def.h
38f8b050
JR
3620 $(SHELL) $(srcdir)/../move-if-change tmp-target-hooks-def.h \
3621 target-hooks-def.h
3622 $(STAMP) s-target-hooks-def-h
3623
acce4e77
JM
3624c-family/c-target-hooks-def.h: s-c-target-hooks-def-h; @true
3625
3626s-c-target-hooks-def-h: build/genhooks$(build_exeext)
3627 $(RUN_GEN) build/genhooks$(build_exeext) "C Target Hook" \
3628 > tmp-c-target-hooks-def.h
3629 $(SHELL) $(srcdir)/../move-if-change tmp-c-target-hooks-def.h \
3630 c-family/c-target-hooks-def.h
3631 $(STAMP) s-c-target-hooks-def-h
3632
c49a6962
JM
3633common/common-target-hooks-def.h: s-common-target-hooks-def-h; @true
3634
3635s-common-target-hooks-def-h: build/genhooks$(build_exeext)
3636 $(RUN_GEN) build/genhooks$(build_exeext) "Common Target Hook" \
3637 > tmp-common-target-hooks-def.h
3638 $(SHELL) $(srcdir)/../move-if-change tmp-common-target-hooks-def.h \
3639 common/common-target-hooks-def.h
3640 $(STAMP) s-common-target-hooks-def-h
3641
38f8b050 3642# check if someone mistakenly only changed tm.texi.
c18a9bc4
JR
3643# We use a different pathname here to avoid a circular dependency.
3644s-tm-texi: $(srcdir)/doc/../doc/tm.texi
e82a40fc 3645
459d4972
JR
3646# The tm.texi we want to compare against / check into svn should have
3647# unix-style line endings. To make this work on MinGW, remove \r.
3648# \r is not portable to Solaris tr, therefore we have a special
3649# case for ASCII. We use \r for other encodings like EBCDIC.
38f8b050 3650s-tm-texi: build/genhooks$(build_exeext) $(srcdir)/doc/tm.texi.in
acce4e77 3651 $(RUN_GEN) build/genhooks$(build_exeext) -d \
38f8b050 3652 $(srcdir)/doc/tm.texi.in > tmp-tm.texi
459d4972
JR
3653 case `echo X|tr X '\101'` in \
3654 A) tr -d '\015' < tmp-tm.texi > tmp2-tm.texi ;; \
93b39277 3655 *) tr -d '\r' < tmp-tm.texi > tmp2-tm.texi ;; \
459d4972
JR
3656 esac
3657 mv tmp2-tm.texi tmp-tm.texi
38f8b050
JR
3658 $(SHELL) $(srcdir)/../move-if-change tmp-tm.texi tm.texi
3659 @if cmp -s $(srcdir)/doc/tm.texi tm.texi; then \
3660 $(STAMP) $@; \
3661 elif test $(srcdir)/doc/tm.texi -nt $(srcdir)/doc/tm.texi.in \
acce4e77
JM
3662 && ( test $(srcdir)/doc/tm.texi -nt $(srcdir)/target.def \
3663 || test $(srcdir)/doc/tm.texi -nt $(srcdir)/c-family/c-target.def \
c49a6962 3664 || test $(srcdir)/doc/tm.texi -nt $(srcdir)/common/common-target.def \
acce4e77 3665 ); then \
38f8b050
JR
3666 echo >&2 ; \
3667 echo You should edit $(srcdir)/doc/tm.texi.in rather than $(srcdir)/doc/tm.texi . >&2 ; \
3668 false; \
3669 else \
3670 echo >&2 ; \
3671 echo Verify that you have permission to grant a GFDL license for all >&2 ; \
3672 echo new text in tm.texi, then copy it to $(srcdir)/doc/tm.texi. >&2 ; \
3673 false; \
3674 fi
3675
2d593c86 3676GTFILES = $(CPP_ID_DATA_H) $(srcdir)/input.h $(srcdir)/coretypes.h \
f4ce02c5 3677 $(srcdir)/vecprim.h $(srcdir)/vecir.h \
2d593c86 3678 $(host_xm_file_list) \
4f4e53dd 3679 $(tm_file_list) $(HASHTAB_H) $(SPLAY_TREE_H) $(srcdir)/bitmap.h \
4862826d 3680 $(srcdir)/alias.h $(srcdir)/coverage.c $(srcdir)/rtl.h \
b6feb796 3681 $(srcdir)/optabs.h $(srcdir)/tree.h $(srcdir)/libfuncs.h $(SYMTAB_H) \
69c32ec8 3682 $(srcdir)/real.h $(srcdir)/function.h $(srcdir)/insn-addr.h $(srcdir)/hwint.h \
1e1ba002 3683 $(srcdir)/fixed-value.h \
46c30019 3684 $(srcdir)/output.h $(srcdir)/cfgloop.h \
369451ec 3685 $(srcdir)/cselib.h $(srcdir)/basic-block.h $(srcdir)/ipa-ref.h $(srcdir)/cgraph.h \
1ab24192 3686 $(srcdir)/reload.h $(srcdir)/caller-save.c $(srcdir)/symtab.c \
988d1653 3687 $(srcdir)/alias.c $(srcdir)/bitmap.c $(srcdir)/cselib.c $(srcdir)/cgraph.c \
04f92ff4 3688 $(srcdir)/ipa-prop.c $(srcdir)/ipa-cp.c \
647a1567
RH
3689 $(srcdir)/dbxout.c \
3690 $(srcdir)/dwarf2out.h \
3691 $(srcdir)/dwarf2asm.c \
3692 $(srcdir)/dwarf2cfi.c \
3693 $(srcdir)/dwarf2out.c \
726a989a 3694 $(srcdir)/tree-vect-generic.c \
11a67599 3695 $(srcdir)/dojump.c \
9994a182 3696 $(srcdir)/emit-rtl.c $(srcdir)/except.h $(srcdir)/explow.c $(srcdir)/expr.c \
aa331cc5 3697 $(srcdir)/expr.h \
9994a182 3698 $(srcdir)/function.c $(srcdir)/except.c \
c6a13190 3699 $(srcdir)/gcse.c $(srcdir)/godump.c \
6399c0ab 3700 $(srcdir)/lists.c $(srcdir)/optabs.c \
360d045b 3701 $(srcdir)/profile.c $(srcdir)/mcf.c \
78bde837 3702 $(srcdir)/reg-stack.c $(srcdir)/cfgrtl.c \
7efcb746 3703 $(srcdir)/sdbout.c $(srcdir)/stor-layout.c \
8a89dbd2 3704 $(srcdir)/stringpool.c $(srcdir)/tree.c $(srcdir)/varasm.c \
726a989a
RB
3705 $(srcdir)/gimple.h $(srcdir)/gimple.c \
3706 $(srcdir)/tree-mudflap.c $(srcdir)/tree-flow.h \
ac182688 3707 $(srcdir)/tree-ssanames.c $(srcdir)/tree-eh.c $(srcdir)/tree-ssa-address.c \
726a989a
RB
3708 $(srcdir)/tree-cfg.c \
3709 $(srcdir)/tree-dfa.c \
6de9cd9a 3710 $(srcdir)/tree-iterator.c $(srcdir)/gimplify.c \
726a989a
RB
3711 $(srcdir)/tree-chrec.h \
3712 $(srcdir)/tree-scalar-evolution.c \
456cde30 3713 $(srcdir)/tree-ssa-operands.h \
8a76829c 3714 $(srcdir)/tree-profile.c $(srcdir)/tree-nested.c \
726a989a
RB
3715 $(srcdir)/tree-parloops.c \
3716 $(srcdir)/omp-low.c \
7be82279 3717 $(srcdir)/targhooks.c $(out_file) $(srcdir)/passes.c $(srcdir)/cgraphunit.c \
66a20fc2 3718 $(srcdir)/cgraphclones.c \
726a989a
RB
3719 $(srcdir)/tree-ssa-propagate.c \
3720 $(srcdir)/tree-phinodes.c \
d7f09764 3721 $(srcdir)/lto-symtab.c \
5006671f 3722 $(srcdir)/tree-ssa-alias.h \
fb3f88cc 3723 $(srcdir)/ipa-prop.h \
0a35513e 3724 $(srcdir)/trans-mem.c \
49ba8180 3725 $(srcdir)/lto-streamer.h \
3bd36029 3726 $(srcdir)/target-globals.h \
632b4f8e 3727 $(srcdir)/ipa-inline.h \
e2500fed
GK
3728 @all_gtfiles@
3729
8de8de02
OH
3730# Compute the list of GT header files from the corresponding C sources,
3731# possibly nested within config or language subdirectories. Match gengtype's
3732# behavior in this respect: gt-LANG-file.h for "file" anywhere within a LANG
3733# language subdir, gt-file.h otherwise (no subdir indication for config/
3734# related sources).
3735
3736GTFILES_H = $(subst /,-, \
3737 $(shell echo $(patsubst $(srcdir)/%,gt-%, \
3738 $(patsubst %.c,%.h, \
3739 $(filter %.c, $(GTFILES)))) \
5cff8550 3740 | sed -e "s|/[^ ]*/|/|g" -e "s|gt-config/|gt-|g"))
11a67599
ZW
3741
3742GTFILES_LANG_H = $(patsubst [%], gtype-%.h, $(filter [%], $(GTFILES)))
3743ALL_GTFILES_H := $(sort $(GTFILES_H) $(GTFILES_LANG_H))
3744
3745# $(GTFILES) may be too long to put on a command line, so we have to
3746# write it out to a file (taking care not to do that in a way that
3747# overflows a command line!) and then have gengtype read the file in.
2f035a33 3748
f142b5bc 3749$(ALL_GTFILES_H) gtype-desc.c gtype-desc.h gtype.state: s-gtype ; @true
11a67599 3750
92724e1d
BS
3751### Common flags to gengtype [e.g. -v or -B backupdir]
3752GENGTYPE_FLAGS=
3753
11a67599
ZW
3754gtyp-input.list: s-gtyp-input ; @true
3755s-gtyp-input: Makefile
a4e4a2d6 3756 @: $(call write_entries_to_file,$(GTFILES),tmp-gi.list)
11a67599
ZW
3757 $(SHELL) $(srcdir)/../move-if-change tmp-gi.list gtyp-input.list
3758 $(STAMP) s-gtyp-input
3759
3760s-gtype: build/gengtype$(build_exeext) $(filter-out [%], $(GTFILES)) \
3761 gtyp-input.list
92724e1d
BS
3762# First, parse all files and save a state file.
3763 $(RUN_GEN) build/gengtype$(build_exeext) $(GENGTYPE_FLAGS) \
f142b5bc 3764 -S $(srcdir) -I gtyp-input.list -w tmp-gtype.state
92724e1d
BS
3765# Second, read the state file and generate all files. This ensure that
3766# gtype.state is correctly read:
f142b5bc 3767 $(SHELL) $(srcdir)/../move-if-change tmp-gtype.state gtype.state
92724e1d
BS
3768 $(RUN_GEN) build/gengtype$(build_exeext) $(GENGTYPE_FLAGS) \
3769 -r gtype.state
e2500fed
GK
3770 $(STAMP) s-gtype
3771
39dabefd
SB
3772generated_files = config.h tm.h $(TM_P_H) $(TM_H) multilib.h \
3773 $(simple_generated_h) specs.h \
3774 tree-check.h genrtl.h insn-modes.h tm-preds.h tm-constrs.h \
3775 $(ALL_GTFILES_H) gtype-desc.c gtype-desc.h gcov-iov.h
3776
3777# In order for parallel make to really start compiling the expensive
946bdf67 3778# objects from $(OBJS) as early as possible, build all their
39dabefd
SB
3779# prerequisites strictly before all objects.
3780$(ALL_HOST_OBJS) : | $(generated_files)
3781
544eb21e 3782#\f
cbbbdc2c 3783# How to compile object files to run on the build machine.
4b09846b 3784
e980df8e 3785build/%.o : # dependencies provided by explicit rule later
7980bfb8
ILT
3786 $(COMPILER_FOR_BUILD) -c $(BUILD_COMPILERFLAGS) $(BUILD_CPPFLAGS) \
3787 -o $@ $<
e980df8e 3788
f8ed6dc5
JS
3789## build/version.o is compiled by the $(COMPILER_FOR_BUILD) but needs
3790## several C macro definitions, just like version.o
3791build/version.o: version.c version.h \
3792 $(REVISION) $(DATESTAMP) $(BASEVER) $(DEVPHASE)
3793 $(COMPILER_FOR_BUILD) -c $(BUILD_COMPILERFLAGS) $(BUILD_CPPFLAGS) \
3794 -DBASEVER=$(BASEVER_s) -DDATESTAMP=$(DATESTAMP_s) \
3795 -DREVISION=$(REVISION_s) \
3796 -DDEVPHASE=$(DEVPHASE_s) -DPKGVERSION=$(PKGVERSION_s) \
3797 -DBUGURL=$(BUGURL_s) -o $@ $<
3798
e980df8e
TT
3799# Header dependencies for the programs that generate source code.
3800# These are library modules...
3801build/errors.o : errors.c $(BCONFIG_H) $(SYSTEM_H) errors.h
3802build/gensupport.o: gensupport.c $(BCONFIG_H) $(SYSTEM_H) coretypes.h \
3803 $(GTM_H) $(RTL_BASE_H) $(OBSTACK_H) errors.h $(HASHTAB_H) \
10692477 3804 $(READ_MD_H) gensupport.h
e980df8e
TT
3805build/ggc-none.o : ggc-none.c $(BCONFIG_H) $(SYSTEM_H) coretypes.h \
3806 $(GGC_H)
3807build/min-insn-modes.o : min-insn-modes.c $(BCONFIG_H) $(SYSTEM_H) \
3808 $(MACHMODE_H)
3809build/print-rtl.o: print-rtl.c $(BCONFIG_H) $(SYSTEM_H) coretypes.h \
3810 $(GTM_H) $(RTL_BASE_H)
10692477 3811build/read-md.o: read-md.c $(BCONFIG_H) $(SYSTEM_H) coretypes.h \
bb933490 3812 $(HASHTAB_H) errors.h $(READ_MD_H)
e980df8e 3813build/read-rtl.o: read-rtl.c $(BCONFIG_H) $(SYSTEM_H) coretypes.h \
10692477
RS
3814 $(GTM_H) $(RTL_BASE_H) $(OBSTACK_H) $(HASHTAB_H) $(READ_MD_H) \
3815 gensupport.h
e980df8e 3816build/rtl.o: rtl.c $(BCONFIG_H) coretypes.h $(GTM_H) $(SYSTEM_H) \
40013784 3817 $(RTL_H) $(GGC_H) errors.h
3e097227 3818build/vec.o : vec.c $(BCONFIG_H) $(SYSTEM_H) coretypes.h $(VEC_H) \
7c475d11 3819 $(GGC_H) toplev.h $(DIAGNOSTIC_CORE_H)
e980df8e 3820build/gencondmd.o : build/gencondmd.c $(BCONFIG_H) $(SYSTEM_H) \
f9897dfa
L
3821 coretypes.h $(GTM_H) insn-constants.h \
3822 $(filter-out insn-flags.h, $(RTL_H) $(TM_P_H) $(FUNCTION_H) $(REGS_H) \
7c475d11 3823 $(RECOG_H) output.h $(FLAGS_H) $(RESOURCE_H) toplev.h $(DIAGNOSTIC_CORE_H) reload.h \
f9897dfa 3824 $(EXCEPT_H) tm-constrs.h)
0b50988a
EB
3825# This pulls in tm-pred.h which contains inline functions wrapping up
3826# predicates from the back-end so those functions must be discarded.
3827# No big deal since gencondmd.c is a dummy file for non-GCC compilers.
3828build/gencondmd.o : \
3829 BUILD_CFLAGS := $(filter-out -fkeep-inline-functions, $(BUILD_CFLAGS))
4977bab6 3830
e980df8e
TT
3831# ...these are the programs themselves.
3832build/genattr.o : genattr.c $(RTL_BASE_H) $(BCONFIG_H) $(SYSTEM_H) \
10692477 3833 coretypes.h $(GTM_H) errors.h $(READ_MD_H) gensupport.h
88a00ef7
JM
3834build/genattr-common.o : genattr-common.c $(RTL_BASE_H) $(BCONFIG_H) \
3835 $(SYSTEM_H) coretypes.h $(GTM_H) errors.h $(READ_MD_H) gensupport.h
e980df8e
TT
3836build/genattrtab.o : genattrtab.c $(RTL_BASE_H) $(OBSTACK_H) \
3837 $(BCONFIG_H) $(SYSTEM_H) coretypes.h $(GTM_H) errors.h $(GGC_H) \
f9bf5a8e 3838 $(READ_MD_H) gensupport.h vecprim.h $(FNMATCH_H)
e980df8e 3839build/genautomata.o : genautomata.c $(RTL_BASE_H) $(OBSTACK_H) \
3e097227 3840 $(BCONFIG_H) $(SYSTEM_H) coretypes.h $(GTM_H) errors.h $(VEC_H) \
f9bf5a8e 3841 $(HASHTAB_H) gensupport.h $(FNMATCH_H)
bfefafc6 3842build/gencheck.o : gencheck.c all-tree.def $(BCONFIG_H) $(GTM_H) \
16fe2c09
JJ
3843 $(SYSTEM_H) coretypes.h tree.def c-family/c-common.def \
3844 $(lang_tree_files) gimple.def
e980df8e
TT
3845build/genchecksum.o : genchecksum.c $(BCONFIG_H) $(SYSTEM_H) $(MD5_H)
3846build/gencodes.o : gencodes.c $(RTL_BASE_H) $(BCONFIG_H) $(SYSTEM_H) \
3847 coretypes.h $(GTM_H) errors.h gensupport.h
3848build/genconditions.o : genconditions.c $(RTL_BASE_H) $(BCONFIG_H) \
10692477
RS
3849 $(SYSTEM_H) coretypes.h $(GTM_H) errors.h $(HASHTAB_H) $(READ_MD_H) \
3850 gensupport.h
e980df8e
TT
3851build/genconfig.o : genconfig.c $(RTL_BASE_H) $(BCONFIG_H) $(SYSTEM_H) \
3852 coretypes.h $(GTM_H) errors.h gensupport.h
9b68b6ea
RS
3853build/genconstants.o : genconstants.c $(BCONFIG_H) $(SYSTEM_H) \
3854 coretypes.h errors.h $(READ_MD_H)
e980df8e 3855build/genemit.o : genemit.c $(RTL_BASE_H) $(BCONFIG_H) $(SYSTEM_H) \
10692477 3856 coretypes.h $(GTM_H) errors.h $(READ_MD_H) gensupport.h
0fe60a1b
RS
3857build/genenums.o : genenums.c $(BCONFIG_H) $(SYSTEM_H) \
3858 coretypes.h errors.h $(READ_MD_H)
e980df8e 3859build/genextract.o : genextract.c $(RTL_BASE_H) $(BCONFIG_H) \
10692477
RS
3860 $(SYSTEM_H) coretypes.h $(GTM_H) errors.h $(READ_MD_H) gensupport.h \
3861 vecprim.h
e980df8e 3862build/genflags.o : genflags.c $(RTL_BASE_H) $(OBSTACK_H) $(BCONFIG_H) \
10692477 3863 $(SYSTEM_H) coretypes.h $(GTM_H) errors.h $(READ_MD_H) gensupport.h
e980df8e 3864build/gengenrtl.o : gengenrtl.c $(BCONFIG_H) $(SYSTEM_H) rtl.def
4a061351
SB
3865
3866# The gengtype generator program is special: Two versions are built.
3867# One is for the build machine, and one is for the host to allow
3868# plugins to define their types and generate the supporting GGC
3869# datastructures and routines with GTY markers.
3870# The host object files depend on CONFIG_H, and the build objects
3871# on BCONFIG_H. For the build objects, add -DGENERATOR_FILE manually,
3872# the build-%: rule doesn't apply to them.
3873
f142b5bc
RG
3874gengtype-lex.o build/gengtype-lex.o : gengtype-lex.c gengtype.h $(SYSTEM_H)
3875gengtype-lex.o: $(CONFIG_H)
4a061351 3876CFLAGS-gengtype-lex.o += -DGENERATOR_FILE
f142b5bc 3877build/gengtype-lex.o: $(BCONFIG_H)
4a061351 3878
f142b5bc 3879gengtype-parse.o build/gengtype-parse.o : gengtype-parse.c gengtype.h \
e980df8e 3880 $(SYSTEM_H)
f142b5bc 3881gengtype-parse.o: $(CONFIG_H)
4a061351 3882CFLAGS-gengtype-parse.o += -DGENERATOR_FILE
f142b5bc 3883build/gengtype-parse.o: $(BCONFIG_H)
4a061351 3884
f142b5bc
RG
3885gengtype-state.o build/gengtype-state.o: gengtype-state.c $(SYSTEM_H) \
3886 gengtype.h errors.h double-int.h version.h $(HASHTAB_H) $(OBSTACK_H) \
3887 $(XREGEX_H)
3888gengtype-state.o: $(CONFIG_H)
4a061351 3889CFLAGS-gengtype-state.o += -DGENERATOR_FILE
f142b5bc 3890build/gengtype-state.o: $(BCONFIG_H)
4a061351 3891
f142b5bc
RG
3892gengtype.o build/gengtype.o : gengtype.c $(SYSTEM_H) gengtype.h \
3893 rtl.def insn-notes.def errors.h double-int.h version.h $(HASHTAB_H) \
81ae7e14 3894 $(OBSTACK_H) $(XREGEX_H)
f142b5bc 3895gengtype.o: $(CONFIG_H)
4a061351 3896CFLAGS-gengtype.o += -DGENERATOR_FILE
f142b5bc 3897build/gengtype.o: $(BCONFIG_H)
4a061351 3898
e980df8e 3899build/genmddeps.o: genmddeps.c $(BCONFIG_H) $(SYSTEM_H) coretypes.h \
9b68b6ea 3900 errors.h $(READ_MD_H)
e980df8e
TT
3901build/genmodes.o : genmodes.c $(BCONFIG_H) $(SYSTEM_H) errors.h \
3902 $(HASHTAB_H) machmode.def $(extra_modes_file)
3903build/genopinit.o : genopinit.c $(RTL_BASE_H) $(BCONFIG_H) $(SYSTEM_H) \
cd1440b1 3904 coretypes.h $(GTM_H) errors.h gensupport.h optabs.def
e980df8e 3905build/genoutput.o : genoutput.c $(RTL_BASE_H) $(BCONFIG_H) $(SYSTEM_H) \
10692477 3906 coretypes.h $(GTM_H) errors.h $(READ_MD_H) gensupport.h
e980df8e 3907build/genpeep.o : genpeep.c $(RTL_BASE_H) $(BCONFIG_H) $(SYSTEM_H) \
7c475d11 3908 coretypes.h $(GTM_H) errors.h gensupport.h toplev.h $(DIAGNOSTIC_CORE_H)
e980df8e 3909build/genpreds.o : genpreds.c $(RTL_BASE_H) $(BCONFIG_H) $(SYSTEM_H) \
10692477 3910 coretypes.h $(GTM_H) errors.h $(READ_MD_H) gensupport.h $(OBSTACK_H)
e980df8e 3911build/genrecog.o : genrecog.c $(RTL_BASE_H) $(BCONFIG_H) $(SYSTEM_H) \
10692477 3912 coretypes.h $(GTM_H) errors.h $(READ_MD_H) gensupport.h
acce4e77 3913build/genhooks.o : genhooks.c $(TARGET_DEF) $(C_TARGET_DEF) \
c49a6962 3914 $(COMMON_TARGET_DEF) $(BCONFIG_H) $(SYSTEM_H) errors.h
e980df8e 3915
cbbbdc2c 3916# Compile the programs that generate insn-* from the machine description.
7980bfb8 3917# They are compiled with $(COMPILER_FOR_BUILD), and associated libraries,
cbbbdc2c
ZW
3918# since they need to run on this machine
3919# even if GCC is being compiled to run on some other machine.
1b0c37d7 3920
9b68b6ea 3921# All these programs use the RTL reader ($(BUILD_RTL)).
88a00ef7 3922genprogrtl = attr attr-common attrtab automata codes conditions config emit \
9b68b6ea
RS
3923 extract flags opinit output peep preds recog
3924$(genprogrtl:%=build/gen%$(build_exeext)): $(BUILD_RTL)
3925
3926# All these programs use the MD reader ($(BUILD_MD)).
0fe60a1b 3927genprogmd = $(genprogrtl) mddeps constants enums
9b68b6ea
RS
3928$(genprogmd:%=build/gen%$(build_exeext)): $(BUILD_MD)
3929
6ddddaed
RW
3930# All these programs need to report errors.
3931genprogerr = $(genprogmd) genrtl modes gtype hooks
3932$(genprogerr:%=build/gen%$(build_exeext)): $(BUILD_ERRORS)
3933
3934# Remaining build programs.
3935genprog = $(genprogerr) check checksum condmd
1c7352cd 3936
0b50988a 3937# These programs need libs over and above what they get from the above list.
8c94f366 3938build/genautomata$(build_exeext) : BUILD_LIBS += -lm
d5706a1e 3939
0458fe77 3940# These programs are not linked with the MD reader.
f8ed6dc5 3941build/gengtype$(build_exeext) : build/gengtype-lex.o build/gengtype-parse.o \
f142b5bc
RG
3942 build/gengtype-state.o build/version.o build/errors.o
3943
3944gengtype$(exeext) : gengtype.o gengtype-lex.o gengtype-parse.o \
3945 gengtype-state.o version.o errors.o $(LIBDEPS)
b6ee5bef
RO
3946 +$(LINKER) $(ALL_LINKERFLAGS) $(LDFLAGS) -o $@ \
3947 $(filter-out ($LIBDEPS), $^) $(LIBS)
6ddddaed
RW
3948
3949# Rule for the generator programs:
3950$(genprog:%=build/gen%$(build_exeext)): build/gen%$(build_exeext): build/gen%.o $(BUILD_LIBDEPS)
a90163e9 3951 +$(LINKER_FOR_BUILD) $(BUILD_LINKERFLAGS) $(BUILD_LDFLAGS) -o $@ \
6ddddaed 3952 $(filter-out $(BUILD_LIBDEPS), $^) $(BUILD_LIBS)
e2500fed 3953
18406601
PB
3954# Generated source files for gengtype. Prepend inclusion of
3955# bconfig.h because AIX requires _LARGE_FILES to be defined before
3956# any system header is included.
03787dfd 3957gengtype-lex.c : gengtype-lex.l
8fb15466
PB
3958 -$(FLEX) $(FLEXFLAGS) -o$@ $< && { \
3959 echo '#include "bconfig.h"' > $@.tmp; \
3960 cat $@ >> $@.tmp; \
3961 mv $@.tmp $@; \
3962 }
fae15c93 3963
e980df8e
TT
3964#\f
3965# Remake internationalization support.
c5bc3df6 3966CFLAGS-intl.o += -DLOCALEDIR=\"$(localedir)\"
a878b2d7 3967intl.o: intl.c $(CONFIG_H) $(SYSTEM_H) coretypes.h intl.h Makefile
e980df8e 3968
544eb21e 3969#\f
52c0e446 3970# Remake cpp.
79d8453e 3971
d059a239
FF
3972PREPROCESSOR_DEFINES = \
3973 -DGCC_INCLUDE_DIR=\"$(libsubdir)/include\" \
f686ec05 3974 -DFIXED_INCLUDE_DIR=\"$(libsubdir)/include-fixed\" \
d059a239 3975 -DGPLUSPLUS_INCLUDE_DIR=\"$(gcc_gxx_include_dir)\" \
17719d09 3976 -DGPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT=$(gcc_gxx_include_dir_add_sysroot) \
caa55b1e 3977 -DGPLUSPLUS_TOOL_INCLUDE_DIR=\"$(gcc_gxx_include_dir)/$(target_noncanonical)\" \
98c2359b 3978 -DGPLUSPLUS_BACKWARD_INCLUDE_DIR=\"$(gcc_gxx_include_dir)/backward\" \
793e9558 3979 -DLOCAL_INCLUDE_DIR=\"$(local_includedir)\" \
4977bab6 3980 -DCROSS_INCLUDE_DIR=\"$(CROSS_SYSTEM_HEADER_DIR)\" \
047d636f 3981 -DTOOL_INCLUDE_DIR=\"$(gcc_tooldir)/include\" \
08b2bad2 3982 -DNATIVE_SYSTEM_HEADER_DIR=\"$(NATIVE_SYSTEM_HEADER_DIR)\" \
925af765
RS
3983 -DPREFIX=\"$(prefix)/\" \
3984 -DSTANDARD_EXEC_PREFIX=\"$(libdir)/gcc/\" \
047d636f 3985 @TARGET_SYSTEM_ROOT_DEFINE@
79d8453e 3986
c5bc3df6 3987CFLAGS-cppbuiltin.o += $(PREPROCESSOR_DEFINES) -DBASEVER=$(BASEVER_s)
82a1c2fe 3988cppbuiltin.o: cppbuiltin.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
ee666c25
SB
3989 $(TARGET_H) $(TARGET_DEF) $(TREE_H) $(CPP_ID_DATA_H) \
3990 cppbuiltin.h version.h Makefile
82a1c2fe 3991
c5bc3df6 3992CFLAGS-cppdefault.o += $(PREPROCESSOR_DEFINES)
e980df8e
TT
3993cppdefault.o: cppdefault.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
3994 cppdefault.h Makefile
e980df8e 3995
7bd95cc1
BK
3996# Note for the stamp targets, we run the program `true' instead of
3997# having an empty command (nothing following the semicolon).
3998
e980df8e
TT
3999# gcov-iov.c is run on the build machine to generate gcov-iov.h from version.c
4000build/gcov-iov.o: gcov-iov.c $(BCONFIG_H) coretypes.h $(GTM_H) \
4001 $(SYSTEM_H) coretypes.h $(TM_H)
4002
3b620440 4003build/gcov-iov$(build_exeext): build/gcov-iov.o
a90163e9 4004 +$(LINKER_FOR_BUILD) $(BUILD_LINKERFLAGS) $(BUILD_LDFLAGS) \
7980bfb8 4005 build/gcov-iov.o -o $@
3b620440 4006
28068c2c 4007gcov-iov.h: s-iov
a1286ef5
ZW
4008s-iov: build/gcov-iov$(build_exeext) $(BASEVER) $(DEVPHASE)
4009 build/gcov-iov$(build_exeext) '$(BASEVER_c)' '$(DEVPHASE_c)' \
4010 > tmp-gcov-iov.h
88e3a2a3 4011 $(SHELL) $(srcdir)/../move-if-change tmp-gcov-iov.h gcov-iov.h
28068c2c 4012 $(STAMP) s-iov
4977bab6 4013
e980df8e 4014gcov.o: gcov.c gcov-io.c $(GCOV_IO_H) intl.h $(SYSTEM_H) coretypes.h $(TM_H) \
2691e6d7 4015 $(CONFIG_H) version.h $(DIAGNOSTIC_H)
e980df8e 4016gcov-dump.o: gcov-dump.c gcov-io.c $(GCOV_IO_H) $(SYSTEM_H) coretypes.h \
2691e6d7 4017 $(TM_H) $(CONFIG_H) version.h intl.h $(DIAGNOSTIC_H)
e980df8e 4018
2691e6d7 4019GCOV_OBJS = gcov.o
ab87f8c8 4020gcov$(exeext): $(GCOV_OBJS) $(LIBDEPS)
a90163e9 4021 +$(LINKER) $(ALL_LINKERFLAGS) $(LDFLAGS) $(GCOV_OBJS) $(LIBS) -o $@
2691e6d7 4022GCOV_DUMP_OBJS = gcov-dump.o
4977bab6 4023gcov-dump$(exeext): $(GCOV_DUMP_OBJS) $(LIBDEPS)
a90163e9 4024 +$(LINKER) $(ALL_LINKERFLAGS) $(LDFLAGS) $(GCOV_DUMP_OBJS) \
7980bfb8 4025 $(LIBS) -o $@
544eb21e 4026#\f
f686ec05 4027# Build the include directories. The stamp files are stmp-* rather than
e5e809f4 4028# s-* so that mostlyclean does not force the include directory to
ba1811f1
ILT
4029# be rebuilt.
4030
f686ec05 4031# Build the include directories.
201cdb74 4032stmp-int-hdrs: $(STMP_FIXINC) $(USER_H) fixinc_list
ba1811f1 4033# Copy in the headers provided with gcc.
8294b6fe 4034#
ba1811f1
ILT
4035# The sed command gets just the last file name component;
4036# this is necessary because VPATH could add a dirname.
4037# Using basename would be simpler, but some systems don't have it.
8294b6fe 4038#
c85f7c16 4039# The touch command is here to workaround an AIX/Linux NFS bug.
8294b6fe
OH
4040#
4041# The move-if-change + cp -p twists for limits.h are intended to preserve
4042# the time stamp when we regenerate, to prevent pointless rebuilds during
4043# e.g. install-no-fixedincludes.
7bfe3c97 4044 -if [ -d include ] ; then true; else mkdir include; chmod a+rx include; fi
f686ec05 4045 -if [ -d include-fixed ] ; then true; else mkdir include-fixed; chmod a+rx include-fixed; fi
d7371761
RK
4046 for file in .. $(USER_H); do \
4047 if [ X$$file != X.. ]; then \
4048 realfile=`echo $$file | sed -e 's|.*/\([^/]*\)$$|\1|'`; \
d9835ae8 4049 $(STAMP) include/$$realfile; \
ae678a13
JW
4050 rm -f include/$$realfile; \
4051 cp $$file include; \
4052 chmod a+r include/$$realfile; \
d7371761 4053 fi; \
ba1811f1 4054 done
9b91e436
KT
4055 for file in .. $(USER_H_INC_NEXT_PRE); do \
4056 if [ X$$file != X.. ]; then \
4057 mv include/$$file include/x_$$file; \
4058 echo "#include_next <$$file>" >include/$$file; \
4059 cat include/x_$$file >>include/$$file; \
4060 rm -f include/x_$$file; \
4061 chmod a+r include/$$file; \
4062 fi; \
4063 done
4064 for file in .. $(USER_H_INC_NEXT_POST); do \
4065 if [ X$$file != X.. ]; then \
4066 echo "#include_next <$$file>" >>include/$$file; \
4067 chmod a+r include/$$file; \
4068 fi; \
4069 done
207bf79d
JM
4070 rm -f include/stdint.h
4071 if [ $(USE_GCC_STDINT) = wrap ]; then \
4072 rm -f include/stdint-gcc.h; \
4073 cp $(srcdir)/ginclude/stdint-gcc.h include/stdint-gcc.h; \
1d9edd01 4074 chmod a+r include/stdint-gcc.h; \
207bf79d 4075 cp $(srcdir)/ginclude/stdint-wrap.h include/stdint.h; \
c8c520dd 4076 chmod a+r include/stdint.h; \
207bf79d
JM
4077 elif [ $(USE_GCC_STDINT) = provide ]; then \
4078 cp $(srcdir)/ginclude/stdint-gcc.h include/stdint.h; \
c8c520dd 4079 chmod a+r include/stdint.h; \
207bf79d 4080 fi
14da6073
JM
4081 set -e; for ml in `cat fixinc_list`; do \
4082 sysroot_headers_suffix=`echo $${ml} | sed -e 's/;.*$$//'`; \
4083 multi_dir=`echo $${ml} | sed -e 's/^[^;]*;//'`; \
4084 fix_dir=include-fixed$${multi_dir}; \
4085 if $(LIMITS_H_TEST) ; then \
4086 cat $(srcdir)/limitx.h $(srcdir)/glimits.h $(srcdir)/limity.h > tmp-xlimits.h; \
4087 else \
4088 cat $(srcdir)/glimits.h > tmp-xlimits.h; \
4089 fi; \
4090 $(mkinstalldirs) $${fix_dir}; \
4091 chmod a+rx $${fix_dir} || true; \
8294b6fe
OH
4092 $(SHELL) $(srcdir)/../move-if-change \
4093 tmp-xlimits.h tmp-limits.h; \
14da6073 4094 rm -f $${fix_dir}/limits.h; \
8294b6fe 4095 cp -p tmp-limits.h $${fix_dir}/limits.h; \
14da6073
JM
4096 chmod a+r $${fix_dir}/limits.h; \
4097 done
e7f62ad3 4098# Install the README
f686ec05
JM
4099 rm -f include-fixed/README
4100 cp $(srcdir)/../fixincludes/README-fixinc include-fixed/README
4101 chmod a+r include-fixed/README
d9835ae8 4102 $(STAMP) $@
e7f62ad3 4103
4977bab6
ZW
4104.PHONY: install-gcc-tooldir
4105install-gcc-tooldir:
947c6b00 4106 $(mkinstalldirs) $(DESTDIR)$(gcc_tooldir)
4977bab6 4107
5cd37749 4108macro_list: s-macro_list; @true
d3dc619d 4109s-macro_list : $(GCC_PASSES)
53c7ffe7 4110 echo | $(GCC_FOR_TARGET) -E -dM - | \
8160ab35
MK
4111 sed -n -e 's/^#define \([^_][a-zA-Z0-9_]*\).*/\1/p' \
4112 -e 's/^#define \(_[^_A-Z][a-zA-Z0-9_]*\).*/\1/p' | \
5cd37749
JG
4113 sort -u > tmp-macro_list
4114 $(SHELL) $(srcdir)/../move-if-change tmp-macro_list macro_list
4115 $(STAMP) s-macro_list
53c7ffe7 4116
14da6073
JM
4117fixinc_list: s-fixinc_list; @true
4118s-fixinc_list : $(GCC_PASSES)
4119# Build up a list of multilib directories and corresponding sysroot
4120# suffixes, in form sysroot;multilib.
4121 if $(GCC_FOR_TARGET) -print-sysroot-headers-suffix > /dev/null 2>&1; then \
4122 set -e; for ml in `$(GCC_FOR_TARGET) -print-multi-lib`; do \
4123 multi_dir=`echo $${ml} | sed -e 's/;.*$$//'`; \
4124 flags=`echo $${ml} | sed -e 's/^[^;]*;//' -e 's/@/ -/g'`; \
4125 sfx=`$(GCC_FOR_TARGET) $${flags} -print-sysroot-headers-suffix`; \
4126 if [ "$${multi_dir}" = "." ]; \
4127 then multi_dir=""; \
4128 else \
4129 multi_dir=/$${multi_dir}; \
4130 fi; \
4131 echo "$${sfx};$${multi_dir}"; \
4132 done; \
4133 else \
4134 echo ";"; \
4135 fi > tmp-fixinc_list
4136 $(SHELL) $(srcdir)/../move-if-change tmp-fixinc_list fixinc_list
4137 $(STAMP) s-fixinc_list
4138
144023ad
AO
4139# The line below is supposed to avoid accidentally matching the
4140# built-in suffix rule `.o:' to build fixincl out of fixincl.o. You'd
4141# expect fixincl to be newer than fixincl.o, such that this situation
4142# would never come up. As it turns out, if you use ccache with
4143# CCACHE_HARDLINK enabled, the compiler doesn't embed the current
4144# working directory in object files (-g absent, or -fno-working-dir
4145# present), and build and host are the same, fixincl for the host will
4146# build after fixincl for the build machine, getting a cache hit,
a4d05547 4147# thereby updating the timestamp of fixincl.o in the host tree.
144023ad
AO
4148# Because of CCACHE_HARDLINK, this will also update the timestamp in
4149# the build tree, and so fixincl in the build tree will appear to be
4150# out of date. Yuck.
4151../$(build_subdir)/fixincludes/fixincl: ; @ :
4152
ba1811f1 4153# Build fixed copies of system files.
be448346
BS
4154# Abort if no system headers available, unless building a crosscompiler.
4155# FIXME: abort unless building --without-headers would be more accurate and less ugly
14da6073 4156stmp-fixinc: gsyslimits.h macro_list fixinc_list \
215c351a
PB
4157 $(build_objdir)/fixincludes/fixincl \
4158 $(build_objdir)/fixincludes/fixinc.sh
f686ec05
JM
4159 rm -rf include-fixed; mkdir include-fixed
4160 -chmod a+rx include-fixed
cc11cc9b
PB
4161 if [ -d ../prev-gcc ]; then \
4162 cd ../prev-gcc && \
9fb03bd8 4163 $(MAKE) real-$(INSTALL_HEADERS_DIR) DESTDIR=`pwd`/../gcc/ \
cc11cc9b 4164 libsubdir=. ; \
3dc4a939 4165 else \
14da6073
JM
4166 set -e; for ml in `cat fixinc_list`; do \
4167 sysroot_headers_suffix=`echo $${ml} | sed -e 's/;.*$$//'`; \
4168 multi_dir=`echo $${ml} | sed -e 's/^[^;]*;//'`; \
4169 fix_dir=include-fixed$${multi_dir}; \
4170 if ! $(inhibit_libc) && test ! -d ${SYSTEM_HEADER_DIR}; then \
4171 echo The directory that should contain system headers does not exist: >&2 ; \
4172 echo " ${SYSTEM_HEADER_DIR}" >&2 ; \
4173 tooldir_sysinc=`echo "${gcc_tooldir}/sys-include" | sed -e :a -e "s,[^/]*/\.\.\/,," -e ta`; \
4174 if test "x${SYSTEM_HEADER_DIR}" = "x$${tooldir_sysinc}"; \
4175 then sleep 1; else exit 1; fi; \
4176 fi; \
4177 $(mkinstalldirs) $${fix_dir}; \
4178 chmod a+rx $${fix_dir} || true; \
4179 (TARGET_MACHINE='$(target)'; srcdir=`cd $(srcdir); ${PWD_COMMAND}`; \
4180 SHELL='$(SHELL)'; MACRO_LIST=`${PWD_COMMAND}`/macro_list ; \
1d93c860 4181 gcc_dir=`${PWD_COMMAND}` ; \
14da6073
JM
4182 export TARGET_MACHINE srcdir SHELL MACRO_LIST && \
4183 cd $(build_objdir)/fixincludes && \
1d93c860 4184 $(SHELL) ./fixinc.sh "$${gcc_dir}/$${fix_dir}" \
14da6073
JM
4185 $(SYSTEM_HEADER_DIR) $(OTHER_FIXINCLUDES_DIRS) ); \
4186 rm -f $${fix_dir}/syslimits.h; \
4187 if [ -f $${fix_dir}/limits.h ]; then \
4188 mv $${fix_dir}/limits.h $${fix_dir}/syslimits.h; \
4189 else \
4190 cp $(srcdir)/gsyslimits.h $${fix_dir}/syslimits.h; \
4191 fi; \
4192 chmod a+r $${fix_dir}/syslimits.h; \
4193 done; \
53c7ffe7 4194 fi
d9835ae8 4195 $(STAMP) stmp-fixinc
544eb21e 4196#\f
8294b6fe
OH
4197
4198# Install with the gcc headers files, not the fixed include files, which we
4199# are typically not allowed to distribute. The general idea is to:
4200# - Get to "install" with a bare set of internal headers, not the
4201# fixed system ones,
4202# - Prevent rebuilds of what normally depends on the headers, which is
4203# useless for installation purposes and would rely on improper headers.
4204# - Restore as much of the original state as possible.
4205
4206.PHONY: install-no-fixedincludes
4207
4208install-no-fixedincludes:
4209 # Stash the current set of headers away, save stamps we're going to
4210 # alter explicitly, and arrange for fixincludes not to run next time
4211 # we trigger a headers rebuild.
4212 -rm -rf tmp-include
4213 -mv include tmp-include 2>/dev/null
4214 -mv include-fixed tmp-include-fixed 2>/dev/null
4215 -mv stmp-int-hdrs tmp-stmp-int-hdrs 2>/dev/null
4216 -mv stmp-fixinc tmp-stmp-fixinc 2>/dev/null
4217 -mkdir include
4218 -cp -p $(srcdir)/gsyslimits.h include/syslimits.h
4219 -touch stmp-fixinc
4220
4221 # Rebuild our internal headers, restore the original stamps so that
4222 # "install" doesn't trigger pointless rebuilds because of that update,
4223 # then do install
4224 $(MAKE) $(FLAGS_TO_PASS) stmp-int-hdrs
4225 -mv tmp-stmp-int-hdrs stmp-int-hdrs 2>/dev/null
4226 -mv tmp-stmp-fixinc stmp-fixinc 2>/dev/null
4227 $(MAKE) $(FLAGS_TO_PASS) install
4228
4229 # Restore the original set of maybe-fixed headers
4230 -rm -rf include; mv tmp-include include 2>/dev/null
4231 -rm -rf include-fixed; mv tmp-include-fixed include-fixed 2>/dev/null
4232
79d8453e
RS
4233# Remake the info files.
4234
fda9c731 4235doc: $(BUILD_INFO) $(GENERATED_MANPAGES)
a541f69d
KC
4236
4237INFOFILES = doc/cpp.info doc/gcc.info doc/gccint.info \
4238 doc/gccinstall.info doc/cppinternals.info
4239
4240info: $(INFOFILES) lang.info @GENINSRC@ srcinfo lang.srcinfo
4241
4242srcinfo: $(INFOFILES)
4243 -cp -p $^ $(srcdir)/doc
65455962 4244
a1286ef5
ZW
4245TEXI_CPP_FILES = cpp.texi fdl.texi cppenv.texi cppopts.texi \
4246 gcc-common.texi gcc-vers.texi
65455962 4247
a1286ef5
ZW
4248TEXI_GCC_FILES = gcc.texi gcc-common.texi gcc-vers.texi frontends.texi \
4249 standards.texi invoke.texi extend.texi md.texi objc.texi \
4250 gcov.texi trouble.texi bugreport.texi service.texi \
7f9766e4 4251 contribute.texi compat.texi funding.texi gnu.texi gpl_v3.texi \
04d170d2 4252 fdl.texi contrib.texi cppenv.texi cppopts.texi avr-mmcu.texi \
c32097d8 4253 implement-c.texi implement-cxx.texi arm-neon-intrinsics.texi
65455962 4254
c18a9bc4
JR
4255# we explicitly use $(srcdir)/doc/tm.texi here to avoid confusion with
4256# the generated tm.texi; the latter might have a more recent timestamp,
4257# but we don't want to rebuild the info files unless the contents of
4258# the *.texi files have changed.
a1286ef5
ZW
4259TEXI_GCCINT_FILES = gccint.texi gcc-common.texi gcc-vers.texi \
4260 contribute.texi makefile.texi configterms.texi options.texi \
c18a9bc4
JR
4261 portability.texi interface.texi passes.texi rtl.texi md.texi \
4262 $(srcdir)/doc/tm.texi hostconfig.texi fragments.texi \
a1286ef5 4263 configfiles.texi collect2.texi headerdirs.texi funding.texi \
7f9766e4 4264 gnu.texi gpl_v3.texi fdl.texi contrib.texi languages.texi \
01e0ef5a 4265 sourcebuild.texi gty.texi libgcc.texi cfg.texi tree-ssa.texi \
fb201767 4266 loop.texi generic.texi gimple.texi plugins.texi
65455962 4267
e5fc6da8 4268TEXI_GCCINSTALL_FILES = install.texi install-old.texi fdl.texi \
3b4ed48b 4269 gcc-common.texi gcc-vers.texi
65455962 4270
a1286ef5
ZW
4271TEXI_CPPINT_FILES = cppinternals.texi gcc-common.texi gcc-vers.texi
4272
4273# gcc-vers.texi is generated from the version files.
4274gcc-vers.texi: $(BASEVER) $(DEVPHASE)
4275 (echo "@set version-GCC $(BASEVER_c)"; \
4276 if [ "$(DEVPHASE_c)" = "experimental" ]; \
4277 then echo "@set DEVELOPMENT"; \
4278 else echo "@clear DEVELOPMENT"; \
4279 fi) > $@T
a0e527e3 4280 $(build_file_translate) echo @set srcdir $(abs_srcdir) >> $@T
2f41c1d6
PB
4281 if [ -n "$(PKGVERSION)" ]; then \
4282 echo "@set VERSION_PACKAGE $(PKGVERSION)" >> $@T; \
4283 fi
4284 echo "@set BUGURL $(BUGURL_TEXI)" >> $@T; \
a1286ef5
ZW
4285 mv -f $@T $@
4286
65455962 4287
b5422ad7 4288# The *.1, *.7, *.info, *.dvi, and *.pdf files are being generated from implicit
cb7c0b5a 4289# patterns. To use them, put each of the specific targets with its
65455962 4290# specific dependencies but no build commands.
e2500fed 4291
a541f69d
KC
4292doc/cpp.info: $(TEXI_CPP_FILES)
4293doc/gcc.info: $(TEXI_GCC_FILES)
4294doc/gccint.info: $(TEXI_GCCINT_FILES)
4295doc/cppinternals.info: $(TEXI_CPPINT_FILES)
d7f8491b 4296
a541f69d 4297doc/%.info: %.texi
1f9b3087 4298 if [ x$(BUILD_INFO) = xinfo ]; then \
ad3a7ce3
CD
4299 $(MAKEINFO) $(MAKEINFOFLAGS) -I . -I $(gcc_docdir) \
4300 -I $(gcc_docdir)/include -o $@ $<; \
1f9b3087 4301 fi
23de1fbf 4302
63069342 4303# Duplicate entry to handle renaming of gccinstall.info
a541f69d 4304doc/gccinstall.info: $(TEXI_GCCINSTALL_FILES)
63069342 4305 if [ x$(BUILD_INFO) = xinfo ]; then \
ad3a7ce3
CD
4306 $(MAKEINFO) $(MAKEINFOFLAGS) -I $(gcc_docdir) \
4307 -I $(gcc_docdir)/include -o $@ $<; \
63069342
KC
4308 fi
4309
a541f69d
KC
4310doc/cpp.dvi: $(TEXI_CPP_FILES)
4311doc/gcc.dvi: $(TEXI_GCC_FILES)
4312doc/gccint.dvi: $(TEXI_GCCINT_FILES)
4313doc/cppinternals.dvi: $(TEXI_CPPINT_FILES)
63069342 4314
b5422ad7
BM
4315doc/cpp.pdf: $(TEXI_CPP_FILES)
4316doc/gcc.pdf: $(TEXI_GCC_FILES)
4317doc/gccint.pdf: $(TEXI_GCCINT_FILES)
4318doc/cppinternals.pdf: $(TEXI_CPPINT_FILES)
4319
22482f74
MS
4320$(build_htmldir)/cpp/index.html: $(TEXI_CPP_FILES)
4321$(build_htmldir)/gcc/index.html: $(TEXI_GCC_FILES)
4322$(build_htmldir)/gccint/index.html: $(TEXI_GCCINT_FILES)
4323$(build_htmldir)/cppinternals/index.html: $(TEXI_CPPINT_FILES)
9d65c5cb 4324
a541f69d 4325dvi:: doc/gcc.dvi doc/gccint.dvi doc/gccinstall.dvi doc/cpp.dvi \
dedfa466 4326 doc/cppinternals.dvi lang.dvi
8dbda01e 4327
a541f69d 4328doc/%.dvi: %.texi
a1286ef5 4329 $(TEXI2DVI) -I . -I $(abs_docdir) -I $(abs_docdir)/include -o $@ $<
95e30ecc 4330
63069342 4331# Duplicate entry to handle renaming of gccinstall.dvi
a541f69d 4332doc/gccinstall.dvi: $(TEXI_GCCINSTALL_FILES)
a1286ef5 4333 $(TEXI2DVI) -I . -I $(abs_docdir) -I $(abs_docdir)/include -o $@ $<
d7f8491b 4334
bcc3d150
BM
4335PDFFILES = doc/gcc.pdf doc/gccint.pdf doc/gccinstall.pdf doc/cpp.pdf \
4336 doc/cppinternals.pdf
4337
4338pdf:: $(PDFFILES) lang.pdf
b5422ad7
BM
4339
4340doc/%.pdf: %.texi
4341 $(TEXI2PDF) -I . -I $(abs_docdir) -I $(abs_docdir)/include -o $@ $<
4342
4343# Duplicate entry to handle renaming of gccinstall.pdf
4344doc/gccinstall.pdf: $(TEXI_GCCINSTALL_FILES)
4345 $(TEXI2PDF) -I . -I $(abs_docdir) -I $(abs_docdir)/include -o $@ $<
4346
9288b845
CD
4347# List the directories or single hmtl files which are installed by
4348# install-html. The lang.html file triggers language fragments to build
55bcd32b 4349# html documentation.
9288b845
CD
4350HTMLS_INSTALL=$(build_htmldir)/cpp $(build_htmldir)/gcc \
4351 $(build_htmldir)/gccinstall $(build_htmldir)/gccint \
4352 $(build_htmldir)/cppinternals
4353
4354# List the html file targets.
4355HTMLS_BUILD=$(build_htmldir)/cpp/index.html $(build_htmldir)/gcc/index.html \
22482f74
MS
4356 $(build_htmldir)/gccinstall/index.html $(build_htmldir)/gccint/index.html \
4357 $(build_htmldir)/cppinternals/index.html lang.html
9d65c5cb 4358
9288b845 4359html:: $(HTMLS_BUILD)
22482f74
MS
4360
4361$(build_htmldir)/%/index.html: %.texi
9d65c5cb
MS
4362 $(mkinstalldirs) $(@D)
4363 rm -f $(@D)/*
4364 $(TEXI2HTML) -I $(abs_docdir) -I $(abs_docdir)/include -o $(@D) $<
4365
4366# Duplicate entry to handle renaming of gccinstall
22482f74 4367$(build_htmldir)/gccinstall/index.html: $(TEXI_GCCINSTALL_FILES)
9d65c5cb
MS
4368 $(mkinstalldirs) $(@D)
4369 echo rm -f $(@D)/*
a1e6d1ce
MLI
4370 SOURCEDIR=$(abs_docdir) \
4371 DESTDIR=$(@D) \
4372 $(SHELL) $(srcdir)/doc/install.texi2html
9d65c5cb 4373
a541f69d
KC
4374MANFILES = doc/gcov.1 doc/cpp.1 doc/gcc.1 doc/gfdl.7 doc/gpl.7 doc/fsf-funding.7
4375
5340bbea 4376generated-manpages: man
ce5c1cf3
KC
4377
4378man: $(MANFILES) lang.man @GENINSRC@ srcman lang.srcman
a541f69d
KC
4379
4380srcman: $(MANFILES)
4381 -cp -p $^ $(srcdir)/doc
c01a508e 4382
a541f69d 4383doc/%.1: %.pod
6280c439 4384 $(STAMP) $@
65455962 4385 -($(POD2MAN) --section=1 $< > $(@).T$$$$ && \
6280c439
MM
4386 mv -f $(@).T$$$$ $@) || \
4387 (rm -f $(@).T$$$$ && exit 1)
6280c439 4388
a541f69d 4389doc/%.7: %.pod
6280c439 4390 $(STAMP) $@
65455962 4391 -($(POD2MAN) --section=7 $< > $(@).T$$$$ && \
6280c439
MM
4392 mv -f $(@).T$$$$ $@) || \
4393 (rm -f $(@).T$$$$ && exit 1)
65455962
KC
4394
4395%.pod: %.texi
4396 $(STAMP) $@
2f41c1d6 4397 -$(TEXI2POD) -DBUGURL="$(BUGURL_TEXI)" $< > $@
65455962
KC
4398
4399.INTERMEDIATE: cpp.pod gcc.pod gfdl.pod fsf-funding.pod
4400cpp.pod: cpp.texi cppenv.texi cppopts.texi
4401
4402# These next rules exist because the output name is not the same as
cb7c0b5a 4403# the input name, so our implicit %.pod rule will not work.
65455962 4404
4db19cc7 4405gcc.pod: invoke.texi cppenv.texi cppopts.texi gcc-vers.texi
65455962
KC
4406 $(STAMP) $@
4407 -$(TEXI2POD) $< > $@
4408gfdl.pod: fdl.texi
4409 $(STAMP) $@
4410 -$(TEXI2POD) $< > $@
4411fsf-funding.pod: funding.texi
4412 $(STAMP) $@
4413 -$(TEXI2POD) $< > $@
7f9766e4
JM
4414gpl.pod: gpl_v3.texi
4415 $(STAMP) $@
4416 -$(TEXI2POD) $< > $@
77bd67cb 4417
544eb21e 4418#\f
79d8453e
RS
4419# Deletion of files made during compilation.
4420# There are four levels of this:
f1908d70 4421# `mostlyclean', `clean', `distclean' and `maintainer-clean'.
79d8453e 4422# `mostlyclean' is useful while working on a particular type of machine.
2e494f70 4423# It deletes most, but not all, of the files made by compilation.
79d8453e 4424# It does not delete libgcc.a or its parts, so it won't have to be recompiled.
2e494f70 4425# `clean' deletes everything made by running `make all'.
47547081 4426# `distclean' also deletes the files made by config.
f1908d70 4427# `maintainer-clean' also deletes everything that could be regenerated
63d9b81c
RK
4428# automatically, except for `configure'.
4429# We remove as much from the language subdirectories as we can
013a2ee0 4430# (less duplicated code).
79d8453e 4431
6eb95e99 4432mostlyclean: lang.mostlyclean
8b1f719a 4433 -rm -f $(MOSTLYCLEANFILES)
66a82a79 4434 -rm -f *$(objext)
22aa533e 4435 -rm -f *$(coverageexts)
3b620440
KC
4436# Delete build programs
4437 -rm -f build/*
26be549a 4438 -rm -f mddeps.mk
e5e809f4 4439# Delete other built files.
57dfdff0 4440 -rm -f specs.h options.c options.h options-save.c
e5e809f4
JL
4441# Delete the stamp and temporary files.
4442 -rm -f s-* tmp-* stamp-* stmp-*
013a2ee0 4443 -rm -f */stamp-* */tmp-*
2e494f70 4444# Delete debugging dump files.
61098249 4445 -rm -f *.[0-9][0-9].* */*.[0-9][0-9].*
2e494f70 4446# Delete some files made during installation.
52c0e446 4447 -rm -f specs $(SPECS)
b548dffb 4448 -rm -f collect collect2 mips-tfile mips-tdump
2e494f70
RS
4449# Delete unwanted output files from TeX.
4450 -rm -f *.toc *.log *.vr *.fn *.cp *.tp *.ky *.pg
013a2ee0 4451 -rm -f */*.toc */*.log */*.vr */*.fn */*.cp */*.tp */*.ky */*.pg
47547081
RS
4452# Delete sorted indices we don't actually use.
4453 -rm -f gcc.vrs gcc.kys gcc.tps gcc.pgs gcc.fns
2e494f70 4454# Delete core dumps.
013a2ee0 4455 -rm -f core */core
11a67599
ZW
4456# Delete file generated for gengtype
4457 -rm -f gtyp-input.list
92724e1d 4458# Delete files generated by gengtype
8ac9d31f
TJ
4459 -rm -f gtype-*
4460 -rm -f gt-*
92724e1d 4461 -rm -f gtype.state
3fd30b88
GK
4462# Delete genchecksum outputs
4463 -rm -f *-checksum.c
79d8453e 4464
47547081
RS
4465# Delete all files made by compilation
4466# that don't exist in the distribution.
6eb95e99 4467clean: mostlyclean lang.clean
23af32e6 4468 -rm -f libgcc.a libgcc_eh.a libgcov.a
3b415018 4469 -rm -f libgcc_s*
443728bb 4470 -rm -f libunwind*
852b75ed 4471 -rm -f config.h tconfig.h bconfig.h tm_p.h tm.h
776dc15d 4472 -rm -f options.c options.h optionlist
11642c3a 4473 -rm -f cs-*
a541f69d 4474 -rm -f doc/*.dvi
b5422ad7 4475 -rm -f doc/*.pdf
14da6073
JM
4476# Delete the include directories.
4477 -rm -rf include include-fixed
75ed5d8b 4478# Delete files used by the "multilib" facility (including libgcc subdirs).
f6cdc7ea 4479 -rm -f multilib.h tmpmultilib*
75ed5d8b
DE
4480 -if [ "x$(MULTILIB_DIRNAMES)" != x ] ; then \
4481 rm -rf $(MULTILIB_DIRNAMES); \
4482 else if [ "x$(MULTILIB_OPTIONS)" != x ] ; then \
4483 rm -rf `echo $(MULTILIB_OPTIONS) | sed -e 's/\// /g'`; \
4484 fi ; fi
79d8453e 4485
47547081
RS
4486# Delete all files that users would normally create
4487# while building and installing GCC.
6eb95e99 4488distclean: clean lang.distclean
11642c3a 4489 -rm -f auto-host.h auto-build.h
d1209685 4490 -rm -f cstamp-h
63d9b81c 4491 -rm -f config.status config.run config.cache config.bak
d232dfa4 4492 -rm -f Make-lang Make-hooks Make-host Make-target
ad854f24 4493 -rm -f Makefile *.oaux
f24af81b 4494 -rm -f gthr-default.h
27bf414c 4495 -rm -f TAGS */TAGS
338023d4 4496 -rm -f *.asm
a051ad3a 4497 -rm -f site.exp site.bak testsuite/site.exp testsuite/site.bak
ad854f24 4498 -rm -f testsuite/*.log testsuite/*.sum
1bb1f121 4499 -cd testsuite && rm -f x *.x *.x? *.exe *.rpo *.o *.s *.S *.c
4977bab6 4500 -cd testsuite && rm -f *.out *.gcov *$(coverageexts)
f362c762 4501 -rm -rf ${QMTEST_DIR} stamp-qmtest
06f0b04c 4502 -rm -f cxxmain.c
fda9c731 4503 -rm -f .gdbinit configargs.h
c01a508e 4504 -rm -f gcov.pod
ad854f24
ZW
4505# Delete po/*.gmo only if we are not building in the source directory.
4506 -if [ ! -f po/exgettext ]; then rm -f po/*.gmo; fi
4adbd5dd 4507 -rmdir ada cp f java objc intl po testsuite plugin 2>/dev/null
2e494f70 4508
63d9b81c 4509# Get rid of every file that's generated from some other file, except for `configure'.
79d8453e 4510# Most of these files ARE PRESENT in the GCC distribution.
63d9b81c
RK
4511maintainer-clean:
4512 @echo 'This command is intended for maintainers to use; it'
4513 @echo 'deletes files that may need special tools to rebuild.'
6eb95e99 4514 $(MAKE) lang.maintainer-clean distclean
17db6582
JM
4515 -rm -f cpp.??s cpp.*aux
4516 -rm -f gcc.??s gcc.*aux
b5422ad7 4517 -rm -f $(gcc_docdir)/*.info $(gcc_docdir)/*.1 $(gcc_docdir)/*.7 $(gcc_docdir)/*.dvi $(gcc_docdir)/*.pdf
544eb21e 4518#\f
455c8f48 4519# Entry points `install', `install-strip', and `uninstall'.
2e494f70 4520# Also use `install-collect2' to install collect2 when the config files don't.
79d8453e 4521
ba1811f1 4522# Copy the compiler files into directories where they will be run.
aab26e16
RK
4523# Install the driver last so that the window when things are
4524# broken is small.
fa958513 4525install: install-common $(INSTALL_HEADERS) \
6eb95e99 4526 install-cpp install-man install-info install-@POSUB@ \
b6b89215 4527 install-driver install-lto-wrapper install-gcc-ar
79d8453e 4528
bf016de8
RAE
4529ifeq ($(enable_plugin),yes)
4530install: install-plugin
4531endif
4532
455c8f48
RW
4533install-strip: override INSTALL_PROGRAM = $(INSTALL_STRIP_PROGRAM)
4534ifneq ($(STRIP),)
4535install-strip: STRIPPROG = $(STRIP)
4536export STRIPPROG
4537endif
4538install-strip: install
4539
587a4ba6 4540# Handle cpp installation.
47b528da 4541install-cpp: installdirs cpp$(exeext)
439020ec
KC
4542 -rm -f $(DESTDIR)$(bindir)/$(CPP_INSTALL_NAME)$(exeext)
4543 -$(INSTALL_PROGRAM) -m 755 cpp$(exeext) $(DESTDIR)$(bindir)/$(CPP_INSTALL_NAME)$(exeext)
4544 -if [ x$(cpp_install_dir) != x ]; then \
4545 rm -f $(DESTDIR)$(prefix)/$(cpp_install_dir)/$(CPP_INSTALL_NAME)$(exeext); \
4546 $(INSTALL_PROGRAM) -m 755 cpp$(exeext) $(DESTDIR)$(prefix)/$(cpp_install_dir)/$(CPP_INSTALL_NAME)$(exeext); \
4547 else true; fi
587a4ba6 4548
69cbb85a 4549# Create the installation directories.
a8ee6e2d 4550# $(libdir)/gcc/include isn't currently searched by cpp.
69cbb85a 4551installdirs:
947c6b00
NN
4552 $(mkinstalldirs) $(DESTDIR)$(libsubdir)
4553 $(mkinstalldirs) $(DESTDIR)$(libexecsubdir)
4554 $(mkinstalldirs) $(DESTDIR)$(bindir)
4555 $(mkinstalldirs) $(DESTDIR)$(includedir)
4556 $(mkinstalldirs) $(DESTDIR)$(infodir)
947c6b00
NN
4557 $(mkinstalldirs) $(DESTDIR)$(man1dir)
4558 $(mkinstalldirs) $(DESTDIR)$(man7dir)
79d8453e 4559
bf016de8 4560PLUGIN_HEADERS = $(TREE_H) $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
7c475d11 4561 toplev.h $(DIAGNOSTIC_CORE_H) $(BASIC_BLOCK_H) $(GIMPLE_H) $(TREE_PASS_H) $(GCC_PLUGIN_H) \
ee666c25 4562 $(GGC_H) $(TREE_DUMP_H) $(PRETTY_PRINT_H) $(OPTS_H) $(PARAMS_H) \
cac1b0ee
BS
4563 $(tm_file_list) $(tm_include_list) $(tm_p_file_list) $(tm_p_include_list) \
4564 $(host_xm_file_list) $(host_xm_include_list) $(xm_include_list) \
f895fc2a 4565 intl.h $(PLUGIN_VERSION_H) $(DIAGNOSTIC_H) ${C_TREE_H} \
61d3ce20 4566 $(C_COMMON_H) c-family/c-objc.h $(C_PRETTY_PRINT_H) \
2ab43a52 4567 tree-iterator.h $(PLUGIN_H) $(TREE_FLOW_H) langhooks.h incpath.h debug.h \
3b06d379 4568 $(EXCEPT_H) tree-ssa-sccvn.h real.h output.h $(IPA_UTILS_H) \
33887751 4569 $(C_PRAGMA_H) $(CPPLIB_H) $(FUNCTION_H) \
2a5e9d16 4570 cppdefault.h flags.h $(MD5_H) params.def params.h prefix.h tree-inline.h \
ee666c25 4571 $(GIMPLE_PRETTY_PRINT_H) realmpfr.h \
01094033 4572 $(IPA_PROP_H) $(RTL_H) $(TM_P_H) $(CFGLOOP_H) $(EMIT_RTL_H) version.h
bf016de8 4573
090fa0ab
GF
4574# generate the 'build fragment' b-header-vars
4575s-header-vars: Makefile
4576 rm -f tmp-header-vars
af0a7a92
OH
4577# The first sed gets the list "header variables" as the list variables
4578# assigned in Makefile and having _H at the end of the name. "sed -n" proved
4579# more portable than a trailing "-e d" to filter out the uninteresting lines,
4580# in particular on ia64-hpux where "s/.../p" only prints if -n was requested
4581# as well.
4582 $(foreach header_var,$(shell sed < Makefile -n -e 's/^\([A-Z0-9_]*_H\)[ ]*=.*/\1/p'),echo $(header_var)=$(shell echo $($(header_var):$(srcdir)/%=.../%) | sed -e 's~\.\.\./config/~config/~' -e 's~\.\.\..*/~~') >> tmp-header-vars;) \
090fa0ab
GF
4583 $(SHELL) $(srcdir)/../move-if-change tmp-header-vars b-header-vars
4584 $(STAMP) s-header-vars
4585
f142b5bc
RG
4586# Install gengtype
4587install-gengtype: installdirs gengtype$(exeext) gtype.state
4588 $(mkinstalldirs) $(DESTDIR)$(plugin_resourcesdir)
4589 $(INSTALL_DATA) gtype.state $(DESTDIR)$(plugin_resourcesdir)/gtype.state
4590 $(mkinstalldirs) $(DESTDIR)$(plugin_bindir)
4591 $(INSTALL_PROGRAM) gengtype$(exeext) $(DESTDIR)$(plugin_bindir)/gengtype$(exeext)
4592
bf016de8 4593# Install the headers needed to build a plugin.
f142b5bc 4594install-plugin: installdirs lang.install-plugin s-header-vars install-gengtype
1baae426
RG
4595# We keep the directory structure for files in config or c-family and .def
4596# files. All other files are flattened to a single directory.
bf016de8 4597 $(mkinstalldirs) $(DESTDIR)$(plugin_includedir)
2fdb618d 4598 headers=`echo $(PLUGIN_HEADERS) | tr ' ' '\012' | sort -u`; \
3b3e44eb 4599 srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`; \
bf016de8
RAE
4600 for file in $$headers; do \
4601 if [ -f $$file ] ; then \
4602 path=$$file; \
4603 elif [ -f $(srcdir)/$$file ]; then \
4604 path=$(srcdir)/$$file; \
4605 else continue; \
4606 fi; \
4607 case $$path in \
1baae426 4608 "$(srcdir)"/config/* | "$(srcdir)"/c-family/* | "$(srcdir)"/*.def ) \
9419a9fd 4609 base=`echo "$$path" | sed -e "s|$$srcdirstrip/||"`;; \
bf016de8
RAE
4610 *) base=`basename $$path` ;; \
4611 esac; \
4612 dest=$(plugin_includedir)/$$base; \
86e3c83a 4613 echo $(INSTALL_DATA) $$path $(DESTDIR)$$dest; \
bf016de8 4614 dir=`dirname $$dest`; \
86e3c83a
MK
4615 $(mkinstalldirs) $(DESTDIR)$$dir; \
4616 $(INSTALL_DATA) $$path $(DESTDIR)$$dest; \
bf016de8 4617 done
090fa0ab 4618 $(INSTALL_DATA) b-header-vars $(DESTDIR)$(plugin_includedir)/b-header-vars
bf016de8 4619
79d8453e 4620# Install the compiler executables built during cross compilation.
fa958513 4621install-common: native lang.install-common installdirs
79d8453e
RS
4622 for file in $(COMPILERS); do \
4623 if [ -f $$file ] ; then \
a8ee6e2d
GK
4624 rm -f $(DESTDIR)$(libexecsubdir)/$$file; \
4625 $(INSTALL_PROGRAM) $$file $(DESTDIR)$(libexecsubdir)/$$file; \
79d8453e
RS
4626 else true; \
4627 fi; \
4628 done
d82c57a8 4629 for file in $(EXTRA_PROGRAMS) $(COLLECT2) ..; do \
79d8453e 4630 if [ x"$$file" != x.. ]; then \
a8ee6e2d
GK
4631 rm -f $(DESTDIR)$(libexecsubdir)/$$file; \
4632 $(INSTALL_PROGRAM) $$file $(DESTDIR)$(libexecsubdir)/$$file; \
79d8453e
RS
4633 else true; fi; \
4634 done
e90f1b9d
MM
4635# We no longer install the specs file because its presence makes the
4636# driver slower, and because people who need it can recreate it by
4637# using -dumpspecs. We remove any old version because it would
4638# otherwise override the specs built into the driver.
8ff61ea7 4639 rm -f $(DESTDIR)$(libsubdir)/specs
ca363bb6 4640# Install gcov if it was compiled.
59a64126
DE
4641 -if [ -f gcov$(exeext) ]; \
4642 then \
3743ea05 4643 rm -f $(DESTDIR)$(bindir)/$(GCOV_INSTALL_NAME)$(exeext); \
90961eff 4644 $(INSTALL_PROGRAM) gcov$(exeext) $(DESTDIR)$(bindir)/$(GCOV_INSTALL_NAME)$(exeext); \
59a64126 4645 fi
aab26e16 4646
5340bbea 4647# Install the driver program as $(target_noncanonical)-gcc,
caa55b1e 4648# $(target_noncanonical)-gcc-$(version)
91c7bd9b 4649# and also as either gcc (if native) or $(gcc_tooldir)/bin/gcc.
e658449e 4650install-driver: installdirs xgcc$(exeext)
439020ec
KC
4651 -rm -f $(DESTDIR)$(bindir)/$(GCC_INSTALL_NAME)$(exeext)
4652 -$(INSTALL_PROGRAM) xgcc$(exeext) $(DESTDIR)$(bindir)/$(GCC_INSTALL_NAME)$(exeext)
f03668f6 4653 -rm -f $(DESTDIR)$(bindir)/$(target_noncanonical)-gcc-$(version)$(exeext)
439020ec 4654 -( cd $(DESTDIR)$(bindir) && \
f03668f6 4655 $(LN) $(GCC_INSTALL_NAME)$(exeext) $(target_noncanonical)-gcc-$(version)$(exeext) )
173712fb 4656 -if [ -f gcc-cross$(exeext) ] ; then \
90961eff
AJ
4657 if [ -d $(DESTDIR)$(gcc_tooldir)/bin/. ] ; then \
4658 rm -f $(DESTDIR)$(gcc_tooldir)/bin/gcc$(exeext); \
4659 $(INSTALL_PROGRAM) gcc-cross$(exeext) $(DESTDIR)$(gcc_tooldir)/bin/gcc$(exeext); \
79d8453e
RS
4660 else true; fi; \
4661 else \
caa55b1e 4662 rm -f $(DESTDIR)$(bindir)/$(target_noncanonical)-gcc-tmp$(exeext); \
90961eff 4663 ( cd $(DESTDIR)$(bindir) && \
caa55b1e
NN
4664 $(LN) $(GCC_INSTALL_NAME)$(exeext) $(target_noncanonical)-gcc-tmp$(exeext) && \
4665 mv -f $(target_noncanonical)-gcc-tmp$(exeext) $(GCC_TARGET_INSTALL_NAME)$(exeext) ); \
79d8453e 4666 fi
79d8453e 4667
0b2fbcb2 4668# Install the info files.
feb9ea1a 4669# $(INSTALL_DATA) might be a relative pathname, so we can't cd into srcdir
ee5b121e 4670# to do the install.
97ae108d
MM
4671install-info:: doc installdirs \
4672 $(DESTDIR)$(infodir)/cpp.info \
4673 $(DESTDIR)$(infodir)/gcc.info \
4674 $(DESTDIR)$(infodir)/cppinternals.info \
ee312cd0 4675 $(DESTDIR)$(infodir)/gccinstall.info \
dedfa466
PB
4676 $(DESTDIR)$(infodir)/gccint.info \
4677 lang.install-info
97ae108d 4678
a541f69d 4679$(DESTDIR)$(infodir)/%.info: doc/%.info installdirs
97ae108d
MM
4680 rm -f $@
4681 if [ -f $< ]; then \
4682 for f in $(<)*; do \
17db6582 4683 realfile=`echo $$f | sed -e 's|.*/\([^/]*\)$$|\1|'`; \
90961eff 4684 $(INSTALL_DATA) $$f $(DESTDIR)$(infodir)/$$realfile; \
3d56d025 4685 chmod a-x $(DESTDIR)$(infodir)/$$realfile; \
17db6582
JM
4686 done; \
4687 else true; fi
ee5b121e 4688 -if $(SHELL) -c 'install-info --version' >/dev/null 2>&1; then \
a89f5df3
JM
4689 if [ -f $@ ]; then \
4690 install-info --dir-file=$(DESTDIR)$(infodir)/dir $@; \
f8c86b58 4691 else true; fi; \
265ce5bb 4692 else true; fi;
0b2fbcb2 4693
bcc3d150
BM
4694pdf__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
4695
4696install-pdf: $(PDFFILES) lang.install-pdf
4697 @$(NORMAL_INSTALL)
4698 test -z "$(pdfdir)/gcc" || $(mkinstalldirs) "$(DESTDIR)$(pdfdir)/gcc"
4699 @list='$(PDFFILES)'; for p in $$list; do \
4700 if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
4701 f=$(pdf__strip_dir) \
4702 echo " $(INSTALL_DATA) '$$d$$p' '$(DESTDIR)$(pdfdir)/gcc/$$f'"; \
4703 $(INSTALL_DATA) "$$d$$p" "$(DESTDIR)$(pdfdir)/gcc/$$f"; \
4704 done
4705
9288b845 4706html__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
d3dc619d 4707
55bcd32b 4708install-html: $(HTMLS_BUILD) lang.install-html
9288b845 4709 @$(NORMAL_INSTALL)
ab7efd91 4710 test -z "$(htmldir)" || $(mkinstalldirs) "$(DESTDIR)$(htmldir)"
9288b845
CD
4711 @list='$(HTMLS_INSTALL)'; for p in $$list; do \
4712 if test -f "$$p" || test -d "$$p"; then d=""; else d="$(srcdir)/"; fi; \
4713 f=$(html__strip_dir) \
4714 if test -d "$$d$$p"; then \
ab7efd91
CD
4715 echo " $(mkinstalldirs) '$(DESTDIR)$(htmldir)/$$f'"; \
4716 $(mkinstalldirs) "$(DESTDIR)$(htmldir)/$$f" || exit 1; \
9288b845
CD
4717 echo " $(INSTALL_DATA) '$$d$$p'/* '$(DESTDIR)$(htmldir)/$$f'"; \
4718 $(INSTALL_DATA) "$$d$$p"/* "$(DESTDIR)$(htmldir)/$$f"; \
4719 else \
4720 echo " $(INSTALL_DATA) '$$d$$p' '$(DESTDIR)$(htmldir)/$$f'"; \
4721 $(INSTALL_DATA) "$$d$$p" "$(DESTDIR)$(htmldir)/$$f"; \
4722 fi; \
4723 done
4724
79d8453e 4725# Install the man pages.
7bfb5ccc 4726install-man: lang.install-man \
a541f69d 4727 $(DESTDIR)$(man1dir)/$(GCC_INSTALL_NAME)$(man1ext) \
52ccb3d2
GK
4728 $(DESTDIR)$(man1dir)/$(CPP_INSTALL_NAME)$(man1ext) \
4729 $(DESTDIR)$(man1dir)/$(GCOV_INSTALL_NAME)$(man1ext) \
a541f69d
KC
4730 $(DESTDIR)$(man7dir)/fsf-funding$(man7ext) \
4731 $(DESTDIR)$(man7dir)/gfdl$(man7ext) \
4732 $(DESTDIR)$(man7dir)/gpl$(man7ext)
4733
7bfb5ccc 4734$(DESTDIR)$(man7dir)/%$(man7ext): doc/%.7 installdirs
a541f69d
KC
4735 -rm -f $@
4736 -$(INSTALL_DATA) $< $@
4737 -chmod a-x $@
4738
7bfb5ccc 4739$(DESTDIR)$(man1dir)/$(GCC_INSTALL_NAME)$(man1ext): doc/gcc.1 installdirs
a541f69d 4740 -rm -f $@
5340bbea 4741 -$(INSTALL_DATA) $< $@
a541f69d
KC
4742 -chmod a-x $@
4743
7bfb5ccc 4744$(DESTDIR)$(man1dir)/$(CPP_INSTALL_NAME)$(man1ext): doc/cpp.1 installdirs
52ccb3d2 4745 -rm -f $@
5340bbea 4746 -$(INSTALL_DATA) $< $@
52ccb3d2
GK
4747 -chmod a-x $@
4748
7bfb5ccc 4749$(DESTDIR)$(man1dir)/$(GCOV_INSTALL_NAME)$(man1ext): doc/gcov.1 installdirs
a541f69d 4750 -rm -f $@
5340bbea 4751 -$(INSTALL_DATA) $< $@
a541f69d 4752 -chmod a-x $@
79d8453e 4753
ba1811f1 4754# Install all the header files built in the include subdirectory.
fecd6201 4755install-headers: $(INSTALL_HEADERS_DIR)
ba1811f1
ILT
4756# Fix symlinks to absolute paths in the installed include directory to
4757# point to the installed directory, not the build directory.
ac64120e 4758# Don't need to use LN_S here since we really do need ln -s and no substitutes.
f686ec05 4759 -files=`cd $(DESTDIR)$(libsubdir)/include-fixed; find . -type l -print 2>/dev/null`; \
ba1811f1 4760 if [ $$? -eq 0 ]; then \
f686ec05 4761 dir=`cd include-fixed; ${PWD_COMMAND}`; \
ba1811f1 4762 for i in $$files; do \
f686ec05 4763 dest=`ls -ld $(DESTDIR)$(libsubdir)/include-fixed/$$i | sed -n 's/.*-> //p'`; \
ba1811f1 4764 if expr "$$dest" : "$$dir.*" > /dev/null; then \
f686ec05
JM
4765 rm -f $(DESTDIR)$(libsubdir)/include-fixed/$$i; \
4766 ln -s `echo $$i | sed "s|/[^/]*|/..|g" | sed 's|/..$$||'``echo "$$dest" | sed "s|$$dir||"` $(DESTDIR)$(libsubdir)/include-fixed/$$i; \
ba1811f1
ILT
4767 fi; \
4768 done; \
4769 fi
79d8453e 4770
ba1811f1 4771# Create or recreate the gcc private include file directory.
69cbb85a 4772install-include-dir: installdirs
d3dc619d 4773 $(mkinstalldirs) $(DESTDIR)$(libsubdir)/include
f686ec05 4774 -rm -rf $(DESTDIR)$(libsubdir)/include-fixed
f686ec05 4775 mkdir $(DESTDIR)$(libsubdir)/include-fixed
f686ec05 4776 -chmod a+rx $(DESTDIR)$(libsubdir)/include-fixed
ba1811f1 4777
f08dd1f8
ZW
4778# Create or recreate the install-tools include file directory.
4779itoolsdir = $(libexecsubdir)/install-tools
4780itoolsdatadir = $(libsubdir)/install-tools
4781install-itoolsdirs: installdirs
4782 $(mkinstalldirs) $(DESTDIR)$(itoolsdatadir)/include
4783 $(mkinstalldirs) $(DESTDIR)$(itoolsdir)
4784
ba1811f1 4785# Install the include directory using tar.
52c0e446 4786install-headers-tar: stmp-int-hdrs install-include-dir
965c3f43
AO
4787# We use `pwd`/include instead of just include to problems with CDPATH
4788# Unless a full pathname is provided, some shells would print the new CWD,
4789# found in CDPATH, corrupting the output. We could just redirect the
4790# output of `cd', but some shells lose on redirection within `()'s
8c90b13a 4791 (cd `${PWD_COMMAND}`/include ; \
90961eff 4792 tar -cf - .; exit 0) | (cd $(DESTDIR)$(libsubdir)/include; tar xpf - )
f686ec05
JM
4793 (cd `${PWD_COMMAND}`/include-fixed ; \
4794 tar -cf - .; exit 0) | (cd $(DESTDIR)$(libsubdir)/include-fixed; tar xpf - )
e6431ec5
RS
4795# /bin/sh on some systems returns the status of the first tar,
4796# and that can lose with GNU tar which always writes a full block.
4797# So use `exit 0' to ignore its exit status.
ba1811f1
ILT
4798
4799# Install the include directory using cpio.
52c0e446 4800install-headers-cpio: stmp-int-hdrs install-include-dir
965c3f43 4801# See discussion about the use of `pwd` above
8c90b13a 4802 cd `${PWD_COMMAND}`/include ; \
90961eff 4803 find . -print | cpio -pdum $(DESTDIR)$(libsubdir)/include
f686ec05
JM
4804 cd `${PWD_COMMAND}`/include-fixed ; \
4805 find . -print | cpio -pdum $(DESTDIR)$(libsubdir)/include-fixed
79d8453e 4806
ff3aaf17 4807# Install the include directory using cp.
52c0e446 4808install-headers-cp: stmp-int-hdrs install-include-dir
90961eff 4809 cp -p -r include $(DESTDIR)$(libsubdir)
f686ec05 4810 cp -p -r include-fixed $(DESTDIR)$(libsubdir)
ff3aaf17 4811
9fb03bd8
DJ
4812# Targets without dependencies, for use in prev-gcc during bootstrap.
4813real-install-headers-tar:
f686ec05
JM
4814 (cd `${PWD_COMMAND}`/include-fixed ; \
4815 tar -cf - .; exit 0) | (cd $(DESTDIR)$(libsubdir)/include-fixed; tar xpf - )
9fb03bd8
DJ
4816
4817real-install-headers-cpio:
f686ec05
JM
4818 cd `${PWD_COMMAND}`/include-fixed ; \
4819 find . -print | cpio -pdum $(DESTDIR)$(libsubdir)/include-fixed
9fb03bd8
DJ
4820
4821real-install-headers-cp:
f686ec05 4822 cp -p -r include-fixed $(DESTDIR)$(libsubdir)
9fb03bd8 4823
53c7ffe7 4824# Install supporting files for fixincludes to be run later.
52c0e446 4825install-mkheaders: stmp-int-hdrs install-itoolsdirs \
14da6073 4826 macro_list fixinc_list
53c7ffe7
GK
4827 $(INSTALL_DATA) $(srcdir)/gsyslimits.h \
4828 $(DESTDIR)$(itoolsdatadir)/gsyslimits.h
4829 $(INSTALL_DATA) macro_list $(DESTDIR)$(itoolsdatadir)/macro_list
14da6073
JM
4830 $(INSTALL_DATA) fixinc_list $(DESTDIR)$(itoolsdatadir)/fixinc_list
4831 set -e; for ml in `cat fixinc_list`; do \
4832 multi_dir=`echo $${ml} | sed -e 's/^[^;]*;//'`; \
4833 $(mkinstalldirs) $(DESTDIR)$(itoolsdatadir)/include$${multi_dir}; \
4834 $(INSTALL_DATA) include-fixed$${multidir}/limits.h $(DESTDIR)$(itoolsdatadir)/include$${multi_dir}/limits.h; \
4835 done
4836 $(INSTALL_SCRIPT) $(srcdir)/../mkinstalldirs \
90961eff 4837 $(DESTDIR)$(itoolsdir)/mkinstalldirs ; \
14da6073
JM
4838 sysroot_headers_suffix='$${sysroot_headers_suffix}'; \
4839 echo 'SYSTEM_HEADER_DIR="'"$(SYSTEM_HEADER_DIR)"'"' \
a8ee6e2d 4840 > $(DESTDIR)$(itoolsdatadir)/mkheaders.conf
e34a3d31 4841 echo 'OTHER_FIXINCLUDES_DIRS="$(OTHER_FIXINCLUDES_DIRS)"' \
a8ee6e2d 4842 >> $(DESTDIR)$(itoolsdatadir)/mkheaders.conf
a8ee6e2d
GK
4843 echo 'STMP_FIXINC="$(STMP_FIXINC)"' \
4844 >> $(DESTDIR)$(itoolsdatadir)/mkheaders.conf
e34a3d31 4845
10da1131 4846# Use this target to install the program `collect2' under the name `collect2'.
69cbb85a 4847install-collect2: collect2 installdirs
a8ee6e2d 4848 $(INSTALL_PROGRAM) collect2$(exeext) $(DESTDIR)$(libexecsubdir)/collect2$(exeext)
2e494f70 4849# Install the driver program as $(libsubdir)/gcc for collect2.
a8ee6e2d 4850 $(INSTALL_PROGRAM) xgcc$(exeext) $(DESTDIR)$(libexecsubdir)/gcc$(exeext)
2e494f70 4851
d7f09764
DN
4852# Install lto-wrapper.
4853install-lto-wrapper: lto-wrapper$(exeext)
4854 $(INSTALL_PROGRAM) lto-wrapper$(exeext) $(DESTDIR)$(libexecsubdir)/lto-wrapper$(exeext)
7ac8318c 4855
d6baa446
RC
4856install-gcc-ar: installdirs gcc-ar$(exeext) gcc-nm$(exeext) gcc-ranlib$(exeext)
4857 for i in gcc-ar gcc-nm gcc-ranlib; do \
4858 install_name=`echo $$i|sed '$(program_transform_name)'` ;\
4859 target_install_name=$(target_noncanonical)-`echo $$i|sed '$(program_transform_name)'` ; \
4860 rm -f $(DESTDIR)$(bindir)/$$install_name$(exeext) ; \
4861 $(INSTALL_PROGRAM) $$i$(exeext) $(DESTDIR)$(bindir)/$$install_name$(exeext) ;\
4862 if test -f gcc-cross$(exeext); then \
b6b89215
AK
4863 :; \
4864 else \
d6baa446 4865 rm -f $(DESTDIR)$(bindir)/$$target_install_name$(exeext); \
b6b89215 4866 ( cd $(DESTDIR)$(bindir) && \
d6baa446 4867 $(LN) $$install_name$(exeext) $$target_install_name$(exeext) ) ; \
b6b89215
AK
4868 fi ; \
4869 done
4870
79d8453e 4871# Cancel installation by deleting the installed files.
6eb95e99 4872uninstall: lang.uninstall
90961eff 4873 -rm -rf $(DESTDIR)$(libsubdir)
a8ee6e2d 4874 -rm -rf $(DESTDIR)$(libexecsubdir)
90961eff 4875 -rm -rf $(DESTDIR)$(bindir)/$(GCC_INSTALL_NAME)$(exeext)
90961eff 4876 -rm -f $(DESTDIR)$(bindir)/$(CPP_INSTALL_NAME)$(exeext)
1e730c5c 4877 -if [ x$(cpp_install_dir) != x ]; then \
90961eff 4878 rm -f $(DESTDIR)$(prefix)/$(cpp_install_dir)/$(CPP_INSTALL_NAME)$(exeext); \
1e730c5c 4879 else true; fi
90961eff
AJ
4880 -rm -rf $(DESTDIR)$(bindir)/$(GCOV_INSTALL_NAME)$(exeext)
4881 -rm -rf $(DESTDIR)$(man1dir)/$(GCC_INSTALL_NAME)$(man1ext)
90961eff 4882 -rm -rf $(DESTDIR)$(man1dir)/cpp$(man1ext)
90961eff
AJ
4883 -rm -f $(DESTDIR)$(infodir)/cpp.info* $(DESTDIR)$(infodir)/gcc.info*
4884 -rm -f $(DESTDIR)$(infodir)/cppinternals.info* $(DESTDIR)$(infodir)/gccint.info*
b6b89215
AK
4885 for i in ar nm ranlib ; do \
4886 install_name=`echo gcc-$$i|sed '$(program_transform_name)'`$(exeext) ;\
4887 target_install_name=$(target_noncanonical)-`echo gcc-$$i|sed '$(program_transform_name)'`$(exeext) ; \
4888 rm -f $(DESTDIR)$(bindir)/$$install_name ; \
4889 rm -f $(DESTDIR)$(bindir)/$$target_install_name ; \
4890 done
544eb21e 4891#\f
4c457b6b 4892# These targets are for the dejagnu testsuites. The file site.exp
e933cbe0
JL
4893# contains global variables that all the testsuites will use.
4894
e933cbe0
JL
4895target_subdir = @target_subdir@
4896
4897site.exp: ./config.status Makefile
4898 @echo "Making a new config file..."
f103fa7a 4899 -@rm -f ./site.tmp
d9835ae8 4900 @$(STAMP) site.exp
e933cbe0 4901 -@mv site.exp site.bak
f103fa7a
RG
4902 @echo "## these variables are automatically generated by make ##" > ./site.tmp
4903 @echo "# Do not edit here. If you wish to override these values" >> ./site.tmp
4904 @echo "# add them to the last section" >> ./site.tmp
4905 @echo "set rootme \"`${PWD_COMMAND}`\"" >> ./site.tmp
4906 @echo "set srcdir \"`cd ${srcdir}; ${PWD_COMMAND}`\"" >> ./site.tmp
4907 @echo "set host_triplet $(host)" >> ./site.tmp
4908 @echo "set build_triplet $(build)" >> ./site.tmp
4909 @echo "set target_triplet $(target)" >> ./site.tmp
4910 @echo "set target_alias $(target_noncanonical)" >> ./site.tmp
4911 @echo "set libiconv \"$(LIBICONV)\"" >> ./site.tmp
e933cbe0 4912# CFLAGS is set even though it's empty to show we reserve the right to set it.
f103fa7a
RG
4913 @echo "set CFLAGS \"\"" >> ./site.tmp
4914 @echo "set CXXFLAGS \"\"" >> ./site.tmp
4915 @echo "set HOSTCC \"$(CC)\"" >> ./site.tmp
4916 @echo "set HOSTCFLAGS \"$(CFLAGS)\"" >> ./site.tmp
c875f596
DN
4917# TEST_ALWAYS_FLAGS are flags that should be passed to every compilation.
4918# They are passed first to allow individual tests to override them.
4919 @echo "set TEST_ALWAYS_FLAGS \"$(SYSROOT_CFLAGS_FOR_TARGET)\"" >> ./site.tmp
4d936aca
JJ
4920# When running the tests we set GCC_EXEC_PREFIX to the install tree so that
4921# files that have already been installed there will be found. The -B option
4922# overrides it, so use of GCC_EXEC_PREFIX will not result in using GCC files
4923# from the install tree.
f103fa7a
RG
4924 @echo "set TEST_GCC_EXEC_PREFIX \"$(libdir)/gcc/\"" >> ./site.tmp
4925 @echo "set TESTING_IN_BUILD_TREE 1" >> ./site.tmp
4926 @echo "set HAVE_LIBSTDCXX_V3 1" >> ./site.tmp
68a607d8 4927 @if test "@enable_plugin@" = "yes" ; then \
f103fa7a
RG
4928 echo "set ENABLE_PLUGIN 1" >> ./site.tmp; \
4929 echo "set PLUGINCC \"$(PLUGINCC)\"" >> ./site.tmp; \
4930 echo "set PLUGINCFLAGS \"$(PLUGINCFLAGS)\"" >> ./site.tmp; \
4931 echo "set GMPINC \"$(GMPINC)\"" >> ./site.tmp; \
68a607d8 4932 fi
d7f09764 4933 @if test "@enable_lto@" = "yes" ; then \
f103fa7a 4934 echo "set ENABLE_LTO 1" >> ./site.tmp; \
d7f09764 4935 fi
e933cbe0
JL
4936# If newlib has been configured, we need to pass -B to gcc so it can find
4937# newlib's crt0.o if it exists. This will cause a "path prefix not used"
4938# message if it doesn't, but the testsuite is supposed to ignore the message -
4939# it's too difficult to tell when to and when not to pass -B (not all targets
4940# have crt0's). We could only add the -B if ../newlib/crt0.o exists, but that
4941# seems like too selective a test.
4942# ??? Another way to solve this might be to rely on linker scripts. Then
4943# theoretically the -B won't be needed.
4944# We also need to pass -L ../ld so that the linker can find ldscripts.
6a1b7268 4945 @if [ -d $(objdir)/../$(target_subdir)/newlib ] \
4665e56c 4946 && [ "${host}" != "${target}" ]; then \
f103fa7a
RG
4947 echo "set newlib_cflags \"-I$(objdir)/../$(target_subdir)/newlib/targ-include -I\$$srcdir/../newlib/libc/include\"" >> ./site.tmp; \
4948 echo "set newlib_ldflags \"-B$(objdir)/../$(target_subdir)/newlib/\"" >> ./site.tmp; \
4949 echo "append CFLAGS \" \$$newlib_cflags\"" >> ./site.tmp; \
4950 echo "append CXXFLAGS \" \$$newlib_cflags\"" >> ./site.tmp; \
4951 echo "append LDFLAGS \" \$$newlib_ldflags\"" >> ./site.tmp; \
e933cbe0
JL
4952 else true; \
4953 fi
4954 @if [ -d $(objdir)/../ld ] ; then \
f103fa7a 4955 echo "append LDFLAGS \" -L$(objdir)/../ld\"" >> ./site.tmp; \
e933cbe0
JL
4956 else true; \
4957 fi
f103fa7a
RG
4958 echo "set tmpdir $(objdir)/testsuite" >> ./site.tmp
4959 @echo "set srcdir \"\$${srcdir}/testsuite\"" >> ./site.tmp
6ccfe27c 4960 @if [ "X$(ALT_CC_UNDER_TEST)" != "X" ] ; then \
f103fa7a 4961 echo "set ALT_CC_UNDER_TEST \"$(ALT_CC_UNDER_TEST)\"" >> ./site.tmp; \
6ccfe27c
JJ
4962 else true; \
4963 fi
fa870451 4964 @if [ "X$(ALT_CXX_UNDER_TEST)" != "X" ] ; then \
f103fa7a 4965 echo "set ALT_CXX_UNDER_TEST \"$(ALT_CXX_UNDER_TEST)\"" >> ./site.tmp; \
fa870451
JJ
4966 else true; \
4967 fi
4968 @if [ "X$(COMPAT_OPTIONS)" != "X" ] ; then \
f103fa7a 4969 echo "set COMPAT_OPTIONS \"$(COMPAT_OPTIONS)\"" >> ./site.tmp; \
fa870451
JJ
4970 else true; \
4971 fi
f103fa7a
RG
4972 @echo "## All variables above are generated by configure. Do Not Edit ##" >> ./site.tmp
4973 @cat ./site.tmp > site.exp
e933cbe0
JL
4974 @cat site.bak | sed \
4975 -e '1,/^## All variables above are.*##/ d' >> site.exp
f103fa7a 4976 -@rm -f ./site.tmp
e933cbe0 4977
d4a10d0a 4978CHECK_TARGETS = @check_languages@
cbc59f01 4979
e933cbe0
JL
4980check: $(CHECK_TARGETS)
4981
7134e605
JJ
4982check-subtargets: $(patsubst %,%-subtargets,$(CHECK_TARGETS))
4983
a738a85c 4984# The idea is to parallelize testing of multilibs, for example:
7dd232a8 4985# make -j3 check-gcc//sh-hms-sim/{-m1,-m2,-m3,-m3e,-m4}/{,-nofpu}
a738a85c
AO
4986# will run 3 concurrent sessions of check-gcc, eventually testing
4987# all 10 combinations. GNU make is required, as is a shell that expands
4988# alternations within braces.
49a41726
JM
4989lang_checks_parallel = $(lang_checks:=//%)
4990$(lang_checks_parallel): site.exp
7dd232a8
AO
4991 target=`echo "$@" | sed 's,//.*,,'`; \
4992 variant=`echo "$@" | sed 's,^[^/]*//,,'`; \
a738a85c
AO
4993 vardots=`echo "$$variant" | sed 's,/,.,g'`; \
4994 $(MAKE) TESTSUITEDIR="testsuite.$$vardots" \
8207e1fb 4995 RUNTESTFLAGS="--target_board=$$variant $(RUNTESTFLAGS)" \
a738a85c
AO
4996 "$$target"
4997
4998TESTSUITEDIR = testsuite
4999
5000$(TESTSUITEDIR)/site.exp: site.exp
577092ba 5001 -test -d $(TESTSUITEDIR) || mkdir $(TESTSUITEDIR)
a738a85c 5002 -rm -f $@
453897b4 5003 sed '/set tmpdir/ s|testsuite$$|$(TESTSUITEDIR)|' < site.exp > $@
a738a85c 5004
7134e605
JJ
5005# This is only used for check-% targets that aren't parallelized.
5006$(filter-out $(lang_checks_parallelized),$(lang_checks)): check-% : site.exp
4adbd5dd 5007 -test -d plugin || mkdir plugin
577092ba 5008 -test -d $(TESTSUITEDIR) || mkdir $(TESTSUITEDIR)
fea4cfe0 5009 test -d $(TESTSUITEDIR)/$* || mkdir $(TESTSUITEDIR)/$*
8c90b13a
L
5010 -(rootme=`${PWD_COMMAND}`; export rootme; \
5011 srcdir=`cd ${srcdir}; ${PWD_COMMAND}` ; export srcdir ; \
fea4cfe0
L
5012 cd $(TESTSUITEDIR)/$*; \
5013 rm -f tmp-site.exp; \
453897b4 5014 sed '/set tmpdir/ s|testsuite$$|$(TESTSUITEDIR)/$*|' \
fea4cfe0 5015 < ../../site.exp > tmp-site.exp; \
88405bd3 5016 $(SHELL) $${srcdir}/../move-if-change tmp-site.exp site.exp; \
d8bb17c8
OP
5017 EXPECT=${EXPECT} ; export EXPECT ; \
5018 if [ -f $${rootme}/../expect/expect ] ; then \
88405bd3 5019 TCL_LIBRARY=`cd .. ; cd $${srcdir}/../tcl/library ; ${PWD_COMMAND}` ; \
d8bb17c8 5020 export TCL_LIBRARY ; fi ; \
4b09846b 5021 $(RUNTEST) --tool $* $(RUNTESTFLAGS))
d8bb17c8 5022
7134e605
JJ
5023$(patsubst %,%-subtargets,$(filter-out $(lang_checks_parallelized),$(lang_checks))): check-%-subtargets:
5024 @echo check-$*
5025
5026check_p_tool=$(firstword $(subst _, ,$*))
5027check_p_vars=$(check_$(check_p_tool)_parallelize)
5028check_p_subno=$(word 2,$(subst _, ,$*))
5029check_p_comma=,
5030check_p_subwork=$(subst $(check_p_comma), ,$(if $(check_p_subno),$(word $(check_p_subno),$(check_p_vars))))
5031check_p_numbers=1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
5032check_p_subdir=$(subst _,,$*)
5033check_p_subdirs=$(wordlist 1,$(words $(check_$*_parallelize)),$(check_p_numbers))
5034
5035# For parallelized check-% targets, this decides whether parallelization
5036# is desirable (if -jN is used and RUNTESTFLAGS doesn't contain anything
6feeed06 5037# but optional --target_board or --extra_opts arguments). If desirable,
7134e605
JJ
5038# recursive make is run with check-parallel-$lang{,1,2,3,4,5} etc. goals,
5039# which can be executed in parallel, as they are run in separate directories.
5040# check-parallel-$lang{1,2,3,4,5} etc. goals invoke runtest with the longest
5041# running *.exp files from the testsuite, as determined by check_$lang_parallelize
5042# variable. The check-parallel-$lang goal in that case invokes runtest with
5043# all the remaining *.exp files not handled by the separate goals.
5044# Afterwards contrib/dg-extract-results.sh is used to merge the sum and log
5045# files. If parallelization isn't desirable, only one recursive make
5046# is run with check-parallel-$lang goal and check_$lang_parallelize variable
5047# cleared to say that no additional arguments beyond $(RUNTESTFLAGS)
5048# should be passed to runtest.
5049#
5050# To parallelize some language check, add the corresponding check-$lang
5051# to lang_checks_parallelized variable and define check_$lang_parallelize
5052# variable (see above check_gcc_parallelize description).
5053$(lang_checks_parallelized): check-% : site.exp
6feeed06 5054 @if [ -z "$(filter-out --target_board=%,$(filter-out --extra_opts%,$(RUNTESTFLAGS)))" ] \
7134e605 5055 && [ "$(filter -j, $(MFLAGS))" = "-j" ]; then \
8207e1fb 5056 $(MAKE) TESTSUITEDIR="$(TESTSUITEDIR)" RUNTESTFLAGS="$(RUNTESTFLAGS)" \
7134e605
JJ
5057 check-parallel-$* \
5058 $(patsubst %,check-parallel-$*_%, $(check_p_subdirs)); \
5059 for file in $(TESTSUITEDIR)/$*/$* \
5060 $(patsubst %,$(TESTSUITEDIR)/$*%/$*,$(check_p_subdirs));\
5061 do \
5062 mv -f $$file.sum $$file.sum.sep; mv -f $$file.log $$file.log.sep; \
5063 done; \
5064 $(SHELL) $(srcdir)/../contrib/dg-extract-results.sh \
5065 $(TESTSUITEDIR)/$*/$*.sum.sep \
5066 $(patsubst %,$(TESTSUITEDIR)/$*%/$*.sum.sep,$(check_p_subdirs)) \
5067 > $(TESTSUITEDIR)/$*/$*.sum; \
5068 $(SHELL) $(srcdir)/../contrib/dg-extract-results.sh -L \
5069 $(TESTSUITEDIR)/$*/$*.log.sep \
5070 $(patsubst %,$(TESTSUITEDIR)/$*%/$*.log.sep,$(check_p_subdirs)) \
5071 > $(TESTSUITEDIR)/$*/$*.log; \
5072 else \
8207e1fb 5073 $(MAKE) TESTSUITEDIR="$(TESTSUITEDIR)" RUNTESTFLAGS="$(RUNTESTFLAGS)" \
7134e605
JJ
5074 check_$*_parallelize= check-parallel-$*; \
5075 fi
5076
5077# Just print the parallelized subtargets for those that want to split
5078# the testing across machines.
5079$(patsubst %,%-subtargets,$(lang_checks_parallelized)): check-%-subtargets:
5080 @echo check-parallel-$* \
5081 $(patsubst %,check-parallel-$*_%, $(check_p_subdirs))
5082
5083# In the if [ -n "$(check_p_subno)" ] case runtest should be given the name of
5084# the given *.exp file(s). See comment above check_gcc_parallelize variable
5085# for details on the content of these variables.
5086#
5087# In the elif [ -n "$(check_p_vars)" ] case runtest should be given
5088# names of all the *.exp files for this tool that aren't already handled by
5089# other goals. First it finds all the *.exp files for this tool, then
5090# prunes those already specified in check_$lang_parallelize or duplicates.
5091#
5092# Otherwise check-$lang isn't parallelized and runtest is invoked just with
5093# the $(RUNTESTFLAGS) arguments.
5094check-parallel-% : site.exp
4adbd5dd 5095 -test -d plugin || mkdir plugin
7134e605
JJ
5096 -test -d $(TESTSUITEDIR) || mkdir $(TESTSUITEDIR)
5097 test -d $(TESTSUITEDIR)/$(check_p_subdir) || mkdir $(TESTSUITEDIR)/$(check_p_subdir)
5098 -(rootme=`${PWD_COMMAND}`; export rootme; \
5099 srcdir=`cd ${srcdir}; ${PWD_COMMAND}` ; export srcdir ; \
5100 cd $(TESTSUITEDIR)/$(check_p_subdir); \
5101 rm -f tmp-site.exp; \
453897b4 5102 sed '/set tmpdir/ s|testsuite$$|$(TESTSUITEDIR)/$(check_p_subdir)|' \
7134e605
JJ
5103 < ../../site.exp > tmp-site.exp; \
5104 $(SHELL) $${srcdir}/../move-if-change tmp-site.exp site.exp; \
5105 EXPECT=${EXPECT} ; export EXPECT ; \
5106 if [ -f $${rootme}/../expect/expect ] ; then \
5107 TCL_LIBRARY=`cd .. ; cd $${srcdir}/../tcl/library ; ${PWD_COMMAND}` ; \
5108 export TCL_LIBRARY ; fi ; \
7134e605
JJ
5109 runtestflags= ; \
5110 if [ -n "$(check_p_subno)" ] ; then \
5111 runtestflags="$(check_p_subwork)"; \
5112 elif [ -n "$(check_p_vars)" ] ; then \
5113 parts="`echo ' $(strip $(subst $(check_p_comma), ,$(check_p_vars))) ' \
5114 | sed 's/=[^ ]* / /g'`"; \
5115 for part in `find $$srcdir/testsuite/$(check_p_tool)* -name \*.exp` ; do \
5116 part=`basename $$part` ; \
5117 case " $$parts $$runtestflags " in \
5118 *" $$part "*) ;; \
5119 *) runtestflags="$$runtestflags $$part" ;; \
5120 esac ; \
5121 done ; \
5122 fi ; \
5123 $(RUNTEST) --tool $(check_p_tool) $(RUNTESTFLAGS) $$runtestflags)
5124
f362c762
MM
5125# QMTest targets
5126
5127# The path to qmtest.
5128QMTEST_PATH=qmtest
5129
5130# The flags to pass to qmtest.
5131QMTESTFLAGS=
5132
5133# The flags to pass to "qmtest run".
d7068b3d 5134QMTESTRUNFLAGS=-f none --result-stream dejagnu_stream.DejaGNUStream
f362c762
MM
5135
5136# The command to use to invoke qmtest.
5137QMTEST=${QMTEST_PATH} ${QMTESTFLAGS}
5138
5139# The tests (or suites) to run.
d7068b3d 5140QMTEST_GPP_TESTS=g++
f362c762
MM
5141
5142# The subdirectory of the OBJDIR that will be used to store the QMTest
5143# test database configuration and that will be used for temporary
5144# scratch space during QMTest's execution.
62363d99 5145QMTEST_DIR=qmtestsuite
f362c762
MM
5146
5147# Create the QMTest database configuration.
5148${QMTEST_DIR} stamp-qmtest:
d7068b3d
MM
5149 ${QMTEST} -D ${QMTEST_DIR} create-tdb \
5150 -c gcc_database.GCCDatabase \
7134e605 5151 -a srcdir=`cd ${srcdir}/testsuite && ${PWD_COMMAND}` && \
d7068b3d 5152 $(STAMP) stamp-qmtest
f362c762
MM
5153
5154# Create the QMTest context file.
5155${QMTEST_DIR}/context: stamp-qmtest
d7068b3d
MM
5156 rm -f $@
5157 echo "CompilerTable.languages=c cplusplus" >> $@
5158 echo "CompilerTable.c_kind=GCC" >> $@
5159 echo "CompilerTable.c_path=${objdir}/xgcc" >> $@
5160 echo "CompilerTable.c_options=-B${objdir}/" >> $@
5161 echo "CompilerTable.cplusplus_kind=GCC" >> $@
5162 echo "CompilerTable.cplusplus_path=${objdir}/g++" >> $@
5163 echo "CompilerTable.cplusplus_options=-B${objdir}/" >> $@
caa55b1e 5164 echo "DejaGNUTest.target=${target_noncanonical}" >> $@
f362c762
MM
5165
5166# Run the G++ testsuite using QMTest.
d7068b3d 5167qmtest-g++: ${QMTEST_DIR}/context
f362c762 5168 cd ${QMTEST_DIR} && ${QMTEST} run ${QMTESTRUNFLAGS} -C context \
d7068b3d 5169 -o g++.qmr ${QMTEST_GPP_TESTS}
f362c762
MM
5170
5171# Use the QMTest GUI.
5172qmtest-gui: ${QMTEST_DIR}/context
5173 cd ${QMTEST_DIR} && ${QMTEST} gui -C context
5174
f362c762
MM
5175.PHONY: qmtest-g++
5176
efdc7e19
RH
5177# Run Paranoia on real.c.
5178
40013784 5179paranoia.o: $(srcdir)/../contrib/paranoia.cc $(CONFIG_H) $(SYSTEM_H) $(TREE_H)
3a6ebcdc 5180 g++ -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $< $(OUTPUT_OPTION)
efdc7e19
RH
5181
5182paranoia: paranoia.o real.o $(LIBIBERTY)
5183 g++ -o $@ paranoia.o real.o $(LIBIBERTY)
5184
79d8453e
RS
5185# These exist for maintenance purposes.
5186
5187# Update the tags table.
65ebbf81 5188TAGS: lang.tags
7d60db05
JM
5189 (cd $(srcdir); \
5190 incs= ; \
5191 list='$(SUBDIRS)'; for dir in $$list; do \
5192 if test -f $$dir/TAGS; then \
5193 incs="$$incs --include $$dir/TAGS.sub"; \
5194 fi; \
5195 done; \
8d681dbf 5196 etags -o TAGS.sub c-family/*.h c-family/*.c *.h *.c; \
7d60db05 5197 etags --include TAGS.sub $$incs)
79d8453e 5198
39e73137 5199# -----------------------------------------------------
5b7874aa
ZW
5200# Rules for generating translated message descriptions.
5201# Disabled by autoconf if the tools are not available.
39e73137 5202# -----------------------------------------------------
5b7874aa
ZW
5203
5204XGETTEXT = @XGETTEXT@
5205GMSGFMT = @GMSGFMT@
5206MSGMERGE = msgmerge
5c3c3683 5207CATALOGS = $(patsubst %,po/%,@CATALOGS@)
5b7874aa 5208
0f81faf6 5209.PHONY: build- install- build-po install-po update-po
5b7874aa
ZW
5210
5211# Dummy rules to deal with dependencies produced by use of
5212# "build-@POSUB@" and "install-@POSUB@" above, when NLS is disabled.
5213build-: ; @true
5214install-: ; @true
5215
5216build-po: $(CATALOGS)
5217
5218# This notation should be acceptable to all Make implementations used
5219# by people who are interested in updating .po files.
5220update-po: $(CATALOGS:.gmo=.pox)
5221
9f6682b7
ZW
5222# N.B. We do not attempt to copy these into $(srcdir). The snapshot
5223# script does that.
5b7874aa 5224.po.gmo:
fc0cd180 5225 $(mkinstalldirs) po
bc524dd0 5226 $(GMSGFMT) --statistics -o $@ $<
5b7874aa 5227
9f6682b7
ZW
5228# The new .po has to be gone over by hand, so we deposit it into
5229# build/po with a different extension.
a1286ef5 5230# If build/po/gcc.pot exists, use it (it was just created),
359cd11e 5231# else use the one in srcdir.
5b7874aa 5232.po.pox:
fc0cd180 5233 $(mkinstalldirs) po
a1286ef5
ZW
5234 $(MSGMERGE) $< `if test -f po/gcc.pot; \
5235 then echo po/gcc.pot; \
5236 else echo $(srcdir)/po/gcc.pot; fi` -o $@
5b7874aa 5237
9f6682b7
ZW
5238# This rule has to look for .gmo modules in both srcdir and
5239# the cwd, and has to check that we actually have a catalog
5240# for each language, in case they weren't built or included
5241# with the distribution.
5b7874aa 5242install-po:
947c6b00 5243 $(mkinstalldirs) $(DESTDIR)$(datadir)
318b7749 5244 cats="$(CATALOGS)"; for cat in $$cats; do \
9f6682b7
ZW
5245 lang=`basename $$cat | sed 's/\.gmo$$//'`; \
5246 if [ -f $$cat ]; then :; \
5247 elif [ -f $(srcdir)/$$cat ]; then cat=$(srcdir)/$$cat; \
5248 else continue; \
5249 fi; \
5b7874aa 5250 dir=$(localedir)/$$lang/LC_MESSAGES; \
947c6b00
NN
5251 echo $(mkinstalldirs) $(DESTDIR)$$dir; \
5252 $(mkinstalldirs) $(DESTDIR)$$dir || exit 1; \
a1286ef5
ZW
5253 echo $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/gcc.mo; \
5254 $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/gcc.mo; \
5b7874aa
ZW
5255 done
5256
5257# Rule for regenerating the message template (gcc.pot).
5258# Instead of forcing everyone to edit POTFILES.in, which proved impractical,
5259# this rule has no dependencies and always regenerates gcc.pot. This is
5260# relatively harmless since the .po files do not directly depend on it.
5261# Note that exgettext has an awk script embedded in it which requires a
5262# fairly modern (POSIX-compliant) awk.
359cd11e 5263# The .pot file is left in the build directory.
a1286ef5 5264gcc.pot: po/gcc.pot
fb72a0a3 5265po/gcc.pot: force
fc0cd180 5266 $(mkinstalldirs) po
02ba6b22 5267 $(MAKE) srcextra
5b7874aa 5268 AWK=$(AWK) $(SHELL) $(srcdir)/po/exgettext \
a1286ef5 5269 $(XGETTEXT) gcc $(srcdir)