2 AC_INIT([OpenAFS], m4_esyscmd([build-tools/git-version .]))
3 AC_CONFIG_AUX_DIR([build-tools])
4 AC_CONFIG_SRCDIR([src/config/stds.h])
7 AC_CONFIG_HEADER(src/config/afsconfig.h)
11 dnl Debian wants the release candidate version in the main upstream version,
12 dnl and wants ~ before it.
13 DEB_PKGVER=m4_esyscmd([build-tools/git-version .])
14 if echo "$LINUX_PKGREL" | grep pre >/dev/null 2>/dev/null ; then
15 DEB_PKGVER="$DEB_PKGVER"`echo "$LINUX_PKGREL" | sed 's/0.pre/~rc/'`
18 AC_SUBST(MACOS_VERSION)
21 dnl If the user hasn't specified CFLAGS don't let configure pick -g -O2
22 AS_IF([test -z "$CFLAGS"], [CFLAGS=" "], [])
24 AC_USE_SYSTEM_EXTENSIONS
28 AC_PATH_PROGS([PATH_CPP], [cpp], [${CC-cc} -E], [$PATH:/lib:/usr/ccs/lib])
30 OPENAFS_CONFIGURE_COMMON
32 dnl Probe for Kerberos. We have a few platform-specific overrides due to
33 dnl weird Kerberos implementations and installation locations.
34 AS_CASE([$AFS_SYSNAME],
36 [KRB5_CPPFLAGS="-I/usr/include/kerberosV"],
39 [KRB5_CPPFLAGS="-I/usr/include"
40 KRB5_LDFLAGS="-L/usr/lib -Wl,-search_paths_first"])
42 AS_CASE([$AFS_SYSNAME],
44 [KRB5_LIBS="-l:libkrb5.sl -l:libcom_err.sl"])
46 dnl Check for the characteristics of whatever Kerberos we found, if we found
50 AS_IF([test x"$KRB5_LIBS" != x],
53 AC_DEFINE([USE_RXKAD_KEYTAB], 1,
54 [Define to 1 if krb5 libraries are available and rxkad can use keytabs])
56 AC_CHECK_FUNCS([add_error_table \
58 encode_krb5_enc_tkt_part \
60 krb5_524_conv_principal \
61 krb5_allow_weak_crypto \
66 krb5_decrypt_tkt_part \
67 krb5_encrypt_tkt_part \
69 krb5_get_init_creds_opt_alloc \
70 krb5_get_prompt_types \
72 krb5_principal_get_comp_string])
73 AC_CHECK_FUNCS([krb5_524_convert_creds], ,
74 [AC_CHECK_FUNCS([krb524_convert_creds_kdc], ,
75 [AC_CHECK_LIB([krb524], [krb524_convert_creds_kdc],
76 [LIBS="-lkrb524 $LIBS"
77 KRB5_LIBS="-lkrb524 $KRB5_LIBS"
78 AC_CHECK_LIB([krb524], [krb5_524_conv_principal],
79 [AC_DEFINE([HAVE_KRB5_524_CONV_PRINCIPAL], 1,
80 [Define to 1 if you have the `krb5_524_conv_principal' function.])])
81 AC_DEFINE([HAVE_KRB524_CONVERT_CREDS_KDC], 1,
82 [Define to 1 if you have the `krb524_convert_creds_kdc' function.])])])])
83 AC_CHECK_HEADERS([kerberosIV/krb.h])
84 AC_CHECK_HEADERS([kerberosV/heim_err.h])
85 AC_CHECK_HEADERS([com_err.h et/com_err.h krb5/com_err.h])
86 AS_IF([test x"$ac_cv_header_com_err_h" != xyes \
87 && test x"$ac_cv_header_et_com_err_h" != xyes \
88 && test x"$ac_cv_header_krb5_com_err_h" != xyes],
89 [AC_MSG_ERROR([Cannot find a usable com_err.h])])
90 AC_CHECK_MEMBERS([krb5_creds.keyblock, krb5_creds.keyblock.enctype,
91 krb5_creds.session, krb5_keytab_entry.key,
92 krb5_keytab_entry.keyblock, krb5_keyblock.enctype,
93 krb5_keyblock.keytype, krb5_prompt.type], , ,
95 dnl If we have krb5_creds.session, we are using heimdal
96 dnl If we're using heimdal, aklog needs libasn1 for encode_EncTicketPart and a
97 dnl few other functions. But just aklog; not any of the other stuff that uses
99 AS_IF([test x"$ac_cv_member_krb5_creds_session" = xyes],
100 [AC_CHECK_LIB([asn1], [encode_EncTicketPart],
101 [AKLOG_KRB5_LIBS="-lasn1"])])
102 AC_CHECK_DECLS([krb5_free_keytab_entry_contents, krb5_kt_free_entry,
103 KRB5_KU_TICKET], [], [], [#include <krb5.h>])
104 RRA_LIB_KRB5_RESTORE])
105 AC_SUBST([BUILD_KRB5])
106 AC_SUBST([MAKE_KRB5])
107 AC_SUBST([AKLOG_KRB5_LIBS])
109 if test -d 'doc/man-pages' ; then
110 MAN_MAKEFILE="doc/man-pages/Makefile doc/man-pages/install-man"
114 if test -f 'doc/xml/AdminGuide/Makefile.in' ; then
115 ADMINGUIDE_MAKEFILE="doc/xml/AdminGuide/Makefile"
119 if test -f 'doc/xml/QuickStartUnix/Makefile.in' ; then
120 QSUNIX_MAKEFILE="doc/xml/QuickStartUnix/Makefile"
124 if test -f 'doc/xml/UserGuide/Makefile.in' ; then
125 USERGUIDE_MAKEFILE="doc/xml/UserGuide/Makefile"
133 ${ADMINGUIDE_MAKEFILE} \
135 ${USERGUIDE_MAKEFILE} \
138 src/afsmonitor/Makefile \
139 src/afsweb/Makefile \
143 src/auth/test/Makefile \
145 src/bozo/test/Makefile \
146 src/bu_utils/Makefile \
147 src/bubasics/Makefile \
148 src/bucoord/Makefile \
154 src/cmd/test/Makefile \
155 src/comerr/Makefile \
156 src/comerr/test/Makefile \
157 src/config/Makefile \
158 src/config/Makefile.config \
159 src/config/Makefile.version-CML \
160 src/config/Makefile.version-NOCML \
161 src/config/shlib-build \
162 src/config/shlib-install \
164 src/des/test/Makefile \
166 src/dir/test/Makefile \
167 src/dviced/Makefile \
168 src/dvolser/Makefile \
169 src/export/Makefile \
170 src/finale/Makefile \
172 src/fsprobe/Makefile \
174 src/JAVA/libjafs/Makefile \
176 src/kauth/test/Makefile \
177 src/kopenafs/Makefile \
178 src/libacl/Makefile \
179 src/libacl/test/Makefile \
180 src/libadmin/Makefile \
181 src/libadmin/adminutil/Makefile \
182 src/libadmin/bos/Makefile \
183 src/libadmin/cfg/Makefile \
184 src/libadmin/cfg/test/Makefile \
185 src/libadmin/client/Makefile \
186 src/libadmin/kas/Makefile \
187 src/libadmin/pts/Makefile \
188 src/libadmin/samples/Makefile \
189 src/libadmin/test/Makefile \
190 src/libadmin/vos/Makefile \
191 src/libafs/Makefile.common \
192 src/libafs/MakefileProto.${MKAFS_OSTYPE} \
194 src/libafsauthent/Makefile \
195 src/libafsrpc/Makefile \
196 src/libuafs/Makefile.common \
197 src/libuafs/MakefileProto.${MKAFS_OSTYPE} \
199 src/log/test/Makefile \
201 src/lwp/test/Makefile \
202 src/packaging/Debian/changelog \
203 src/packaging/MacOS/OpenAFS-debug.Description.plist \
204 src/packaging/MacOS/OpenAFS-debug.Info.plist \
205 src/packaging/MacOS/OpenAFS.Description.plist \
206 src/packaging/MacOS/OpenAFS.Info.plist \
207 src/packaging/MacOS/OpenAFS.info \
208 src/packaging/MacOS/buildpkg.sh \
209 src/packaging/MacOS/pkgbuild.sh \
211 src/platform/Makefile \
212 src/platform/${MKAFS_OSTYPE}/Makefile \
213 src/platform/DARWIN/growlagent/Makefile \
214 src/procmgmt/Makefile \
215 src/procmgmt/test/Makefile \
216 src/ptserver/Makefile \
217 src/tptserver/Makefile \
219 src/rx/bulk.example/Makefile \
220 src/rx/bulktest/Makefile \
221 src/rx/multi.example/Makefile \
222 src/rx/simple.example/Makefile \
223 src/rx/test/Makefile \
224 src/rxdebug/Makefile \
227 src/rxkad/test/Makefile \
228 src/rxstat/Makefile \
230 src/sgistuff/Makefile \
231 src/shlibafsauthent/Makefile \
232 src/shlibafsrpc/Makefile \
236 src/tests/run-tests \
237 src/tsalvaged/Makefile \
239 src/tviced/Makefile \
240 src/tvolser/Makefile \
243 src/update/Makefile \
245 src/usd/test/Makefile \
248 src/util/test/Makefile \
249 src/libafscp/Makefile \
251 src/venus/test/Makefile \
254 src/vlserver/Makefile \
255 src/tvlserver/Makefile \
257 src/vol/test/Makefile \
258 src/volser/Makefile \
260 src/helper-splint.sh \
262 tests/rpctestlib/Makefile \
266 [chmod a+x src/config/shlib-build
267 chmod a+x src/config/shlib-install])
269 # print a final summary