1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-01 08:27:59 +00:00
freebsd/usr.bin/Makefile
Bruce Evans 912e603778 Implemented non-statistical kernel profiling. This is based on
looking at a high resolution clock for each of the following events:
function call, function return, interrupt entry, interrupt exit,
and interesting branches.  The differences between the times of
these events are added at appropriate places in a ordinary histogram
(as if very fast statistical profiling sampled the pc at those
places) so that ordinary gprof can be used to analyze the times.

gmon.h:
Histogram counters need to be 4 bytes for microsecond resolutions.
They will need to be larger for the 586 clock.
The comments were vax-centric and wrong even on vaxes.  Does anyone
disagree?

gprof4.c:
The standard gprof should support counters of all integral sizes
and the size of the counter should be in the gmon header.  This
hack will do until then.  (Use gprof4 -u to examine the results
of non-statistical profiling.)

config/*:
Non-statistical profiling is configured with `config -pp'.
`config -p' still gives ordinary profiling.

kgmon/*:
Non-statistical profiling is enabled with `kgmon -B'.  `kgmon -b'
still enables ordinary profiling (and distables non-statistical
profiling) if non-statistical profiling is configured.
1995-12-29 15:30:05 +00:00

60 lines
2.3 KiB
Makefile

# From: @(#)Makefile 8.3 (Berkeley) 1/7/94
# $Id: Makefile,v 1.63 1995/10/23 16:44:22 peter Exp $
# XXX MISSING: deroff diction graph learn plot
# spell spline struct units xsend
# XXX Use GNU versions: apropos bc dc diff grep ld man patch ptx uucp whatis
# Moved to secure: bdes
#
SUBDIR= apply ar at banner basename biff cal calendar \
cap_mkdb chat checknr chflags chpass cksum col colcrt colldef colrm \
column comm compile_et compress cpp ctags cut devmenu \
dig dirname dnsquery du ee env error expand f2c false file file2c \
find finger fmt fold fpr from fsplit fstat ftp gcore gencat getopt \
gprof head hexdump host id indent ipcrm ipcs \
join jot kdump ktrace key keyinfo keyinit killall lam last \
lastcomm leave lex locate lock logger login logname lorder \
lsvfs m4 mail make mesg mkdep mkfifo mklocale mkstr mk_cmds \
modstat more msgs mt ncftp netstat nfsstat nice \
nm nohup pagesize passwd paste pr printenv \
printf quota ranlib rdist renice rev rlogin rpcgen \
rpcinfo rs rsh rup ruptime rusers rwall \
rwho script sed sgmlfmt sgmls shar showmount size soelim split \
strings strip su symorder talk tconv tcopy tee tftp time \
tip tn3270 touch tput tr true tset tsort tty ul uname \
unexpand unifdef uniq unvis users uudecode uuencode vacation \
vgrind vi vis w wall wc what whereis which who whois window \
write xargs xinstall xstr yacc yes ypcat ypmatch ypwhich
SUBDIR+=gprof4
.if !exists(../secure) || defined(NOSECURE)
SUBDIR+=telnet
.else
SUBDIR+= ../secure/usr.bin/telnet
.endif
# Cmp, look and tail all use mmap, so new-VM only.
# F77 and pascal are VAX/Tahoe only.
.if make(clean) || make(cleandir)
# XXX Should have `f77', `pascal' & `vmstat.sparc' judging by the
# machine dependant lines, but we don't have them
SUBDIR+=cmp kzip look systat tail vmstat
.elif ${MACHINE} == "hp300"
SUBDIR+=cmp ld look systat tail vmstat
.elif ${MACHINE} == "i386"
SUBDIR+=cmp kzip look sasc systat tail vmstat
# XXX Use gnu/usr.bin/ld for now
.elif ${MACHINE} == "luna68k"
SUBDIR+=cmp ld look systat tail vmstat
.elif ${MACHINE} == "mips"
SUBDIR+=cmp look systat tail vmstat
.elif ${MACHINE} == "sparc"
SUBDIR+=cmp ld look tail vmstat.sparc
.elif ${MACHINE} == "tahoe"
SUBDIR+=f77 pascal systat vmstat
.elif ${MACHINE} == "vax"
SUBDIR+=f77 pascal systat vmstat
.endif
.include <bsd.subdir.mk>