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