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
13 INSTALL_DATA = @INSTALL_DATA@
14 INSTALL_PROGRAM = @INSTALL_PROGRAM@
15 INSTALL_SCRIPT = @INSTALL_SCRIPT@
17 CFLAGS=-I. -I${srcdir} ${DBUG} -I${TOP_OBJDIR}/src/config -I${TOP_INCDIR} ${XCFLAGS} ${ARCHFLAGS}
18 SFLAGS=-I${TOP_INCDIR}
19 LIBS=libsys.a ${TOP_LIBDIR}/librx.a libsys.a ${TOP_LIBDIR}/liblwp.a ${TOP_LIBDIR}/util.a ${XLIBS}
21 OBJECTS= afssyscalls.o setpag.o pioctl.o glue.o \
22 AFS_component_version_number.o
23 SHLIBOBJS = picobj/setpag.o picobj/glue.o syscall.o
24 RMTOBJS=rmtsysnet.o rmtsysc.o rmtsys.cs.o rmtsys.xdr.o rmtsys.ss.o rmtsyss.o
30 ${TOP_INCDIR}/afs/afssyscalls.h \
31 ${TOP_INCDIR}/afs/afs.exp \
32 ${TOP_INCDIR}/afs/xfsattrs.h \
33 ${TOP_LIBDIR}/afs.exp \
34 ${TOP_LIBDIR}/libsys.a \
35 ${KERNELDIR}/afs/xfsattrs.h \
36 ${UKERNELDIR}/afs/afsl.exp
38 ${TOP_INCDIR}/afs/afssyscalls.h: afssyscalls.h
41 ${TOP_INCDIR}/afs/rmtsys.h: rmtsys.h
44 ${TOP_INCDIR}/afs/afs.exp: afs.exp
45 @set -x; case ${SYS_NAME} in \
47 ${INSTALL_DATA} $? $@ ;; \
50 ${TOP_LIBDIR}/afs.exp: afs.exp
51 @set -x; case ${SYS_NAME} in \
53 ${INSTALL_DATA} $? $@ ;; \
56 ${TOP_INCDIR}/afs/xfsattrs.h: xfsattrs.h
59 ${TOP_LIBDIR}/libsys.a: libsys.a
62 ${UKERNELDIR}/afs/afsl.exp: afsl.exp
63 ${INSTALL} -d ${UKERNELDIR}/afs
64 @set -x; case ${SYS_NAME} in \
66 ${INSTALL_DATA} $? $@ ;; \
69 ${KERNELDIR}/afs/xfsattrs.h: xfsattrs.h
70 ${INSTALL} -d ${KERNELDIR}/afs
74 ${TOP_INCDIR}/afs/afssyscalls.h \
75 ${TOP_INCDIR}/afs/rmtsys.h \
76 ${TOP_INCDIR}/afs/afs.exp \
77 ${TOP_INCDIR}/afs/xfsattrs.h \
78 ${KERNELDIR}/afs/xfsattrs.h \
79 ${UKERNELDIR}/afs/afsl.exp \
80 Krmtsys.cs.c Krmtsys.h Krmtsys.xdr.c rmtsys.h
82 libsys.a: ${OBJECTS} ${RMTOBJS} afsl.exp AFS_component_version_number.o
84 @set -e; set -x; case "$(SYS_NAME)" in \
86 ${AR} crv $@ ${OBJECTS} ${RMTOBJS} syscall.o ;; \
88 ${AR} crv $@ ${OBJECTS} ${RMTOBJS} syscall.o afsl.exp ;; \
90 ${AR} crv $@ ${OBJECTS} ${RMTOBJS} ;; \
94 tests: pagsh pagsh.krb fixit iinc idec icreate iopen istat rmtsysd
97 @set -e; set -x; case "$(SYS_NAME)" in \
99 ${CC} ${CFLAGS} -c ${SYS}/syscall.s; \
101 rs_aix* | hp_ux10*) \
102 /lib/cpp -P ${SFLAGS} ${srcdir}/syscall.s syscall.ss; \
103 as -o syscall.o syscall.ss; \
111 afssyscalls.o: afssyscalls.c afssyscalls.h
112 ${CCOBJ} ${CFLAGS} -c ${srcdir}/afssyscalls.c
114 glue.o: glue.c afssyscalls.h
115 ${CCOBJ} ${CFLAGS} -c ${srcdir}/glue.c
117 setpag.o: setpag.c afssyscalls.h
118 ${CCOBJ} ${CFLAGS} -c ${srcdir}/setpag.c
120 pioctl.o: pioctl.c afssyscalls.h
121 ${CCOBJ} ${CFLAGS} -c ${srcdir}/pioctl.c
123 rmtsysnet.o rmtsysc.o rmtsyss.o rmtsysd.o: rmtsys.h
124 rmtsysd: AFS_component_version_number.o afs.exp afsl.exp
126 rmtsys.cs.c: rmtsys.xg
127 ${RXGEN} -C -o $@ ${srcdir}/rmtsys.xg
129 rmtsys.ss.c: rmtsys.xg
130 ${RXGEN} -S -o $@ ${srcdir}/rmtsys.xg
132 rmtsys.xdr.c: rmtsys.xg
133 ${RXGEN} -c -o $@ ${srcdir}/rmtsys.xg
136 ${RXGEN} -h -o $@ ${srcdir}/rmtsys.xg
138 Krmtsys.cs.c: rmtsys.xg Krmtsys.h
139 ${RXGEN} -k -C -o Krmtsys.cs.c ${srcdir}/rmtsys.xg
141 Krmtsys.xdr.c: rmtsys.xg
142 ${RXGEN} -k -c -o Krmtsys.xdr.c ${srcdir}/rmtsys.xg
145 ${RXGEN} -k -h -o Krmtsys.h ${srcdir}/rmtsys.xg
147 rmtsysd: rmtsysd.o libsys.a
148 ${CC} ${CFLAGS} -o rmtsysd rmtsysd.o ${LIBS}
150 pagsh: libsys.a AFS_component_version_number.o
151 ${CC} ${CFLAGS} -c ${srcdir}/pagsh.c
152 ${CC} ${CFLAGS} -o pagsh pagsh.o ${LIBS}
155 ${CC} ${CFLAGS} -c ${srcdir}/pagsh.c -DAFS_KERBEROS_ENV
156 ${CC} ${CFLAGS} -o pagsh.krb pagsh.o ${LIBS}
163 $(CC) -o iinc ${CFLAGS} ${srcdir}/iinc.c ${LIBS}
165 idec: idec.c AFS_component_version_number.c
166 $(CC) -o idec ${CFLAGS} ${srcdir}/idec.c ${LIBS}
168 icreate:icreate.c AFS_component_version_number.c
169 $(CC) -o icreate ${CFLAGS} ${srcdir}/icreate.c ${LIBS}
171 iopen: iopen.c AFS_component_version_number.c
172 $(CC) -o iopen ${CFLAGS} ${srcdir}/iopen.c ${LIBS}
174 iread: iread.c AFS_component_version_number.c
175 ${CC} -o iread ${CFLAGS} ${srcdir}/iread.c ${LIBS}
177 iwrite: iwrite.c AFS_component_version_number.c
178 ${CC} -o iwrite ${CFLAGS} ${srcdir}/iwrite.c ${LIBS}
180 istat: istat.c AFS_component_version_number.c
181 $(CC) -o istat ${CFLAGS} ${srcdir}/istat.c ${LIBS}
183 fixit: fixit.c AFS_component_version_number.c
184 $(CC) -o fixit ${CFLAGS} ${srcdir}/fixit.c ${LIBS}
187 xfsinode: xfsinode.c AFS_component_version_number.c
188 @set -x; case "${SYS_NAME}" in \
190 $(CC) -o xfsinode ${CFLAGS} ${srcdir}/xfsinode.c ${LIBS}
193 afs.exp: ${srcdir}/afs4.exp ${srcdir}/afs5.exp
194 @set -x; case ${SYS_NAME} in \
196 cp -p ${srcdir}/afs5.exp afs.exp ;; \
198 cp -p ${srcdir}/afs4.exp afs.exp ;; \
203 afsl.exp: ${srcdir}/afsl4.exp ${srcdir}/afsl5.exp
204 @set -x; case ${SYS_NAME} in \
206 cp -p ${srcdir}/afsl5.exp afsl.exp ;; \
208 cp -p ${srcdir}/afsl4.exp afsl.exp ;; \
214 # Installation targets
216 install: libsys.a rmtsysd afssyscalls.h pagsh pagsh.krb afs.exp xfsattrs.h
217 ${INSTALL} -d ${DESTDIR}${libdir}/afs
218 ${INSTALL} -d ${DESTDIR}${sbindir}
219 ${INSTALL} -d ${DESTDIR}${includedir}/afs
220 ${INSTALL_DATA} libsys.a ${DESTDIR}${libdir}/afs/libsys.a
221 ${INSTALL_PROGRAM} rmtsysd ${DESTDIR}${sbindir}/rmtsysd
222 ${INSTALL_DATA} afssyscalls.h ${DESTDIR}${includedir}/afs/afssyscalls.h
223 ${INSTALL_PROGRAM} pagsh ${DESTDIR}${bindir}/pagsh
224 ${INSTALL_PROGRAM} pagsh.krb ${DESTDIR}${bindir}/pagsh.krb
225 ${INSTALL_DATA} xfsattrs.h ${DESTDIR}${includedir}/afs/xfsattrs.h
226 @set -x; case ${SYS_NAME} in \
228 ${INSTALL_DATA} afs.exp ${DESTDIR}${includedir}/afs/afs.exp;; \
231 dest: libsys.a rmtsysd afssyscalls.h pagsh pagsh.krb afs.exp xfsattrs.h
232 ${INSTALL} -d ${DEST}/lib/afs
233 ${INSTALL} -d ${DEST}/etc
234 ${INSTALL} -d ${DEST}/bin
235 ${INSTALL} -d ${DEST}/include/afs
236 ${INSTALL_DATA} libsys.a ${DEST}/lib/afs/libsys.a
237 ${INSTALL_PROGRAM} rmtsysd ${DEST}/etc/rmtsysd
238 ${INSTALL_PROGRAM} pagsh ${DEST}/bin/pagsh
239 ${INSTALL_PROGRAM} pagsh.krb ${DEST}/bin/pagsh.krb
240 ${INSTALL_DATA} afssyscalls.h ${DEST}/include/afs/afssyscalls.h
241 ${INSTALL_DATA} xfsattrs.h ${DEST}/include/afs/xfsattrs.h
242 @set -x; case ${SYS_NAME} in \
244 ${INSTALL_DATA} afs.exp ${DEST}/include/afs/afs.exp ;; \
250 include ../config/Makefile.version
253 $(RM) -f *.o libsys.a xfsinode iinc idec icreate iopen istat core \
254 rmtsysc rmtsyss *.o rmtsys.ss.c rmtsys.cs.c rmtsys.xdr.c rmtsys.h \
255 rmtsysd AFS_component_version_number.c pagsh pagsh.krb \
256 afs.exp afsl.exp libafssetpag.* Krmtsys.cs.c Krmtsys.h Krmtsys.xdr.c