dnl Process this file with autoconf to produce a configure script. AC_INIT(Apache Kerberos Module, alpha2, modauthkerb-developers@lists.sourceforge.net, mod_auth_kerb) AC_CANONICAL_HOST dnl OS specific options. case "$host" in *-*-netbsd*) need_dash_r=1 ;; *-*-solaris*) need_dash_r=1 ;; esac dnl Custom args we care about. AC_ARG_WITH(api, [ --with-api=API api to use (apache1, apache2)], [ case $withval in 'apache1') ac_api=apache1 ac_apidefs="-DAPXS1" ;; 'apache2') ac_api=apache2 ac_apidefs="-DAPXS2" ;; *) AC_ERROR(You can only specify apache1 or apache2.) ;; esac ] ) AC_ARG_WITH(apxs, [ --with-apxs=PATH path to apxs], [ if test -e $withval ; then APXS="$withval" else AC_ERROR(Specified apxs path does not exist.) fi ] ) AC_ARG_WITH(static, [ --with-static module is to be statically linked], [ ac_static="yes" ] ) AC_ARG_WITH(krb5, [ --with-krb5=DIR path to Kerberos 5 install], [ CFLAGS="$CFLAGS -I$withval/include -I$withval/include/kerberosIV" CPPFLAGS="$CPPFLAGS -I$withval/include -I$withval/include/kerberosIV" LDFLAGS="$LDFLAGS -L$withval/lib" if test -n "${need_dash_r}"; then LDFLAGS="$LDFLAGS -R$withval/lib" fi ] ) AC_ARG_WITH(krb5-include, [ --with-krb5-include=DIR include path to Kerberos 5 install], [ CFLAGS="$CFLAGS -I$withval -I$withval/kerberosIV" CPPFLAGS="$CPPFLAGS -I$withval -I$withval/kerberosIV" ] ) AC_ARG_WITH(krb5-lib, [ --with-krb5-lib=DIR lib path to Kerberos 5 install], [ LDFLAGS="$LDFLAGS -L$withval" if test -n "${need_dash_r}"; then LDFLAGS="$LDFLAGS -R$withval" fi ] ) AC_ARG_ENABLE(krb5, [ --disable-krb5 force disabling of krb5 support], [ if test "$enable_krb5" = "no" ; then ac_krb5_disable="yes" fi ], ) AC_ARG_WITH(krb4, [ --with-krb4=DIR path to Kerberos 4 install], [ CFLAGS="$CFLAGS -I$withval/include" CPPFLAGS="$CPPFLAGS -I$withval/include" LDFLAGS="$LDFLAGS -L$withval/lib" if test -n "${need_dash_r}"; then LDFLAGS="$LDFLAGS -R$withval/lib" fi ] ) AC_ARG_WITH(krb4-include, [ --with-krb4-include=DIR include path to Kerberos 4 install], [ CFLAGS="$CFLAGS -I$withval" CPPFLAGS="$CPPFLAGS -I$withval" ] ) AC_ARG_WITH(krb4-lib, [ --with-krb4-lib=DIR lib path to Kerberos 4 install], [ LDFLAGS="$LDFLAGS -L$withval" if test -n "${need_dash_r}"; then LDFLAGS="$LDFLAGS -R$withval" fi ] ) AC_ARG_ENABLE(krb4, [ --disable-krb4 force disabling of krb4 support], [ if test "$enable_krb4" = "no" ; then ac_krb4_disable="yes" fi ], ) AC_ARG_WITH(gssapi, [ --with-gssapi=DIR path to GSSAPI install], [ CFLAGS="$CFLAGS -I$withval/include -I$withval/include/gssapi" CPPFLAGS="$CPPFLAGS -I$withval/include -I$withval/include/gssapi" LDFLAGS="$LDFLAGS -L$withval/lib" if test -n "${need_dash_r}"; then LDFLAGS="$LDFLAGS -R$withval/lib" fi ] ) AC_ARG_WITH(gssapi-include, [ --with-gssapi-include=DIR include path to GSSAPI install], [ CFLAGS="$CFLAGS -I$withval -I$withval/gssapi" CPPFLAGS="$CPPFLAGS -I$withval -I$withval/gssapi" ] ) AC_ARG_WITH(gssapi-lib, [ --with-gssapi-lib=DIR lib path to GSSAPI install], [ LDFLAGS="$LDFLAGS -L$withval" if test -n "${need_dash_r}"; then LDFLAGS="$LDFLAGS -R$withval" fi ] ) AC_ARG_ENABLE(gssapi, [ --disable-gssapi force disabling of gssapi support], [ if test "$enable_gssapi" = "no" ; then ac_gssapi_disable="yes" fi ] ) dnl Checks for programs. AC_PROG_CC AC_PROG_MAKE_SET if test -z "$ac_static" ; then AC_PATH_PROG(APXS, apxs) if test -z "$APXS" ; then echo "No apxs found. Defaulting to static module generation." ac_static="yes" fi fi dnl Checks for libraries. if test -z "$ac_krb5_disable" ; then AC_CHECK_LIB(krb5, krb5_get_in_tkt_with_password, [ ac_krb5="yes" ac_krbdefs="-DKRB5" ac_krblibs="-lkrb5" AC_CHECK_LIB(k5crypto, krb5_string_to_key, [ ac_krblibs="$ac_krblibs -lk5crypto" ], [ AC_CHECK_LIB(crypto, krb5_string_to_key, [ ac_krblibs="$ac_krblibs -lcrypto" ], [ ac_krblibs="" ], "-lcom_err") ], "-lcom_err") ac_krblibs="$ac_krblibs -lcom_err" if test -z "$ac_krb4_disable" ; then if test -n "$ac_krblibs" ; then AC_CHECK_LIB(krb4, krb_get_pw_in_tkt, [ ac_krb4="yes" ac_krbdefs="$ac_krbdefs -DKRB4" ac_krblibs="-lkrb4 $ac_krblibs" ],, $ac_krblibs) fi fi ],, "-lcom_err") fi if test -z "$ac_krb4_disable" -a -z "$ac_krb4" ; then AC_CHECK_LIB(krb, krb_get_pw_in_tkt, [ ac_krb4="yes" ac_krbdefs="-DKRB4" ac_krblibs="$ac_krblibs -lkrb -lcom_err" ],, "-lcom_err") fi if test -z "$ac_krb4" -a -z "$ac_krb5" ; then AC_ERROR(Neither Kerberos 5 nor 4 support available.) fi dnl Checks for header files. if test -n "$ac_krb5" ; then AC_CHECK_HEADERS(krb5.h, [ ac_foundkrb5="yes" break ]) if test -z "$ac_foundkrb5" ; then AC_MSG_RESULT(krb5.h not found... removing krb5 support.) ac_krb5="" fi fi if test -n "$ac_krb4" ; then AC_CHECK_HEADERS(kerberosIV/krb.h krb.h, [ ac_foundkrb4="yes" break ]) if test -z "$ac_foundkrb4" ; then AC_MSG_RESULT(krb.h not found... removing krb4 support.) ac_krb4="" fi fi if test -z "$ac_krb4" -a -z "$ac_krb5" ; then AC_ERROR(Neither Kerberos 5 nor 4 support available.) fi dnl Checks for typedefs, structures, and compiler characteristics. if test -z "$ac_api" ; then if test -n "`$APXS -q bindir 2> /dev/null`" ; then echo "API autodetected to be Apache 2.*" ac_api=apache2 ac_apidefs="-DAPXS2" else echo "API autodetected to be Apache 1.*" ac_api=apache1 ac_apidefs="-DAPXS1" fi fi dnl Checks for library functions. dnl Last minute settings. LIBS="$LIBS $ac_krblibs" DEFS="$DEFS $ac_apidefs $ac_krbdefs" CFLAGS="$CFLAGS $DEFS" dnl Create files necessary to compile mod_auth_kerb. if test "$ac_static" = "yes" ; then echo "" echo "" echo "This module is to be built statically into Apache. You will need" echo "to place it into the appropriate location in the source tree and" echo "compile Apache accordingly. You can look at the online docs at" echo "http://modauthkerb.sourceforge.net/ or README.static for more" echo "information." echo "" echo "" else AC_OUTPUT(Makefile) AC_OUTPUT(src/Makefile) fi exit 0