⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 makefile.in

📁 GCC编译器源代码
💻 IN
📖 第 1 页 / 共 5 页
字号:
   $(TREE_H) output.h regs.hloop.o : loop.c $(CONFIG_H) $(RTL_H) flags.h loop.h insn-config.h \   insn-flags.h insn-codes.h regs.h hard-reg-set.h $(RECOG_H) expr.h real.hunroll.o : unroll.c $(CONFIG_H) $(RTL_H) insn-config.h integrate.h regs.h \   $(RECOG_H) flags.h expr.h loop.hflow.o : flow.c $(CONFIG_H) $(RTL_H) flags.h insn-config.h \   $(BASIC_BLOCK_H) regs.h hard-reg-set.h output.hcombine.o : combine.c $(CONFIG_H) $(RTL_H) flags.h  \   insn-config.h insn-flags.h insn-codes.h insn-attr.h regs.h expr.h \   $(BASIC_BLOCK_H) $(RECOG_H) real.h hard-reg-set.hregclass.o : regclass.c $(CONFIG_H) $(RTL_H) hard-reg-set.h flags.h \   $(BASIC_BLOCK_H) regs.h insn-config.h $(RECOG_H) reload.h real.h bytecode.hlocal-alloc.o : local-alloc.c $(CONFIG_H) $(RTL_H) flags.h $(BASIC_BLOCK_H) \   regs.h hard-reg-set.h insn-config.h $(RECOG_H) output.hbitmap.o : bitmap.c $(CONFIG_H) $(RTL_H) flags.h $(BASIC_BLOCK_H) regs.hglobal.o : global.c $(CONFIG_H) $(RTL_H) flags.h  \   $(BASIC_BLOCK_H) regs.h hard-reg-set.h insn-config.h output.hreload.o : reload.c $(CONFIG_H) $(RTL_H) flags.h output.h expr.h\   reload.h $(RECOG_H) hard-reg-set.h insn-config.h insn-codes.h regs.h real.hreload1.o : reload1.c $(CONFIG_H) $(RTL_H) real.h flags.h expr.h \   reload.h regs.h hard-reg-set.h insn-config.h insn-flags.h insn-codes.h \   $(BASIC_BLOCK_H) $(RECOG_H) output.hcaller-save.o : caller-save.c $(CONFIG_H) $(RTL_H) flags.h \   regs.h hard-reg-set.h insn-codes.h insn-config.h $(BASIC_BLOCK_H) $(RECOG_H) \   reload.h expr.hreorg.o : reorg.c $(CONFIG_H) $(RTL_H) conditions.h hard-reg-set.h \   $(BASIC_BLOCK_H) regs.h insn-config.h insn-attr.h insn-flags.h $(RECOG_H) \   flags.h output.hsched.o : $(SCHED_PREFIX)sched.c $(CONFIG_H) $(RTL_H) $(BASIC_BLOCK_H) regs.h hard-reg-set.h \   flags.h insn-config.h insn-attr.hfinal.o : final.c $(CONFIG_H) $(RTL_H) $(TREE_H) flags.h regs.h \   $(RECOG_H) conditions.h insn-config.h insn-attr.h except.h real.h output.h \   hard-reg-set.h insn-flags.h insn-codes.h gstab.h xcoffout.h defaults.hrecog.o : recog.c $(CONFIG_H) $(RTL_H)  \   regs.h $(RECOG_H) hard-reg-set.h flags.h insn-config.h insn-attr.h \   insn-flags.h insn-codes.h real.hreg-stack.o : reg-stack.c $(CONFIG_H) $(RTL_H) $(TREE_H) \   regs.h hard-reg-set.h flags.h insn-config.h insn-flags.h$(out_object_file): $(out_file) $(CONFIG_H) $(TREE_H) \   $(RTL_H) regs.h hard-reg-set.h real.h insn-config.h conditions.h \   insn-flags.h output.h insn-attr.h insn-codes.h	$(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $(out_file)# Build auxiliary files that support ecoff format.mips-tfile: mips-tfile.o version.o $(LIBDEPS)	$(CC) $(CFLAGS) $(LDFLAGS) -o $@ mips-tfile.o version.o $(LIBS)mips-tfile.o : mips-tfile.c $(CONFIG_H) $(RTL_H)mips-tdump: mips-tdump.o version.o $(LIBDEPS)	$(CC) $(CFLAGS) $(LDFLAGS) -o $@ mips-tdump.o version.o $(LIBS)mips-tdump.o : mips-tdump.c $(CONFIG_H) $(RTL_H)# Build file to support OSF/rose half-pic format.halfpic.o: halfpic.c $(CONFIG_H) $(RTL_H) $(TREE_H)# Normally this target is not used; but it is used if you# define ALLOCA=alloca.o.  In that case, you must get a suitable alloca.c# from the GNU Emacs distribution.alloca.o:	alloca.c	$(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $(ALLOCA_FLAGS) \	  -c `echo $(srcdir)/alloca.c | sed 's,^\./,,'`	$(ALLOCA_FINISH)## Generate header and source files from the machine description, # and compile them..PRECIOUS: insn-config.h insn-flags.h insn-codes.h \  insn-emit.c insn-recog.c insn-extract.c insn-output.c insn-peep.c \  insn-attr.h insn-attrtab.c# The following pair of rules has this effect:# genconfig is run only if the md has changed since genconfig was last run;# but the file insn-config.h is touched only when its contents actually change.# Each of the other insn-* files is handled by a similar pair of rules.# This causes an anomaly in the results of make -n# because insn-* is older than stamp-*# and thus make -n thinks that insn-* will be updated# and force recompilation of things that depend on it.# We use move-if-change precisely to avoid such recompilation.# But there is no way to teach make -n that it will be avoided.# Each of the insn-*.[ch] rules has a semicolon at the end,# for otherwise the system Make on SunOS 4.1 never tries# to recompile insn-*.o.  To avoid problems and extra noise from# versions of make which don't like empty commands (nothing after the# trailing `;'), we call true for each.insn-config.h: stamp-config ; @truestamp-config : $(md_file) genconfig $(srcdir)/move-if-change	./genconfig $(md_file) > tmp-config.h	$(srcdir)/move-if-change tmp-config.h insn-config.h	touch stamp-configinsn-flags.h: stamp-flags ; @truestamp-flags : $(md_file) genflags $(srcdir)/move-if-change	./genflags $(md_file) > tmp-flags.h	$(srcdir)/move-if-change tmp-flags.h insn-flags.h	touch stamp-flagsinsn-codes.h: stamp-codes ; @truestamp-codes : $(md_file) gencodes $(srcdir)/move-if-change	./gencodes $(md_file) > tmp-codes.h	$(srcdir)/move-if-change tmp-codes.h insn-codes.h	touch stamp-codesinsn-emit.o : insn-emit.c $(CONFIG_H) $(RTL_H) expr.h real.h output.h \  insn-config.h insn-flags.h insn-codes.h	$(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) -c insn-emit.cinsn-emit.c: stamp-emit ; @truestamp-emit : $(md_file) genemit $(srcdir)/move-if-change	./genemit $(md_file) > tmp-emit.c	$(srcdir)/move-if-change tmp-emit.c insn-emit.c	touch stamp-emitinsn-recog.o : insn-recog.c $(CONFIG_H) $(RTL_H) insn-config.h $(RECOG_H) \  real.h output.h flags.h	$(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) -c insn-recog.cinsn-recog.c: stamp-recog ; @truestamp-recog : $(md_file) genrecog $(srcdir)/move-if-change	./genrecog $(md_file) > tmp-recog.c	$(srcdir)/move-if-change tmp-recog.c insn-recog.c	touch stamp-recoginsn-opinit.o : insn-opinit.c $(CONFIG_H) $(RTL_H) insn-codes.h insn-flags.h \  insn-config.h flags.h $(RECOG_H) expr.h reload.h	$(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) -c insn-opinit.cinsn-opinit.c: stamp-opinit ; @truestamp-opinit : $(md_file) genopinit $(srcdir)/move-if-change	./genopinit $(md_file) > tmp-opinit.c	$(srcdir)/move-if-change tmp-opinit.c insn-opinit.c	touch stamp-opinitinsn-extract.o : insn-extract.c $(CONFIG_H) $(RTL_H)	$(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) -c insn-extract.cinsn-extract.c: stamp-extract ; @truestamp-extract : $(md_file) genextract $(srcdir)/move-if-change	./genextract $(md_file) > tmp-extract.c	$(srcdir)/move-if-change tmp-extract.c insn-extract.c	touch stamp-extractinsn-peep.o : insn-peep.c $(CONFIG_H) $(RTL_H) regs.h output.h real.h	$(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) -c insn-peep.cinsn-peep.c: stamp-peep ; @truestamp-peep : $(md_file) genpeep $(srcdir)/move-if-change	./genpeep $(md_file) > tmp-peep.c	$(srcdir)/move-if-change tmp-peep.c insn-peep.c	touch stamp-peepinsn-attrtab.o : insn-attrtab.c $(CONFIG_H) $(RTL_H) regs.h real.h output.h \     insn-attr.h insn-config.h	$(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) -c insn-attrtab.cinsn-attr.h: stamp-attr ; @truestamp-attr : $(md_file) genattr $(srcdir)/move-if-change	./genattr $(md_file) > tmp-attr.h	$(srcdir)/move-if-change tmp-attr.h insn-attr.h	touch stamp-attrinsn-attrtab.c: stamp-attrtab ; @truestamp-attrtab : $(md_file) genattrtab $(srcdir)/move-if-change	if cmp -s $(PREMADE_ATTRTAB_MD) $(md_file);	\	then					\	  echo Using $(PREMADE_ATTRTAB);	\	  cp $(PREMADE_ATTRTAB) tmp-attrtab.c;	\	else					\	  ./genattrtab $(md_file) > tmp-attrtab.c;	\	fi	$(srcdir)/move-if-change tmp-attrtab.c insn-attrtab.c	touch stamp-attrtabinsn-output.o : insn-output.c $(CONFIG_H) $(RTL_H) regs.h real.h conditions.h \    hard-reg-set.h insn-config.h insn-flags.h insn-attr.h output.h $(RECOG_H) \    insn-codes.h	$(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) -c insn-output.cinsn-output.c: stamp-output ; @truestamp-output : $(md_file) genoutput $(srcdir)/move-if-change	./genoutput $(md_file) > tmp-output.c	$(srcdir)/move-if-change tmp-output.c insn-output.c	touch stamp-output## Compile the programs that generate insn-* from the machine description.# They are compiled with $(HOST_CC), and associated libraries,# since they need to run on this machine# even if GCC is being compiled to run on some other machine.# $(CONFIG_H) is omitted from the deps of the gen*.o# because these programs don't really depend on anything # about the target machine.  They do depend on config.h itself,# since that describes the host machine.# Pass the md file through cpp if the target requests it.$(MD_FILE): $(MD_DEPS)	rm -f $@	$(MD_CPP) $(MD_CPPFLAGS) $(md_file) | sed 's/^# /; /g' > tmp-$@	mv tmp-$@ $@genconfig : genconfig.o $(HOST_RTL) $(HOST_LIBDEPS)	$(HOST_CC) $(HOST_CFLAGS) $(HOST_LDFLAGS) -o $@ \	  genconfig.o $(HOST_RTL) $(HOST_LIBS)genconfig.o : genconfig.c $(RTL_H) $(build_xm_file)	$(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(srcdir)/genconfig.cgenflags : genflags.o $(HOST_RTL) $(HOST_LIBDEPS)	$(HOST_CC) $(HOST_CFLAGS) $(HOST_LDFLAGS) -o $@ \	 genflags.o $(HOST_RTL) $(HOST_LIBS)genflags.o : genflags.c $(RTL_H) $(build_xm_file)	$(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(srcdir)/genflags.cgencodes : gencodes.o $(HOST_RTL) $(HOST_LIBDEPS)	$(HOST_CC) $(HOST_CFLAGS) $(HOST_LDFLAGS) -o $@ \	 gencodes.o $(HOST_RTL) $(HOST_LIBS)gencodes.o : gencodes.c $(RTL_H) $(build_xm_file)	$(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(srcdir)/gencodes.cgenemit : genemit.o $(HOST_RTL) $(HOST_LIBDEPS)	$(HOST_CC) $(HOST_CFLAGS) $(HOST_LDFLAGS) -o $@ \	 genemit.o $(HOST_RTL) $(HOST_LIBS)genemit.o : genemit.c $(RTL_H) $(build_xm_file)	$(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(srcdir)/genemit.cgenopinit : genopinit.o $(HOST_RTL) $(HOST_LIBDEPS)	$(HOST_CC) $(HOST_CFLAGS) $(HOST_LDFLAGS) -o $@ \	 genopinit.o $(HOST_RTL) $(HOST_LIBS)genopinit.o : genopinit.c $(RTL_H) $(build_xm_file)	$(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(srcdir)/genopinit.cgenrecog : genrecog.o $(HOST_RTL) $(HOST_LIBDEPS)	$(HOST_CC) $(HOST_CFLAGS) $(HOST_LDFLAGS) -o $@ \	 genrecog.o $(HOST_RTL) $(HOST_LIBS)genrecog.o : genrecog.c $(RTL_H) $(build_xm_file)	$(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(srcdir)/genrecog.cgenextract : genextract.o $(HOST_RTL) $(HOST_LIBDEPS)	$(HOST_CC) $(HOST_CFLAGS) $(HOST_LDFLAGS) -o $@ \	 genextract.o $(HOST_RTL) $(HOST_LIBS)genextract.o : genextract.c $(RTL_H) $(build_xm_file) insn-config.h	$(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(srcdir)/genextract.cgenpeep : genpeep.o $(HOST_RTL) $(HOST_LIBDEPS)	$(HOST_CC) $(HOST_CFLAGS) $(HOST_LDFLAGS) -o $@ \	 genpeep.o $(HOST_RTL) $(HOST_LIBS)genpeep.o : genpeep.c $(RTL_H) $(build_xm_file)	$(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(srcdir)/genpeep.cgenattr : genattr.o $(HOST_RTL) $(HOST_LIBDEPS)	$(HOST_CC) $(HOST_CFLAGS) $(HOST_LDFLAGS) -o $@ \	 genattr.o $(HOST_RTL) $(HOST_LIBS)genattr.o : genattr.c $(RTL_H) $(build_xm_file)	$(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(srcdir)/genattr.cgenattrtab : genattrtab.o $(HOST_RTL) $(HOST_PRINT) $(HOST_RTLANAL) $(HOST_LIBDEPS)	$(HOST_CC) $(HOST_CFLAGS) $(HOST_LDFLAGS) -o $@ \	 genattrtab.o $(HOST_RTL) $(HOST_PRINT) $(HOST_RTLANAL) $(HOST_LIBS)genattrtab.o : genattrtab.c $(RTL_H)  $(build_xm_file) insn-config.h	$(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(srcdir)/genattrtab.cgenoutput : genoutput.o $(HOST_RTL) $(HOST_LIBDEPS)	$(HOST_CC) $(HOST_CFLAGS) $(HOST_LDFLAGS) -o $@ \	 genoutput.o $(HOST_RTL) $(HOST_LIBS)genoutput.o : genoutput.c $(RTL_H) $(build_xm_file)	$(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(srcdir)/genoutput.c## Compile the libraries to be used by gen*.# If we are not cross-building, gen* use the same .o's that cc1 will use,# and HOST_PREFIX_1 is `foobar', just to ensure these rules don't conflict# with the rules for rtl.o, alloca.o, etc.$(HOST_PREFIX_1)rtl.o: $(srcdir)/rtl.c $(CONFIG_H) $(RTL_H)	rm -f $(HOST_PREFIX)rtl.c	sed -e 's/config[.]h/hconfig.h/' $(srcdir)/rtl.c > $(HOST_PREFIX)rtl.c	$(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(HOST_PREFIX)rtl.c$(HOST_PREFIX_1)print-rtl.o: $(srcdir)/print-rtl.c $(CONFIG_H) $(RTL_H)	rm -f $(HOST_PREFIX)print-rtl.c	sed -e 's/config[.]h/hconfig.h/' $(srcdir)/print-rtl.c > $(HOST_PREFIX)print-rtl.c	$(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(HOST_PREFIX)print-rtl.c$(HOST_PREFIX_1)rtlanal.o: $(srcdir)/rtlanal.c $(CONFIG_H) $(RTL_H)	rm -f $(HOST_PREFIX)rtlanal.c	sed -e 's/config[.]h/hconfig.h/' $(srcdir)/rtlanal.c > $(HOST_PREFIX)rtlanal.c	$(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(HOST_PREFIX)rtlanal.c$(HOST_PREFIX_1)alloca.o: alloca.c	rm -f $(HOST_PREFIX)alloca.c	cp $(srcdir)/alloca.c $(HOST_PREFIX)alloca.c	$(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(HOST_PREFIX)alloca.c$(HOST_PREFIX_1)obstack.o: obstack.c	rm -f $(HOST_PREFIX)obstack.c	sed -e 's/config[.]h/hconfig.h/' $(srcdir)/obstack.c > $(HOST_PREFIX)obstack.c	$(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(HOST_PREFIX)obstack.c$(HOST_PREFIX_1)malloc.o: malloc.c	rm -f $(HOST_PREFIX)malloc.c	sed -e 's/config[.]h/hconfig.h/' $(srcdir)/malloc.c > $(HOST_PREFIX)malloc.c	$(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(HOST_PREFIX)malloc.c# This satisfies the dependency that we get if you cross-compile a compiler# that does not need to compile alloca, malloc or whatever.$(HOST_PREFIX_1): 	touch $(HOST_PREFIX_1)## Remake bytecode files.BI_OBJ=bi-parser.o bi-lexer.o bi-reverse.obc-emit.o : bc-emit.c $(CONFIG_H) $(RTL_H) real.h $(BYTECODE_H) \   bc-arity.h bc-opcode.h bc-typecd.h bc

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -