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@
16 include ../config/Makefile.${SYS_NAME}
18 UKERNELDIR=../libuafs/
19 COMPILE_ET=${SRCDIR}/bin/compile_et
21 MKDIR_IF_NEEDED=[ -d $$1 ] || mkdir -p $$1
23 UKSRCS=nsafs.h nsafs.c securehash.c
26 # Targets for Apache AFS Web Secure
28 APACHE_AFS_LIB=libapacheafs.a
30 APACHE_AFS_COMMON_LIB=libcommon.a
32 BINARIES=weblog weblog_starter
33 SRC_MODULE=afs_module.c
34 ## This module is made compatible with Apache 1.3.1 by including a file called
35 ## ap_compat.h provided by Apache (basically all they do is #define all the old API calls
36 ## as the new ones with ap_ prepended to the old API calls. The makefile takes care of this
37 ## while building afs_module.c and adding the AFS_component_version_number.c file's contents
41 APACHE_INSTALL_SCRIPT=afswsApache_config.sh
42 NETSCAPE_INSTALL_SCRIPT=afswsNetscape_config.sh
44 system apache_afs_web_secure:
45 case "${SYS_NAME}" in \
47 echo Clean, make, and install the lib for 1.2 ; \
49 $(MAKE) AUX_CFLAGS=-DAIX $(APACHE_AFS_LIB) ; \
50 ${INSTALL} ${APACHE_AFS_LIB} ${DESTDIR}root.afsweb/lib/apache_1.2 ; \
51 echo Make and install source for 1.2 ; \
52 /bin/rm -f $(SRC_MODULE) ; \
53 $(MAKE) $(SRC_MODULE) VERSION_CFLAG=-DAPACHE_1_2 ; \
54 ${INSTALL} $(SRC_MODULE) ${DESTDIR}root.afsweb/src/apache_1.2 ; \
55 echo Make and install the lib for 1.3.1 ; \
57 $(MAKE) AUX_CFLAGS=-DAIX $(APACHE_AFS_LIB) VERSION_CFLAG="-DAPACHE_1_3 -DAPACHE_1_3_1" ; \
58 ${INSTALL} $(APACHE_AFS_LIB) ${DESTDIR}root.afsweb/lib/apache_1.3.1 ; \
59 echo Make and install source for 1.3.1 ; \
60 /bin/rm -f $(SRC_MODULE) ; \
61 $(MAKE) $(SRC_MODULE) VERSION_CFLAG="-DAPACHE_1_3 -DAPACHE_1_3_1" ; \
62 ${INSTALL} $(SRC_MODULE) ${DESTDIR}root.afsweb/src/apache_1.3.1 ; \
63 echo Clean, make, and install the lib for 1.3.6 ; \
65 $(MAKE) AUX_CFLAGS=-DAIX $(APACHE_AFS_LIB) VERSION_CFLAG="-DAPACHE_1_3 -DAPACHE_1_3_6"; \
66 ${INSTALL} $(APACHE_AFS_LIB) ${DESTDIR}root.afsweb/lib/apache_1.3.6 ; \
67 /bin/rm -f $(SRC_MODULE) ; \
68 echo Make and install source for 1.3.1 ; \
69 $(MAKE) $(SRC_MODULE) VERSION_CFLAG="-DAPACHE_1_3 -DAPACHE_1_3_6" ; \
70 ${INSTALL} $(SRC_MODULE) ${DESTDIR}root.afsweb/src/apache_1.3.6 ; \
71 echo Do the binaries ; \
72 $(MAKE) AUX_CFLAGS=-DAIX $(BINARIES) ;; \
75 $(MAKE) AUX_FLAGS=-DSOLARIS $(APACHE_AFS_LIB) ; \
76 ${INSTALL} $(APACHE_AFS_LIB) ${DESTDIR}root.afsweb/lib/apache_1.2 ; \
78 $(MAKE) AUX_FLAGS=-DSOLARIS $(APACHE_AFS_LIB) VERSION_CFLAG="-DAPACHE_1_3 -DAPACHE_1_3_1" ; \
79 ${INSTALL} $(APACHE_AFS_LIB) ${DESTDIR}root.afsweb/lib/apache_1.3.1 ; \
81 $(MAKE) AUX_FLAGS=-DSOLARIS $(APACHE_AFS_LIB) VERSION_CFLAG="-DAPACHE_1_3 -DAPACHE_1_3_6" ; \
82 ${INSTALL} $(APACHE_AFS_LIB) ${DESTDIR}root.afsweb/lib/apache_1.3.6 ; \
83 /bin/rm -f $(SRC_MODULE) ; \
84 $(MAKE) $(SRC_MODULE) VERSION_CFLAG=-DAPACHE_1_2 ; \
85 ${INSTALL} $(SRC_MODULE) ${DESTDIR}root.afsweb/src/apache_1.2 ; \
86 /bin/rm -f $(SRC_MODULE) ; \
87 $(MAKE) $(SRC_MODULE) VERSION_CFLAG="-DAPACHE_1_3 -DAPACHE_1_3_1" ; \
88 ${INSTALL} $(SRC_MODULE) ${DESTDIR}root.afsweb/src/apache_1.3.1 ; \
89 /bin/rm -f $(SRC_MODULE) ; \
90 $(MAKE) $(SRC_MODULE) VERSION_CFLAG="-DAPACHE_1_3 -DAPACHE_1_3_6" ; \
91 ${INSTALL} $(SRC_MODULE) ${DESTDIR}root.afsweb/src/apache_1.3.6 ; \
92 $(MAKE) AUX_CFLAGS=-DSOLARIS "XLIBS=-lsocket -lnsl" $(BINARIES) ;; \
95 $(MAKE) AUX_FLAGS=-DLINUX $(APACHE_AFS_LIB) ; \
96 ${INSTALL} $(APACHE_AFS_LIB) ${DESTDIR}root.afsweb/lib/apache_1.2 ; \
98 $(MAKE) AUX_FLAGS=-DLINUX $(APACHE_AFS_LIB) VERSION_CFLAG="-DAPACHE_1_3 -DAPACHE_1_3_1" ; \
99 ${INSTALL} $(APACHE_AFS_LIB) ${DESTDIR}root.afsweb/lib/apache_1.3.1 ; \
101 $(MAKE) AUX_FLAGS=-DLINUX $(APACHE_AFS_LIB) VERSION_CFLAG="-DAPACHE_1_3 -DAPACHE_1_3_6" ; \
102 ${INSTALL} $(APACHE_AFS_LIB) ${DESTDIR}root.afsweb/lib/apache_1.3.6 ; \
103 /bin/rm -f $(SRC_MODULE) ; \
104 $(MAKE) $(SRC_MODULE) VERSION_CFLAG=-DAPACHE_1_2 ; \
105 ${INSTALL} $(SRC_MODULE) ${DESTDIR}root.afsweb/src/apache_1.2 ; \
106 /bin/rm -f $(SRC_MODULE) ; \
107 $(MAKE) $(SRC_MODULE) VERSION_CFLAG="-DAPACHE_1_3 -DAPACHE_1_3_1" ; \
108 ${INSTALL} $(SRC_MODULE) ${DESTDIR}root.afsweb/src/apache_1.3.1 ; \
109 /bin/rm -f $(SRC_MODULE) ; \
110 $(MAKE) $(SRC_MODULE) VERSION_CFLAG="-DAPACHE_1_3 -DAPACHE_1_3_6" ; \
111 ${INSTALL} $(SRC_MODULE) ${DESTDIR}root.afsweb/src/apache_1.3.6 ; \
112 $(MAKE) AUX_CFLAGS=-DLINUX "XLIBS=-lnsl" $(BINARIES) ;; \
114 echo "NOT BUILT FOR ${SYS_NAME}"; ;; \
116 ${INSTALL} ${APACHEAFS_DOC} ${DESTDIR}root.afsweb/doc
117 ${INSTALL} ${APACHE_INSTALL_SCRIPT} ${DESTDIR}root.afsweb/install
118 chmod a+x ${DESTDIR}root.afsweb/install/${APACHE_INSTALL_SCRIPT}
119 chmod a+w ${DESTDIR}root.afsweb/install/${APACHE_INSTALL_SCRIPT}
120 ${INSTALL} $(BINARIES) ${DESTDIR}root.afsweb/bin
124 install: kinstall ukinstall
127 @echo No $@ source here.
131 set ${UKERNELDIR}/afs; $(MKDIR_IF_NEEDED)
132 ${INSTALL} ${UKSRCS} ${UKERNELDIR}/afs
135 @echo No $@ source here.
138 ## For Apache Afs Web Secure libraries and binaries
139 ## NOTE: APACHE_INCLUDES should point to the Apache src directory where
140 ## httpd.h and all it's included files reside which right now is src/afsweb/include
141 ## and we have Apache versions as subdirectories but these are taken care of by the
142 ## code. Be sure to compile with the VERSION_CFLAG=-DAPACHE_1_3 option for Apache 1.3
144 APACHE_INCLUDES=-Iapache_includes
145 EXTRA_CFLAGS=-DENABLE_DCE_DLOG -I../dauth/
146 ADKOBJS=../dauth/adkint.cs.o ../dauth/adkint.xdr.o
154 AFS_INCL=-I${SRCDIR}/include -I.. -I../config
155 CFLAGS=$(OPTF) $(DEFINES) -I. -I.. $(EXTRA_CFLAGS) $(VERSION_CFLAG) $(DEBUG_FLAG)
156 INCLS=${SRCDIR}/include/ubik.h \
157 ${SRCDIR}/include/lwp.h \
158 ${SRCDIR}/include/lock.h \
159 ${SRCDIR}/include/rx/rx.h \
160 ${SRCDIR}/include/rx/xdr.h \
161 ${SRCDIR}/include/rx/rxkad.h \
162 ${SRCDIR}/include/afs/com_err.h \
163 weblog_errors.h $(DCE_DLOG_INCLUDES)
164 deslib=${SRCDIR}/lib/libdes.a
165 rxkadlib=${SRCDIR}/lib/librxkad.a
166 authlib=${SRCDIR}/lib/afs/libauth.a
167 cmdlib=${SRCDIR}/lib/afs/libcmd.a
168 utilib=${SRCDIR}/lib/afs/util.a
169 auditlib=${SRCDIR}/lib/afs/libaudit.a
170 kauthlib=${SRCDIR}/lib/afs/libkauth.a
172 LIBS = ${kauthlib} ${SRCDIR}/lib/libubik.a ${SRCDIR}/lib/afs/libprot.a \
173 ${authlib} ${rxkadlib} ${SRCDIR}/lib/afs/libsys.a ${SRCDIR}/lib/librx.a \
174 ${SRCDIR}/lib/afs/libsys.a \
175 ${SRCDIR}/lib/liblwp.a ${deslib} ${cmdlib} \
176 ${SRCDIR}/lib/afs/libcom_err.a ${utilib} \
181 LIBCOMMON_OBJS=apache_afs_utils.o apache_afs_cache.o
182 LIBAPACHE_OBJS=apache_afs_client.o apache_afs_plugin.o
183 LIBOBJS=$(LIBCOMMON_OBJS) $(LIBAPACHE_OBJS)
184 OBJS=$(LIBOBJS) apache_afs_weblog.o weblog.o
187 $(CC) -c $(CFLAGS) $(AFS_INCL) $(AUX_CFLAGS) $<
190 weblog: weblog.o $(APACHE_AFS_COMMON_LIB) $(DCE_ADK_LIB)
191 $(CC) -o $@ weblog.o $(APACHE_AFS_COMMON_LIB) $(LIBS) $(DCE_ADK_LIB) $(XLIBS)
193 weblog_starter: apache_afs_weblog.o weblog_errors.h
194 $(CC) -o $@ apache_afs_weblog.o
198 $(AR) $(ARFLAGS) $@ $(ADKOBJS)
200 $(APACHE_AFS_COMMON_LIB):$(LIBCOMMON_OBJS)
202 $(AR) $(ARFLAGS) $@ $(LIBCOMMON_OBJS)
204 $(APACHE_AFS_LIB): $(LIBOBJS) AFS_component_version_number.o
206 $(AR) $(ARFLAGS) $@ $(LIBOBJS)
208 afs_module.c: apache_afs_module.c
209 -/bin/rm -f afs_module.c \
210 ; echo "/*" > afs_module.c \
211 ; cat AFS_component_version_number.c >> afs_module.c \
212 ; echo "*/" >> afs_module.c \
213 ; case "${VERSION_CFLAG}" in \
214 -DAPACHE_1_3*) echo '#include "ap_compat.h"' >> afs_module.c ;; \
216 ; cat apache_afs_module.c >> afs_module.c
224 apache_afs_weblog.o: apache_afs_weblog.c weblog_errors.h AFS_component_version_number.o
225 apache_afs_utils.o: apache_afs_utils.c apache_afs_utils.h
226 apache_afs_cache.o: apache_afs_cache.c apache_afs_cache.h
227 weblog.o: weblog.c weblog_errors.h $(APACHE_AFS_COMMON_LIB)
228 apache_afs_client.o: apache_api.h apache_afs_client.c apache_afs_utils.o apache_afs_cache.o AFS_component_version_number.o
229 $(CC) -c $(CFLAGS) $(AFS_INCL) $(APACHE_INCLUDES) $(AUX_CFLAGS) apache_afs_client.c
230 apache_afs_plugin.o: apache_api.h apache_afs_plugin.c apache_afs_client.o apache_afs_utils.o apache_afs_cache.o
231 $(CC) -c $(CFLAGS) $(APACHE_INCLUDES) $(AUX_CFLAGS) apache_afs_plugin.c
235 -/bin/rm -f *.o $(BINARIES) $(APACHE_AFS_LIB) $(APACHE_AFS_COMMON_LIB) $(DCE_ADK_LIB)
238 -/bin/rm -f $(APACHE_AFS_LIB) $(LIBOBJS)
240 include ../config/Makefile.version