xref: /dragonfly/gnu/usr.bin/cc80/libbackend/Makefile (revision 7bcb6caf)
1GCC_NO_LIBS=	yes
2LOCAL_CONFIG=	yes
3.include "../Makefile.inc"
4.PATH: $(srcdir)/config/i386
5
6CFLAGS+=	-DTARGET_NAME=\"${target_machine}\"
7# needed to compile hsa/brig bits
8CXXFLAGS+=	${NOEXCEPTION_FLAGS}
9
10LIB=		backend
11INTERNALLIB=	YES
12
13# almost verbatim from Makefile, objects from cc files have been pulled out
14# because the .o=.c is wrong for them
15host_hook_obj=host-default.o
16out_object_file=i386.o
17EXTRA_OBJS=	x86-tune-sched.o x86-tune-sched-bd.o \
18		x86-tune-sched-atom.o x86-tune-sched-core.o
19BACKEND_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
422OBJS=	${BACKEND_OBJS}
423SRCS=	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}
428CXXFLAGS+=	-Wno-pragmas
429.endif
430
431# for tree-ssa-structalias.c, tree-vect-stmts.c
432.if ${CCVER:Mgcc80}
433CXXFLAGS+=	-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
442dfp.o: gstdint.h
443
444gstdint.h:
445	echo "#include <stdint.h>" > ${.TARGET}
446
447CLEANFILES=	gstdint.h
448
449.include <bsd.lib.mk>
450