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
8 # Portions Copyright (c) 2003 Apple Computer, Inc.
11 include @TOP_OBJDIR@/src/config/Makefile.config
12 include @TOP_OBJDIR@/src/config/Makefile.lwp
15 INSTALL_DATA = @INSTALL_DATA@
16 INSTALL_PROGRAM = @INSTALL_PROGRAM@
17 INSTALL_SCRIPT = @INSTALL_SCRIPT@
19 SFLAGS=-I${TOP_INCDIR}
21 ${TOP_LIBDIR}/librx.a \
23 ${TOP_LIBDIR}/liblwp.a \
24 ${TOP_LIBDIR}/util.a \
25 ${TOP_LIBDIR}/libafshcrypto_lwp.a \
28 OBJECTS= afssyscalls.o setpag.o pioctl.o glue.o \
29 AFS_component_version_number.o
30 SHLIBOBJS = picobj/setpag.o picobj/glue.o syscall.o
31 RMTOBJS=rmtsysnet.o rmtsysc.o rmtsys.cs.o rmtsys.xdr.o rmtsys.ss.o rmtsyss.o
37 ${TOP_INCDIR}/afs/afssyscalls.h \
38 ${TOP_INCDIR}/afs/afs.exp \
39 ${TOP_INCDIR}/afs/xfsattrs.h \
40 ${TOP_INCDIR}/afs/sys_prototypes.h \
41 ${TOP_LIBDIR}/afs.exp \
42 ${TOP_LIBDIR}/libsys.a \
43 ${KERNELDIR}/afs/xfsattrs.h \
44 ${UKERNELDIR}/afs/afsl.exp
47 rmtsys.cs.c rmtsys.ss.c rmtsys.xdr.c rmtsys.h \
48 Krmtsys.cs.c Krmtsys.xdr.c Krmtsys.h
50 ${TOP_INCDIR}/afs/afssyscalls.h: afssyscalls.h
53 ${TOP_INCDIR}/afs/rmtsys.h: rmtsys.h
56 ${TOP_INCDIR}/afs/afs.exp: afs.exp
57 @set -x; case ${SYS_NAME} in \
59 ${INSTALL_DATA} $? $@ ;; \
62 ${TOP_LIBDIR}/afs.exp: afs.exp
63 @set -x; case ${SYS_NAME} in \
65 ${INSTALL_DATA} $? $@ ;; \
68 ${TOP_INCDIR}/afs/xfsattrs.h: xfsattrs.h
71 ${TOP_INCDIR}/afs/sys_prototypes.h: sys_prototypes.h
74 ${TOP_LIBDIR}/libsys.a: libsys.a
77 ${UKERNELDIR}/afs/afsl.exp: afsl.exp
78 ${INSTALL} -d ${UKERNELDIR}/afs
79 @set -x; case ${SYS_NAME} in \
81 ${INSTALL_DATA} $? $@ ;; \
84 ${KERNELDIR}/afs/xfsattrs.h: xfsattrs.h
85 ${INSTALL} -d ${KERNELDIR}/afs
89 ${TOP_INCDIR}/afs/afssyscalls.h \
90 ${TOP_INCDIR}/afs/rmtsys.h \
91 ${TOP_INCDIR}/afs/afs.exp \
92 ${TOP_INCDIR}/afs/xfsattrs.h \
93 ${TOP_INCDIR}/afs/sys_prototypes.h \
94 ${TOP_LIBDIR}/afs.exp \
95 ${KERNELDIR}/afs/xfsattrs.h \
96 ${UKERNELDIR}/afs/afsl.exp \
97 Krmtsys.cs.c Krmtsys.h Krmtsys.xdr.c rmtsys.h
99 libsys.a: ${OBJECTS} ${RMTOBJS} syscall.o afsl.exp AFS_component_version_number.o
101 @set -e; set -x; case "$(SYS_NAME)" in \
103 ${AR} crv $@ ${OBJECTS} ${RMTOBJS} syscall.o ;; \
105 ${AR} crv $@ ${OBJECTS} ${RMTOBJS} syscall.o afsl.exp ;; \
107 ${AR} crv $@ ${OBJECTS} ${RMTOBJS} ;; \
111 tests: pagsh pagsh.krb fixit iinc idec icreate iopen istat rmtsysd
114 @set -e; set -x; case "$(SYS_NAME)" in \
116 ${CC} ${AFS_CFLAGS} -c ${srcdir}/syscall.s; \
118 rs_aix* | hp_ux10*) \
119 $(PATH_CPP) -P ${SFLAGS} ${srcdir}/syscall.s > syscall.ss; \
120 as -o syscall.o syscall.ss; \
128 afssyscalls.o: afssyscalls.c afssyscalls.h
129 glue.o: glue.c afssyscalls.h
130 setpag.o: setpag.c afssyscalls.h
131 pioctl.o: pioctl.c afssyscalls.h
133 rmtsysnet.o rmtsysc.o rmtsyss.o rmtsysd.o: rmtsys.h
134 rmtsysd: AFS_component_version_number.o afs.exp afsl.exp
136 rmtsys.cs.c: rmtsys.xg
137 ${RXGEN} -A -C -o $@ ${srcdir}/rmtsys.xg
139 rmtsys.ss.c: rmtsys.xg
140 ${RXGEN} -A -S -o $@ ${srcdir}/rmtsys.xg
142 rmtsys.xdr.c: rmtsys.xg
143 ${RXGEN} -A -c -o $@ ${srcdir}/rmtsys.xg
146 ${RXGEN} -A -h -o $@ ${srcdir}/rmtsys.xg
148 Krmtsys.cs.c: rmtsys.xg Krmtsys.h
149 ${RXGEN} -A -k -C -o Krmtsys.cs.c ${srcdir}/rmtsys.xg
151 Krmtsys.xdr.c: rmtsys.xg
152 ${RXGEN} -A -k -c -o Krmtsys.xdr.c ${srcdir}/rmtsys.xg
155 ${RXGEN} -A -k -h -o Krmtsys.h ${srcdir}/rmtsys.xg
157 rmtsysd: rmtsysd.o libsys.a
158 $(AFS_LDRULE) rmtsysd.o ${LIBS} $(LIB_roken)
160 pagsh: pagsh.o libsys.a AFS_component_version_number.o
161 $(AFS_LDRULE) pagsh.o ${LIBS} $(LIB_roken)
163 CFLAGS_pagsh.krb.o = -DAFS_KERBEROS_ENV
165 $(AFS_CCRULE) $(srcdir)/pagsh.c
167 pagsh.krb: libsys.a pagsh.krb.o ${TOP_LIBDIR}/libauth.krb.a ${TOP_LIBDIR}/librxkad.a
168 $(AFS_LDRULE) pagsh.krb.o ${TOP_LIBDIR}/libauth.krb.a \
169 ${TOP_LIBDIR}/librxkad.a ${LIBS} $(LIB_roken)
176 $(CC) -o iinc $(AFS_CFLAGS) ${srcdir}/iinc.c ${LIBS}
178 idec: idec.c AFS_component_version_number.c
179 $(CC) -o idec $(AFS_CFLAGS) ${srcdir}/idec.c ${LIBS}
181 icreate:icreate.c AFS_component_version_number.c
182 $(CC) -o icreate $(AFS_CFLAGS) ${srcdir}/icreate.c ${LIBS}
184 iopen: iopen.c AFS_component_version_number.c
185 $(CC) -o iopen $(AFS_CFLAGS) ${srcdir}/iopen.c ${LIBS}
187 iread: iread.c AFS_component_version_number.c
188 ${CC} -o iread $(AFS_CFLAGS) ${srcdir}/iread.c ${LIBS}
190 iwrite: iwrite.c AFS_component_version_number.c
191 ${CC} -o iwrite $(AFS_CFLAGS) ${srcdir}/iwrite.c ${LIBS}
193 istat: istat.c AFS_component_version_number.c
194 $(CC) -o istat $(AFS_CFLAGS) ${srcdir}/istat.c ${LIBS}
196 fixit: fixit.c AFS_component_version_number.c
197 $(CC) -o fixit $(AFS_CFLAGS) ${srcdir}/fixit.c ${LIBS}
200 xfsinode: xfsinode.c AFS_component_version_number.c
201 @set -x; case "${SYS_NAME}" in \
203 $(CC) -o xfsinode $(AFS_CFLAGS) ${srcdir}/xfsinode.c ${LIBS}
206 afs.exp: ${srcdir}/afs4.exp ${srcdir}/afs5.exp
207 @set -x; case ${SYS_NAME} in \
209 cp -p ${srcdir}/afs5.exp afs.exp ;; \
211 cp -p ${srcdir}/afs4.exp afs.exp ;; \
216 afsl.exp: ${srcdir}/afsl4.exp ${srcdir}/afsl5.exp
217 @set -x; case ${SYS_NAME} in \
219 cp -p ${srcdir}/afsl5.exp afsl.exp ;; \
221 cp -p ${srcdir}/afsl4.exp afsl.exp ;; \
227 # Installation targets
229 install: libsys.a rmtsysd afssyscalls.h pagsh pagsh.krb afs.exp xfsattrs.h
230 ${INSTALL} -d ${DESTDIR}${libdir}/afs
231 ${INSTALL} -d ${DESTDIR}${sbindir}
232 ${INSTALL} -d ${DESTDIR}${includedir}/afs
233 ${INSTALL_DATA} libsys.a ${DESTDIR}${libdir}/afs/libsys.a
234 ${INSTALL_PROGRAM} rmtsysd ${DESTDIR}${sbindir}/rmtsysd
235 ${INSTALL_DATA} ${srcdir}/afssyscalls.h ${DESTDIR}${includedir}/afs/afssyscalls.h
236 ${INSTALL_PROGRAM} pagsh ${DESTDIR}${bindir}/pagsh
237 ${INSTALL_PROGRAM} pagsh.krb ${DESTDIR}${bindir}/pagsh.krb
238 ${INSTALL_DATA} ${srcdir}/xfsattrs.h ${DESTDIR}${includedir}/afs/xfsattrs.h
239 @set -x; case ${SYS_NAME} in \
241 ${INSTALL_DATA} afs.exp ${DESTDIR}${includedir}/afs/afs.exp;; \
244 dest: libsys.a rmtsysd afssyscalls.h pagsh pagsh.krb afs.exp xfsattrs.h
245 ${INSTALL} -d ${DEST}/lib/afs
246 ${INSTALL} -d ${DEST}/etc
247 ${INSTALL} -d ${DEST}/bin
248 ${INSTALL} -d ${DEST}/include/afs
249 ${INSTALL_DATA} libsys.a ${DEST}/lib/afs/libsys.a
250 ${INSTALL_PROGRAM} rmtsysd ${DEST}/etc/rmtsysd
251 ${INSTALL_PROGRAM} pagsh ${DEST}/bin/pagsh
252 ${INSTALL_PROGRAM} pagsh.krb ${DEST}/bin/pagsh.krb
253 ${INSTALL_DATA} ${srcdir}/afssyscalls.h ${DEST}/include/afs/afssyscalls.h
254 ${INSTALL_DATA} ${srcdir}/xfsattrs.h ${DEST}/include/afs/xfsattrs.h
255 @set -x; case ${SYS_NAME} in \
257 ${INSTALL_DATA} afs.exp ${DEST}/include/afs/afs.exp ;; \
263 include ../config/Makefile.version
266 $(RM) -f *.o libsys.a xfsinode iinc idec icreate iopen istat core \
267 rmtsysc rmtsyss *.o rmtsys.ss.c rmtsys.cs.c rmtsys.xdr.c rmtsys.h \
268 rmtsysd AFS_component_version_number.c pagsh pagsh.krb \
269 afs.exp afsl.exp libafssetpag.* Krmtsys.cs.c Krmtsys.h Krmtsys.xdr.c