cfb3324112ba5f2e5fd10cda24f99e6ecde8634f
[openafs.git] / src / bozo / 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 include @TOP_OBJDIR@/src/config/Makefile.lwp
11
12
13 RPCINCLS=${TOP_INCDIR}/lwp.h ${TOP_INCDIR}/rx/rx.h bosint.h
14
15 INCLS=bnode.h \
16         ${RPCINCLS} \
17         ${TOP_INCDIR}/afs/auth.h \
18         ${TOP_INCDIR}/afs/keys.h \
19         ${TOP_INCDIR}/afs/cellconfig.h \
20         ${TOP_INCDIR}/afs/cmd.h \
21         ${TOP_INCDIR}/afs/ktime.h
22
23 # EH 12/18/90 - have to search librx.a twice on Ultrix 4.0
24 LIBS=   ${TOP_LIBDIR}/librx.a \
25         ${TOP_LIBDIR}/liblwp.a \
26         ${TOP_LIBDIR}/libcmd.a \
27         ${TOP_LIBDIR}/libkauth.a \
28         ${TOP_LIBDIR}/libvolser.a \
29         ${TOP_LIBDIR}/libvldb.a \
30         ${TOP_LIBDIR}/libauth.a \
31         ${TOP_LIBDIR}/librxstat.a \
32         ${TOP_LIBDIR}/librxkad.a \
33         ${TOP_LIBDIR}/libubik.a \
34         ${TOP_LIBDIR}/librx.a \
35         ${TOP_LIBDIR}/liblwp.a \
36         ${TOP_LIBDIR}/libafscom_err.a \
37         ${TOP_LIBDIR}/libaudit.a \
38         ${TOP_LIBDIR}/util.a \
39         ${TOP_LIBDIR}/libopr.a \
40         ${TOP_LIBDIR}/libsys.a \
41         ${TOP_LIBDIR}/libprocmgmt.a \
42         ${TOP_LIBDIR}/libafsrfc3961.a \
43         ${TOP_LIBDIR}/libafshcrypto_lwp.a
44
45 OBJS=bosserver.o bnode.o ezbnodeops.o fsbnodeops.o bosint.ss.o bosint.xdr.o \
46 bosoprocs.o cronbnodeops.o
47
48 all: bosserver ${TOP_INCDIR}/afs/bosint.h bos ${TOP_LIBDIR}/libbos.a bos_util \
49     smail-notifier
50
51 generated: bosint.ss.c bosint.xdr.c bosint.cs.c bosint.h bnode.h boserr.c
52
53 ${TOP_INCDIR}/afs/bosint.h: bosint.h
54         ${INSTALL_DATA} $? $@
55
56 ${TOP_INCDIR}/afs/bnode.h: bnode.h
57         ${INSTALL_DATA} $? $@
58
59 ${TOP_LIBDIR}/libbos.a: libbos.a
60         ${INSTALL_DATA} $? $@
61
62 $(OBJS) bosint.xdr.o bosint.cs.o boserr.o: $(INCLS)
63
64 bosint.ss.o: bosint.ss.c ${RPCINCLS}
65 bosint.xdr.o: bosint.xdr.c ${RPCINCLS}
66 bosint.cs.o: bosint.cs.c ${RPCINCLS}
67
68 bosint.cs.c: bosint.xg
69         ${RXGEN} -x -A -C -o $@ ${srcdir}/bosint.xg
70
71 bosint.ss.c: bosint.xg
72         ${RXGEN} -x -A -S -o $@ ${srcdir}/bosint.xg
73
74 bosint.xdr.c: bosint.xg
75         ${RXGEN} -x -A -c -o $@ ${srcdir}/bosint.xg
76
77 bosint.h: bosint.xg
78         ${RXGEN} -x -A -h -o $@ ${srcdir}/bosint.xg
79
80 bosint.cs.c: bosint.h
81 bosint.ss.c: bosint.h
82 bosint.xdr.c: bosint.h
83
84 boserr.c: boserr.et
85         ${COMPILE_ET_C} -p ${srcdir} boserr
86
87 bnode.h: bnode.p.h boserr.et
88         ${COMPILE_ET_H} -p ${srcdir} boserr -h bnode
89
90 bnode.o: bnode.h
91 bos.o: bnode.h
92 bosoprocs.o: bnode.h
93 bosserver.o: bnode.h
94 cronbnodeops.o: bnode.h
95 ezbnodeops.o: bnode.h
96 fsbnodeops.o: bnode.h
97
98 bosserver.o: bosserver.c ${INCLS} AFS_component_version_number.o
99
100 cronbnodeops.o: cronbnodeops.c ${INCLS}
101
102 bnode.o: bnode.c ${INCLS}
103
104 bosoprocs.o: bosoprocs.c ${INCLS}
105
106 bos.o: bos.c ${INCLS} AFS_component_version_number.o
107
108 bos: bos.o $(LIBS) libbos.a
109         $(AFS_LDRULE) bos.o libbos.a $(LIBS) $(LIB_roken) $(LIB_crypt) ${XLIBS}
110
111 bos_util.o: bos_util.c ${INCLS} AFS_component_version_number.o ${TOP_INCDIR}/afs/bnode.h
112
113 bos_util: bos_util.o  $(LIBS)
114         $(AFS_LDRULE) bos_util.o $(LIBS) $(LIB_roken) $(LIB_crypt) ${XLIBS}
115
116 ezbnodeops.o: ezbnodeops.c ${INCLS}
117
118 fsbnodeops.o: fsbnodeops.c ${INCLS}
119
120 libbos.a: bosint.xdr.o bosint.cs.o boserr.o AFS_component_version_number.o
121         -$(RM) -f $@
122         $(AR) crv $@ bosint.xdr.o bosint.cs.o boserr.o AFS_component_version_number.o
123         $(RANLIB) $@
124
125 bosserver: $(OBJS) $(LIBS)
126         $(AFS_LDRULE) $(OBJS) \
127                 $(LIBS) $(LIB_roken) $(LIB_crypt) ${XLIBS}
128
129 smail-notifier.o: smail-notifier.c ${INCLS}
130
131 smail-notifier: smail-notifier.o $(LIBS)
132         $(AFS_LDRULE) smail-notifier.o $(LIBS) $(LIB_roken) ${XLIBS}
133
134 #
135 # Install targets
136 #
137 install: bosserver bos bos_util libbos.a bosint.h bnode.h
138         ${INSTALL} -d ${DESTDIR}${afssrvbindir}
139         ${INSTALL} -d ${DESTDIR}${afssrvsbindir}
140         ${INSTALL} -d ${DESTDIR}${bindir}
141         ${INSTALL} -d ${DESTDIR}${includedir}/afs
142         ${INSTALL} -d ${DESTDIR}${libdir}/afs
143         ${INSTALL_PROGRAM} bosserver ${DESTDIR}${afssrvsbindir}/bosserver
144         ${INSTALL_DATA} bosint.h ${DESTDIR}${includedir}/afs/bosint.h
145         ${INSTALL_PROGRAM} bos ${DESTDIR}${bindir}/bos
146         ${INSTALL_PROGRAM} bos ${DESTDIR}${afssrvbindir}/bos
147         ${INSTALL_PROGRAM} bos_util ${DESTDIR}${afssrvsbindir}/bos_util
148         ${INSTALL_DATA} libbos.a ${DESTDIR}${libdir}/afs/libbos.a
149         ${INSTALL_DATA} bnode.h ${DESTDIR}${includedir}/afs/bnode.h
150
151 dest: bosserver bos bos_util libbos.a bosint.h bnode.h
152         ${INSTALL} -d ${DEST}/bin
153         ${INSTALL} -d ${DEST}/include/afs
154         ${INSTALL} -d ${DEST}/lib/afs
155         ${INSTALL} -d ${DEST}/root.server/usr/afs/bin
156         ${INSTALL_PROGRAM} bosserver ${DEST}/root.server/usr/afs/bin/bosserver
157         ${INSTALL_DATA} bosint.h ${DEST}/include/afs/bosint.h
158         ${INSTALL_PROGRAM} bos ${DEST}/bin/bos
159         ${INSTALL_PROGRAM} bos ${DEST}/root.server/usr/afs/bin/bos
160         ${INSTALL_PROGRAM} bos_util ${DEST}/root.server/usr/afs/bin/bos_util
161         ${INSTALL_DATA} libbos.a ${DEST}/lib/afs/libbos.a
162         ${INSTALL_DATA} bnode.h ${DEST}/include/afs/bnode.h
163
164 #
165 # Misc. targets
166 #
167 clean:
168         $(RM) -f  *.a *.o bos bosserver smail-notifier bos_util \
169                 bosint.cs.c bosint.ss.c bosint.xdr.c bosint.h \
170                 core boserr.c bnode.h AFS_component_version_number.c
171
172 .PHONY: test
173 test:
174         cd test && $(MAKE)
175
176 include ../config/Makefile.version
177