initial-darwin-support-20010327
[openafs.git] / src / kauth / Makefile
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 # */
9
10
11 SHELL = /bin/sh
12 COMPONENT=kauth
13 include ../config/Makefile.${SYS_NAME}
14
15 UKERNELDIR = ../libuafs/
16 COMPILE_ET = ${SRCDIR}bin/compile_et
17 MKDIR_IF_NEEDED=[ -d $$1 ] || mkdir -p $$1
18
19 CFLAGS = ${OPTMZ} -I${SRCDIR}include ${XCFLAGS}
20 LDFLAGS = ${OPTMZ} ${XLDFLAGS}
21 PE = ../permit_xprt.h
22 INCLS=${SRCDIR}include/ubik.h \
23              ${SRCDIR}include/lwp.h \
24              ${SRCDIR}include/lock.h  \
25              ${SRCDIR}include/rx/rx.h \
26              ${SRCDIR}include/rx/xdr.h \
27              ${SRCDIR}include/rx/rxkad.h \
28              ${SRCDIR}include/afs/com_err.h \
29         kaserver.h kauth.h kautils.h 
30 deslib=${SRCDIR}lib/libdes.a
31 rxkadlib=${SRCDIR}lib/librxkad.a
32 authlib=${SRCDIR}lib/afs/libauth.a
33 cmdlib=${SRCDIR}lib/afs/libcmd.a
34 utilib=${SRCDIR}lib/afs/util.a
35 auditlib=${SRCDIR}lib/afs/libaudit.a
36
37 LIBS =  ${SRCDIR}lib/libubik.a \
38         ${SRCDIR}lib/afs/libprot.a \
39         ${authlib} \
40         ${rxkadlib} \
41         ${SRCDIR}lib/afs/libsys.a \
42         ${SRCDIR}lib/librxstat.a \
43         ${SRCDIR}lib/librx.a \
44         ${SRCDIR}lib/afs/libsys.a  \
45         ${SRCDIR}lib/liblwp.a \
46         ${deslib} \
47         ${cmdlib} \
48         ${SRCDIR}lib/afs/libcom_err.a \
49         ${utilib} \
50         $(DBM)
51
52 UKSRCS=authclient.c user.c kautils.h kaserver.h kaaux.c token.c \
53        kalocalcell.c client.c kaerrors.c
54
55 KLIBS = ${SRCDIR}lib/libubik.a ${SRCDIR}lib/afs/libprot.a \
56        ${SRCDIR}lib/afs/libauth.krb.a ${rxkadlib} ${SRCDIR}lib/afs/libsys.a ${SRCDIR}lib/librx.a \
57        ${SRCDIR}lib/afs/libsys.a  \
58        ${SRCDIR}lib/liblwp.a ${deslib} ${cmdlib} \
59        ${SRCDIR}lib/afs/libcom_err.a ${utilib}
60
61 OBJS=kauth.xdr.o kauth.cs.o kaaux.o client.o authclient.o token.o kautils.o kalocalcell.o kaerrors.o user.o krb_tf.o 
62 KOBJS=kauth.xdr.o kauth.cs.o kaaux.o client.o authclient.o token.o kautils.o kalocalcell.o kaerrors.o user.krb.o krb_tf.o
63
64 include ../config/Makefile.version
65
66 noversion: install
67
68 all: knfs kaserver kas klog klog.krb kpasswd klogin klogin.krb rebuild kdb kpwvalid
69
70 test tests: install
71         cd test; $(MAKE)
72
73 clean:
74         rm -f *.o kaserver kas klog multiklog kpasswd klogin rebuild kauth.cs.c kauth.ss.c kauth.xdr.c kauth.h kautils.h kaerrors.c *.a core kpwvalid AFS_component_version_number.c
75
76 kaserver: kautils.o kalocalcell.o kadatabase.o kaprocs.o kalog.o kauth.ss.o kauth.xdr.o kaserver.o kaaux.o krb_udp.o kaauxdb.o $(LIBS) ${auditlib}
77         ${CC} ${LDFLAGS} -o kaserver kaserver.o kautils.o kalocalcell.o kadatabase.o krb_udp.o kaprocs.o kalog.o kauth.ss.o kauth.xdr.o kaaux.o kaauxdb.o $(LIBS) ${XLIBS} ${auditlib}
78
79 kaserver.o: kaserver.c ${INCLS} AFS_component_version_number.o
80
81 kautils.o: kautils.c ${INCLS}
82
83 kalocalcell.o: kalocalcell.c ${INCLS}
84
85 kadatabase.o: kadatabase.c ${INCLS}
86         ${CC} ${CFLAGS} -c kadatabase.c -DSPECIAL=1
87
88 xkaprocs: kaprocs.c ${INCLS}
89         ${CC} ${CFLAGS} -c kaprocs.c -DAUTOCPWINTERVAL=30 -DAUTOCPWUPDATES=3
90
91 # Installations using Auth2 conversion server should specify the GETPASSWORD
92 # flag.  This also means logins to machines running this server must be
93 # tightly controlled.
94 #       ${CC} ${CFLAGS} -c kaprocs.c -DSPECIAL=1 -DGETPASSWORD
95
96 kaprocs.o: kaprocs.c ${INCLS} ${PE} kaport.h
97         ${CC} ${CFLAGS} -c kaprocs.c -DSPECIAL=1
98
99 authclient.o: authclient.c ${INCLS} ${PE}
100
101
102 #authserver.o: authserver.c ${INCLS}
103
104 kaerrors.o: kaerrors.c
105
106 kaerrors.c kautils.h: kaerrors.et kautils.p.h
107         rm -f kautils.h kaerrors.c; ${COMPILE_ET} kaerrors -h kautils
108
109 kauth.ss.o: kauth.ss.c
110 kauth.cs.o: kauth.cs.c
111 kauth.xdr.o: kauth.xdr.c kauth.h
112
113 kauth.ss.c kauth.cs.c kauth.xdr.c kauth.h: kauth.rg
114         ${SRCDIR}bin/rxgen -x kauth.rg
115
116 Kkauth.cs.c: kauth.rg Kkauth.h
117         ${SRCDIR}bin/rxgen -x -k -C -o Kkauth.cs.c kauth.rg
118
119 Kkauth.xdr.c: kauth.rg
120         ${SRCDIR}bin/rxgen -x -k -c -o Kkauth.xdr.c kauth.rg
121
122 Kkauth.h: kauth.rg
123         ${SRCDIR}bin/rxgen -x -k -h -o Kkauth.h kauth.rg
124
125 libkauth.a: $(OBJS) AFS_component_version_number.o
126         -rm -f libkauth.a
127         ar rv libkauth.a $(OBJS) AFS_component_version_number.o
128         $(RANLIB) libkauth.a
129
130
131 libkauth.krb.a: $(KOBJS) AFS_component_version_number.o
132         -rm -f libkauth.krb.a
133         ar rv libkauth.krb.a $(KOBJS) AFS_component_version_number.o
134         $(RANLIB) libkauth.krb.a
135
136
137 read_passwd.o: read_passwd.c
138         echo These changes to read_password.c need to be mailed to the Kerberos people; ${CC} ${CFLAGS} -c read_passwd.c
139
140 token.o: token.c ${INCLS}
141
142 client.o: client.c ${INCLS} AFS_component_version_number.o
143
144 kas.o: kas.c ${INCLS} AFS_component_version_number.o
145
146 admin_tools.o: admin_tools.c ${INCLS} kaport.h
147
148 kkids.o: kkids.c ${INCLS}
149
150 krb_tf.o: krb_tf.c ${INCLS}
151
152 kas: kauth.h kautils.h admin_tools.o libkauth.a $(LIBS) kas.o kkids.o
153         ${CC} ${LDFLAGS} -o kas kas.o admin_tools.o kkids.o libkauth.a \
154                         ${LIBS} ${XLIBS}
155
156 klog: AFS_component_version_number.o kauth.h kautils.h libkauth.a $(LIBS) \
157         klog.o
158         ${CC} ${LDFLAGS} -o klog klog.o libkauth.a ${LIBS} ${XLIBS}
159
160 klog.o: klog.c kauth.h kautils.h AFS_component_version_number.o
161
162 klog.krb: kauth.h kautils.h libkauth.krb.a $(KLIBS) klog.o
163         ${CC} ${LDFLAGS} -o klog.krb klog.o libkauth.krb.a ${KLIBS} ${XLIBS}
164
165 knfs: kauth.h kautils.h libkauth.a $(LIBS) knfs.o
166         ${CC} ${LDFLAGS} -o knfs knfs.o libkauth.a ${LIBS} ${XLIBS}
167 knfs.o: knfs.c AFS_component_version_number.o
168
169 klogin.o: klogin.c ${INCLS} AFS_component_version_number.o
170         ${CC} ${CFLAGS} -c klogin.c -DKAUTH
171
172 klogin: libkauth.a $(LIBS) klogin.o
173         ${CC} ${LDFLAGS} -o klogin klogin.o libkauth.a ${LIBS} ${XLIBS}
174
175 klogin.krb: libkauth.a $(KLIBS) klogin.o
176         ${CC} ${LDFLAGS} -o klogin.krb klogin.o libkauth.krb.a ${KLIBS} ${XLIBS}
177
178 kpasswd.o: kauth.h kautils.h ${INCLS} kpasswd.c AFS_component_version_number.o
179         ${CC} ${CFLAGS} -c kpasswd.c 
180
181 kpasswd: kauth.h kautils.h libkauth.a $(LIBS) kpasswd.o kkids.o
182         ${CC} ${LDFLAGS} -o kpasswd kpasswd.o kkids.o libkauth.a \
183         ${LIBS} ${XLIBS}
184
185 kpwvalid.o: kpwvalid.c AFS_component_version_number.o
186         ${CC} ${CFLAGS} -c kpwvalid.c
187
188 kpwvalid: kpwvalid.o $(LIBS)
189         ${CC} ${LDFLAGS} -o kpwvalid kpwvalid.o ${LIBS} ${XLIBS}
190
191 user.krb.o: user.c ${INCLS} ${SRCDIR}include/afs/vice.h
192         ${CC} ${CFLAGS} -DAFS_KERBEROS_ENV -c user.c -o user.krb.o
193
194 user.o: user.c ${INCLS} ${SRCDIR}include/afs/vice.h
195         ${CC} ${CFLAGS} -c user.c
196
197 kdb: kdb.o ${INCLS}
198         ${CC} ${LDFLAGS} -o kdb kdb.o libkauth.a ${LIBS} ${XLIBS}
199 kdb.o: kdb.c AFS_component_version_number.o
200
201 krb_udp.o: krb_udp.c kaserver.h kautils.h kauth.h prot.h \
202            ${SRCDIR}include/lwp.h ${PE} AFS_component_version_number.o
203
204 krb_udp: krb_udp.o libkauth.a
205         ${CC} ${LDFLAGS} -o krb_udp krb_udp.o libkauth.a ${SRCDIR}lib/liblwp.a ${deslib} ${rxkadlib} ${SRCDIR}lib/afs/libcom_err.a ${utilib} ${auditlib}
206
207 rebuild.o: rebuild.c $(INCLS) AFS_component_version_number.o
208
209 rebuild: rebuild.o kautils.o ${SRCDIR}lib/afs/libcom_err.a ${utilib} $(deslib)
210         ${CC} ${LDFLAGS} -o rebuild rebuild.o kautils.o \
211                 ${SRCDIR}lib/afs/libcom_err.a ${utilib} $(deslib) ${XLIBS} ${cmdlib}
212         ${INSTALL} -f rebuild ${DESTDIR}etc/kadb_check
213
214 system: install
215
216 ${DESTDIR}root.server/usr/afs/bin/kaserver: kaserver
217         ${INSTALL} -s $? $@
218
219 ${DESTDIR}etc/kas ${DESTDIR}root.server/usr/afs/bin/kas: kas 
220         ${INSTALL} -s $? $@
221
222 ${DESTDIR}bin/kpwvalid ${DESTDIR}etc/kpwvalid \
223 ${DESTDIR}root.server/usr/afs/bin/kpwvalid: kpwvalid 
224         ${INSTALL} $? $@
225
226 ${DESTDIR}bin/klog ${DESTDIR}root.server/usr/afs/bin/klog: klog 
227         ${INSTALL} -s $? $@
228
229 ${DESTDIR}bin/klog.krb ${DESTDIR}root.server/usr/afs/bin/klog.krb: klog.krb 
230         ${INSTALL} -s $? $@
231
232 ${DESTDIR}bin/knfs: knfs 
233         ${INSTALL} -s $? $@
234
235 ${DESTDIR}bin/kpasswd: kpasswd 
236         ${INSTALL} -s $? $@
237
238 ${DESTDIR}lib/afs/libkauth.a: libkauth.a 
239         ${INSTALL} $? $@
240
241 ${DESTDIR}lib/afs/libkauth.krb.a: libkauth.krb.a 
242         ${INSTALL} $? $@
243
244 ${DESTDIR}etc/kdb: kdb 
245         ${INSTALL} -s $? $@
246
247 ukinstall webinstall: ${UKSRCS} Kkauth.h Kkauth.xdr.c Kkauth.cs.c kauth.h
248         set ${UKERNELDIR}afs; $(MKDIR_IF_NEEDED)
249         set ${UKERNELDIR}afsint; $(MKDIR_IF_NEEDED)
250         ${INSTALL} Kkauth.h ${UKERNELDIR}afsint/kauth.h
251         ${INSTALL} Kkauth.xdr.c ${UKERNELDIR}afsint/kauth.xdr.c
252         ${INSTALL} Kkauth.cs.c ${UKERNELDIR}afsint/kauth.cs.c
253         ${INSTALL} ${UKSRCS} ${UKERNELDIR}afs
254
255
256 install: all ukinstall ${DESTDIR}root.server/usr/afs/bin/kaserver \
257         ${DESTDIR}etc/kas ${DESTDIR}etc/kpwvalid \
258         ${DESTDIR}root.server/usr/afs/bin/kas \
259         ${DESTDIR}root.server/usr/afs/bin/kpwvalid \
260         ${DESTDIR}bin/klog ${DESTDIR}bin/klog.krb \
261         ${DESTDIR}root.server/usr/afs/bin/klog \
262         ${DESTDIR}root.server/usr/afs/bin/klog.krb \
263         ${DESTDIR}bin/knfs ${DESTDIR}bin/kpasswd \
264         ${DESTDIR}bin/kpwvalid ${DESTDIR}lib/afs/libkauth.a \
265         ${DESTDIR}lib/afs/libkauth.krb.a ${DESTDIR}etc/kdb
266         ${INSTALL} kautils.h kauth.h kaport.h ${DESTDIR}include/afs
267
268
269
270
271