Import Upstream version 1.8.5
[hcoop/debian/openafs.git] / configure.ac
1 AC_PREREQ([2.60])
2 AC_INIT([OpenAFS],[m4_esyscmd(build-tools/git-version .)],[openafs-bugs@openafs.org],[],[http://www.openafs.org/])
3 AC_CONFIG_AUX_DIR([build-tools])
4 AC_CONFIG_MACRO_DIR([src/cf])
5 AC_CONFIG_SRCDIR([src/config/stds.h])
6
7 AC_CONFIG_HEADER([src/config/afsconfig.h])
8 MACOS_VERSION=1.8.5
9 LINUX_PKGREL=1.8.5
10
11 AC_SUBST([MACOS_VERSION])
12
13 dnl If the user hasn't specified CFLAGS don't let configure pick -g -O2
14 AS_IF([test -z "$CFLAGS"], [CFLAGS=" "])
15
16 AC_USE_SYSTEM_EXTENSIONS
17
18 AFS_LT_INIT
19
20 AC_PROG_CC
21
22 AC_PATH_PROGS([PATH_CPP], [cpp], [${CC-cc} -E], [$PATH:/lib:/usr/ccs/lib])
23 AC_SUBST([PATH_CPP])
24 OPENAFS_CONFIGURE_COMMON
25
26 dnl Probe for Kerberos. We have a few platform-specific overrides due to
27 dnl weird Kerberos implementations and installation locations.
28 AS_CASE([$AFS_SYSNAME],
29 [*_obsd*],
30 [KRB5_CPPFLAGS="-I/usr/include/kerberosV"],
31
32 [ppc_darwin_70],
33 [KRB5_CPPFLAGS="-I/usr/include"
34 KRB5_LDFLAGS="-L/usr/lib -Wl,-search_paths_first"])
35 RRA_LIB_KRB5_OPTIONAL
36 AS_CASE([$AFS_SYSNAME],
37 [hp_ux*|*_hpux*],
38 [KRB5_LIBS="-l:libkrb5.sl -l:libcom_err.sl"])
39
40 dnl Check for the characteristics of whatever Kerberos we found, if we found
41 dnl one.
42 BUILD_KRB5=no
43 MAKE_KRB5="#"
44 AS_IF([test x"$KRB5_LIBS" != x],
45 [BUILD_KRB5=yes
46 MAKE_KRB5=
47 RRA_LIB_KRB5_SWITCH
48 AC_CHECK_FUNCS([add_error_table \
49 add_to_error_table \
50 encode_krb5_enc_tkt_part \
51 encode_krb5_ticket \
52 krb5_524_conv_principal \
53 krb5_allow_weak_crypto \
54 krb5_c_encrypt \
55 krb5_decode_ticket \
56 krb5_enctype_enable \
57 krb5_free_keytab_entry_contents \
58 krb5_free_unparsed_name \
59 krb5_get_init_creds_opt_alloc \
60 krb5_get_prompt_types \
61 krb5_princ_size \
62 krb5_principal_get_comp_string])
63 AC_CHECK_FUNCS([krb5_524_convert_creds], [],
64 [AC_CHECK_FUNCS([krb524_convert_creds_kdc], [],
65 [AC_CHECK_LIB([krb524], [krb524_convert_creds_kdc],
66 [LIBS="-lkrb524 $LIBS"
67 KRB5_LIBS="-lkrb524 $KRB5_LIBS"
68 AC_CHECK_LIB([krb524], [krb5_524_conv_principal],
69 [AC_DEFINE([HAVE_KRB5_524_CONV_PRINCIPAL], [1],
70 [Define to 1 if you have the `krb5_524_conv_principal' function.])
71 ])
72 AC_DEFINE([HAVE_KRB524_CONVERT_CREDS_KDC], [1],
73 [Define to 1 if you have the `krb524_convert_creds_kdc' function.])
74 ])
75 ])
76 ])
77 AC_CHECK_HEADERS([kerberosIV/krb.h])
78 AC_CHECK_HEADERS([kerberosV/heim_err.h])
79 AC_CHECK_HEADERS([com_err.h et/com_err.h krb5/com_err.h])
80 AS_IF([test x"$ac_cv_header_com_err_h" != xyes \
81 && test x"$ac_cv_header_et_com_err_h" != xyes \
82 && test x"$ac_cv_header_krb5_com_err_h" != xyes],
83 [AC_MSG_ERROR([Cannot find a usable com_err.h])])
84 AC_CHECK_MEMBERS([krb5_creds.keyblock, krb5_creds.keyblock.enctype, krb5_creds.session,
85 krb5_prompt.type], [], [], [#include <krb5.h>])
86 AC_CHECK_MEMBERS([krb5_keytab_entry.key, krb5_keytab_entry.keyblock],
87 [], [], [#include <krb5.h>])
88 dnl If we have krb5_creds.session, we are using heimdal
89 dnl If we're using heimdal, aklog needs libasn1 for encode_EncTicketPart and a
90 dnl few other functions. But just aklog; not any of the other stuff that uses
91 dnl krb5.
92 AS_IF([test x"$ac_cv_member_krb5_creds_session" = xyes],
93 [AC_CHECK_LIB([asn1], [encode_EncTicketPart],
94 [AKLOG_KRB5_LIBS="-lasn1"])
95 ])
96 RRA_LIB_KRB5_RESTORE
97 ])
98 AC_SUBST([BUILD_KRB5])
99 AC_SUBST([MAKE_KRB5])
100 AC_SUBST([AKLOG_KRB5_LIBS])
101
102 dnl Probe for GSSAPI
103 RRA_LIB_GSSAPI
104 dnl Check for the characteristics of whatever GSSAPI we found, if we found one
105 BUILD_GSSAPI=no
106 AS_IF([test x"$GSSAPI_LIBS" != x],
107 [BUILD_GSSAPI=yes
108 ])
109 AC_SUBST([BUILD_GSSAPI])
110
111 dnl Checks for summary
112 OPENAFS_SUMMARY_CHECK_NAMEI
113
114 AS_IF([test -d 'doc/man-pages'],
115 [MAN_MAKEFILE="doc/man-pages/Makefile doc/man-pages/install-man"],
116 [MAN_MAKEFILE=])
117 AS_IF([test -f 'doc/xml/AdminGuide/Makefile.in'],
118 [ADMINGUIDE_MAKEFILE="doc/xml/AdminGuide/Makefile"],
119 [ADMINGUIDE_MAKEFILE=])
120 AS_IF([test -f 'doc/xml/QuickStartUnix/Makefile.in'],
121 [QSUNIX_MAKEFILE="doc/xml/QuickStartUnix/Makefile"],
122 [QSUNIX_MAKEFILE=])
123 AS_IF([test -f 'doc/xml/UserGuide/Makefile.in'],
124 [USERGUIDE_MAKEFILE="doc/xml/UserGuide/Makefile"],
125 [USERGUIDE_MAKEFILE=])
126 AS_IF([test -f 'doc/xml/AdminRef/Makefile.in'],
127 [ADMINREF_MAKEFILE="doc/xml/AdminRef/Makefile"],
128 [ADMINREF_MAKEFILE=])
129 AS_IF([test -f 'doc/xml/mobi-fixup.xsl.in'],
130 [MOBI_FIXUP_XSL="doc/xml/mobi-fixup.xsl"],
131 [MOBI_FIXUP_XSL=])
132 AS_IF([test -f 'doc/doxygen/Doxyfile.in'],
133 [DOXYFILE="doc/doxygen/Doxyfile"],
134 [DOXYFILE=])
135
136 AC_CONFIG_FILES([
137 Makefile
138 ${MAN_MAKEFILE}
139 ${ADMINGUIDE_MAKEFILE}
140 ${QSUNIX_MAKEFILE}
141 ${USERGUIDE_MAKEFILE}
142 ${ADMINREF_MAKEFILE}
143 ${MOBI_FIXUP_XSL}
144 ${DOXYFILE}
145 src/afs/Makefile
146 src/afsd/Makefile
147 src/afsmonitor/Makefile
148 src/afsweb/Makefile
149 src/aklog/Makefile
150 src/audit/Makefile
151 src/auth/Makefile
152 src/auth/test/Makefile
153 src/bozo/Makefile
154 src/bozo/test/Makefile
155 src/bu_utils/Makefile
156 src/bubasics/Makefile
157 src/bucoord/Makefile
158 src/budb/Makefile
159 src/tbudb/Makefile
160 src/butc/Makefile
161 src/butm/Makefile
162 src/cmd/Makefile
163 src/cmd/test/Makefile
164 src/comerr/Makefile
165 src/comerr/test/Makefile
166 src/config/Makefile
167 src/config/Makefile.config
168 src/config/Makefile.libtool
169 src/config/Makefile.lwp
170 src/config/Makefile.lwptool
171 src/config/Makefile.pthread
172 src/config/Makefile.version-CML
173 src/config/Makefile.version-NOCML
174 src/config/cc-wrapper
175 src/config/shlib-build
176 src/config/shlib-install
177 src/crypto/hcrypto/Makefile
178 src/crypto/rfc3961/Makefile
179 src/dir/Makefile
180 src/dir/test/Makefile
181 src/dviced/Makefile
182 src/dvolser/Makefile
183 src/export/Makefile
184 src/finale/Makefile
185 src/fsint/Makefile
186 src/fsprobe/Makefile
187 src/gtx/Makefile
188 src/JAVA/libjafs/Makefile
189 src/kauth/Makefile
190 src/kauth/test/Makefile
191 src/kopenafs/Makefile
192 src/libacl/Makefile
193 src/libacl/test/Makefile
194 src/libadmin/Makefile
195 src/libadmin/adminutil/Makefile
196 src/libadmin/bos/Makefile
197 src/libadmin/cfg/Makefile
198 src/libadmin/cfg/test/Makefile
199 src/libadmin/client/Makefile
200 src/libadmin/kas/Makefile
201 src/libadmin/pts/Makefile
202 src/libadmin/samples/Makefile
203 src/libadmin/test/Makefile
204 src/libadmin/vos/Makefile
205 src/libafs/Makefile.common
206 src/libafs/MakefileProto.${MKAFS_OSTYPE}
207 ${DARWIN_PLIST}
208 src/libafsauthent/Makefile
209 src/libafsrpc/Makefile
210 src/libuafs/Makefile.common
211 src/libuafs/MakefileProto.${MKAFS_OSTYPE}
212 src/log/Makefile
213 src/log/test/Makefile
214 src/lwp/Makefile
215 src/lwp/test/Makefile
216 src/opr/Makefile
217 src/packaging/MacOS/OpenAFS-debug.Description.plist
218 src/packaging/MacOS/OpenAFS-debug.Info.plist
219 src/packaging/MacOS/OpenAFS.Description.plist
220 src/packaging/MacOS/OpenAFS.Info.plist
221 src/packaging/MacOS/OpenAFS.info
222 src/packaging/MacOS/buildpkg.sh
223 src/packaging/MacOS/pkgbuild.sh
224 src/pam/Makefile
225 src/platform/Makefile
226 src/platform/${MKAFS_OSTYPE}/Makefile
227 src/platform/DARWIN/growlagent/Makefile
228 src/procmgmt/Makefile
229 src/procmgmt/test/Makefile
230 src/ptserver/Makefile
231 src/tptserver/Makefile
232 src/roken/Makefile
233 src/rx/Makefile
234 src/rx/bulk.example/Makefile
235 src/rx/bulktest/Makefile
236 src/rx/multi.example/Makefile
237 src/rx/simple.example/Makefile
238 src/rx/test/Makefile
239 src/rxdebug/Makefile
240 src/rxgen/Makefile
241 src/rxkad/Makefile
242 src/rxkad/test/Makefile
243 src/rxosd/Makefile
244 src/rxstat/Makefile
245 src/scout/Makefile
246 src/sys/Makefile
247 src/tbutc/Makefile
248 src/tests/Makefile
249 src/tests/run-tests
250 src/tools/Makefile
251 src/tools/dumpscan/Makefile
252 src/tools/rxperf/Makefile
253 src/tsalvaged/Makefile
254 src/tsm41/Makefile
255 src/tvolser/Makefile
256 src/ubik/Makefile
257 src/tubik/Makefile
258 src/update/Makefile
259 src/usd/Makefile
260 src/usd/test/Makefile
261 src/uss/Makefile
262 src/util/Makefile
263 src/util/test/Makefile
264 src/libafscp/Makefile
265 src/venus/Makefile
266 src/venus/test/Makefile
267 src/vfsck/Makefile
268 src/viced/Makefile
269 src/vlserver/Makefile
270 src/tvlserver/Makefile
271 src/vol/Makefile
272 src/vol/test/Makefile
273 src/volser/Makefile
274 src/xstat/Makefile
275 src/helper-splint.sh
276 tests/Makefile
277 tests/auth/Makefile
278 tests/cmd/Makefile
279 tests/common/Makefile
280 tests/opr/Makefile
281 tests/rpctestlib/Makefile
282 tests/rx/Makefile
283 tests/tap/Makefile
284 tests/util/Makefile
285 tests/volser/Makefile])
286 AC_CONFIG_COMMANDS([default],[chmod a+x src/config/shlib-build
287 chmod a+x src/config/shlib-install
288 chmod a+x src/config/cc-wrapper],[])
289 AC_OUTPUT
290
291 # print a final summary
292 OPENAFS_SUMMARY