# Selection of languages to be made.
# This is overridden by configure.
-LANGUAGES = c objective-c proto
+LANGUAGES = c objective-c proto gcov
# Selection of languages to be made during stage1 build.
# This is overridden by configure.
regclass.o local-alloc.o global.o reload.o reload1.o caller-save.o \
insn-peep.o reorg.o sched.o final.o recog.o reg-stack.o \
insn-opinit.o insn-recog.o insn-extract.o insn-output.o insn-emit.o \
+ profile.o \
insn-attrtab.o $(out_object_file) getpwd.o convert.o $(EXTRA_OBJS)
# GEN files are listed separately, so they can be built before doing parallel
$(CCCP)$(exeext) cc1obj$(exeext) enquire$(exeext) \
protoize$(exeext) unprotoize$(exeext) \
specs collect2$(exeext) $(USE_COLLECT2) underscore.c \
+ gcov$(exeext) *.bp \
*.greg *.lreg *.combine *.flow *.cse *.jump *.rtl *.tree *.loop \
*.dbr *.jump2 *.sched *.cse2 *.sched2 *.stack \
*.[si] \
cse.o : cse.c $(CONFIG_H) $(RTL_H) regs.h hard-reg-set.h flags.h real.h \
insn-config.h recog.h
+profile.o : profile.c $(CONFIG_H) $(RTL_H) flags.h insn-flags.h gcov-io.h \
+ tree.h output.h
loop.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.h
unroll.o : unroll.c $(CONFIG_H) $(RTL_H) insn-config.h insn-codes.h \
@echo Expect zero differences.
diff $(srcdir)/protoize.c tmp-proto.c | cat
-rm -f tmp-proto.[cs] tmp-proto$(objext)
+
+gcov.o: gcov.c gcov-io.h
+
+gcov: gcov.o $(LIBDEPS)
+ $(CC) $(ALL_CFLAGS) $(LDFLAGS) gcov.o $(LIBS) -o $@
\f
# Build the include directory. The stamp files are stmp-* rather than
# stamp-* so that mostlyclean does not force the include directory to
cd $(srcdir); $(MAKEINFO) $(MAKEINFOFLAGS) cpp.texi
$(srcdir)/gcc.info: gcc.texi extend.texi install.texi invoke.texi \
- md.texi rtl.texi tm.texi
+ md.texi rtl.texi tm.texi gcov.texi
cd $(srcdir); $(MAKEINFO) $(MAKEINFOFLAGS) gcc.texi
dvi: $(srcdir)/gcc.dvi $(srcdir)/cpp.dvi lang.dvi
# This works with GNU Make's default rule.
$(srcdir)/gcc.dvi: gcc.texi extend.texi install.texi invoke.texi \
- md.texi rtl.texi tm.texi
+ md.texi rtl.texi tm.texi gcov.texi
$(TEXI2DVI) $<
# This works with GNU Make's default rule.
-rm -f gcc.vrs gcc.kys gcc.tps gcc.pgs gcc.fns
# Delete core dumps.
-rm -f core */core
+ -rm -f *.bp */*.bp
# Delete all files made by compilation
# that don't exist in the distribution.
fi
-rm -f $(libsubdir)/cpp$(exeext)
$(INSTALL_PROGRAM) cpp$(exeext) $(libsubdir)/cpp$(exeext)
+# Install gcov if it was compiled.
+ -if [ -f gcov$(exeext) ]; \
+ then \
+ rm -f $(bindir)/gcov$(exeext); \
+ $(INSTALL_PROGRAM) gcov$(exeext) $(bindir)/gcov$(exeext); \
+ chmod a+x $(bindir)/gcov$(exeext); \
+ fi
# Install the driver program as $(target_alias)-gcc
# and also as either gcc (if native) or $(tooldir)/bin/gcc.