death-to-pinstall-20060801
[openafs.git] / src / venus / Makefile.in
1 # Copyright 2000, International Business Machines Corporation and others.
2 # All Rights Reserved.
3
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
7
8 srcdir=@srcdir@
9 include @TOP_OBJDIR@/src/config/Makefile.config
10
11 INCLS=${TOP_INCDIR}/afs/afsint.h \
12         ${TOP_INCDIR}/afs/cmd.h \
13         ${TOP_INCDIR}/afs/afsutil.h
14
15 FSLIBS=${TOP_LIBDIR}/libsys.a \
16          ${TOP_LIBDIR}/libvldb.a \
17          ${TOP_LIBDIR}/libubik.a \
18          ${TOP_LIBDIR}/vlib.a \
19          ${TOP_LIBDIR}/libauth.a \
20          ${TOP_LIBDIR}/librxkad.a \
21          ${TOP_LIBDIR}/libcom_err.a \
22          ${TOP_LIBDIR}/libcmd.a \
23          ${TOP_LIBDIR}/libkauth.a \
24          ${TOP_LIBDIR}/libdes.a \
25          ${TOP_LIBDIR}/librx.a \
26          ${TOP_LIBDIR}/libsys.a \
27          ${TOP_LIBDIR}/liblwp.a \
28          ${TOP_LIBDIR}/libaudit.a \
29          $(TOP_LIBDIR)/libafsutil.a
30
31 CMLIBS=${TOP_LIBDIR}/libsys.a \
32          ${TOP_LIBDIR}/libafsint.a \
33          ${TOP_LIBDIR}/librxkad.a \
34          ${TOP_LIBDIR}/libauth.a \
35          ${TOP_LIBDIR}/libcom_err.a \
36          ${TOP_LIBDIR}/libcmd.a \
37          ${TOP_LIBDIR}/librx.a \
38          ${TOP_LIBDIR}/libsys.a \
39          ${TOP_LIBDIR}/liblwp.a \
40          $(TOP_LIBDIR)/libafsutil.a
41
42 LIBS = ${FSLIBS} 
43
44 all: fs up fstrace cmdebug livesys kdump-build
45
46 #
47 # Build targets
48 #
49 cacheout: cacheout.o
50         $(CC) ${CFLAGS} -o cacheout cacheout.o ${LIBS} ${XLIBS} ${CMLIBS}
51
52 cacheout.o: cacheout.c
53
54
55 up.o: up.c AFS_component_version_number.c
56
57 up: up.o
58         ${CC} ${CFLAGS} -o up up.o ${LIBS} ${XLIBS}
59
60 fs.o: fs.c ${INCLS} AFS_component_version_number.c
61
62 fs: fs.o $(LIBS)
63         ${CC} ${CFLAGS} -o fs fs.o ${TOP_LIBDIR}/libprot.a $(LIBS) ${XLIBS}
64
65 livesys.o: livesys.c ${INCLS} AFS_component_version_number.c
66
67 livesys: livesys.c $(LIBS)
68         ${CC} ${CFLAGS} -o livesys ${srcdir}/livesys.c $(LIBS) ${XLIBS}
69
70 twiddle: twiddle.c $(LIBS)
71         ${CC} ${CFLAGS} -o twiddle ${srcdir}/twiddle.c $(LIBS) ${XLIBS}
72
73 gcpags: gcpags.c $(LIBS)
74         ${CC} ${CFLAGS} -o gcpags ${srcdir}/gcpags.c $(LIBS) ${XLIBS}
75
76 whatfid.o: whatfid.c ${INCLS} AFS_component_version_number.c
77
78 whatfid: whatfid.o ${LIBS}
79         ${CC} ${CFLAGS} -o whatfid whatfid.o ${LIBS} ${XLIBS}
80
81 fstrace.o: fstrace.c AFS_component_version_number.c
82         case ${SYS_NAME} in \
83                 sun4_411 | sun4c_411 | sun4m_412 ) \
84                         ${CCXPG2} ${DBG} ${OPTMZ} -I${TOP_OBJDIR}/src/config -I${TOP_INCDIR} -I${TOP_INCDIR} -c ${srcdir}/fstrace.c ;; \
85                 sun*_4* ) \
86                         ${CC} ${DBG} ${OPTMZ} -I/usr/xpg2include -I/usr/5include -g -I${TOP_SRCDIR}/config -I${TOP_INCDIR} -I${TOP_INCDIR} -c fstrace.c ;; \
87                 * ) \
88                         ${CC} ${CFLAGS} -I${TOP_OBJDIR}/src/config -I${TOP_INCDIR} -I${TOP_INCDIR} -c ${srcdir}/fstrace.c ;; \
89         esac
90
91 fstrace: fstrace.o
92         case ${SYS_NAME} in \
93                 pmax_ul43 | pmax_ul43a ) \
94                         ${CC} ${CFLAGS} -o fstrace fstrace.o ${TOP_LIBDIR}/libsys.a ${TOP_LIBDIR}/libcmd.a ${TOP_LIBDIR}/util.a /usr/lib/libi.a ;; \
95                 sun4_411 | sun4c_411 | sun4m_412 ) \
96                         ${CCXPG2} ${CFLAGS} -o fstrace fstrace.o ${TOP_LIBDIR}/libsys.a ${TOP_LIBDIR}/libcmd.a ${TOP_LIBDIR}/util.a ;; \
97                 sun*_4* ) \
98                         ${CC} -L/usr/xpg2lib -L/usr/5lib ${CFLAGS} -g -o fstrace fstrace.o ${TOP_LIBDIR}/libsys.a ${TOP_LIBDIR}/libcmd.a ${TOP_LIBDIR}/util.a -lxpg ;; \
99                 hp700_ux100 | hp800_ux100 | hp?00_ux10? | hp_ux10? | hp_ux11?) \
100                         ${CC} -I${TOP_OBJDIR}/src/config  -o fstrace fstrace.o ${TOP_LIBDIR}/libsys.a ${TOP_LIBDIR}/libcmd.a ${TOP_LIBDIR}/util.a ;; \
101                 * ) \
102                         ${CC} ${CFLAGS} -o fstrace fstrace.o ${TOP_LIBDIR}/libsys.a ${TOP_LIBDIR}/libcmd.a ${TOP_LIBDIR}/util.a ;; \
103         esac
104
105 cmdebug.o: cmdebug.c ${INCLS} AFS_component_version_number.c
106
107 cmdebug: cmdebug.o ${CMLIBS}
108         $(CC) -o cmdebug cmdebug.o ${CFLAGS} ${CMLIBS} ${XLIBS}
109
110 dedebug.o: dedebug.c ${INCLS} AFS_component_version_number.c
111
112 dedebug: dedebug.o ${CMLIBS}
113         $(CC) -o dedebug dedebug.o ${CFLAGS} ${CMLIBS} ${XLIBS}
114
115
116
117 #
118 # Kernel info dumper - these are done with submakes so that
119 # the build process does not attempt to rebuild them every time it runs.
120 #
121
122 #
123 # Branching target, run the actual build depending on sysname
124 #
125 kdump-build: kdump.c ${INCLS} AFS_component_version_number.c
126         $(MAKE) kdump kdump64
127         touch kdump-build
128
129 #
130 # Build targets - one for each type of kdump build process we have
131 #
132 kdump: kdump.o
133         -set -x; \
134         case ${SYS_NAME} in \
135         sun4c_51 | sun4c_52 | sun4m_51 | sun4m_52 | sun4c_53 | sun4m_53 | sun4_53 | sun4_54 | sun4c_54 | sun4m_54 | sunx86_5? ) \
136                 ${CC} -o kdump kdump.o ${TOP_LIBDIR}/libcmd.a  ${TOP_LIBDIR}/util.a /usr/lib/libkvm.a -lelf ${XLIBS} ;; \
137         sun*_5? | sun*_5?? ) \
138                 ${CC} -o kdump kdump.o ${TOP_LIBDIR}/libcmd.a  ${TOP_LIBDIR}/util.a  ${XLIBELFA} ${XLIBKVM} ${XLIBS} ;; \
139         sgi_6? ) \
140                 for f in ../libafs/STATIC.IP*/CPU_KDEFS; \
141                 do      IP=`expr "$$f" : '../libafs/STATIC.\(IP..\)'`; \
142                         CPU_KDEFS=`sed 's/-mips.//' $$f`; \
143                         echo IP = $$IP; \
144                         echo CPU_KDEFS = $$CPU_KDEFS; \
145                         case $$CPU_KDEFS in \
146                         *-64*)  ${CC} ${XCFLAGS64} \
147                                         $$CPU_KDEFS \
148                                         -o kdump.$$IP kdump.$$IP.o \
149                                         ${TOP_LIBDIR}/libcmd64.a -lelf \
150                                 ;; \
151                         *)      ${CC} ${XCFLAGS} ${ARCHFLAGS} \
152                                         $$CPU_KDEFS \
153                                         -o kdump.$$IP kdump.$$IP.o \
154                                         ${TOP_LIBDIR}/libcmd.a -lelf \
155                                 ;; \
156                         esac || exit $$? ; \
157                 done ;; \
158         *alpha_linux* ) \
159                 $(MAKE) kdump-alpha_linux-@LINUX_VERSION@ ;; \
160         *linux* ) \
161                 $(MAKE) kdump-linux-@LINUX_VERSION@ ;; \
162         alpha_osf1 | alpha_osf20 |  alpha_osf30 | alpha_osf32 | alpha_osf32c | alpha_dux??) \
163                 ${CC} -o kdump kdump.o ${TOP_LIBDIR}/libcmd.a  ${TOP_LIBDIR}/util.a ${XLIBS} -ll -lmld;; \
164         ncrx86_* ) ${CC} -o kdump kdump.o ${TOP_LIBDIR}/libcmd.a  ${TOP_LIBDIR}/util.a -lelf ${XLIBS} ;; \
165         *nbsd*) touch kdump ;; \
166         * )     ${CC} -o kdump kdump.o ${TOP_LIBDIR}/libcmd.a  ${TOP_LIBDIR}/util.a ${XLIBS} ;; \
167         esac
168
169 kdump64: 
170         -set -x; \
171         case ${SYS_NAME} in \
172         sun4x_5[789] | sun4x_510 | hp_ux11* | sunx86_5[789] | sunx86_510 )  \
173                 $(MAKE) kdump64.o ; \
174                 ${CC} ${XCFLAGS64} -o kdump64 kdump64.o ${TOP_LIBDIR}/libcmd64.a ${XLIBELFA} ${XLIBKVM} ${XLIBS} ;; \
175         esac
176
177
178 kdump.o: kdump.c ${INCLS} AFS_component_version_number.c
179         -set -x; \
180         case ${SYS_NAME} in \
181                 alpha_linux* ) \
182                         $(MAKE) kdump-alpha_linux-${LINUX_VERSION}.o ;; \
183                 *linux* ) \
184                         $(MAKE) kdump-linux-${LINUX_VERSION}.o ;; \
185                 alpha_osf1 | alpha_osf20 |  alpha_osf30 | alpha_osf32 | alpha_osf32c| alpha_dux?? ) \
186                         ${CC} ${CFLAGS} -I/usr/sys/include -I/usr/sys/BINARY -I/usr/sys/AFS -DDEBUGGER -c ${srcdir}/kdump.c ;;\
187                 sgi_6? ) \
188                         for f in ../libafs/STATIC.IP*/CPU_KDEFS; \
189                         do      IP=`expr "$$f" : '../libafs/STATIC.\(IP..\)'`; \
190                                 CPU_KDEFS=`sed 's/-mips.//' $$f`; \
191                                 echo IP = $$IP; \
192                                 echo CPU_KDEFS = $$CPU_KDEFS; \
193                                 case $$CPU_KDEFS in \
194                                 *-64*)  ${CC} -D_KMEMUSER -woff 1178 \
195                                                 ${KERN_DBG} ${KERN_OPTMZ} -I${TOP_INCDIR} \
196                                                 -I${TOP_OBJDIR}/src/config \
197                                                 $$CPU_KDEFS \
198                                                 ${XCFLAGS64} \
199                                                 -c ${srcdir}/kdump.c -o kdump.$$IP.o \
200                                         ;; \
201                                 *)      ${CC} -D_KMEMUSER -woff 1178 \
202                                                 ${KERN_DBG} ${KERN_OPTMZ} -I${TOP_INCDIR} \
203                                                 -I${TOP_OBJDIR}/src/config \
204                                                 $$CPU_KDEFS \
205                                                 ${XCFLAGS} ${ARCHFLAGS} -DAFS_32BIT_KERNEL_ENV \
206                                                 -c ${srcdir}/kdump.c -o kdump.$$IP.o \
207                                         ;; \
208                                 esac || exit $$?; \
209                         done \
210                         ;; \
211                 *nbsd*) \
212                         touch kdump.o ;; \
213                 *) \
214                         ${CC} ${KERN_DBG} ${KERN_OPTMZ} -I${TOP_SRCDIR} -I${TOP_INCDIR}/afs \
215                         -I${TOP_OBJDIR}/src/config -I${TOP_OBJDIR}/src -I${TOP_INCDIR} ${XCFLAGS} ${ARCHFLAGS} \
216                         -o kdump.o -c ${srcdir}/kdump.c ;; \
217         esac ;
218
219 kdump64.o : kdump.c ${INCLS} AFS_component_version_number.c
220         -set -x; \
221         case ${SYS_NAME} in \
222         sun4x_5[789] | sun4x_510 | hp_ux11* | sunx86_5[789] | sunx86_510 ) \
223                 ${CC} ${KERN_DBG} ${KERN_OPTMZ} -I${TOP_SRCDIR} -I${TOP_INCDIR}/afs \
224                 -I${TOP_OBJDIR}/src/config -I${TOP_OBJDIR}/src -I${TOP_INCDIR} ${XCFLAGS64} \
225                 -o kdump64.o -c ${srcdir}/kdump.c ;; \
226         esac
227
228 # *linux* - Builds kdump-X.Y.Z according to kernel version
229 kdump-linux-@LINUX_VERSION@.o: kdump.c ${INCLS} AFS_component_version_number.c
230         ${CC} ${KERN_DBG} ${KERN_OPTMZ} -I${LINUX_KERNEL_PATH}/include -I${TOP_INCDIR}/afs \
231                 -I${TOP_OBJDIR}/src \
232                 -I${TOP_OBJDIR}/src/afs/${MKAFS_OSTYPE} \
233                 -I${TOP_OBJDIR}/src/config -I${TOP_OBJDIR}/src/libafs/afs \
234                 -I${TOP_SRCDIR} -I${TOP_SRCDIR}/afs/${MKAFS_OSTYPE} \
235                 -I${TOP_INCDIR} ${XCFLAGS} ${ARCHFLAGS} -o kdump-linux-${LINUX_VERSION}.o \
236                 -c ${srcdir}/kdump.c
237
238 kdump-linux-@LINUX_VERSION@: kdump-linux-@LINUX_VERSION@.o
239         ${CC} ${KERN_DBG} ${KERN_OPTMZ} -o kdump-linux-${LINUX_VERSION} kdump-linux-${LINUX_VERSION}.o \
240                 ${TOP_LIBDIR}/libcmd.a ${TOP_LIBDIR}/util.a ${XLIBS}
241
242 # *alpha_linux* - Builds kdump-X.Y.Z according to kernel version
243 kdump-alpha_linux-@LINUX_VERSION@.o: kdump.c ${INCLS} AFS_component_version_number.c
244         ${CC} ${KERN_DBG} ${KERN_OPTMZ} -I${LINUX_KERNEL_PATH}/include -I${TOP_INCDIR}/afs \
245                 -I${TOP_OBJDIR}/src \
246                 -I${TOP_OBJDIR}/src/afs/${MKAFS_OSTYPE} \
247                 -I${TOP_OBJDIR}/src/config -I${TOP_OBJDIR}/src/libafs/afs \
248                 -I${TOP_SRCDIR} -I${TOP_SRCDIR}/afs/${MKAFS_OSTYPE} \
249                 -I${TOP_INCDIR} ${XCFLAGS} ${ARCHFLAGS} -mno-fp-regs -ffixed-8 \
250                 -o kdump-alpha_linux-${LINUX_VERSION}.o -c ${srcdir}/kdump.c ;; \
251
252 kdump-alpha_linux-@LINUX_VERSION@: kdump-alpha_linux-@LINUX_VERSION@.o
253         ${CC} ${KERN_DBG} ${KERN_OPTMZ} -o kdump-alpha_linux-${LINUX_VERSION} kdump-alpha_linux-${LINUX_VERSION}.o \
254                 ${TOP_LIBDIR}/libcmd.a ${TOP_LIBDIR}/util.a ${XLIBS}
255
256 #
257 # Install targets
258 #
259 install: kdump-build fs livesys up fstrace cmdebug
260         ${INSTALL} -d ${DESTDIR}${bindir}
261         ${INSTALL} -d ${DESTDIR}${afssrvbindir}
262         ${INSTALL} -d ${DESTDIR}${sbindir}
263         ${INSTALL_PROGRAM} fs ${DESTDIR}${bindir}/fs
264         ${INSTALL_PROGRAM} livesys ${DESTDIR}${bindir}/livesys
265         ${INSTALL_PROGRAM} fs ${DESTDIR}${afssrvbindir}/fs
266         ${INSTALL_PROGRAM} up ${DESTDIR}${bindir}/up
267         ${INSTALL_PROGRAM} fstrace ${DESTDIR}${sbindir}/fstrace
268         ${INSTALL_PROGRAM} cmdebug ${DESTDIR}${bindir}/cmdebug
269         -set -x; \
270         case ${SYS_NAME} in \
271         sgi_6? ) \
272                 ${INSTALL_SCRIPT} kdump.sh.sgi_ipnos ${DESTDIR}${sbindir}/kdump; \
273                 ln -fs kdump ${DESTDIR}${sbindir}/kdump32; \
274                 ln -fs kdump.IP20 ${DESTDIR}${sbindir}/kdump.IP22; \
275                 ln -fs kdump.IP20 ${DESTDIR}${sbindir}/kdump.IP32; \
276                 for f in kdump.IP??; \
277                         do ${INSTALL_PROGRAM} $$f ${DESTDIR}${sbindir}/$$f || exit $$? ; \
278                 done ;; \
279         sun*_5[789] | sun*_510 ) \
280                 ${INSTALL_SCRIPT} kdump.sh.solaris7 ${DESTDIR}${sbindir}/kdump32; \
281                 ${INSTALL_PROGRAM} kdump-build ${DESTDIR}${sbindir}/kdump;; \
282         *linux* ) \
283                 ${INSTALL_SCRIPT} kdump.sh.linux ${DESTDIR}${sbindir}/kdump; \
284                 ${INSTALL_PROGRAM} kdump-build ${DESTDIR}${sbindir}/kdump ;; \
285         hp_ux11* ) \
286                 ${INSTALL_SCRIPT} kdump.sh.hp_ux11 ${DESTDIR}${sbindir}/kdump; \
287                 ${INSTALL_PROGRAM} kdump-build ${DESTDIR}${sbindir}/kdump ;; \
288         *) \
289                 ${INSTALL_PROGRAM} kdump-build ${DESTDIR}${sbindir}/kdump ;; \
290         esac
291         if [ -f kdump64 ]; then \
292                 ${INSTALL_PROGRAM} kdump64 ${DESTDIR}${sbindir}/kdump; \
293         fi
294
295 dest: kdump-build fs livesys up fstrace cmdebug
296         ${INSTALL} -d ${DEST}/bin
297         ${INSTALL} -d ${DEST}/etc
298         ${INSTALL} -d ${DEST}/root.server/usr/afs/bin
299         ${INSTALL_PROGRAM} fs ${DEST}/bin/fs
300         ${INSTALL_PROGRAM} livesys ${DEST}/bin/livesys
301         ${INSTALL_PROGRAM} fs ${DEST}/root.server/usr/afs/bin/fs
302         ${INSTALL_PROGRAM} up ${DEST}/bin/up
303         ${INSTALL_PROGRAM} fstrace ${DEST}/etc/fstrace
304         ${INSTALL_PROGRAM} cmdebug ${DEST}/bin/cmdebug
305         -set -x; \
306         case ${SYS_NAME} in \
307         sgi_6? ) \
308                 ${INSTALL_SCRIPT} ${srcdir}/kdump.sh.sgi_ipnos ${DEST}/etc/kdump; \
309                 ln -fs kdump ${DEST}/etc/kdump32; \
310                 ln -fs kdump.IP20 ${DEST}/etc/kdump.IP22; \
311                 ln -fs kdump.IP20 ${DEST}/etc/kdump.IP32; \
312                 for f in kdump.IP??; \
313                         do ${INSTALL_PROGRAM} $$f ${DEST}/etc/$$f || exit $$? ; \
314                 done ;; \
315         sun*_5[789] | sun*_510 ) \
316                 ${INSTALL_SCRIPT} ${srcdir}/kdump.sh.solaris7 ${DEST}/etc/kdump; \
317                 ${INSTALL_PROGRAM} ${srcdir}/kdump ${DEST}/etc/kdump32;; \
318         *alpha_linux* ) \
319                 ${INSTALL_SCRIPT} ${srcdir}/kdump.sh.linux ${DEST}/etc/kdump; \
320                 ${INSTALL_PROGRAM} kdump-alpha_linux-${LINUX_VERSION} ${DEST}/etc/kdump ;; \
321         *linux* ) \
322                 ${INSTALL_SCRIPT} ${srcdir}/kdump.sh.linux ${DEST}/etc/kdump; \
323                 ${INSTALL_PROGRAM} kdump-linux-${LINUX_VERSION} ${DEST}/etc/kdump-${LINUX_VERSION} ;; \
324         hp_ux11* ) \
325                 ${INSTALL_SCRIPT} ${srcdir}/kdump.sh.hp_ux11 ${DEST}/etc/kdump; \
326                 ${INSTALL_PROGRAM} kdump-build ${DEST}/etc/kdump ;; \
327         *nbsd*) \
328                 ;; \
329         *) \
330                 ${INSTALL_PROGRAM} kdump-build ${DEST}/etc/kdump ;; \
331         esac
332         if [ -f kdump64 ]; then \
333                 ${INSTALL_PROGRAM} kdump64 ${DEST}/etc/kdump; \
334         fi
335
336 #
337 # Misc targets
338 #
339
340 clean:
341         $(RM) -f *.o *.a up fs kdump-* kdump kdump64 core cmdebug AFS_component_version_number.c fstrace gcpags livesys dedebug
342
343 test:
344         cd test; $(MAKE)
345
346 include ../config/Makefile.version