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
46 system noversion apache_afs_web_secure:
47 case "${SYS_NAME}" in \
49 echo Clean, make, and install the lib for 1.2 ; \
51 $(MAKE) AUX_CFLAGS=-DAIX $(APACHE_AFS_LIB) ; \
52 ${INSTALL} ${APACHE_AFS_LIB} ${DESTDIR}root.afsweb/lib/apache_1.2 ; \
53 echo Make and install source for 1.2 ; \
54 /bin/rm -f $(SRC_MODULE) ; \
55 $(MAKE) $(SRC_MODULE) VERSION_CFLAG=-DAPACHE_1_2 ; \
56 ${INSTALL} $(SRC_MODULE) ${DESTDIR}root.afsweb/src/apache_1.2 ; \
57 echo Make and install the lib for 1.3.1 ; \
59 $(MAKE) AUX_CFLAGS=-DAIX $(APACHE_AFS_LIB) VERSION_CFLAG="-DAPACHE_1_3 -DAPACHE_1_3_1" ; \
60 ${INSTALL} $(APACHE_AFS_LIB) ${DESTDIR}root.afsweb/lib/apache_1.3.1 ; \
61 echo Make and install source for 1.3.1 ; \
62 /bin/rm -f $(SRC_MODULE) ; \
63 $(MAKE) $(SRC_MODULE) VERSION_CFLAG="-DAPACHE_1_3 -DAPACHE_1_3_1" ; \
64 ${INSTALL} $(SRC_MODULE) ${DESTDIR}root.afsweb/src/apache_1.3.1 ; \
65 echo Clean, make, and install the lib for 1.3.6 ; \
67 $(MAKE) AUX_CFLAGS=-DAIX $(APACHE_AFS_LIB) VERSION_CFLAG="-DAPACHE_1_3 -DAPACHE_1_3_6"; \
68 ${INSTALL} $(APACHE_AFS_LIB) ${DESTDIR}root.afsweb/lib/apache_1.3.6 ; \
69 /bin/rm -f $(SRC_MODULE) ; \
70 echo Make and install source for 1.3.1 ; \
71 $(MAKE) $(SRC_MODULE) VERSION_CFLAG="-DAPACHE_1_3 -DAPACHE_1_3_6" ; \
72 ${INSTALL} $(SRC_MODULE) ${DESTDIR}root.afsweb/src/apache_1.3.6 ; \
73 echo Do the binaries ; \
74 $(MAKE) AUX_CFLAGS=-DAIX $(BINARIES) ;; \
77 $(MAKE) AUX_FLAGS=-DSOLARIS $(APACHE_AFS_LIB) ; \
78 ${INSTALL} $(APACHE_AFS_LIB) ${DESTDIR}root.afsweb/lib/apache_1.2 ; \
80 $(MAKE) AUX_FLAGS=-DSOLARIS $(APACHE_AFS_LIB) VERSION_CFLAG="-DAPACHE_1_3 -DAPACHE_1_3_1" ; \
81 ${INSTALL} $(APACHE_AFS_LIB) ${DESTDIR}root.afsweb/lib/apache_1.3.1 ; \
83 $(MAKE) AUX_FLAGS=-DSOLARIS $(APACHE_AFS_LIB) VERSION_CFLAG="-DAPACHE_1_3 -DAPACHE_1_3_6" ; \
84 ${INSTALL} $(APACHE_AFS_LIB) ${DESTDIR}root.afsweb/lib/apache_1.3.6 ; \
85 /bin/rm -f $(SRC_MODULE) ; \
86 $(MAKE) $(SRC_MODULE) VERSION_CFLAG=-DAPACHE_1_2 ; \
87 ${INSTALL} $(SRC_MODULE) ${DESTDIR}root.afsweb/src/apache_1.2 ; \
88 /bin/rm -f $(SRC_MODULE) ; \
89 $(MAKE) $(SRC_MODULE) VERSION_CFLAG="-DAPACHE_1_3 -DAPACHE_1_3_1" ; \
90 ${INSTALL} $(SRC_MODULE) ${DESTDIR}root.afsweb/src/apache_1.3.1 ; \
91 /bin/rm -f $(SRC_MODULE) ; \
92 $(MAKE) $(SRC_MODULE) VERSION_CFLAG="-DAPACHE_1_3 -DAPACHE_1_3_6" ; \
93 ${INSTALL} $(SRC_MODULE) ${DESTDIR}root.afsweb/src/apache_1.3.6 ; \
94 $(MAKE) AUX_CFLAGS=-DSOLARIS "XLIBS=-lsocket -lnsl" $(BINARIES) ;; \
97 $(MAKE) AUX_FLAGS=-DLINUX $(APACHE_AFS_LIB) ; \
98 ${INSTALL} $(APACHE_AFS_LIB) ${DESTDIR}root.afsweb/lib/apache_1.2 ; \
100 $(MAKE) AUX_FLAGS=-DLINUX $(APACHE_AFS_LIB) VERSION_CFLAG="-DAPACHE_1_3 -DAPACHE_1_3_1" ; \
101 ${INSTALL} $(APACHE_AFS_LIB) ${DESTDIR}root.afsweb/lib/apache_1.3.1 ; \
103 $(MAKE) AUX_FLAGS=-DLINUX $(APACHE_AFS_LIB) VERSION_CFLAG="-DAPACHE_1_3 -DAPACHE_1_3_6" ; \
104 ${INSTALL} $(APACHE_AFS_LIB) ${DESTDIR}root.afsweb/lib/apache_1.3.6 ; \
105 /bin/rm -f $(SRC_MODULE) ; \
106 $(MAKE) $(SRC_MODULE) VERSION_CFLAG=-DAPACHE_1_2 ; \
107 ${INSTALL} $(SRC_MODULE) ${DESTDIR}root.afsweb/src/apache_1.2 ; \
108 /bin/rm -f $(SRC_MODULE) ; \
109 $(MAKE) $(SRC_MODULE) VERSION_CFLAG="-DAPACHE_1_3 -DAPACHE_1_3_1" ; \
110 ${INSTALL} $(SRC_MODULE) ${DESTDIR}root.afsweb/src/apache_1.3.1 ; \
111 /bin/rm -f $(SRC_MODULE) ; \
112 $(MAKE) $(SRC_MODULE) VERSION_CFLAG="-DAPACHE_1_3 -DAPACHE_1_3_6" ; \
113 ${INSTALL} $(SRC_MODULE) ${DESTDIR}root.afsweb/src/apache_1.3.6 ; \
114 $(MAKE) AUX_CFLAGS=-DLINUX "XLIBS=-lnsl" $(BINARIES) ;; \
116 echo "NOT BUILT FOR ${SYS_NAME}"; ;; \
118 ${INSTALL} ${APACHEAFS_DOC} ${DESTDIR}root.afsweb/doc
119 ${INSTALL} ${APACHE_INSTALL_SCRIPT} ${DESTDIR}root.afsweb/install
120 chmod a+x ${DESTDIR}root.afsweb/install/${APACHE_INSTALL_SCRIPT}
121 chmod a+w ${DESTDIR}root.afsweb/install/${APACHE_INSTALL_SCRIPT}
122 ${INSTALL} $(BINARIES) ${DESTDIR}root.afsweb/bin
124 include ../config/Makefile.version
128 install: kinstall ukinstall
131 @echo No $@ source here.
135 set ${UKERNELDIR}afs; $(MKDIR_IF_NEEDED)
136 ${INSTALL} ${UKSRCS} ${UKERNELDIR}afs
139 @echo No $@ source here.
142 ## For Apache Afs Web Secure libraries and binaries
143 ## NOTE: APACHE_INCLUDES should point to the Apache src directory where
144 ## httpd.h and all it's included files reside which right now is src/afsweb/include
145 ## and we have Apache versions as subdirectories but these are taken care of by the
146 ## code. Be sure to compile with the VERSION_CFLAG=-DAPACHE_1_3 option for Apache 1.3
148 APACHE_INCLUDES=-Iapache_includes
149 EXTRA_CFLAGS=-DENABLE_DCE_DLOG -I../dauth/
150 ADKOBJS=../dauth/adkint.cs.o ../dauth/adkint.xdr.o
158 AFS_INCL=-I${SRCDIR}include -I.. -I../config
159 CFLAGS=$(OPTF) $(DEFINES) -I. -I.. $(EXTRA_CFLAGS) $(VERSION_CFLAG) $(DEBUG_FLAG)
160 INCLS=${SRCDIR}include/ubik.h \
161 ${SRCDIR}include/lwp.h \
162 ${SRCDIR}include/lock.h \
163 ${SRCDIR}include/rx/rx.h \
164 ${SRCDIR}include/rx/xdr.h \
165 ${SRCDIR}include/rx/rxkad.h \
166 ${SRCDIR}include/afs/com_err.h \
167 weblog_errors.h $(DCE_DLOG_INCLUDES)
168 deslib=${SRCDIR}lib/libdes.a
169 rxkadlib=${SRCDIR}lib/librxkad.a
170 authlib=${SRCDIR}lib/afs/libauth.a
171 cmdlib=${SRCDIR}lib/afs/libcmd.a
172 utilib=${SRCDIR}lib/afs/util.a
173 auditlib=${SRCDIR}lib/afs/libaudit.a
174 kauthlib=${SRCDIR}lib/afs/libkauth.a
176 LIBS = ${kauthlib} ${SRCDIR}lib/libubik.a ${SRCDIR}lib/afs/libprot.a \
177 ${authlib} ${rxkadlib} ${SRCDIR}lib/afs/libsys.a ${SRCDIR}lib/librx.a \
178 ${SRCDIR}lib/afs/libsys.a \
179 ${SRCDIR}lib/liblwp.a ${deslib} ${cmdlib} \
180 ${SRCDIR}lib/afs/libcom_err.a ${utilib} \
185 LIBCOMMON_OBJS=apache_afs_utils.o apache_afs_cache.o
186 LIBAPACHE_OBJS=apache_afs_client.o apache_afs_plugin.o
187 LIBOBJS=$(LIBCOMMON_OBJS) $(LIBAPACHE_OBJS)
188 OBJS=$(LIBOBJS) apache_afs_weblog.o weblog.o
191 $(CC) -c $(CFLAGS) $(AFS_INCL) $(AUX_CFLAGS) $<
194 weblog: weblog.o $(APACHE_AFS_COMMON_LIB) $(DCE_ADK_LIB)
195 $(CC) -o $@ weblog.o $(APACHE_AFS_COMMON_LIB) $(LIBS) $(DCE_ADK_LIB) $(XLIBS)
197 weblog_starter: apache_afs_weblog.o weblog_errors.h
198 $(CC) -o $@ apache_afs_weblog.o
202 $(AR) $(ARFLAGS) $@ $(ADKOBJS)
204 $(APACHE_AFS_COMMON_LIB):$(LIBCOMMON_OBJS)
206 $(AR) $(ARFLAGS) $@ $(LIBCOMMON_OBJS)
208 $(APACHE_AFS_LIB): $(LIBOBJS) AFS_component_version_number.o
210 $(AR) $(ARFLAGS) $@ $(LIBOBJS)
212 afs_module.c: apache_afs_module.c
213 -/bin/rm -f afs_module.c \
214 ; echo "/*" > afs_module.c \
215 ; cat AFS_component_version_number.c >> afs_module.c \
216 ; echo "*/" >> afs_module.c \
217 ; case "${VERSION_CFLAG}" in \
218 -DAPACHE_1_3*) echo '#include "ap_compat.h"' >> afs_module.c ;; \
220 ; cat apache_afs_module.c >> afs_module.c
228 apache_afs_weblog.o: apache_afs_weblog.c weblog_errors.h AFS_component_version_number.o
229 apache_afs_utils.o: apache_afs_utils.c apache_afs_utils.h
230 apache_afs_cache.o: apache_afs_cache.c apache_afs_cache.h
231 weblog.o: weblog.c weblog_errors.h $(APACHE_AFS_COMMON_LIB)
232 apache_afs_client.o: apache_api.h apache_afs_client.c apache_afs_utils.o apache_afs_cache.o AFS_component_version_number.o
233 $(CC) -c $(CFLAGS) $(AFS_INCL) $(APACHE_INCLUDES) $(AUX_CFLAGS) apache_afs_client.c
234 apache_afs_plugin.o: apache_api.h apache_afs_plugin.c apache_afs_client.o apache_afs_utils.o apache_afs_cache.o
235 $(CC) -c $(CFLAGS) $(APACHE_INCLUDES) $(AUX_CFLAGS) apache_afs_plugin.c
239 -/bin/rm -f *.o $(BINARIES) $(APACHE_AFS_LIB) $(APACHE_AFS_COMMON_LIB) $(DCE_ADK_LIB)
242 -/bin/rm -f $(APACHE_AFS_LIB) $(LIBOBJS)