makefiles-cflag-cleanup-20030111
[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 kdump64
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 ${DEST}/bin/fs ${DEST}/root.server/usr/afs/bin/fs: fs
55         ${INSTALL} -s $? $@
56
57 ${DEST}/bin/livesys: livesys
58         ${INSTALL} -s $? $@
59
60 ${DEST}/bin/up: up
61         ${INSTALL} -s $? $@
62
63 ${DEST}/etc/fstrace: fstrace
64         ${INSTALL} -s $? $@
65
66 ${DEST}/bin/cmdebug: cmdebug
67         ${INSTALL} -s $? $@
68
69 ${DEST}/etc/kdump: kdump
70         -set -x; \
71         case ${SYS_NAME} in \
72         sgi_6? ) \
73                 ${INSTALLex} -f ${srcdir}/kdump.sh.sgi_ipnos $@; \
74                 ln -fs kdump ${DEST}/etc/kdump32; \
75                 ln -fs kdump.IP20 ${DEST}/etc/kdump.IP22; \
76                 ln -fs kdump.IP20 ${DEST}/etc/kdump.IP32; \
77                 for f in kdump.IP??; \
78                         do ${INSTALL} -s $$f ${DEST}/etc/$$f || exit $$? ; \
79                 done ;; \
80         sun*_5[789] ) \
81                 ${INSTALLex} -f ${srcdir}/kdump.sh.solaris7 $@; \
82                 ${INSTALL} -s -f $? ${DEST}/etc/kdump32;; \
83         *alpha_linux* ) \
84                 ${INSTALLex} -f ${srcdir}/kdump.sh.linux $@; \
85                 ${INSTALL} -s kdump-alpha_linux-${LINUX_VERSION} ${DEST}/etc/kdump-${LINUX_VERSION} ;; \
86         *linux* ) \
87                 ${INSTALLex} -f ${srcdir}/kdump.sh.linux $@; \
88                 ${INSTALL} -s kdump-linux-${LINUX_VERSION} ${DEST}/etc/kdump-${LINUX_VERSION} ;; \
89         hp_ux11* ) \
90                 ${INSTALLex} -f ${srcdir}/kdump.sh.hp_ux11 $@; \
91                 ${INSTALL} -s -f $? ${DEST}/etc/kdump32;; \
92         *nbsd*) \
93                 ;; \
94         *) \
95                 ${INSTALL} -s $? $@ ;; \
96         esac
97
98 ${DEST}/etc/kdump64: kdump64
99         -set -x; \
100         case ${SYS_NAME} in \
101         sun4x_5[789] | hp_ux11* |sunx86_5[789] ) \
102                 ${INSTALL} -s $? $@ ;;\
103         * ) \
104                 echo skipping kdump64 for ${SYS_NAME} ;; \
105         esac
106
107
108 up.o: up.c AFS_component_version_number.c
109
110 up: up.o
111         ${CC} ${CFLAGS} -o up up.o ${LIBS} ${XLIBS}
112
113 fs.o: fs.c ${INCLS} AFS_component_version_number.c
114
115 fs: fs.o $(LIBS)
116         ${CC} ${CFLAGS} -o fs fs.o ${TOP_LIBDIR}/libprot.a $(LIBS) ${XLIBS}
117
118 livesys.o: livesys.c ${INCLS} AFS_component_version_number.c
119
120 livesys: livesys.c $(LIBS)
121         ${CC} ${CFLAGS} -o livesys ${srcdir}/livesys.c $(LIBS) ${XLIBS}
122
123 twiddle: twiddle.c $(LIBS)
124         ${CC} ${CFLAGS} -o twiddle ${srcdir}/twiddle.c $(LIBS) ${XLIBS}
125
126 gcpags: gcpags.c $(LIBS)
127         ${CC} ${CFLAGS} -o gcpags ${srcdir}/gcpags.c $(LIBS) ${XLIBS}
128
129 whatfid.o: whatfid.c ${INCLS} AFS_component_version_number.c
130
131 whatfid: whatfid.o ${LIBS}
132         ${CC} ${CFLAGS} -o whatfid whatfid.o ${LIBS} ${XLIBS}
133
134 fstrace.o: fstrace.c AFS_component_version_number.c
135         case ${SYS_NAME} in \
136                 sun4_411 | sun4c_411 | sun4m_412 ) \
137                         ${CCXPG2} ${DBG} ${OPTMZ} -I${TOP_OBJDIR}/src/config -I${TOP_INCDIR} -I${TOP_INCDIR} -c ${srcdir}/fstrace.c ;; \
138                 sun*_4* ) \
139                         ${CC} ${DBG} ${OPTMZ} -I/usr/xpg2include -I/usr/5include -g -I${TOP_SRCDIR}/config -I${TOP_INCDIR} -I${TOP_INCDIR} -c fstrace.c ;; \
140                 * ) \
141                         ${CC} ${CFLAGS} -I${TOP_OBJDIR}/src/config -I${TOP_INCDIR} -I${TOP_INCDIR} -c ${srcdir}/fstrace.c ;; \
142         esac
143
144 fstrace: fstrace.o
145         case ${SYS_NAME} in \
146                 pmax_ul43 | pmax_ul43a ) \
147                         ${CC} ${CFLAGS} -o fstrace fstrace.o ${TOP_LIBDIR}/libsys.a ${TOP_LIBDIR}/libcmd.a ${TOP_LIBDIR}/util.a /usr/lib/libi.a ;; \
148                 sun4_411 | sun4c_411 | sun4m_412 ) \
149                         ${CCXPG2} ${CFLAGS} -o fstrace fstrace.o ${TOP_LIBDIR}/libsys.a ${TOP_LIBDIR}/libcmd.a ${TOP_LIBDIR}/util.a ;; \
150                 sun*_4* ) \
151                         ${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 ;; \
152                 hp700_ux100 | hp800_ux100 | hp?00_ux10? | hp_ux10? | hp_ux11?) \
153                         ${CC} -I${TOP_OBJDIR}/src/config  -o fstrace fstrace.o ${TOP_LIBDIR}/libsys.a ${TOP_LIBDIR}/libcmd.a ${TOP_LIBDIR}/util.a ;; \
154                 * ) \
155                         ${CC} ${CFLAGS} -o fstrace fstrace.o ${TOP_LIBDIR}/libsys.a ${TOP_LIBDIR}/libcmd.a ${TOP_LIBDIR}/util.a ;; \
156         esac
157
158 cmdebug.o: cmdebug.c ${INCLS} AFS_component_version_number.c
159
160 cmdebug: cmdebug.o ${CMLIBS}
161         $(CC) -o cmdebug cmdebug.o ${CFLAGS} ${CMLIBS} ${XLIBS}
162
163 #
164 # Kernel info dumper - these are done with submakes so that
165 # the build process does not attempt to rebuild them every time it runs.
166 #
167
168 # *linux* - Builds kdump-X.Y.Z according to kernel version
169 kdump-linux-@LINUX_VERSION@.o: kdump.c ${INCLS} AFS_component_version_number.c
170         ${CC} ${KERN_DBG} ${KERN_OPTMZ} -I${LINUX_KERNEL_PATH}/include -I${TOP_INCDIR}/afs \
171                 -I${TOP_OBJDIR}/src \
172                 -I${TOP_OBJDIR}/src/afs/${MKAFS_OSTYPE} \
173                 -I${TOP_OBJDIR}/src/config -I${TOP_OBJDIR}/src/libafs/afs \
174                 -I${TOP_SRCDIR} -I${TOP_SRCDIR}/afs/${MKAFS_OSTYPE} \
175                 -I${TOP_INCDIR} ${XCFLAGS} -o kdump-linux-${LINUX_VERSION}.o \
176                 -c ${srcdir}/kdump.c
177
178 kdump-linux-@LINUX_VERSION@: kdump-linux-@LINUX_VERSION@.o
179         ${CC} ${KERN_DBG} ${KERN_OPTMZ} -o kdump-linux-${LINUX_VERSION} kdump-linux-${LINUX_VERSION}.o \
180                 ${TOP_LIBDIR}/libcmd.a ${TOP_LIBDIR}/util.a ${XLIBS}
181
182 # *alpha_linux* - Builds kdump-X.Y.Z according to kernel version
183 kdump-alpha_linux-@LINUX_VERSION@.o: kdump.c ${INCLS} AFS_component_version_number.c
184         ${CC} ${KERN_DBG} ${KERN_OPTMZ} -I${LINUX_KERNEL_PATH}/include -I${TOP_INCDIR}/afs \
185                 -I${TOP_OBJDIR}/src \
186                 -I${TOP_OBJDIR}/src/afs/${MKAFS_OSTYPE} \
187                 -I${TOP_OBJDIR}/src/config -I${TOP_OBJDIR}/src/libafs/afs \
188                 -I${TOP_SRCDIR} -I${TOP_SRCDIR}/afs/${MKAFS_OSTYPE} \
189                 -I${TOP_INCDIR} ${XCFLAGS} -mno-fp-regs -ffixed-8 \
190                 -o kdump-alpha_linux-${LINUX_VERSION}.o -c ${srcdir}/kdump.c ;; \
191
192 kdump-alpha_linux-@LINUX_VERSION@: kdump-alpha_linux-@LINUX_VERSION@.o
193         ${CC} ${KERN_DBG} ${KERN_OPTMZ} -o kdump-alpha_linux-${LINUX_VERSION} kdump-alpha_linux-${LINUX_VERSION}.o \
194                 ${TOP_LIBDIR}/libcmd.a ${TOP_LIBDIR}/util.a ${XLIBS}
195
196 #
197 # Default target
198 #
199 kdump.o: kdump.c ${INCLS} AFS_component_version_number.c
200         -set -x; \
201         case ${SYS_NAME} in \
202                 alpha_linux* ) \
203                         $(MAKE) kdump-alpha_linux-${LINUX_VERSION}.o ;; \
204                 *linux* ) \
205                         $(MAKE) kdump-linux-${LINUX_VERSION}.o ;; \
206                 alpha_osf1 | alpha_osf20 |  alpha_osf30 | alpha_osf32 | alpha_osf32c| alpha_dux?? ) \
207                         ${CC} ${CFLAGS} -I/usr/sys/include -I/usr/sys/BINARY -I/usr/sys/AFS -DDEBUGGER -c ${srcdir}/kdump.c ;;\
208                 sgi_6? ) \
209                         for f in ../libafs/STATIC.IP*/CPU_KDEFS; \
210                         do      IP=`expr "$$f" : '../libafs/STATIC.\(IP..\)'`; \
211                                 CPU_KDEFS=`sed 's/-mips.//' $$f`; \
212                                 echo IP = $$IP; \
213                                 echo CPU_KDEFS = $$CPU_KDEFS; \
214                                 case $$CPU_KDEFS in \
215                                 *-64*)  ${CC} -D_KMEMUSER -woff 1178 \
216                                                 ${KERN_DBG} ${KERN_OPTMZ} -I${TOP_INCDIR} \
217                                                 -I${TOP_OBJDIR}/src/config \
218                                                 $$CPU_KDEFS \
219                                                 ${XCFLAGS64} \
220                                                 -c ${srcdir}/kdump.c -o kdump.$$IP.o \
221                                         ;; \
222                                 *)      ${CC} -D_KMEMUSER -woff 1178 \
223                                                 ${KERN_DBG} ${KERN_OPTMZ} -I${TOP_INCDIR} \
224                                                 -I${TOP_OBJDIR}/src/config \
225                                                 $$CPU_KDEFS \
226                                                 ${XCFLAGS} -DAFS_32BIT_KERNEL_ENV \
227                                                 -c ${srcdir}/kdump.c -o kdump.$$IP.o \
228                                         ;; \
229                                 esac || exit $$?; \
230                         done \
231                         ;; \
232                 *nbsd*) \
233                         touch kdump.o ;; \
234                 *) \
235                         ${CC} ${KERN_DBG} ${KERN_OPTMZ} -I${TOP_INCDIR}/afs -I${TOP_OBJDIR}/src/config -I${TOP_INCDIR} ${XCFLAGS} -c ${srcdir}/kdump.c ;; \
236         esac ;
237
238 kdump64.o : kdump.c ${INCLS} AFS_component_version_number.c
239         -set -x; \
240         case ${SYS_NAME} in \
241         sun4x_5[789] | hp_ux11* |sunx86_5[789] ) \
242                 ${CC} ${KERN_DBG} ${KERN_OPTMZ} -I${TOP_INCDIR}/afs -I${TOP_OBJDIR}/src/config -I${TOP_INCDIR} ${XCFLAGS64} -o kdump64.o -c ${srcdir}/kdump.c ;; \
243         esac
244
245 kdump:  kdump.o
246         -set -x; \
247         case ${SYS_NAME} in \
248         sun4c_51 | sun4c_52 | sun4m_51 | sun4m_52 | sun4c_53 | sun4m_53 | sun4_53 | sun4_54 | sun4c_54 | sun4m_54 | sunx86_5? ) \
249                 ${CC} -o kdump kdump.o ${TOP_LIBDIR}/libcmd.a  ${TOP_LIBDIR}/util.a /usr/lib/libkvm.a -lelf ${XLIBS} ;; \
250         sun*_5? ) \
251                 ${CC} -o kdump kdump.o ${TOP_LIBDIR}/libcmd.a  ${TOP_LIBDIR}/util.a  ${XLIBELFA} ${XLIBKVM} ${XLIBS} ;; \
252         sgi_6? ) \
253                 for f in ../libafs/STATIC.IP*/CPU_KDEFS; \
254                 do      IP=`expr "$$f" : '../libafs/STATIC.\(IP..\)'`; \
255                         CPU_KDEFS=`sed 's/-mips.//' $$f`; \
256                         echo IP = $$IP; \
257                         echo CPU_KDEFS = $$CPU_KDEFS; \
258                         case $$CPU_KDEFS in \
259                         *-64*)  ${CC} ${XCFLAGS64} \
260                                         $$CPU_KDEFS \
261                                         -o kdump.$$IP kdump.$$IP.o \
262                                         ${TOP_LIBDIR}/libcmd64.a -lelf \
263                                 ;; \
264                         *)      ${CC} ${XCFLAGS} \
265                                         $$CPU_KDEFS \
266                                         -o kdump.$$IP kdump.$$IP.o \
267                                         ${TOP_LIBDIR}/libcmd.a -lelf \
268                                 ;; \
269                         esac || exit $$? ; \
270                 done ;; \
271         *alpha_linux* ) \
272                 $(MAKE) kdump-alpha_linux-@LINUX_VERSION@ ;; \
273         *linux* ) \
274                 $(MAKE) kdump-linux-@LINUX_VERSION@ ;; \
275         alpha_osf1 | alpha_osf20 |  alpha_osf30 | alpha_osf32 | alpha_osf32c | alpha_dux??) \
276                 ${CC} -o kdump kdump.o ${TOP_LIBDIR}/libcmd.a  ${TOP_LIBDIR}/util.a ${XLIBS} -ll -lmld;; \
277         ncrx86_* ) ${CC} -o kdump kdump.o ${TOP_LIBDIR}/libcmd.a  ${TOP_LIBDIR}/util.a -lelf ${XLIBS} ;; \
278         *nbsd*) touch kdump ;; \
279         * )     ${CC} -o kdump kdump.o ${TOP_LIBDIR}/libcmd.a  ${TOP_LIBDIR}/util.a ${XLIBS} ;; \
280         esac
281
282 ## kdump to read from 64 bit kernel dumps
283
284 kdump64 : kdump64.o
285         -set -x; \
286         case ${SYS_NAME} in \
287         sun4x_5[789] | hp_ux11* |sunx86_5[789] )  \
288                 ${CC} ${XCFLAGS64} -o kdump64 kdump64.o ${TOP_LIBDIR}/libcmd64.a ${XLIBELFA} ${XLIBKVM} ${XLIBS} ;; \
289         esac
290
291 #
292 # Install targets
293 #
294 install: \
295         ${DESTDIR}${bindir}/fs \
296         ${DESTDIR}${bindir}/livesys \
297         ${DESTDIR}${afssrvbindir}/fs \
298         ${DESTDIR}${bindir}/up \
299         ${DESTDIR}${sbindir}/fstrace \
300         ${DESTDIR}${bindir}/cmdebug \
301         ${DESTDIR}${sbindir}/kdump \
302         ${DESTDIR}${sbindir}/kdump64
303
304 #
305 # Misc targets
306 #
307
308 clean:
309         $(RM) -f *.o *.a up fs kdump-* kdump kdump64 core cmdebug AFS_component_version_number.c fstrace gcpags
310
311 test:
312         cd test; $(MAKE)
313
314 include ../config/Makefile.version
315
316 ${DESTDIR}${bindir}/fs: fs
317         ${INSTALL} -s $? $@
318
319 ${DESTDIR}${bindir}/livesys: livesys
320         ${INSTALL} -s $? $@
321
322 ${DESTDIR}${afssrvbindir}/fs: fs
323         ${INSTALL} -s $? $@
324
325 ${DESTDIR}${bindir}/up: up
326         ${INSTALL} -s $? $@
327
328 ${DESTDIR}${sbindir}/fstrace: fstrace
329         ${INSTALL} -s $? $@
330
331 ${DESTDIR}${bindir}/cmdebug: cmdebug
332         ${INSTALL} -s $? $@
333
334 ${DESTDIR}${sbindir}/kdump: kdump
335         -set -x; \
336         case ${SYS_NAME} in \
337         sgi_6? ) \
338                 ${INSTALLex} -f kdump.sh.sgi_ipnos $@; \
339                 ln -fs kdump ${DESTDIR}${sbindir}/kdump32; \
340                 ln -fs kdump.IP20 ${DESTDIR}${sbindir}/kdump.IP22; \
341                 ln -fs kdump.IP20 ${DESTDIR}${sbindir}/kdump.IP32; \
342                 for f in kdump.IP??; \
343                         do ${INSTALL} -s $$f ${DESTDIR}${sbindir}/$$f || exit $$? ; \
344                 done ;; \
345         sun*_5[789] ) \
346                 ${INSTALLex} -f kdump.sh.solaris7 $@; \
347                 ${INSTALL} -s -f $? ${DESTDIR}${sbindir}/kdump32;; \
348         *linux* ) \
349                 ${INSTALL} -s kdump-${LINUX_VERSION} ${DESTDIR}${sbindir}/kdump-${LINUX_VERSION} ;; \
350         hp_ux11* ) \
351                 ${INSTALLex} -f kdump.sh.hp_ux11 $@; \
352                 ${INSTALL} -s -f $? ${DESTDIR}${sbindir}/kdump32;; \
353         *) \
354                 ${INSTALL} -s $? $@ ;; \
355         esac
356
357 ${DESTDIR}${sbindir}/kdump64: kdump64
358         -set -x; \
359         case ${SYS_NAME} in \
360         sun4x_5[789] | hp_ux11* ) \
361                 ${INSTALL} -s $? $@ ;;\
362         * ) \
363                 echo skipping kdump64 for ${SYS_NAME} ;; \
364         esac
365
366 dest: \
367         ${DEST}/bin/fs \
368         ${DEST}/bin/livesys \
369         ${DEST}/root.server/usr/afs/bin/fs \
370         ${DEST}/bin/up \
371         ${DEST}/etc/fstrace \
372         ${DEST}/bin/cmdebug \
373         ${DEST}/etc/kdump \
374         ${DEST}/etc/kdump64
375