Merge trunk version 195164 into gupc branch.
[official-gcc.git] / gcc / lto / Make-lang.in
blob81ce7c80ab9ac7a237300ade6c9039adee8a5600
1 # Top level -*- makefile -*- fragment for LTO
2 #   Copyright (C) 2009-2013 Free Software Foundation, Inc.
4 #This file is part of GCC.
6 #GCC is free software; you can redistribute it and/or modify
7 #it under the terms of the GNU General Public License as published by
8 #the Free Software Foundation; either version 3, or (at your option)
9 #any later version.
11 #GCC is distributed in the hope that it will be useful,
12 #but WITHOUT ANY WARRANTY; without even the implied warranty of
13 #MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 #GNU General Public License for more details.
16 # You should have received a copy of the GNU General Public License
17 # along with GCC; see the file COPYING3.  If not see
18 # <http://www.gnu.org/licenses/>.
20 # Variables
22 # The name of the LTO compiler.
23 LTO_EXE = lto1$(exeext)
24 # The LTO-specific object files inclued in $(LTO_EXE).
25 LTO_OBJS = lto/lto-lang.o lto/lto.o lto/lto-object.o attribs.o lto/lto-partition.o
26 LTO_H = lto/lto.h $(HASHTAB_H)
27 LINKER_PLUGIN_API_H = $(srcdir)/../include/plugin-api.h
28 LTO_TREE_H = lto/lto-tree.h $(LINKER_PLUGIN_API_H)
31 # Rules
33 # These hooks are used by the main GCC Makefile.  Consult that
34 # Makefile for documentation.
35 lto.all.cross: $(LTO_EXE)
36 lto.start.encap: $(LTO_EXE)
37 lto.rest.encap:
38 lto.tags:
39 lto.install-common:
40 lto.install-man:
41 lto.install-info:
42 lto.dvi:
43 lto.pdf:
44 lto.install-pdf:
45 lto.html:
46 lto.install-html:
47 lto.uninstall:
48 lto.info:
49 lto.man:
50 lto.srcextra:
51 lto.srcman:
52 lto.srcinfo:
53 lto.install-plugin:
55 lto.mostlyclean:
56         rm -f $(LTO_OBJS) $(LTO_EXE)
58 lto.clean:
59 lto.distclean:
60 lto.maintainer-clean:
61 lto.stage1:
62 lto.stage2:
63 lto.stage3:
64 lto.stage4:
65 lto.stageprofile:
66 lto.stagefeedback:
68 # LTO rules.
70 # Use strict warnings for this front end.
71 lto-warn = $(STRICT_WARN)
73 $(LTO_EXE): $(LTO_OBJS) $(BACKEND) $(LIBDEPS)
74         +$(LINKER) $(ALL_LINKERFLAGS) $(LDFLAGS) -o $@ \
75                 $(LTO_OBJS) $(C_STUB_OBJS) $(BACKEND) $(BACKENDLIBS) $(LIBS)
77 # Dependencies
78 lto/lto-lang.o: lto/lto-lang.c $(CONFIG_H) coretypes.h debug.h \
79         flags.h $(GGC_H) langhooks.h $(LANGHOOKS_DEF_H) $(SYSTEM_H) \
80         $(TARGET_H) $(LTO_H) $(GIMPLE_H) gtype-lto.h gt-lto-lto-lang.h \
81         $(EXPR_H) $(LTO_STREAMER_H)
82 lto/lto.o: lto/lto.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(OPTS_H) \
83         toplev.h $(TREE_H) $(TREE_FLOW_H) $(DIAGNOSTIC_CORE_H) $(TM_H) \
84         $(CGRAPH_H) $(GGC_H) tree-ssa-operands.h $(TREE_PASS_H) \
85         langhooks.h $(VEC_H) $(BITMAP_H) pointer-set.h $(IPA_PROP_H) \
86         $(COMMON_H) debug.h $(GIMPLE_H) $(LTO_H) $(LTO_TREE_H) \
87         $(LTO_TAGS_H) $(LTO_STREAMER_H) $(SPLAY_TREE_H) gt-lto-lto.h \
88         $(TREE_STREAMER_H) lto/lto-partition.h
89 lto/lto-partition.o: lto/lto-partition.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
90         toplev.h $(TREE_H) $(TM_H) \
91         $(CGRAPH_H) $(TIMEVAR_H) \
92         $(LTO_STREAMER_H) $(SPLAY_TREE_H) gt-lto-lto.h $(PARAMS_H) \
93         ipa-inline.h $(IPA_UTILS_H) lto/lto-partition.h
94 lto/lto-object.o: lto/lto-object.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
95         $(DIAGNOSTIC_CORE_H) $(LTO_H) $(TM_H) $(LTO_STREAMER_H) \
96         ../include/simple-object.h
98 # LTO testing is done as part of C/C++/Fortran etc. testing.
99 check-lto: