xref: /freebsd-12.1/gnu/usr.bin/cc/cc_int/Makefile (revision f7f4d377)
19b7a44a6SPeter Wemm# $FreeBSD$
2b08a0919SDavid E. O'Brien
31992e9a1SAndrew Turner.include <bsd.own.mk>
41992e9a1SAndrew Turner
5a1b588fdSPeter Wemm.include "../Makefile.inc"
6afb57df6SAlexander Kabaev.include "../Makefile.ver"
7b75deec6SPoul-Henning Kamp
8afb57df6SAlexander Kabaev.PATH: ../cc_tools ${GCCDIR} ${GCCDIR}/config/${GCC_CPU}
918ff6ae9SDavid E. O'Brien
10afb57df6SAlexander KabaevLIB=	backend
11a35d8893SRuslan ErmilovINTERNALLIB=
1201573adfSDavid E. O'Brien
13afb57df6SAlexander KabaevEXTRA_OBJS=
14afb57df6SAlexander KabaevGGC=		ggc-page.o
15afb57df6SAlexander Kabaevhost_hook_obj=	host-default.o
16cd51f003SPeter Wemm
17afb57df6SAlexander Kabaev#
18afb57df6SAlexander Kabaev# Most lists copied verbatim from GCC Makefiles.
19afb57df6SAlexander Kabaev#
20afb57df6SAlexander KabaevOBJS-common = \
21afb57df6SAlexander Kabaev double-int.o tree-chrec.o tree-scalar-evolution.o tree-data-ref.o	   \
22afb57df6SAlexander Kabaev tree-cfg.o tree-dfa.o tree-eh.o tree-ssa.o tree-optimize.o tree-gimple.o  \
23afb57df6SAlexander Kabaev gimplify.o tree-pretty-print.o tree-into-ssa.o				   \
24afb57df6SAlexander Kabaev tree-outof-ssa.o tree-ssa-ccp.o tree-vn.o tree-ssa-uncprop.o		   \
25afb57df6SAlexander Kabaev tree-ssa-dce.o  tree-ssa-copy.o tree-nrv.o tree-ssa-copyrename.o	   \
26afb57df6SAlexander Kabaev tree-ssa-pre.o tree-ssa-live.o tree-ssa-operands.o tree-ssa-alias.o       \
27*f7f4d377SPedro F. Giffuni tree-ssa-alias-warnings.o						   \
28afb57df6SAlexander Kabaev tree-ssa-phiopt.o tree-ssa-forwprop.o tree-nested.o tree-ssa-dse.o	   \
29afb57df6SAlexander Kabaev tree-ssa-dom.o domwalk.o tree-tailcall.o gimple-low.o tree-iterator.o	   \
30afb57df6SAlexander Kabaev omp-low.o tree-phinodes.o tree-ssanames.o tree-sra.o tree-complex.o	   \
31afb57df6SAlexander Kabaev tree-vect-generic.o tree-ssa-loop.o tree-ssa-loop-niter.o		   \
32afb57df6SAlexander Kabaev tree-ssa-loop-manip.o tree-ssa-threadupdate.o tree-ssa-threadedge.o	   \
33afb57df6SAlexander Kabaev tree-vectorizer.o tree-vect-analyze.o tree-vect-transform.o		   \
34afb57df6SAlexander Kabaev tree-vect-patterns.o tree-ssa-loop-prefetch.o				   \
35afb57df6SAlexander Kabaev tree-ssa-loop-ivcanon.o tree-ssa-propagate.o tree-ssa-address.o	   \
36afb57df6SAlexander Kabaev tree-ssa-math-opts.o							   \
37afb57df6SAlexander Kabaev tree-ssa-loop-ivopts.o tree-if-conv.o tree-ssa-loop-unswitch.o		   \
38afb57df6SAlexander Kabaev alias.o bb-reorder.o bitmap.o builtins.o caller-save.o calls.o	  	   \
39afb57df6SAlexander Kabaev cfg.o cfganal.o cfgbuild.o cfgcleanup.o cfglayout.o cfgloop.o		   \
40afb57df6SAlexander Kabaev cfgloopanal.o cfgloopmanip.o loop-init.o loop-unswitch.o loop-unroll.o	   \
41afb57df6SAlexander Kabaev cfgrtl.o combine.o conflict.o convert.o coverage.o cse.o cselib.o 	   \
42afb57df6SAlexander Kabaev dbxout.o ddg.o tree-ssa-loop-ch.o loop-invariant.o tree-ssa-loop-im.o	   \
43afb57df6SAlexander Kabaev debug.o df-core.o df-problems.o df-scan.o dfp.o diagnostic.o dojump.o     \
44afb57df6SAlexander Kabaev dominance.o loop-doloop.o	   					   \
45afb57df6SAlexander Kabaev dwarf2asm.o dwarf2out.o emit-rtl.o except.o explow.o loop-iv.o		   \
46afb57df6SAlexander Kabaev expmed.o expr.o final.o flow.o fold-const.o function.o gcse.o		   \
47afb57df6SAlexander Kabaev genrtl.o ggc-common.o global.o graph.o gtype-desc.o			   \
48afb57df6SAlexander Kabaev haifa-sched.o hooks.o ifcvt.o insn-attrtab.o insn-emit.o insn-modes.o	   \
49afb57df6SAlexander Kabaev insn-extract.o insn-opinit.o insn-output.o insn-peep.o insn-recog.o	   \
50afb57df6SAlexander Kabaev integrate.o intl.o jump.o  langhooks.o lcm.o lists.o local-alloc.o  	   \
51afb57df6SAlexander Kabaev mode-switching.o modulo-sched.o optabs.o options.o opts.o opts-common.o \
52afb57df6SAlexander Kabaev params.o postreload.o postreload-gcse.o predict.o			   \
53afb57df6SAlexander Kabaev insn-preds.o insn-automata.o pointer-set.o 			   	   \
54afb57df6SAlexander Kabaev print-rtl.o print-tree.o profile.o value-prof.o var-tracking.o		   \
55afb57df6SAlexander Kabaev real.o recog.o reg-stack.o regclass.o regmove.o regrename.o		   \
56afb57df6SAlexander Kabaev reload.o reload1.o reorg.o resource.o rtl.o rtlanal.o rtl-error.o	   \
57afb57df6SAlexander Kabaev sbitmap.o sched-deps.o sched-ebb.o sched-rgn.o sched-vis.o sdbout.o	   \
58afb57df6SAlexander Kabaev see.o simplify-rtx.o sreal.o stmt.o stor-layout.o stringpool.o		   \
59afb57df6SAlexander Kabaev struct-equiv.o targhooks.o timevar.o toplev.o tracer.o tree.o tree-dump.o \
60afb57df6SAlexander Kabaev varasm.o varray.o vec.o version.o vmsdbgout.o xcoffout.o alloc-pool.o	   \
61afb57df6SAlexander Kabaev et-forest.o cfghooks.o bt-load.o pretty-print.o $(GGC) web.o passes.o     \
62afb57df6SAlexander Kabaev tree-profile.o rtlhooks.o cfgexpand.o lambda-mat.o    			   \
63afb57df6SAlexander Kabaev lambda-trans.o	lambda-code.o tree-loop-linear.o tree-ssa-sink.o 	   \
64afb57df6SAlexander Kabaev tree-vrp.o tree-stdarg.o tree-cfgcleanup.o tree-ssa-reassoc.o		   \
65afb57df6SAlexander Kabaev tree-ssa-structalias.o tree-object-size.o 				   \
66afb57df6SAlexander Kabaev rtl-factoring.o
6781efba8cSAlexander Kabaev
68afb57df6SAlexander KabaevOBJS-archive=	$(EXTRA_OBJS) $(host_hook_obj) tree-inline.o		   \
69afb57df6SAlexander Kabaev  cgraph.o cgraphunit.o tree-nomudflap.o ipa.o ipa-inline.o		   \
70afb57df6SAlexander Kabaev  ipa-utils.o ipa-reference.o ipa-pure-const.o ipa-type-escape.o	   \
71afb57df6SAlexander Kabaev  ipa-prop.o ipa-cp.o
7281efba8cSAlexander Kabaev
73afb57df6SAlexander KabaevOBJS-md=  ${GCC_CPU}.o
7457ec2fc3SDavid E. O'Brien.if exists(${GCCDIR}/config/${GCC_CPU}/${GCC_CPU}-c.c)
75afb57df6SAlexander KabaevOBJS-md+= ${GCC_CPU}-c.o
7657ec2fc3SDavid E. O'Brien.endif
779aef7900SDavid E. O'Brien
78afb57df6SAlexander Kabaev# Target specific, C specific object file
79afb57df6SAlexander KabaevC_TARGET_OBJS=
80a1b588fdSPeter Wemm
81afb57df6SAlexander Kabaev# Language-specific object files for C and Objective C.
82afb57df6SAlexander KabaevC_AND_OBJC_OBJS = attribs.o c-errors.o c-lex.o c-pragma.o c-decl.o c-typeck.o \
83afb57df6SAlexander Kabaev  c-convert.o c-aux-info.o c-common.o c-opts.o c-format.o c-semantics.o \
84afb57df6SAlexander Kabaev  c-incpath.o cppdefault.o c-ppoutput.o c-cppbuiltin.o prefix.o \
85afb57df6SAlexander Kabaev  c-objc-common.o c-dump.o c-pch.o c-parser.o $(C_TARGET_OBJS) \
86afb57df6SAlexander Kabaev  c-gimplify.o tree-mudflap.o c-pretty-print.o c-omp.o
873d3dea1bSDavid E. O'Brien
88afb57df6SAlexander Kabaev# Language-specific object files for C.
89afb57df6SAlexander KabaevC_OBJS = c-lang.o stub-objc.o $(C_AND_OBJC_OBJS)
909e3b0010SDavid E. O'Brien
91afb57df6SAlexander Kabaev# Put objC stub objects in library. objc frontend will override it
92afb57df6SAlexander Kabaev# Put dummy checksum object in library too. It will be overridden
93afb57df6SAlexander Kabaev# by each indidual front-end binary as needed.
94afb57df6SAlexander KabaevOBJS-dummy=  stub-objc.o dummy-checksum.o
95a817992dSWarner Losh
96afb57df6SAlexander KabaevOBJS-all=  ${OBJS-common} ${OBJS-archive} ${OBJS-md} ${C_AND_OBJC_OBJS} \
97afb57df6SAlexander Kabaev	   ${OBJS-dummy}
98afb57df6SAlexander Kabaev
99afb57df6SAlexander KabaevSRCS+= ${OBJS-all:R:S/$/.c/g}
100afb57df6SAlexander Kabaev
101afb57df6SAlexander Kabaevtoplev.o:	toplev.c
102afb57df6SAlexander Kabaev	${CC} ${CFLAGS} -DTARGET_NAME=\"${GCC_TARGET}\" -c ${.IMPSRC}
10318ff6ae9SDavid E. O'Brien
1040815243cSMarcel Moolenaar# make sure we don't find .o's in ../cc_tools/
1050815243cSMarcel MoolenaarCLEANFILES+= ${OBJS-all}
1060815243cSMarcel Moolenaar
107b75deec6SPoul-Henning Kamp.include <bsd.lib.mk>
108