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