* Makefile.in (install): Depend on "all".
[binutils-gdb.git] / gprof / Makefile.in
index 8c6a127c3fd47ba8c01347ca735b3ce0c75828ba..a324b66e898edd208495b601175f740cd3bb1924 100644 (file)
 #      @(#)Makefile    5.17 (Berkeley) 5/11/90
 
-srcdir         = .
+.SUFFIXES : .m
 
-prefix         = /usr/local
+VPATH = @srcdir@
+srcdir = @srcdir@
+prefix = @prefix@
 
-program_prefix         =
 exec_prefix    = $(prefix)
+program_transform_name = @program_transform_name@
+
 bindir         = $(exec_prefix)/bin
 libdir         = $(exec_prefix)/lib
 tooldir = $(libdir)
 mandir         = $(prefix)/man
 man1dir = $(mandir)/man1
 
+infodir        = $(prefix)/info
 datadir = $(prefix)/lib
 
-INSTALL        = install -c
+INSTALL = `cd $(srcdir); pwd`/../install.sh -c
 INSTALL_PROGRAM = $(INSTALL)
-INSTALL_DATA   = $(INSTALL)
+INSTALL_DATA = $(INSTALL)
+INSTALL_XFORM = $(INSTALL) -t='$(program_transform_name)'
+INSTALL_XFORM1 = $(INSTALL_XFORM) -b=.1
+MAKEINFO       = makeinfo
+TEX            = tex
+TEXINDEX       = texindex
+
+# this is the directory we look in to find Texinfo
+texidir                = $(srcdir)/../texinfo
 
-#### host and target dependent Makefile fragments come in here.
-###
+MY_TARGET=     @MY_TARGET@
 
 PROG=  gprof
-SRCS=  gprof.c arcs.c dfn.c lookup.c ${MACHINE}.c hertz.c \
-       printgprof.c printlist.c
+SRCS=  $(MY_TARGET).c basic_blocks.c call_graph.c \
+       cg_arcs.c cg_dfn.c cg_print.c core.c \
+       gmon_io.c gprof.c hertz.c hist.c source.c search_list.c symtab.c \
+       sym_ids.c utils.c
+
 LIBS = ../bfd/libbfd.a ../libiberty/libiberty.a
 
-OBJS=  blurbs.o gprof.o arcs.o dfn.o lookup.o ${MACHINE}.o hertz.o \
-       printgprof.o printlist.o
+OBJS=  $(MY_TARGET).o basic_blocks.o bsd_callg_bl.o call_graph.o \
+       cg_arcs.o cg_dfn.o cg_print.o core.o flat_bl.o fsf_callg_bl.o \
+       gmon_io.o gprof.o hertz.o hist.o source.o search_list.o symtab.o \
+       sym_ids.o utils.o
 
-CFLAGS=        
+# Files that can be generated, but should be included in distribution.
+DISTSTUFF = flat_bl.c bsd_callg_bl.c fsf_callg_bl.c
+
+CFLAGS=-g -DDEBUG
+LDFLAGS=
 .c.o:
-       $(CC) -c $(CFLAGS) -I$(srcdir) -I$(srcdir)/../include -DMACHINE_H=\"${MACHINE}.h\" ${TCFLAGS} ${HCFLAGS} $<
+       $(CC) -c $(CFLAGS) -I. -I$(srcdir) -I../bfd -I$(srcdir)/../include -I$(srcdir)/../bfd -DMACHINE_H=\"$(MY_TARGET).h\" $(TCFLAGS) $(HCFLAGS) $<
 
-all:   ${PROG}
+all:   diststuff $(PROG)
 
-.PHONY: check info install-info
-check:
-info:
-install-info:
+.PHONY: check installcheck info install-info
+.SUFFIXES: .m
 
-install: all
-       $(INSTALL_DATA) ${srcdir}/gprof.flat ${DESTDIR}$(datadir)
-       $(INSTALL_DATA) ${srcdir}/gprof.callg ${DESTDIR}$(datadir)
-#      $(INSTALL_DATA) $(srcdir)/gprof.1 $(man1dir)/gprof.1
-       $(INSTALL_PROGRAM) $(PROG) ${DESTDIR}$(bindir)
+.m.c:
+       awk -f $(srcdir)/gen-c-prog.awk > ./$*.c \
+           FUNCTION=`(echo $*|sed -e 's/_bl//')`_blurb \
+           FILE=$*.m $(srcdir)/$*.m
 
