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
10 TOP_SRCDIR=@TOP_SRCDIR@
11 SYS_NAME=@AFS_SYSNAME@
15 include ../config/Makefile.${SYS_NAME}
16 MKDIR_IF_NEEDED=[ -d $$1 ] || mkdir -p $$1
18 CFLAGS=${OPTMZ} -I${TOP_SRCDIR}/config -I./ -I${SRCDIR}/include ${XCFLAGS}
19 UKERNELDIR=../libuafs/
20 LIBOBJS=disk.o remote.o beacon.o recovery.o ubik.o vote.o lock.o phys.o \
21 ubik_int.cs.o ubik_int.ss.o ubik_int.xdr.o ubikcmd.o \
22 ubikclient.o uerrors.o
23 INCLS= ${SRCDIR}/include/lwp.h ${SRCDIR}/include/lock.h \
24 ${SRCDIR}/include/rx/rx.h ${SRCDIR}/include/rx/xdr.h \
25 ${SRCDIR}/include/lock.h ubik.h ubik_int.h
26 LIBS=${SRCDIR}/lib/librx.a ${SRCDIR}/lib/liblwp.a \
27 ${SRCDIR}/lib/afs/libcom_err.a ${SRCDIR}/lib/afs/libcmd.a \
28 ${SRCDIR}/lib/afs/util.a ${SRCDIR}/lib/afs/libsys.a ${XLIBS}
29 RXGEN=${SRCDIR}/bin/rxgen
30 COMPILE_ET = ${SRCDIR}/bin/compile_et
32 UKSRCS=ubik.h ubikclient.c uerrors.c
34 include ../config/Makefile.version
38 test: utst_server utst_client udebug
39 ${INSTALL} udebug ${DESTDIR}/bin
40 ${INSTALL} udebug ${DESTDIR}root.server/usr/afs/bin
43 rm -f *.o utst_server utst_client udebug *.a *.cs.c *.ss.c *.xdr.c
44 rm -f utst_int.h ubik_int.h uerrors.c ubik.h core AFS_component_version_number.c Kubik_int.h
49 @echo No $@ source here.
51 ukinstall webinstall: ${UKSRCS} Kubik_int.h Kubik_int.xdr.c Kubik_int.cs.c
52 set ${UKERNELDIR}/afs; $(MKDIR_IF_NEEDED)
53 set ${UKERNELDIR}/afsint; $(MKDIR_IF_NEEDED)
54 ${INSTALL} Kubik_int.h ${UKERNELDIR}/afsint/ubik_int.h
55 ${INSTALL} Kubik_int.cs.c ${UKERNELDIR}/afsint/ubik_int.cs.c
56 ${INSTALL} Kubik_int.xdr.c ${UKERNELDIR}/afsint/ubik_int.xdr.c
57 ${INSTALL} ${UKSRCS} ${UKERNELDIR}/afs
59 install: libubik.a ukinstall
60 ${INSTALL} libubik.a ${DESTDIR}/lib
61 ${INSTALL} ubik.h ubik_int.h ${DESTDIR}/include
63 utst_server: utst_server.o utst_int.ss.o utst_int.xdr.o libubik.a
64 ${CC} ${CFLAGS} -o utst_server utst_server.o utst_int.ss.o utst_int.xdr.o libubik.a $(LIBS)
66 utst_client: utst_client.o utst_int.cs.o utst_int.xdr.o libubik.a
67 ${CC} ${CFLAGS} -o utst_client utst_client.o utst_int.cs.o utst_int.xdr.o libubik.a $(LIBS)
69 udebug: udebug.o libubik.a
70 ${CC} ${CFLAGS} -o udebug udebug.o libubik.a $(LIBS)
72 ubik_int.ss.c ubik_int.cs.c ubik_int.xdr.c ubik_int.h: ubik_int.xg
73 ${RXGEN} -x ubik_int.xg
75 Kubik_int.cs.c: ubik_int.xg Kubik_int.h
76 ${RXGEN} -x -k -C -o Kubik_int.cs.c ubik_int.xg
78 Kubik_int.xdr.c: ubik_int.xg
79 ${RXGEN} -x -k -c -o Kubik_int.xdr.c ubik_int.xg
81 Kubik_int.h: ubik_int.xg
82 ${RXGEN} -x -k -h -o Kubik_int.h ubik_int.xg
84 utst_int.ss.o: utst_int.ss.c utst_int.xdr.c
85 utst_int.cs.o: utst_int.cs.c utst_int.xdr.c
86 utst_int.xdr.o: utst_int.xdr.c utst_int.h
87 utst_int.ss.c utst_int.cs.c utst_int.xdr.c utst_int.h: utst_int.xg
90 utst_server.o: utst_server.c ${INCLS} utst_int.h AFS_component_version_number.c
91 utst_client.o: utst_client.c ${INCLS} utst_int.h AFS_component_version_number.c
93 udebug.o: udebug.c ${INCLS} AFS_component_version_number.c
94 ${CC} ${CFLAGS} -g -I. -I${DESTDIR}/include -I${DESTDIR}/include/afs -I${DESTDIR}/ -c udebug.c
98 uerrors.c ubik.h: uerrors.et ubik.p.h
99 rm -f ubik.h uerrors.c; ${COMPILE_ET} uerrors -h ubik
101 libubik.a: ${LIBOBJS} AFS_component_version_number.o
103 ar rv $@ ${LIBOBJS} AFS_component_version_number.o
106 disk.o: disk.c ${INCLS}
107 remote.o: remote.c ${INCLS}
108 beacon.o: beacon.c ${INCLS}
109 lock.o: lock.c ${INCLS}
110 recovery.o: recovery.c ${INCLS}
111 ubik.o: ubik.c ${INCLS}
112 phys.o: phys.c ${INCLS}
113 vote.o: vote.c ${INCLS}
114 ubikcmd.o: ubikcmd.c ${INCLS}
115 ubikclient.o: ubikclient.c ${INCLS}
116 ubik_int.ss.o: ubik_int.ss.c ${INCLS}
117 ubik_int.cs.o: ubik_int.cs.c ${INCLS}
118 ubik_int.xdr.o: ubik_int.xdr.c ${INCLS}
119 utst_int.ss.o: utst_int.ss.c ${INCLS} utst_int.h
120 utst_int.cs.o: utst_int.cs.c ${INCLS} utst_int.h
121 utst_int.xdr.o: utst_int.xdr.c ${INCLS} utst_int.h