📄 makefile.in
字号:
then (cd tmpcopy; $(AR) x ../$(LIBGCC1)); \ else true; \ fi (cd tmpcopy; $(AR) x ../$(LIBGCC2)) (cd tmpcopy; $(AR) $(AR_FLAGS) ../tmplibgcc.a *.o) rm -rf tmpcopy -if $(RANLIB_TEST) ; then $(RANLIB) tmplibgcc.a; else true; fi# Actually build it in tmplibgcc.a, then rename at end,# so that libgcc.a itself remains nonexistent if compilation is aborted. mv tmplibgcc.a libgcc.aobjc-runtime: libobjc.a# Build the Objective C runtime library.libobjc.a: cc1obj libgcc2.ready if [ -d objc ]; then true; else mkdir objc; fi thisdir1=`pwd`; \ srcdir1=`cd $(srcdir); pwd`; \ cd objc; \ $(MAKE) -f $${srcdir1}/objc/Makefile libobjc.a \ srcdir=$${srcdir1} tooldir=$(tooldir) AR="$(AR)" AR_FLAGS="$(AR_FLAGS)" \ GCC_FOR_TARGET="$${thisdir1}/xgcc -B$${thisdir1}/" \ GCC_CFLAGS="$(GCC_CFLAGS)" -rm -f libobjc.a ln objc/libobjc.a . >/dev/null 2>&1 || cp objc/libobjc.a . -if $(RANLIB_TEST) ; then $(RANLIB) libobjc.a; else true; fi# This is used by objc/Makefile if the user runs that directly.sublibobjc.a: cc1obj libgcc2.ready thisdir1=`pwd`; \ srcdir1=`cd $(srcdir); pwd`; \ cd objc; \ $(MAKE) -f $$srcdir1/objc/Makefile libobjc.a \ srcdir=$$srcdir1 tooldir=$(tooldir) AR="$(AR)" AR_FLAGS="$(AR_FLAGS)" \ GCC_FOR_TARGET="$$thisdir1/xgcc -B$$thisdir1/" \ GCC_CFLAGS="$(GCC_CFLAGS)"# Compile two additional files that are linked with every program# linked using GCC on system V, for the sake of C++ constructors.crtbegin.o: crtstuff.c $(GCC_PASSES) $(CONFIG_H) gbl-ctors.h $(GCC_FOR_TARGET) $(GCC_CFLAGS) $(INCLUDES) -DCRT_BEGIN \ -finhibit-size-directive -g0 -c $(srcdir)/crtstuff.c -o crtbegin.ocrtend.o: crtstuff.c $(GCC_PASSES) $(CONFIG_H) gbl-ctors.h $(GCC_FOR_TARGET) $(GCC_CFLAGS) $(INCLUDES) -DCRT_END \ -finhibit-size-directive -g0 -c $(srcdir)/crtstuff.c -o crtend.o# Compiling object files from source files.# Note that dependencies on obstack.h are not written# because that file is not part of GCC.# Dependencies on gvarargs.h are not written# because all that file does, when not compiling with GCC,# is include the system varargs.h.# C language specific files.c-parse.o : $(srcdir)/c-parse.c $(CONFIG_H) $(TREE_H) c-lex.h c-parse.h \ c-tree.h input.h flags.h $(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) -c $(srcdir)/c-parse.c$(srcdir)/c-parse.c $(srcdir)/c-parse.h: $(srcdir)/c-parse.y cd $(srcdir); $(BISON) $(BISONFLAGS) -d c-parse.y -o c-parse.c$(srcdir)/c-parse.y: $(srcdir)/c-parse.in $(srcdir)/cond.awk cd $(srcdir); awk -f cond.awk objc=0 c-parse.in > c-parse.yc-decl.o : c-decl.c $(CONFIG_H) $(TREE_H) c-tree.h c-lex.h flags.hc-typeck.o : c-typeck.c $(CONFIG_H) $(TREE_H) c-tree.h flags.hc-lang.o : c-lang.c $(CONFIG_H) $(TREE_H)c-lex.o : c-lex.c $(CONFIG_H) $(TREE_H) c-lex.h c-tree.h c-parse.h \ input.h flags.hc-aux-info.o : c-aux-info.c $(CONFIG_H) $(TREE_H) c-tree.h flags.hc-convert.o : c-convert.c $(CONFIG_H) $(TREE_H) flags.hc-pragma.o: c-pragma.c $(CONFIG_H) $(TREE_H)# C++ language specific files.cp-parse.o : $(srcdir)/cp-parse.c $(CONFIG_H) $(CPLUS_TREE_H) flags.h $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \ `echo $(srcdir)/cp-parse.c | sed 's,^\./,,'`$(srcdir)/cp-parse.c $(srcdir)/cp-parse.h : $(srcdir)/cp-parse.y @echo expect 29 shift/reduce conflicts and 14 reduce/reduce conflicts cd $(srcdir); $(BISON) $(BISONFLAGS) -d -o cp-parse.c cp-parse.y cd $(srcdir); grep '^#define[ ]*YYEMPTY' cp-parse.c >>cp-parse.hcp-spew.o : cp-spew.c $(CONFIG_H) $(CPLUS_TREE_H) \ $(srcdir)/cp-parse.h flags.hcp-lex.o : cp-lex.c $(CONFIG_H) $(CPLUS_TREE_H) \ $(srcdir)/cp-parse.h $(srcdir)/cp-input.c flags.hcp-decl.o : cp-decl.c $(CONFIG_H) $(CPLUS_TREE_H) flags.h \ cp-lex.h cp-decl.h stack.hcp-decl2.o : cp-decl2.c $(CONFIG_H) $(CPLUS_TREE_H) flags.h \ cp-lex.h cp-decl.hcp-type2.o : cp-type2.c $(CONFIG_H) $(CPLUS_TREE_H) flags.hcp-typeck.o : cp-typeck.c $(CONFIG_H) $(CPLUS_TREE_H) flags.hcp-class.o : cp-class.c $(CONFIG_H) $(CPLUS_TREE_H) stack.h \ cp-class.h flags.hcp-call.o : cp-call.c $(CONFIG_H) $(CPLUS_TREE_H) stack.h cp-class.h \ flags.hcp-init.o : cp-init.c $(CONFIG_H) $(CPLUS_TREE_H) flags.hcp-method.o : cp-method.c $(CONFIG_H) $(CPLUS_TREE_H)cp-cvt.o : cp-cvt.c $(CONFIG_H) $(CPLUS_TREE_H)cp-search.o : cp-search.c $(CONFIG_H) $(CPLUS_TREE_H) stack.h flags.hcp-tree.o : cp-tree.c $(CONFIG_H) $(CPLUS_TREE_H) flags.hcp-ptree.o : cp-ptree.c $(CONFIG_H) $(CPLUS_TREE_H)cp-gc.o : cp-gc.c $(CONFIG_H) $(CPLUS_TREE_H) flags.hcp-except.o : cp-except.c $(CONFIG_H) $(CPLUS_TREE_H) flags.hcp-expr.o : cp-expr.c $(CONFIG_H) $(CPLUS_TREE_H) $(RTL_H) flags.h \ expr.h insn-codes.hcp-edsel.o : cp-edsel.c $(CONFIG_H) $(CPLUS_TREE_H) stack.h flags.hcp-xref.o : cp-xref.c $(CONFIG_H) $(CPLUS_TREE_H)cp-pt.o : cp-pt.c $(CONFIG_H) $(CPLUS_TREE_H) cp-decl.h cp-parse.h# To make a configuration always use collect2, set USE_COLLECT2 to ld.ld: collect2 rm -f ld ln collect2 ldcollect2 : collect2.o version.o $(LIBDEPS)# Don't try modifying collect2 (aka ld) in place--it might be linking this. -rm -f collect2 $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o collect2 collect2.o version.o $(LIBS)# -DSTANDARD_EXEC_PREFIX=\"$(libdir)/gcc-lib/\"collect2.o : collect2.c $(CONFIG_H) gstab.h $(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \ -DSTANDARD_STARTFILE_PREFIX=\"$(libdir)/\" \ -DSTANDARD_BIN_PREFIX=\"$(bindir)/\" \ -DSTANDARD_EXEC_PREFIX=\"/usr/libexec/gcc2/\" \ -DDEFAULT_TARGET_MACHINE=\"$(target)\" \ -c `echo $(srcdir)/collect2.c | sed 's,^\./,,'`# Objectionable C language specific files.objc-parse.o : $(srcdir)/objc-parse.c $(CONFIG_H) $(TREE_H) c-lex.h \ c-tree.h input.h flags.h objc-actions.h $(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) -c $(srcdir)/objc-parse.c$(srcdir)/objc-parse.c : $(srcdir)/objc-parse.y cd $(srcdir); $(BISON) $(BISONFLAGS) objc-parse.y -o objc-parse.c$(srcdir)/objc-parse.y: $(srcdir)/c-parse.in $(srcdir)/cond.awk cd $(srcdir); awk -f cond.awk objc=1 c-parse.in > objc-parse.yobjc-actions.o : objc-actions.c $(CONFIG_H) $(TREE_H) c-tree.h c-lex.h \ flags.h objc-actions.h# A file used by all variants of C.c-common.o : c-common.c $(CONFIG_H) $(TREE_H) c-tree.h c-lex.h flags.h# Language-independent files.# -DSTANDARD_EXEC_PREFIX=\"$(libdir)/gcc-lib/\"gcc.o: gcc.c $(CONFIG_H) gvarargs.h obstack.h $(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \ -DSTANDARD_STARTFILE_PREFIX=\"$(libdir)/\" \ -DSTANDARD_EXEC_PREFIX=\"/usr/libexec/gcc2/\" \ -DDEFAULT_TARGET_MACHINE=\"$(target)\" \ -DTOOLDIR=\"$(tooldir)/\" \ -c `echo $(srcdir)/gcc.c | sed 's,^\./,,'`dumpvers: dumpvers.cversion.o: version.cobstack.o: obstack.ctree.o : tree.c $(CONFIG_H) $(TREE_H) gvarargs.h flags.h function.hprint-tree.o : print-tree.c $(CONFIG_H) $(TREE_H)stor-layout.o : stor-layout.c $(CONFIG_H) $(TREE_H) function.hfold-const.o : fold-const.c $(CONFIG_H) $(TREE_H) flags.h toplev.o : toplev.c $(CONFIG_H) $(TREE_H) $(RTL_H) flags.h input.h \ insn-attr.h xcoffout.h $(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \ $(MAYBE_TARGET_DEFAULT) $(MAYBE_USE_COLLECT2) \ -c `echo $(srcdir)/toplev.c | sed 's,^\./,,'`rtl.o : rtl.c $(CONFIG_H) $(RTL_H)print-rtl.o : print-rtl.c $(CONFIG_H) $(RTL_H)rtlanal.o : rtlanal.c $(CONFIG_H) $(RTL_H)varasm.o : varasm.c $(CONFIG_H) $(TREE_H) $(RTL_H) flags.h function.h \ defaults.h insn-codes.h expr.h hard-reg-set.h regs.h xcoffout.hfunction.o : function.c $(CONFIG_H) $(RTL_H) $(TREE_H) flags.h function.h \ insn-flags.h insn-codes.h expr.h regs.h hard-reg-set.h insn-config.h \ recog.h output.hstmt.o : stmt.c $(CONFIG_H) $(RTL_H) $(TREE_H) flags.h function.h \ insn-flags.h insn-config.h insn-codes.h hard-reg-set.h expr.h loop.h recog.hexpr.o : expr.c $(CONFIG_H) $(RTL_H) $(TREE_H) gvarargs.h flags.h function.h \ insn-flags.h insn-codes.h expr.h insn-config.h recog.h output.h typeclass.hcalls.o : calls.c $(CONFIG_H) $(RTL_H) $(TREE_H) flags.h expr.h insn-codes.h \ insn-flags.hexpmed.o : expmed.c $(CONFIG_H) $(RTL_H) $(TREE_H) flags.h \ insn-flags.h insn-config.h insn-codes.h expr.h recog.h real.hexplow.o : explow.c $(CONFIG_H) $(RTL_H) $(TREE_H) flags.h hard-reg-set.h \ insn-config.h expr.h recog.h insn-flags.h insn-codes.hoptabs.o : optabs.c $(CONFIG_H) $(RTL_H) $(TREE_H) flags.h \ insn-flags.h insn-config.h insn-codes.h expr.h recog.hdbxout.o : dbxout.c $(CONFIG_H) $(TREE_H) $(RTL_H) flags.h regs.h \ insn-config.h reload.h gstab.h xcoffout.h defaults.h output.hsdbout.o : sdbout.c $(CONFIG_H) $(TREE_H) $(RTL_H) gsyms.h flags.h \ insn-config.h reload.hdwarfout.o : dwarfout.c $(CONFIG_H) $(TREE_H) $(RTL_H) dwarf.h flags.h \ insn-config.h reload.h output.h defaults.hxcoffout.o : xcoffout.c $(CONFIG_H) $(TREE_H) $(RTL_H) xcoffout.h flags.hemit-rtl.o : emit-rtl.c $(CONFIG_H) $(RTL_H) flags.h gvarargs.h function.h \ regs.h insn-config.h insn-codes.h real.h expr.hgetpwd.o : getpwd.c $(CONFIG_H)integrate.o : integrate.c $(CONFIG_H) $(RTL_H) $(TREE_H) flags.h integrate.h \ insn-flags.h insn-config.h insn-codes.h expr.h real.h function.hjump.o : jump.c $(CONFIG_H) $(RTL_H) flags.h hard-reg-set.h regs.h \ insn-config.h insn-flags.h insn-codes.h expr.h real.hstupid.o : stupid.c $(CONFIG_H) $(RTL_H) regs.h hard-reg-set.h flags.hcse.o : cse.c $(CONFIG_H) $(RTL_H) regs.h hard-reg-set.h flags.h real.h \ insn-config.h recog.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 insn-codes.h \ integrate.h regs.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) gvarargs.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.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.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.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 \ 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) 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-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.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) gvarargs.h flags.h regs.h \ recog.h conditions.h insn-config.h insn-attr.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.haux-output.o : aux-output.c $(CONFIG_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# 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) \ -Demacs -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-changed 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.insn-config.h: stamp-config ;stamp-config : md genconfig $(srcdir)/move-if-change ./genconfig md > tmp-config.h $(srcdir)/move-if-change tmp-config.h insn-config.h touch stamp-configinsn-flags.h: stamp-flags ;stamp-flags : md genflags $(srcdir)/move-if-change ./genflags md > tmp-flags.h $(srcdir)/move-if-change tmp-flags.h insn-flags.h touch stamp-flagsinsn-codes.h: stamp-codes ;stamp-codes : md gencodes $(srcdir)/move-if-change ./gencodes md > 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 ;stamp-emit : md genemit $(srcdir)/move-if-change ./genemit md > 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 ;stamp-recog : md genrecog $(srcdir)/move-if-change ./genrecog md > tmp-recog.c $(srcdir)/move-if-change tmp-recog.c insn-recog.c touch stamp-recoginsn-extract.o : insn-extract.c $(CONFIG_H) $(RTL_H) $(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) -c insn-extract.c
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -