📄 aclocal.m4
字号:
a = b;], [ac_cv_type_va_list_array=no], [ac_cv_type_va_list_array=yes])]) if test $ac_cv_type_va_list_array = yes; then AC_DEFINE(VA_LIST_IS_ARRAY)fi])dnl Checks if quotactl is present as ioctldnl Defines HAVE_QUOTAIOCTL on success.AC_DEFUN(AC_FUNC_QUOTAIOCTL,[AC_CACHE_CHECK([if quotactl is an ioctl], ac_cv_func_quotaioctl, [AC_TRY_LINK([#include <sys/types.h>#include <sys/fs/ufs_quota.h>], [struct quotctl q; ioctl(0, Q_QUOTACTL, &q)], [ac_cv_func_quotaioctl=yes], [ac_cv_func_quotaioctl=no])]) if test $ac_cv_func_quotaioctl = yes; then AC_DEFINE(HAVE_QUOTAIOCTL)fi])dnl Checks if function __dtoa() is availablednl Defines HAVE_DTOA on success.AC_DEFUN(AC_FUNC_DTOA,[AC_CACHE_CHECK([for __dtoa], ac_cv_func_dtoa, [AC_TRY_LINK([extern char *__dtoa();], [int decpt; int sign; char *ep; char *bp;bp = __dtoa(0.0, 2, 6, &decpt, &sign, &ep);], [ac_cv_func_dtoa=yes], [ac_cv_func_dtoa=no])])if test $ac_cv_func_dtoa = yes; then AC_DEFINE(HAVE_DTOA)fi])dnl Checks if working ecvt() existsdnl Defines HAVE_ECVT on success.AC_DEFUN(AC_FUNC_ECVT,[AC_CACHE_CHECK([for working ecvt() ], ac_cv_func_ecvt, [AC_TRY_RUN([sprintf(s) char *s;{ strcpy(s, "DEAD");}main(){ int a, b;/* exit (strcmp("DEAD", ecvt(1.9, 2, &a, &b)) == 0);*/ exit (strcmp("19", ecvt(1.9, 2, &a, &b)) != 0);}], [ac_cv_func_ecvt=yes], [ac_cv_func_ecvt=no])])if test $ac_cv_func_ecvt = yes; then AC_DEFINE(HAVE_ECVT)fi])dnl Checks if working fcvt() existsdnl Defines HAVE_FCVT on success.AC_DEFUN(AC_FUNC_FCVT,[AC_CACHE_CHECK([for working fcvt() ], ac_cv_func_fcvt, [AC_TRY_RUN([sprintf(s) char *s;{ strcpy(s, "DEAD");}main(){ int a, b;/* exit (strcmp("DEAD", fcvt(1.9, 2, &a, &b)) == 0);*/ exit (strcmp("190", fcvt(1.9, 2, &a, &b)) != 0);}], [ac_cv_func_fcvt=yes], [ac_cv_func_fcvt=no])])if test $ac_cv_func_fcvt = yes; then AC_DEFINE(HAVE_FCVT)fi])dnl Checks if working gcvt() existsdnl Defines HAVE_GCVT on success.AC_DEFUN(AC_FUNC_GCVT,[AC_CACHE_CHECK([for working gcvt() ], ac_cv_func_gcvt, [AC_TRY_RUN([sprintf(s) char *s;{ strcpy(s, "DEAD");}main(){ char buf[32];/* exit (strcmp("DEAD", gcvt(1.9, 10, buf)) == 0);*/ exit (strcmp("1.9", gcvt(1.9, 10, buf)) != 0);}], [ac_cv_func_gcvt=yes], [ac_cv_func_gcvt=no])])if test $ac_cv_func_gcvt = yes; then AC_DEFINE(HAVE_GCVT)fi])dnl Checks if function uname() is availablednl Defines HAVE_UNAME on success.AC_DEFUN(AC_FUNC_UNAME,[AC_CACHE_CHECK([for uname], ac_cv_func_uname, [AC_TRY_LINK([#include <sys/utsname.h>], [struct utsname un;uname(&un);], [ac_cv_func_uname=yes], [ac_cv_func_uname=no])])if test $ac_cv_func_uname = yes; then AC_DEFINE(HAVE_UNAME)fi])dnl Checks if function mlockall() is availablednl beware HP-UX 10.x it contains a bad mlockall() in libcdnl Defines HAVE_MLOCKALL on success.AC_DEFUN(AC_FUNC_MLOCKALL,[AC_CACHE_CHECK([for mlockall], ac_cv_func_mlockall, [AC_TRY_RUN([#include <sys/types.h>#include <sys/mman.h>#include <errno.h>main(){ if (mlockall(MCL_CURRENT|MCL_FUTURE) < 0) { if (errno == EPERM || errno == EACCES) exit(0); exit(-1); } exit(0);}], [ac_cv_func_mlockall=yes], [ac_cv_func_mlockall=no])])if test $ac_cv_func_mlockall = yes; then AC_DEFINE(HAVE_MLOCKALL)fi])dnl Checks if mmap() works to get shared memorydnl Defines HAVE_SMMAP on success.AC_DEFUN(AC_FUNC_SMMAP,[AC_CACHE_CHECK([if mmap works to get shared memory], ac_cv_func_smmap, [AC_TRY_RUN([#include <sys/types.h>#include <sys/mman.h>char *mkshare(){ int size = 8192; int f; char *addr;#ifdef MAP_ANONYMOUS /* HP/UX */ f = -1; addr = mmap(0, size, PROT_READ|PROT_WRITE, MAP_SHARED|MAP_ANONYMOUS, f, 0);#else if ((f = open("/dev/zero", 2)) < 0) exit(1); addr = mmap(0, size, PROT_READ|PROT_WRITE, MAP_SHARED, f, 0);#endif if (addr == (char *)-1) exit(1); close(f); return (addr);}main(){ char *addr; addr = mkshare(8192); *addr = 'I'; switch (fork()) { case -1: printf("help\n"); exit(1); case 0: /* child */ *addr = 'N'; _exit(0); break; default: /* parent */ wait(0); sleep(1); break; } if (*addr != 'N') exit(1); exit(0);}], [ac_cv_func_smmap=yes], [ac_cv_func_smmap=no], [ac_cv_func_smmap=no])])if test $ac_cv_func_smmap = yes; then AC_DEFINE(HAVE_SMMAP)fi])dnl Checks if sys_siglist[] existsdnl Defines HAVE_SYS_SIGLIST on success.AC_DEFUN(AC_FUNC_SYS_SIGLIST,[AC_CACHE_CHECK([for sys_siglist], ac_cv_func_sys_siglist, [AC_TRY_RUN([main(){ extern char *sys_siglist[];if (sys_siglist[1] == 0) exit(1);exit(0);}], [ac_cv_func_sys_siglist=yes], [ac_cv_func_sys_siglist=no])])if test $ac_cv_func_sys_siglist = yes; then AC_DEFINE(HAVE_SYS_SIGLIST)fi])dnl Checks for maximum number of bits in minor device numberAC_DEFUN(AC_CHECK_MINOR_BITS,[AC_REQUIRE([AC_HEADER_MAKEDEV])dnlchangequote(<<, >>)dnldefine(<<AC_MACRO_NAME>>, DEV_MINOR_BITS)dnldnl The cache variable name.define(<<AC_CV_NAME>>, ac_cv_dev_minor_bits)dnlchangequote([, ])dnlAC_MSG_CHECKING(bits in minor device number)AC_CACHE_VAL(AC_CV_NAME,[AC_TRY_RUN([#include <stdio.h>#include <sys/types.h>#ifdef major# define _FOUND_MAJOR_#endif#ifdef MAJOR_IN_MKDEV# include <sys/mkdev.h># define _FOUND_MAJOR_#endif#ifndef _FOUND_MAJOR_# ifdef MAJOR_IN_SYSMACROS# include <sys/sysmacros.h># define _FOUND_MAJOR_# endif#endif#ifndef _FOUND_MAJOR_# if defined(hpux) || defined(__hpux__) || defined(__hpux)# include <sys/mknod.h># define _FOUND_MAJOR_# endif#endif#ifndef _FOUND_MAJOR_# define major(dev) (((dev) >> 8) & 0xFF)# define minor(dev) ((dev) & 0xFF)# define makedev(majo, mino) (((majo) << 8) | (mino))#endifmain(){ long l = 1; int i; int m; int c = 0; FILE *f=fopen("conftestval", "w"); if (!f) exit(1); for (i=1, m=0; i <= 32; i++, l<<=1) { if (minor(l) == 0 && c == 0) c = m; if (minor(l) != 0) m = i; } fprintf(f, "%d\n", m); exit(0);}], AC_CV_NAME=`cat conftestval`, AC_CV_NAME=0, ifelse([$2], , , AC_CV_NAME=$2))])dnlAC_MSG_RESULT($AC_CV_NAME)AC_DEFINE_UNQUOTED(AC_MACRO_NAME, $AC_CV_NAME)undefine([AC_MACRO_NAME])dnlundefine([AC_CV_NAME])dnl])dnl Checks for maximum number of bits in minor device numbers are non contiguousdnl Defines DEV_MINOR_NONCONTIG on success.AC_DEFUN(AC_CHECK_MINOR_NONCONTIG,[AC_REQUIRE([AC_HEADER_MAKEDEV])dnlAC_CACHE_CHECK([whether bits in minor device numbers are non contiguous], ac_cv_dev_minor_noncontig, [AC_TRY_RUN([#include <sys/types.h>#ifdef major# define _FOUND_MAJOR_#endif#ifdef MAJOR_IN_MKDEV# include <sys/mkdev.h># define _FOUND_MAJOR_#endif#ifndef _FOUND_MAJOR_# ifdef MAJOR_IN_SYSMACROS# include <sys/sysmacros.h># define _FOUND_MAJOR_# endif#endif#ifndef _FOUND_MAJOR_# if defined(hpux) || defined(__hpux__) || defined(__hpux)# include <sys/mknod.h># define _FOUND_MAJOR_# endif#endif#ifndef _FOUND_MAJOR_# define major(dev) (((dev) >> 8) & 0xFF)# define minor(dev) ((dev) & 0xFF)# define makedev(majo, mino) (((majo) << 8) | (mino))#endifmain(){ long l = 1; int i; int m; int c = 0; for (i=1, m=0; i <= 32; i++, l<<=1) { if (minor(l) == 0 && c == 0) c = m; if (minor(l) != 0) m = i; }exit (m == c);}], [ac_cv_dev_minor_noncontig=yes], [ac_cv_dev_minor_noncontig=no])])if test $ac_cv_dev_minor_noncontig = yes; then AC_DEFINE(DEV_MINOR_NONCONTIG)fi])
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -