Patch from Björn Schlögl to enable disable-ness of ipv6.
authorLove Hörnquist Åstrand <lha@kth.se>
Sat, 26 Jul 2008 18:40:37 +0000 (18:40 +0000)
committerLove Hörnquist Åstrand <lha@kth.se>
Sat, 26 Jul 2008 18:40:37 +0000 (18:40 +0000)
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@23428 ec53bebd-3082-4978-b11e-865c3cabbd6b

cf/krb-ipv6.m4

index dda293a9c137f3789969b73e1d03a75db1fc8143..4fbe2d67fbc354a980ce9c3271a2002a9387345a 100644 (file)
@@ -2,94 +2,97 @@ dnl $Id$
 dnl
 dnl test for IPv6
 dnl
+ac_cv_lib_ipv6=check
+
 AC_DEFUN([AC_KRB_IPV6], [
 AC_ARG_WITH(ipv6,
        AS_HELP_STRING([--without-ipv6],[do not enable IPv6 support]),[
-if test "$withval" = "no"; then
-       ac_cv_lib_ipv6=no
-fi])
+        ac_cv_lib_ipv6="$withval"
+])
 save_CFLAGS="${CFLAGS}"
-AC_CACHE_CHECK([for IPv6 stack type], rk_cv_v6type,
-[dnl check for different v6 implementations (by itojun)
-v6type=unknown
-v6lib=none
 
-for i in v6d toshiba kame inria zeta linux; do
-       case $i in
-       v6d)
-               AC_EGREP_CPP(yes, [
+if test "X$ac_cv_lib_ipv6" != "Xno"; then
+
+       AC_CACHE_CHECK([for IPv6 stack type], rk_cv_v6type, 
+       [dnl check for different v6 implementations (by itojun)
+       v6type=unknown
+       v6lib=none
+
+       for i in v6d toshiba kame inria zeta linux; do
+               case $i in
+               v6d)
+                       AC_EGREP_CPP(yes, [
 #include </usr/local/v6/include/sys/types.h>
 #ifdef __V6D__
 yes
 #endif],
-                       [v6type=$i; v6lib=v6;
-                       v6libdir=/usr/local/v6/lib;
-                       CFLAGS="-I/usr/local/v6/include $CFLAGS"])
-               ;;
-       toshiba)
-               AC_EGREP_CPP(yes, [
+                               [v6type=$i; v6lib=v6;
+                               v6libdir=/usr/local/v6/lib;
+                               CFLAGS="-I/usr/local/v6/include $CFLAGS"])
+                       ;;
+               toshiba)
+                       AC_EGREP_CPP(yes, [
 #include <sys/param.h>
 #ifdef _TOSHIBA_INET6
 yes
 #endif],
-                       [v6type=$i; v6lib=inet6;
-                       v6libdir=/usr/local/v6/lib;
-                       CFLAGS="-DINET6 $CFLAGS"])
-               ;;
-       kame)
-               AC_EGREP_CPP(yes, [
+                               [v6type=$i; v6lib=inet6;
+                               v6libdir=/usr/local/v6/lib;
+                               CFLAGS="-DINET6 $CFLAGS"])
+                       ;;
+               kame)
+                       AC_EGREP_CPP(yes, [
 #include <netinet/in.h>
 #ifdef __KAME__
 yes
 #endif],
-                       [v6type=$i; v6lib=inet6;
-                       v6libdir=/usr/local/v6/lib;
-                       CFLAGS="-DINET6 $CFLAGS"])
-               ;;
-       inria)
-               AC_EGREP_CPP(yes, [
+                               [v6type=$i; v6lib=inet6;
+                               v6libdir=/usr/local/v6/lib;
+                               CFLAGS="-DINET6 $CFLAGS"])
+                       ;;
+               inria)
+                       AC_EGREP_CPP(yes, [
 #include <netinet/in.h>
 #ifdef IPV6_INRIA_VERSION
 yes
 #endif],
-                       [v6type=$i; CFLAGS="-DINET6 $CFLAGS"])
-               ;;
-       zeta)
-               AC_EGREP_CPP(yes, [
+                               [v6type=$i; CFLAGS="-DINET6 $CFLAGS"])
+                       ;;
+               zeta)
+                       AC_EGREP_CPP(yes, [
 #include <sys/param.h>
 #ifdef _ZETA_MINAMI_INET6
 yes
 #endif],
-                       [v6type=$i; v6lib=inet6;
-                       v6libdir=/usr/local/v6/lib;
-                       CFLAGS="-DINET6 $CFLAGS"])
-               ;;
-       linux)
-               if test -d /usr/inet6; then
-                       v6type=$i
-                       v6lib=inet6
-                       v6libdir=/usr/inet6
-                       CFLAGS="-DINET6 $CFLAGS"
-               fi
-               ;;
-       esac
-       if test "$v6type" != "unknown"; then
-               break
-       fi
-done
-
-if test "$v6lib" != "none"; then
-       for dir in $v6libdir /usr/local/v6/lib /usr/local/lib; do
-               if test -d $dir -a -f $dir/lib$v6lib.a; then
-                       LIBS="-L$dir -l$v6lib $LIBS"
+                               [v6type=$i; v6lib=inet6;
+                               v6libdir=/usr/local/v6/lib;
+                               CFLAGS="-DINET6 $CFLAGS"])
+                       ;;
+               linux)
+                       if test -d /usr/inet6; then
+                               v6type=$i
+                               v6lib=inet6
+                               v6libdir=/usr/inet6
+                               CFLAGS="-DINET6 $CFLAGS"
+                       fi
+                       ;;
+               esac
+               if test "$v6type" != "unknown"; then
                        break
                fi
        done
-fi
-])
 
-AC_CACHE_CHECK([for IPv6], rk_cv_lib_ipv6, [
-AC_LINK_IFELSE([AC_LANG_PROGRAM([[
+       if test "$v6lib" != "none"; then
+               for dir in $v6libdir /usr/local/v6/lib /usr/local/lib; do
+                       if test -d $dir -a -f $dir/lib$v6lib.a; then
+                               LIBS="-L$dir -l$v6lib $LIBS"
+                               break
+                       fi
+               done
+       fi])
+
+       AC_CACHE_CHECK([for IPv6], rk_cv_lib_ipv6, [
+       AC_LINK_IFELSE([AC_LANG_PROGRAM([[
 #ifdef HAVE_SYS_TYPES_H
 #include <sys/types.h>
 #endif
@@ -103,7 +106,7 @@ AC_LINK_IFELSE([AC_LANG_PROGRAM([[
 #include <netinet/in6.h>
 #endif
 ]],
-[[
+       [[
  struct sockaddr_in6 sin6;
  int s;
 
@@ -114,8 +117,10 @@ AC_LINK_IFELSE([AC_LANG_PROGRAM([[
  sin6.sin6_addr = in6addr_any;
  bind(s, (struct sockaddr *)&sin6, sizeof(sin6));
 ]])],
-[ac_cv_lib_ipv6=yes],
-[ac_cv_lib_ipv6=no])])
+       [ac_cv_lib_ipv6=yes],
+       [ac_cv_lib_ipv6=no])])
+fi
+
 if test "$ac_cv_lib_ipv6" = yes; then
   AC_DEFINE(HAVE_IPV6, 1, [Define if you have IPv6.])
 else