973c5d6a841b62f6575b83f0fd9159c002003bcd
[dragonfly.git] / gnu / usr.bin / cc80 / libbackend / Makefile
1 GCC_NO_LIBS=    yes
2 LOCAL_CONFIG=   yes
3 .include "../Makefile.inc"
4 .PATH: $(srcdir)/config/i386
5
6 CFLAGS+=        -DTARGET_NAME=\"${target_machine}\"
7 # needed to compile hsa/brig bits
8 CXXFLAGS+=      ${NOEXCEPTION_FLAGS}
9
10 LIB=            backend
11 INTERNALLIB=    YES
12
13 # almost verbatim from Makefile, objects from cc files have been pulled out
14 # because the .o=.c is wrong for them
15 host_hook_obj=host-default.o
16 out_object_file=i386.o
17 EXTRA_OBJS=     x86-tune-sched.o x86-tune-sched-bd.o \
18                 x86-tune-sched-atom.o x86-tune-sched-core.o
19 BACKEND_OBJS= \
20         gimple-match.o \
21         generic-match.o \
22         insn-attrtab.o \
23         insn-automata.o \
24         insn-dfatab.o \
25         insn-emit.o \
26         insn-extract.o \
27         insn-latencytab.o \
28         insn-modes.o \
29         insn-opinit.o \
30         insn-output.o \
31         insn-peep.o \
32         insn-preds.o \
33         insn-recog.o \
34         insn-enums.o \
35         ggc-page.o \
36         alias.o \
37         alloc-pool.o \
38         auto-inc-dec.o \
39         auto-profile.o \
40         bb-reorder.o \
41         bitmap.o \
42         bt-load.o \
43         builtins.o \
44         caller-save.o \
45         calls.o \
46         ccmp.o \
47         cfg.o \
48         cfganal.o \
49         cfgbuild.o \
50         cfgcleanup.o \
51         cfgexpand.o \
52         cfghooks.o \
53         cfgloop.o \
54         cfgloopanal.o \
55         cfgloopmanip.o \
56         cfgrtl.o \
57         symtab.o \
58         cgraph.o \
59         cgraphbuild.o \
60         cgraphunit.o \
61         cgraphclones.o \
62         combine.o \
63         combine-stack-adj.o \
64         compare-elim.o \
65         context.o \
66         convert.o \
67         coverage.o \
68         cppbuiltin.o \
69         cppdefault.o \
70         cprop.o \
71         cse.o \
72         cselib.o \
73         data-streamer.o \
74         data-streamer-in.o \
75         data-streamer-out.o \
76         dbxout.o \
77         dbgcnt.o \
78         dce.o \
79         ddg.o \
80         debug.o \
81         df-core.o \
82         df-problems.o \
83         df-scan.o \
84         dfp.o \
85         dojump.o \
86         dominance.o \
87         domwalk.o \
88         double-int.o \
89         dse.o \
90         dumpfile.o \
91         dwarf2asm.o \
92         dwarf2cfi.o \
93         dwarf2out.o \
94         early-remat.o \
95         emit-rtl.o \
96         et-forest.o \
97         except.o \
98         explow.o \
99         expmed.o \
100         expr.o \
101         fibonacci_heap.o \
102         file-prefix-map.o \
103         final.o \
104         fixed-value.o \
105         fold-const.o \
106         fold-const-call.o \
107         function.o \
108         function-tests.o \
109         fwprop.o \
110         gcc-rich-location.o \
111         gcse.o \
112         gcse-common.o \
113         ggc-common.o \
114         ggc-tests.o \
115         gimple.o \
116         gimple-builder.o \
117         gimple-expr.o \
118         gimple-iterator.o \
119         gimple-fold.o \
120         gimple-laddress.o \
121         gimple-loop-jam.o \
122         gimple-low.o \
123         gimple-pretty-print.o \
124         gimple-ssa-backprop.o \
125         gimple-ssa-evrp.o \
126         gimple-ssa-evrp-analyze.o \
127         gimple-ssa-isolate-paths.o \
128         gimple-ssa-nonnull-compare.o \
129         gimple-ssa-split-paths.o \
130         gimple-ssa-store-merging.o \
131         gimple-ssa-strength-reduction.o \
132         gimple-ssa-sprintf.o \
133         gimple-ssa-warn-alloca.o \
134         gimple-ssa-warn-restrict.o \
135         gimple-streamer-in.o \
136         gimple-streamer-out.o \
137         gimple-walk.o \
138         gimplify.o \
139         gimplify-me.o \
140         godump.o \
141         graph.o \
142         graphds.o \
143         graphite.o \
144         gtype-desc.o \
145         haifa-sched.o \
146         hash-map-tests.o \
147         hash-set-tests.o \
148         hsa-common.o \
149         hsa-gen.o \
150         hsa-regalloc.o \
151         hsa-brig.o \
152         hsa-dump.o \
153         hw-doloop.o \
154         hwint.o \
155         ifcvt.o \
156         ree.o \
157         inchash.o \
158         incpath.o \
159         init-regs.o \
160         internal-fn.o \
161         ipa-chkp.o \
162         ipa-cp.o \
163         ipa-devirt.o \
164         ipa-fnsummary.o \
165         ipa-polymorphic-call.o \
166         ipa-split.o \
167         ipa-inline.o \
168         ipa-comdats.o \
169         ipa-visibility.o \
170         ipa-inline-analysis.o \
171         ipa-inline-transform.o \
172         ipa-predicate.o \
173         ipa-profile.o \
174         ipa-prop.o \
175         ipa-param-manipulation.o \
176         ipa-pure-const.o \
177         ipa-icf.o \
178         ipa-icf-gimple.o \
179         ipa-reference.o \
180         ipa-hsa.o \
181         ipa-ref.o \
182         ipa-utils.o \
183         ipa.o \
184         ira.o \
185         ira-build.o \
186         ira-costs.o \
187         ira-conflicts.o \
188         ira-color.o \
189         ira-emit.o \
190         ira-lives.o \
191         jump.o \
192         langhooks.o \
193         lcm.o \
194         lists.o \
195         loop-doloop.o \
196         loop-init.o \
197         loop-invariant.o \
198         loop-iv.o \
199         loop-unroll.o \
200         lower-subreg.o \
201         lra.o \
202         lra-assigns.o \
203         lra-coalesce.o \
204         lra-constraints.o \
205         lra-eliminations.o \
206         lra-lives.o \
207         lra-remat.o \
208         lra-spills.o \
209         lto-cgraph.o \
210         lto-streamer.o \
211         lto-streamer-in.o \
212         lto-streamer-out.o \
213         lto-section-in.o \
214         lto-section-out.o \
215         lto-opts.o \
216         lto-compress.o \
217         mcf.o \
218         mode-switching.o \
219         modulo-sched.o \
220         multiple_target.o \
221         omp-offload.o \
222         omp-expand.o \
223         omp-general.o \
224         omp-grid.o \
225         omp-low.o \
226         omp-simd-clone.o \
227         optabs.o \
228         optabs-libfuncs.o \
229         optabs-query.o \
230         optabs-tree.o \
231         options-save.o \
232         opts-global.o \
233         passes.o \
234         plugin.o \
235         postreload-gcse.o \
236         postreload.o \
237         predict.o \
238         print-rtl.o \
239         print-rtl-function.o \
240         print-tree.o \
241         profile.o \
242         profile-count.o \
243         read-md.o \
244         read-rtl.o \
245         read-rtl-function.o \
246         real.o \
247         realmpfr.o \
248         recog.o \
249         reg-stack.o \
250         regcprop.o \
251         reginfo.o \
252         regrename.o \
253         regstat.o \
254         reload.o \
255         reload1.o \
256         reorg.o \
257         resource.o \
258         rtl-chkp.o \
259         rtl-error.o \
260         rtl-tests.o \
261         rtl.o \
262         rtlhash.o \
263         rtlanal.o \
264         rtlhooks.o \
265         rtx-vector-builder.o \
266         run-rtl-passes.o \
267         sched-deps.o \
268         sched-ebb.o \
269         sched-rgn.o \
270         sel-sched-ir.o \
271         sel-sched-dump.o \
272         sel-sched.o \
273         selftest-rtl.o \
274         selftest-run-tests.o \
275         sese.o \
276         shrink-wrap.o \
277         simplify-rtx.o \
278         sparseset.o \
279         spellcheck.o \
280         spellcheck-tree.o \
281         sreal.o \
282         stack-ptr-mod.o \
283         statistics.o \
284         stmt.o \
285         stor-layout.o \
286         store-motion.o \
287         streamer-hooks.o \
288         stringpool.o \
289         substring-locations.o \
290         target-globals.o \
291         targhooks.o \
292         timevar.o \
293         toplev.o \
294         tracer.o \
295         trans-mem.o \
296         tree-affine.o \
297         asan.o \
298         tsan.o \
299         ubsan.o \
300         sanopt.o \
301         sancov.o \
302         tree-call-cdce.o \
303         tree-cfg.o \
304         tree-cfgcleanup.o \
305         tree-chrec.o \
306         tree-complex.o \
307         tree-data-ref.o \
308         tree-dfa.o \
309         tree-diagnostic.o \
310         tree-dump.o \
311         tree-eh.o \
312         tree-emutls.o \
313         tree-if-conv.o \
314         tree-inline.o \
315         tree-into-ssa.o \
316         tree-iterator.o \
317         tree-loop-distribution.o \
318         tree-nested.o \
319         tree-nrv.o \
320         tree-object-size.o \
321         tree-outof-ssa.o \
322         tree-parloops.o \
323         tree-phinodes.o \
324         tree-chkp.o \
325         tree-chkp-opt.o \
326         tree-predcom.o \
327         tree-pretty-print.o \
328         tree-profile.o \
329         tree-scalar-evolution.o \
330         tree-sra.o \
331         tree-switch-conversion.o \
332         tree-ssa-address.o \
333         tree-ssa-alias.o \
334         tree-ssa-ccp.o \
335         tree-ssa-coalesce.o \
336         tree-ssa-copy.o \
337         tree-ssa-dce.o \
338         tree-ssa-dom.o \
339         tree-ssa-dse.o \
340         tree-ssa-forwprop.o \
341         tree-ssa-ifcombine.o \
342         tree-ssa-live.o \
343         tree-ssa-loop-ch.o \
344         tree-ssa-loop-im.o \
345         tree-ssa-loop-ivcanon.o \
346         tree-ssa-loop-ivopts.o \
347         tree-ssa-loop-manip.o \
348         tree-ssa-loop-niter.o \
349         tree-ssa-loop-prefetch.o \
350         tree-ssa-loop-split.o \
351         tree-ssa-loop-unswitch.o \
352         tree-ssa-loop.o \
353         tree-ssa-math-opts.o \
354         tree-ssa-operands.o \
355         tree-ssa-phionlycprop.o \
356         tree-ssa-phiopt.o \
357         tree-ssa-phiprop.o \
358         tree-ssa-pre.o \
359         tree-ssa-propagate.o \
360         tree-ssa-reassoc.o \
361         tree-ssa-sccvn.o \
362         tree-ssa-scopedtables.o \
363         tree-ssa-sink.o \
364         tree-ssa-strlen.o \
365         tree-ssa-structalias.o \
366         tree-ssa-tail-merge.o \
367         tree-ssa-ter.o \
368         tree-ssa-threadbackward.o \
369         tree-ssa-threadedge.o \
370         tree-ssa-threadupdate.o \
371         tree-ssa-uncprop.o \
372         tree-ssa-uninit.o \
373         tree-ssa.o \
374         tree-ssanames.o \
375         tree-stdarg.o \
376         tree-streamer.o \
377         tree-streamer-in.o \
378         tree-streamer-out.o \
379         tree-tailcall.o \
380         tree-vect-generic.o \
381         tree-vect-patterns.o \
382         tree-vect-data-refs.o \
383         tree-vect-stmts.o \
384         tree-vect-loop.o \
385         tree-vect-loop-manip.o \
386         tree-vect-slp.o \
387         tree-vectorizer.o \
388         tree-vector-builder.o \
389         tree-vrp.o \
390         tree.o \
391         typed-splay-tree.o \
392         valtrack.o \
393         value-prof.o \
394         var-tracking.o \
395         varasm.o \
396         varpool.o \
397         vec-perm-indices.o \
398         vr-values.o \
399         vtable-verify.o \
400         web.o \
401         $(out_object_file) \
402         $(EXTRA_OBJS) \
403         $(host_hook_obj)
404
405 # only whwn HAVE_isl
406 #BACKEND_OBJS+= \
407         graphite-isl-ast-to-gimple.o \
408         graphite-dependences.o \
409         graphite-optimize-isl.o \
410         graphite-poly.o \
411         graphite-scop-detection.o \
412         graphite-sese-to-poly.o
413
414 # only when VMS_DEBUGGING_INFO
415 #BACKEND_OBJS+= \
416         vmsdbgout.o
417
418 # only when XCOFF_DEBUGGING_INFO
419 #BACKEND_OBJS+= \
420         xcoffout.o
421
422 OBJS=   ${BACKEND_OBJS}
423 SRCS=   gimple-loop-interchange.cc unique-ptr-tests.cc \
424         wide-int.cc wide-int-print.cc
425
426 # for gimple-ssa-sprintf.c
427 .if ${CCVER:Mgcc47}
428 CXXFLAGS+=      -Wno-pragmas
429 .endif
430
431 # for tree-ssa-structalias.c, tree-vect-stmts.c
432 .if ${CCVER:Mgcc80}
433 CXXFLAGS+=      -Wno-narrowing
434 .endif
435
436 # hack to force c++ compiler to compile *.c files to create library
437 .for cfile in ${BACKEND_OBJS}
438 ${cfile}: ${cfile:.o=.c}
439         ${CXX} ${STATIC_CXXFLAGS} ${CXXFLAGS} -c ${.IMPSRC} -o ${.TARGET}
440 .endfor
441
442 dfp.o: gstdint.h
443
444 gstdint.h:
445         echo "#include <stdint.h>" > ${.TARGET}
446
447 CLEANFILES=     gstdint.h
448
449 .include <bsd.lib.mk>