-$(PROG):       $(OBJS)
-       $(CC) $(CFLAGS) $(OBJS) -o $(PROG) $(LIBS)
+diststuff: $(DISTSTUFF)
 
-# Make blurbs.c from gprof.callg and gprof.flat
-blurbs.c: ${srcdir}/gprof.callg ${srcdir}/gprof.flat ${srcdir}/make-c-prog.awk
-       awk -f ${srcdir}/make-c-prog.awk > ./blurbs.c \
-               FUNCTION=flat_blurb  ${srcdir}/gprof.flat \
-               FUNCTION=callg_blurb ${srcdir}/gprof.callg \
+gprof.info: gprof.texi
+       $(MAKEINFO) -o gprof.info $(srcdir)/gprof.texi
 
-clean:
-       -rm -f $(OBJS) core gprof nohup.out
+gprof.dvi: gprof.texi
+       TEXINPUTS=${TEXIDIR}:$(srcdir):$$TEXINPUTS $(TEX) $(srcdir)/gprof.texi
+       $(TEXINDEX) gprof.??
+       TEXINPUTS=${TEXIDIR}:$(srcdir):$$TEXINPUTS $(TEX) $(srcdir)/gprof.texi
+
+info: gprof.info
+
+dvi: gprof.dvi
+
+check:
+installcheck:
+
+install-info: gprof.info
+       if [ -r gprof.info ]; then \
+         dir=. ; \
+       else \
+         dir=$(srcdir) ; \
+       fi ; \
+       for i in `cd $$dir; echo gprof.info*` ; do \
+               $(INSTALL_DATA) $$dir/$$i $(infodir)/$$i ; \
+       done
+
+install: all
+       $(INSTALL_XFORM) gprof $(bindir)/gprof
+       $(INSTALL_XFORM1) $(srcdir)/gprof.1 $(man1dir)/gprof.1
+       -n=`t='$(program_transform_name)'; echo gprof | sed -e "s/brokensed/brokensed/" $$t`; \
+         rm -f $(tooldir)/bin/gprof; \
+         ln $(bindir)/$$n $(tooldir)/bin/gprof \
+          || $(INSTALL_PROGRAM) gprof $(tooldir)/bin/gprof; 
+
+
+gprof: $(OBJS) $(LIBS)
+       $(CC) -o $(PROG) $(LDFLAGS) $(OBJS) $(LIBS)
+
+mostlyclean:
+       -rm -f *.o core gprof nohup.out gprof.info* \
+       gprof.cps  gprof.fns  gprof.log  gprof.ps   gprof.tps\
+       gprof.aux  gprof.dvi  gprof.ky   gprof.pg   gprof.toc  gprof.vr\
+       gprof.cp   gprof.fn   gprof.kys  gprof.pgs  gprof.tp   gprof.vrs
+clean: mostlyclean
+       -rm -f gprof
+distclean: clean
+       -rm -f config.status Makefile
+realclean: distclean
+       -rm -f $(DISTSTUFF)
 
 Makefile : Makefile.in
        sh config.status
 
 
 # These get around a bug in Sun Make in SunOS 4.1.1 and Solaris 2
+$(MY_TARGET).o: $(MY_TARGET).c
+basic_blocks.o: basic_blocks.c
+bsd_call_bl.o: bsd_call_bl.c
+call_graph.o: call_graph.c
+cg_arcs.o: cg_arcs.c
+cg_dfn.o: cg_dfn.c
+cg_print.o: cg_print.c
+core.o: core.c
+flat_bl.o: flat_bl.c
+fsf_callg_bl.o: fsf_callg_bl.c
+gmon_io.o: gmon_io.c
 gprof.o: gprof.c
-arcs.o: arcs.c
-dfn.o: dfn.c
-lookup.o: lookup.c
-${MACHINE}.o: ${MACHINE}.c
 hertz.o: hertz.c
-printgprof.o: printgprof.c
-printlist.o: printlist.c
-blurbs.o: blurbs.c
+hist.o: hist.c
+search_list.o: search_list.c
+source.o: source.c
+symtab.o: symtab.c
+sym_ids.o: sym_ids.c
+utils.o: utils.c