| 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 |