blob: 632bc0610d093178a73c9508f416561048209e0a [file] [log] [blame]
Igor Sarkisovec8b8442020-10-06 05:08:18 -07001
2# FreeBSD Makefile remainder
3#
4# $Id: Makefile,v 1.12 2009/03/25 19:23:06 abe Exp $
5
6PROG= lsof
7
8BIN= ${DESTDIR}
9
10DOC= ${DESTDIR}
11
12I=/usr/include
13S=/usr/include/sys
14L=/usr/include/local
15P=
16
17CDEF=
18CDEFS= ${CDEF} ${CFGF}
19INCL= ${DINC}
20CFLAGS= ${CDEFS} ${INCL} ${DEBUG}
21
22GRP=
23
24HDR= lsof.h lsof_fields.h dlsof.h machine.h proto.h dproto.h dzfs.h
25
26SRC= dmnt.c dnode.c dnode1.c dnode2.c dproc.c dsock.c dstore.c \
27 arg.c main.c misc.c node.c print.c proc.c store.c usage.c \
28 util.c
29
30OBJ= dmnt.o dnode.o dnode1.o dnode2.o dproc.o dsock.o dstore.o \
31 arg.o main.o misc.o node.o print.o proc.o store.o usage.o \
32 util.o
33
34MAN= lsof.8
35
36OTHER=
37
38SHELL= /bin/sh
39
40SOURCE= Makefile ${OTHER} ${MAN} ${HDR} ${SRC}
41
42all: ${PROG}
43
44${PROG}: ${LIB} ${P} ${OBJ}
45 ${CC} -o $@ ${CFLAGS} ${OBJ} ${CFGL}
46
47clean: FRC
48 rm -f Makefile.bak ${PROG} a.out core errs lint.out tags *.o version.h
49 rm -f machine.h.old new_machine.h
50 (cd lib; ${MAKE} -f Makefile.skel clean)
51
52install: all FRC
53 @echo ''
54 @echo 'Please write your own install rule. Lsof should be installed'
55 @echo 'setgid to the group that can can read /dev/kmem. Normally'
56 @echo 'that is the kmem group. Your install rule actions might look'
57 @echo 'something like this:'
58 @echo ''
59 @echo ' install -cs -m 2755 -g $${GRP} $${PROG} $${BIN}/$${PROG}'
60 @echo ' install -c -m 444 $${MAN} $${DOC}/$${MAN}'
61 @echo ''
62 @echo 'You will have to complete the skeletons for the BIN, DOC, and'
63 @echo 'GRP strings given at the beginning of this Makefile, e.g.,'
64 @echo ''
65 @echo ' BIN= $${DESTDIR}/usr/local/etc'
66 @echo ' DOC= $${DESTDIR}/usr/local/man/man8'
67 @echo ' GRP= kmem'
68 @echo ''
69
70${LIB}: FRC
71 (cd lib; ${MAKE} DEBUG="${DEBUG}" CFGF="${CFGF}")
72
73version.h: FRC
74 @echo Constructing version.h
75 @rm -f version.h
76 @echo '#define LSOF_BLDCMT "${LSOF_BLDCMT}"' > version.h;
77 @echo '#define LSOF_CC "${CC}"' >> version.h
78 @echo '#define LSOF_CCV "${CCV}"' >> version.h
79 @echo '#define LSOF_CCDATE "'`date`'"' >> version.h
80 @echo '#define LSOF_CCFLAGS "'`echo ${CFLAGS} | sed 's/\\\\(/\\(/g' | sed 's/\\\\)/\\)/g' | sed 's/"/\\\\"/g'`'"' >> version.h
81 @if [ "X${LSOF_HOST}" = "X" ]; then \
82 echo '#define LSOF_HOST "'`uname -n`'"' >> version.h; \
83 else \
84 if [ "${LSOF_HOST}" = "none" ]; then \
85 echo '#define LSOF_HOST ""' >> version.h; \
86 else \
87 echo '#define LSOF_HOST "${LSOF_HOST}"' >> version.h; \
88 fi \
89 fi
90 @echo '#define LSOF_LDFLAGS "${CFGL}"' >> version.h
91 @if [ "X${LSOF_LOGNAME}" = "X" ]; then \
92 echo '#define LSOF_LOGNAME "${LOGNAME}"' >> version.h; \
93 else \
94 if [ "${LSOF_LOGNAME}" = "none" ]; then \
95 echo '#define LSOF_LOGNAME ""' >> version.h; \
96 else \
97 echo '#define LSOF_LOGNAME "${LSOF_LOGNAME}"' >> version.h; \
98 fi; \
99 fi
100 @if [ "X${LSOF_SYSINFO}" = "X" ]; then \
101 echo '#define LSOF_SYSINFO "'`uname -a`'"' >> version.h; \
102 else \
103 if [ "${LSOF_SYSINFO}" = "none" ]; then \
104 echo '#define LSOF_SYSINFO ""' >> version.h; \
105 else \
106 echo '#define LSOF_SYSINFO "${LSOF_SYSINFO}"' >> version.h; \
107 fi \
108 fi
109 @if [ "X${LSOF_USER}" = "X" ]; then \
110 echo '#define LSOF_USER "${USER}"' >> version.h; \
111 else \
112 if [ "${LSOF_USER}" = "none" ]; then \
113 echo '#define LSOF_USER ""' >> version.h; \
114 else \
115 echo '#define LSOF_USER "${LSOF_USER}"' >> version.h; \
116 fi \
117 fi
118 @sed '/VN/s/.ds VN \(.*\)/#define LSOF_VERSION "\1"/' < version >> version.h
119
120FRC:
121
122# DO NOT DELETE THIS LINE - make depend DEPENDS ON IT
123
124dmnt.o: ${HDR} dmnt.c
125
126dnode.o: ${HDR} dnode.c
127
128dnode1.o: ${HDR} dnode1.c
129
130dnode2.o: dzfs.h dnode2.c
131 @if [ -f ./Makefile.zfs ]; then \
132 ${MAKE} -f Makefile.zfs dnode2.o; \
133 else \
134 echo "${CC} ${CFLAGS} -c dnode2.c"; \
135 ${CC} ${CFLAGS} -c dnode2.c; \
136 fi;
137
138dproc.o: ${HDR} dproc.c
139
140dsock.o: ${HDR} dsock.c
141
142dstore.o: ${HDR} dstore.c
143
144arg.o: ${HDR} arg.c
145
146main.o: ${HDR} main.c
147
148misc.o: ${HDR} misc.c
149
150node.o: ${HDR} node.c
151
152print.o: ${HDR} print.c
153
154proc.o: ${HDR} proc.c
155
156store.o: ${HDR} store.c
157
158usage.o: ${HDR} version.h usage.c
159
160util.o: ${HDR} util.c
161
162# *** Do not add anything here - It will go away. ***