1 # Copyright 2000, International Business Machines Corporation and others.
4 # This software has been released under the terms of the IBM Public
5 # License. For details, see the LICENSE file in the top-level source
6 # directory or online at http://www.openafs.org/dl/license10.html
9 TOP_INCDIR=@TOP_INCDIR@
10 TOP_LIBDIR=@TOP_LIBDIR@
11 TOP_OBJDIR=@TOP_OBJDIR@
15 exec_prefix=@exec_prefix@
18 libexecdir=@libexecdir@
20 includedir=@includedir@
22 afssrvbindir=@afssrvbindir@
23 afssrvsbindir=@afssrvsbindir@
24 afssrvlibexecdir=@afssrvlibexecdir@
25 COMPILE_ET=${TOP_OBJDIR}/src/comerr/compile_et
26 RXGEN=${TOP_OBJDIR}/src/rxgen/rxgen
27 TOP_SRCDIR=@TOP_SRCDIR@
28 SYS_NAME=@AFS_SYSNAME@
32 LINUX_KERNEL_PATH=@LINUX_KERNEL_PATH@
33 LINUX_VERSION=@LINUX_VERSION@
35 include ../config/Makefile.${SYS_NAME}
37 INSTALLex = ${INSTALL} -m 755
38 CCXPG2= /usr/xpg2bin/cc
40 # Note - be careful with this line, ubik.h is very picky about getting the right lock.h
41 CFLAGS=${OPTMZ} -I${TOP_INCDIR} -I. -I${srcdir} -I${TOP_OBJDIR}/src/config ${XCFLAGS}
43 INCLS=${TOP_INCDIR}/afs/afsint.h \
44 ${TOP_INCDIR}/afs/cmd.h \
45 ${TOP_INCDIR}/afs/afsutil.h
47 FSLIBS=${TOP_LIBDIR}/libsys.a \
48 ${TOP_LIBDIR}/libvldb.a \
49 ${TOP_LIBDIR}/libubik.a \
50 ${TOP_LIBDIR}/vlib.a \
51 ${TOP_LIBDIR}/libauth.a \
52 ${TOP_LIBDIR}/librxkad.a \
53 ${TOP_LIBDIR}/libcom_err.a \
54 ${TOP_LIBDIR}/libcmd.a \
55 ${TOP_LIBDIR}/libkauth.a \
56 ${TOP_LIBDIR}/libdes.a \
57 ${TOP_LIBDIR}/librx.a \
58 ${TOP_LIBDIR}/libsys.a \
59 $(TOP_LIBDIR)/util.a \
60 ${TOP_LIBDIR}/liblwp.a \
61 ${TOP_LIBDIR}/libaudit.a
63 CMLIBS=${TOP_LIBDIR}/libsys.a \
64 ${TOP_LIBDIR}/libafsint.a \
65 ${TOP_LIBDIR}/librxkad.a \
66 ${TOP_LIBDIR}/libauth.a \
67 ${TOP_LIBDIR}/libcom_err.a \
68 ${TOP_LIBDIR}/libcmd.a \
69 ${TOP_LIBDIR}/librx.a \
70 ${TOP_LIBDIR}/libsys.a \
71 $(TOP_LIBDIR)/util.a \
72 ${TOP_LIBDIR}/liblwp.a
76 all: fs up fstrace cmdebug livesys kdump kdump64
82 $(CC) ${CFLAGS} -o cacheout cacheout.o ${LIBS} ${XLIBS} ${CMLIBS}
84 cacheout.o: cacheout.c
86 ${DEST}/bin/fs ${DEST}/root.server/usr/afs/bin/fs: fs
89 ${DEST}/bin/livesys: livesys
95 ${DEST}/etc/fstrace: fstrace
98 ${DEST}/bin/cmdebug: cmdebug
101 ${DEST}/etc/kdump: kdump
103 case ${SYS_NAME} in \
105 ${INSTALLex} -f ${srcdir}/kdump.sh.sgi_ipnos $@; \
106 ln -fs kdump ${DEST}/etc/kdump32; \
107 ln -fs kdump.IP20 ${DEST}/etc/kdump.IP22; \
108 ln -fs kdump.IP20 ${DEST}/etc/kdump.IP32; \
109 for f in kdump.IP??; \
110 do ${INSTALL} -s $$f ${DEST}/etc/$$f || exit $$? ; \
112 sun4x_5[78]|sunx86_5[78] ) \
113 ${INSTALLex} -f ${srcdir}/kdump.sh.solaris7 $@; \
114 ${INSTALL} -s -f $? ${DEST}/etc/kdump32;; \
116 ${INSTALLex} -f ${srcdir}/kdump.sh.linux $@; \
117 ${INSTALL} -s kdump-${LINUX_VERSION} ${DEST}/etc/kdump-${LINUX_VERSION} ;; \
119 ${INSTALLex} -f ${srcdir}/kdump.sh.hp_ux11 $@; \
120 ${INSTALL} -s -f $? ${DEST}/etc/kdump32;; \
122 ${INSTALL} -s $? $@ ;; \
125 ${DEST}/etc/kdump64: kdump64
127 case ${SYS_NAME} in \
128 sun4x_5[78] | hp_ux11* |sunx86_5[78] ) \
129 ${INSTALL} -s $? $@ ;;\
131 echo skipping kdump64 for ${SYS_NAME} ;; \
135 up.o: up.c AFS_component_version_number.c
138 ${CC} ${CFLAGS} -g -o up up.o ${LIBS} ${XLIBS}
140 fs.o: fs.c ${INCLS} AFS_component_version_number.c
143 ${CC} ${CFLAGS} -g -o fs fs.o ${TOP_LIBDIR}/libprot.a $(LIBS) ${XLIBS}
145 livesys.o: livesys.c ${INCLS} AFS_component_version_number.c
147 livesys: livesys.c $(LIBS)
148 ${CC} -g -o livesys $(CFLAGS) ${srcdir}/livesys.c $(LIBS) ${XLIBS}
150 twiddle: twiddle.c $(LIBS)
151 ${CC} -g -o twiddle $(CFLAGS) twiddle.c $(LIBS) ${XLIBS}
153 gcpags: gcpags.c $(LIBS)
154 ${CC} -g -o gcpags $(CFLAGS) gcpags.c $(LIBS) ${XLIBS}
156 whatfid.o: whatfid.c ${INCLS} AFS_component_version_number.c
158 whatfid: whatfid.o ${LIBS}
159 ${CC} ${CFLAGS} -g -o whatfid whatfid.o ${LIBS} ${XLIBS}
161 fstrace.o: fstrace.c AFS_component_version_number.c
162 case ${SYS_NAME} in \
163 sun4_411 | sun4c_411 | sun4m_412 ) \
164 ${CCXPG2} -g -I${TOP_OBJDIR}/src/config -I${TOP_INCDIR} -I${TOP_INCDIR} -c ${srcdir}/fstrace.c ;; \
166 ${CC} ${CFLAGS} -g -I${TOP_OBJDIR}/src/config -I${TOP_INCDIR} -I${TOP_INCDIR} -c ${srcdir}/fstrace.c ;; \
170 case ${SYS_NAME} in \
171 pmax_ul43 | pmax_ul43a ) \
172 ${CC} ${CFLAGS} -o fstrace fstrace.o ${TOP_LIBDIR}/libsys.a ${TOP_LIBDIR}/libcmd.a ${TOP_LIBDIR}/util.a /usr/lib/libi.a ;; \
173 sun4_411 | sun4c_411 | sun4m_412 ) \
174 ${CCXPG2} ${CFLAGS} -g -o fstrace fstrace.o ${TOP_LIBDIR}/libsys.a ${TOP_LIBDIR}/libcmd.a ${TOP_LIBDIR}/util.a ;; \
175 hp700_ux100 | hp800_ux100 | hp?00_ux10? | hp_ux10? | hp_ux11?) \
176 ${CC} -I${TOP_OBJDIR}/src/config -o fstrace fstrace.o ${TOP_LIBDIR}/libsys.a ${TOP_LIBDIR}/libcmd.a ${TOP_LIBDIR}/util.a ;; \
178 ${CC} ${CFLAGS} -o fstrace fstrace.o ${TOP_LIBDIR}/libsys.a ${TOP_LIBDIR}/libcmd.a ${TOP_LIBDIR}/util.a ;; \
181 cmdebug.o: cmdebug.c ${INCLS} AFS_component_version_number.c
183 cmdebug: cmdebug.o ${CMLIBS}
184 $(CC) -o cmdebug cmdebug.o ${CFLAGS} ${CMLIBS} ${XLIBS}
186 kdump.o: kdump.c ${INCLS} AFS_component_version_number.c
188 case ${SYS_NAME} in \
190 ${CC} -g -I${LINUX_KERNEL_PATH}/include -I${TOP_INCDIR}/afs -I${TOP_OBJDIR}/src/config -I${TOP_OBJDIR}/src/libafs/afs -I${TOP_INCDIR} ${XCFLAGS} -mno-fp-regs -ffixed-8 -o kdump-${LINUX_VERSION}.o -c ${srcdir}/kdump.c ;; \
192 ${CC} -g -I${LINUX_KERNEL_PATH}/include -I${TOP_INCDIR}/afs -I${TOP_OBJDIR}/src/config -I${TOP_OBJDIR}/src/libafs/afs -I${TOP_INCDIR} ${XCFLAGS} -o kdump-${LINUX_VERSION}.o -c ${srcdir}/kdump.c ;; \
193 alpha_osf1 | alpha_osf20 | alpha_osf30 | alpha_osf32 | alpha_osf32c| alpha_dux?? ) \
194 ${CC} -g ${CFLAGS} -I/usr/sys/include -I/usr/sys/BINARY -I/usr/sys/AFS -DDEBUGGER -c ${srcdir}/kdump.c ;;\
196 for f in ../libafs/STATIC.IP*/CPU_KDEFS; \
197 do IP=`expr "$$f" : '../libafs/STATIC.\(IP..\)'`; \
198 CPU_KDEFS=`sed 's/-mips.//' $$f`; \
200 echo CPU_KDEFS = $$CPU_KDEFS; \
201 case $$CPU_KDEFS in \
202 *-64*) ${CC} -D_KMEMUSER -woff 1178 \
204 -I${TOP_OBJDIR}/src/config \
207 -c ${srcdir}/kdump.c -o kdump.$$IP.o \
209 *) ${CC} -D_KMEMUSER -woff 1178 \
211 -I${TOP_OBJDIR}/src/config \
213 ${XCFLAGS} -DAFS_32BIT_KERNEL_ENV \
214 -c ${srcdir}/kdump.c -o kdump.$$IP.o \
220 ${CC} -g -I${TOP_INCDIR}/afs -I${TOP_OBJDIR}/src/config -I${TOP_INCDIR} ${XCFLAGS} -c ${srcdir}/kdump.c ;; \
223 kdump64.o : kdump.c ${INCLS} AFS_component_version_number.c
225 case ${SYS_NAME} in \
226 sun4x_5[78] | hp_ux11* |sunx86_5[78] ) \
227 ${CC} -g -I${TOP_INCDIR}/afs -I${TOP_OBJDIR}/src/config -I${TOP_INCDIR} ${XCFLAGS64} -o kdump64.o -c ${srcdir}/kdump.c ;; \
232 case ${SYS_NAME} in \
233 sun4c_51 | sun4c_52 | sun4m_51 | sun4m_52 | sun4c_53 | sun4m_53 | sun4_53 | sun4_54 | sun4c_54 | sun4m_54 | sunx86_5? ) \
234 ${CC} -g -o kdump kdump.o ${TOP_LIBDIR}/libcmd.a ${TOP_LIBDIR}/util.a /usr/lib/libkvm.a -lelf ${XLIBS} ;; \
235 sun4x_5? |sunx86_5? ) \
236 ${CC} -g -o kdump kdump.o ${TOP_LIBDIR}/libcmd.a ${TOP_LIBDIR}/util.a ${XLIBELFA} ${XLIBKVM} ${XLIBS} ;; \
238 for f in ../libafs/STATIC.IP*/CPU_KDEFS; \
239 do IP=`expr "$$f" : '../libafs/STATIC.\(IP..\)'`; \
240 CPU_KDEFS=`sed 's/-mips.//' $$f`; \
242 echo CPU_KDEFS = $$CPU_KDEFS; \
243 case $$CPU_KDEFS in \
244 *-64*) ${CC} ${XCFLAGS64} -g \
246 -o kdump.$$IP kdump.$$IP.o \
247 ${TOP_LIBDIR}/libcmd64.a -lelf \
249 *) ${CC} ${XCFLAGS} -g \
251 -o kdump.$$IP kdump.$$IP.o \
252 ${TOP_LIBDIR}/libcmd.a -lelf \
257 ${CC} -g -o kdump-${LINUX_VERSION} kdump-${LINUX_VERSION}.o ${TOP_LIBDIR}/libcmd.a ${TOP_LIBDIR}/util.a ${XLIBS} ;; \
258 alpha_osf1 | alpha_osf20 | alpha_osf30 | alpha_osf32 | alpha_osf32c | alpha_dux??) \
259 ${CC} -g -o kdump kdump.o ${TOP_LIBDIR}/libcmd.a ${TOP_LIBDIR}/util.a ${XLIBS} -ll -lmld;; \
260 ncrx86_* ) ${CC} -g -o kdump kdump.o ${TOP_LIBDIR}/libcmd.a ${TOP_LIBDIR}/util.a -lelf ${XLIBS} ;; \
261 * ) ${CC} -g -o kdump kdump.o ${TOP_LIBDIR}/libcmd.a ${TOP_LIBDIR}/util.a ${XLIBS} ;; \
264 ## kdump to read from 64 bit kernel dumps
268 case ${SYS_NAME} in \
269 sun4x_5[78] | hp_ux11* |sunx86_5[78] ) \
270 ${CC} -g ${XCFLAGS64} -o kdump64 kdump64.o ${TOP_LIBDIR}/libcmd64.a ${XLIBELFA} ${XLIBKVM} ${XLIBS} ;; \
277 ${DESTDIR}${bindir}/fs \
278 ${DESTDIR}${bindir}/livesys \
279 ${DESTDIR}${afssrvbindir}/fs \
280 ${DESTDIR}${bindir}/up \
281 ${DESTDIR}${sbindir}/fstrace \
282 ${DESTDIR}${bindir}/cmdebug \
283 ${DESTDIR}${sbindir}/kdump \
284 ${DESTDIR}${sbindir}/kdump64
291 $(RM) -f *.o *.a up fs kdump-* kdump kdump64 core cmdebug AFS_component_version_number.c fstrace gcpags
296 include ../config/Makefile.version
298 ${DESTDIR}${bindir}/fs: fs
301 ${DESTDIR}${bindir}/livesys: livesys
304 ${DESTDIR}${afssrvbindir}/fs: fs
307 ${DESTDIR}${bindir}/up: up
310 ${DESTDIR}${sbindir}/fstrace: fstrace
313 ${DESTDIR}${bindir}/cmdebug: cmdebug
316 ${DESTDIR}${sbindir}/kdump: kdump
318 case ${SYS_NAME} in \
320 ${INSTALLex} -f kdump.sh.sgi_ipnos $@; \
321 ln -fs kdump ${DESTDIR}${sbindir}/kdump32; \
322 ln -fs kdump.IP20 ${DESTDIR}${sbindir}/kdump.IP22; \
323 ln -fs kdump.IP20 ${DESTDIR}${sbindir}/kdump.IP32; \
324 for f in kdump.IP??; \
325 do ${INSTALL} -s $$f ${DESTDIR}${sbindir}/$$f || exit $$? ; \
327 sun4x_5[78] |sunx86_5[78] ) \
328 ${INSTALLex} -f kdump.sh.solaris7 $@; \
329 ${INSTALL} -s -f $? ${DESTDIR}${sbindir}/kdump32;; \
331 ${INSTALL} -s kdump-${LINUX_VERSION} ${DESTDIR}${sbindir}/kdump-${LINUX_VERSION} ;; \
333 ${INSTALLex} -f kdump.sh.hp_ux11 $@; \
334 ${INSTALL} -s -f $? ${DESTDIR}${sbindir}/kdump32;; \
336 ${INSTALL} -s $? $@ ;; \
339 ${DESTDIR}${sbindir}/kdump64: kdump64
341 case ${SYS_NAME} in \
342 sun4x_5[78] | hp_ux11* |sunx86_5[78] ) \
343 ${INSTALL} -s $? $@ ;;\
345 echo skipping kdump64 for ${SYS_NAME} ;; \
350 ${DEST}/bin/livesys \
351 ${DEST}/root.server/usr/afs/bin/fs \
353 ${DEST}/etc/fstrace \
354 ${DEST}/bin/cmdebug \