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
9 include @TOP_OBJDIR@/src/config/Makefile.config
11 CFLAGS=-g -I${TOP_INCDIR} ${XCFLAGS}
13 INST=$(RM) -f $@; $(CP) $? $@
15 all: config mkvers ukinstall kinstall \
16 ${TOP_INCDIR}/afs/param.h \
17 ${TOP_INCDIR}/afs/stds.h \
18 ${TOP_INCDIR}/afs/afs_sysnames.h \
19 ${TOP_INCDIR}/afs/afs_args.h \
20 ${TOP_INCDIR}/afs/icl.h \
21 ${TOP_INCDIR}/afs/venus.h \
22 ${TOP_INCDIR}/afs/debug.h
24 Makefile.version: ${srcdir}/Makefile.version-CML Makefile.version-NOCML
25 $(RM) -f Makefile.version
26 if [ -r SRC/../CML/state ] ; \
27 then $(CP) ${srcdir}/Makefile.version-CML Makefile.version ; \
28 else $(CP) Makefile.version-NOCML Makefile.version ; \
32 # AFS component version string file generation targets
34 AFS_component_version_number.c: Makefile.version
35 $(MAKE) -f Makefile.version AFS_component_version_number.c
37 ${KERNELDIR}/afs/AFS_component_version_number.c: AFS_component_version_number.c
40 ${UKERNELDIR}/afs/AFS_component_version_number.c: AFS_component_version_number.c
44 # App build/install targets
47 $(CC) $(CFLAGS) -o config config.o mc.o
49 mkvers: ${srcdir}/mkvers.c
50 $(CC) $(CFLAGS) -o mkvers ${srcdir}/mkvers.c
53 $(CC) $(CFLAGS) -c ${srcdir}/mc.c
55 config.o: ${srcdir}/config.c AFS_component_version_number.c
56 $(CC) $(CFLAGS) -I. -c ${srcdir}/config.c
59 # Include installation targets
61 KDIRS = ${KERNELDIR}/afs \
69 UKDIRS = ${UKERNELDIR}/afs \
71 ${UKERNELDIR}/afsint \
78 ${KERNELDIR}/afs/param.h ${DEST}/include/afs/param.h ${DESTDIR}${includedir}/afs/param.h ${TOP_INCDIR}/afs/param.h: ${srcdir}/param.${SYS_NAME}.h ${AFS_PARAM_COMMON}
79 if [ X${AFS_PARAM_COMMON} != X ] ; then \
80 cat ${srcdir}/${AFS_PARAM_COMMON} ${srcdir}/param.${SYS_NAME}.h > param.h.new ; \
82 $(CP) param.h.new $@ ; \
84 $(RM) -f $@; $(CP) ${srcdir}/param.${SYS_NAME}.h $@ ; \
87 ${UKERNELDIR}/afs/afs_sysnames.h ${KERNELDIR}/afs/afs_sysnames.h ${DEST}/include/afs/afs_sysnames.h ${DESTDIR}${includedir}/afs/afs_sysnames.h ${TOP_INCDIR}/afs/afs_sysnames.h: ${srcdir}/afs_sysnames.h
90 ${UKERNELDIR}/afs/stds.h ${KERNELDIR}/afs/stds.h ${DEST}/include/afs/stds.h ${DESTDIR}${includedir}/afs/stds.h ${TOP_INCDIR}/afs/stds.h: ${srcdir}/stds.h
93 ${UKERNELDIR}/afs/icl.h ${KERNELDIR}/afs/icl.h ${DEST}/include/afs/icl.h ${DESTDIR}${includedir}/afs/icl.h ${TOP_INCDIR}/afs/icl.h: ${srcdir}/icl.h
96 ${UKERNELDIR}/afs/afs_args.h ${KERNELDIR}/afs/afs_args.h ${DEST}/include/afs/afs_args.h ${DESTDIR}${includedir}/afs/afs_args.h ${TOP_INCDIR}/afs/afs_args.h: ${srcdir}/afs_args.h
99 ${UKERNELDIR}/afs/venus.h ${DEST}/include/afs/venus.h ${DESTDIR}${includedir}/afs/venus.h ${TOP_INCDIR}/afs/venus.h: ${srcdir}/venus.h
102 ${DEST}/include/afs/debug.h ${DESTDIR}${includedir}/afs/debug.h ${TOP_INCDIR}/afs/debug.h: ${srcdir}/debug.h
105 ${UKERNELDIR}/afs/param.h: ${srcdir}/param.${SYS_NAME}_usr.h
108 # these are needed to compile the kernel. Config is necessary to
109 # convert the MakefileProto in libafs and the kernel links provide the
110 # kernel include environment. param.h is, well, param.h. The afs_sysnames.h
111 # file is needed by param.h to create unique identifiers for each SYS_TYPE.
113 install: ${DESTDIR}${includedir}/afs/param.h \
114 ${DESTDIR}${includedir}/afs/stds.h \
115 ${DESTDIR}${includedir}/afs/afs_sysnames.h \
116 ${DESTDIR}${includedir}/afs/afs_args.h \
117 ${DESTDIR}${includedir}/afs/icl.h \
118 ${DESTDIR}${includedir}/afs/venus.h \
119 ${DESTDIR}${includedir}/afs/debug.h
123 ${KERNELDIR}/afs/param.h \
124 ${KERNELDIR}/afs/stds.h \
125 ${KERNELDIR}/afs/afs_sysnames.h \
126 ${KERNELDIR}/afs/afs_args.h \
127 ${KERNELDIR}/afs/icl.h \
128 ${KERNELDIR}/afs/AFS_component_version_number.c
132 ${UKERNELDIR}/afs/param.h \
133 ${UKERNELDIR}/afs/stds.h \
134 ${UKERNELDIR}/afs/afs_sysnames.h \
135 ${UKERNELDIR}/afs/afs_args.h \
136 ${UKERNELDIR}/afs/icl.h \
137 ${UKERNELDIR}/afs/venus.h \
138 ${UKERNELDIR}/afs/AFS_component_version_number.c
141 $(RM) -f *.o config mkvers core xprt AFS_component_version_number.c param.h.new
143 dest: ${DEST}/include/afs/param.h \
144 ${DEST}/include/afs/stds.h \
145 ${DEST}/include/afs/afs_sysnames.h \
146 ${DEST}/include/afs/afs_args.h \
147 ${DEST}/include/afs/icl.h \
148 ${DEST}/include/afs/venus.h \
149 ${DEST}/include/afs/debug.h