Mercurial > dovecot > core-2.2
diff configure.in @ 8022:d1da922a437d HEAD
mountpoint_get(): Added support for AIX support with mntctl().
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Sun, 20 Jul 2008 18:57:50 +0300 |
parents | 1d209ee7eead |
children | 8afc9ddd723e |
line wrap: on
line diff
--- a/configure.in Sun Jul 20 18:40:17 2008 +0300 +++ b/configure.in Sun Jul 20 18:57:50 2008 +0300 @@ -19,7 +19,8 @@ sys/uio.h sys/sysmacros.h sys/resource.h sys/select.h libgen.h \ sys/quota.h sys/fs/ufs_quota.h ufs/ufs/quota.h jfs/quota.h sys/fs/quota_common.h \ mntent.h sys/mnttab.h sys/event.h sys/time.h sys/mkdev.h linux/dqblk_xfs.h \ - xfs/xqm.h sasl.h sasl/sasl.h execinfo.h ucontext.h malloc_np.h sys/utsname.h) + xfs/xqm.h sasl.h sasl/sasl.h execinfo.h ucontext.h malloc_np.h sys/utsname.h \ + sys/vmount.h) AC_ARG_ENABLE(ipv6, [ --enable-ipv6 Enable IPv6 support (auto)], @@ -1535,6 +1536,36 @@ ]) dnl ** +dnl ** AIX mntctl +dnl ** + +if test $ac_cv_header_sys_vmount_h = yes; then + AC_MSG_CHECKING([for reasonable mntctl buffer size]) + AC_RUN_IFELSE([AC_LANG_SOURCE([[ + #include <stdio.h> + #include <stdlib.h> + #include <sys/vmount.h> + int main() { + int size,count; char *m; + FILE *f=fopen("conftestval", "w"); + if (!f) exit(1); + if ((count=mntctl(MCTL_QUERY,sizeof(size),&size))!=0 || !(m=malloc(size)) || + (count=mntctl(MCTL_QUERY,size,m))<=0) exit(1); + fprintf(f, "%d\n",(size * (count + 5))/count & ~1); /* 5 mounts more */ + exit(0); + } + ]])],[ + size=`cat conftestval` + rm -f conftestval + AC_DEFINE_UNQUOTED(STATIC_MTAB_SIZE,$size, reasonable mntctl buffer size) + AC_MSG_RESULT($size) + ],[ + AC_MSG_RESULT(default) + ]) +fi + + +dnl ** dnl ** SSL dnl **