[BACK]Return to select.m4 CVS log [TXT][DIR] Up to [local] / OpenXM_contrib / gnuplot / m4

Annotation of OpenXM_contrib/gnuplot/m4/select.m4, Revision 1.1.1.1

1.1       maekawa     1: dnl testing new version of FUNC_SELECT
                      2:
                      3: AC_DEFUN(AC_FUNC_SELECT,
                      4: [AC_CHECK_FUNCS(select)
                      5: if test "$ac_cv_func_select" = yes; then
                      6:   AC_CHECK_HEADERS(unistd.h sys/types.h sys/time.h sys/select.h sys/socket.h)
                      7:   AC_MSG_CHECKING([argument types of select()])
                      8:   AC_CACHE_VAL(ac_cv_type_fd_set_size_t,dnl
                      9:     [AC_CACHE_VAL(ac_cv_type_fd_set,dnl
                     10:       [for ac_cv_type_fd_set in 'fd_set' 'int' 'void'; do
                     11:         for ac_cv_type_fd_set_size_t in 'int' 'size_t' 'unsigned long' 'unsigned'; do
                     12:          for ac_type_timeval in 'struct timeval' 'const struct timeval'; do
                     13:             AC_TRY_COMPILE(dnl
                     14: [#ifdef HAVE_SYS_TIME_H
                     15: #include <sys/time.h>
                     16: #endif
                     17: #ifdef HAVE_SYS_TYPES_H
                     18: #include <sys/types.h>
                     19: #endif
                     20: #ifdef HAVE_UNISTD_H
                     21: #include <unistd.h>
                     22: #endif
                     23: #ifdef HAVE_SYS_SELECT_H
                     24: #include <sys/select.h>
                     25: #endif
                     26: #ifdef HAVE_SYS_SOCKET_H
                     27: #include <sys/socket.h>
                     28: #endif],
                     29: [#ifdef __STDC__
                     30: extern int select ($ac_cv_type_fd_set_size_t,
                     31:  $ac_cv_type_fd_set *, $ac_cv_type_fd_set *, $ac_cv_type_fd_set *,
                     32:  $ac_type_timeval *);
                     33: #else
                     34: extern int select ();
                     35:   $ac_cv_type_fd_set_size_t s;
                     36:   $ac_cv_type_fd_set *p;
                     37:   $ac_type_timeval *t;
                     38: #endif],
                     39: [ac_found=yes ; break 3],ac_found=no)
                     40:           done
                     41:         done
                     42:       done
                     43:     ])dnl AC_CACHE_VAL
                     44:   ])dnl AC_CACHE_VAL
                     45:   if test "$ac_found" = no; then
                     46:     AC_MSG_ERROR([can't determine argument types])
                     47:   fi
                     48:
                     49:   AC_MSG_RESULT([select($ac_cv_type_fd_set_size_t,$ac_cv_type_fd_set *,...)])
                     50:   AC_DEFINE_UNQUOTED(fd_set_size_t, $ac_cv_type_fd_set_size_t,
                     51:                      [ First arg for select(). ])
                     52:   ac_cast=
                     53:   if test "$ac_cv_type_fd_set" != fd_set; then
                     54:     # Arguments 2-4 are not fd_set.  Some weirdo systems use fd_set type for
                     55:     # FD_SET macros, but insist that you cast the argument to select.  I don't
                     56:     # understand why that might be, but it means we cannot define fd_set.
                     57:     AC_EGREP_CPP(dnl
                     58: changequote(<<,>>)dnl
                     59: <<(^|[^a-zA-Z_0-9])fd_set[^a-zA-Z_0-9]>>dnl
                     60: changequote([,]),dnl
                     61: [#ifdef HAVE_SYS_TIME_H
                     62: #include <sys/time.h>
                     63: #endif
                     64: #ifdef HAVE_SYS_TYPES_H
                     65: #include <sys/types.h>
                     66: #endif
                     67: #ifdef HAVE_UNISTD_H
                     68: #include <unistd.h>
                     69: #endif
                     70: #ifdef HAVE_SYS_SELECT_H
                     71: #include <sys/select.h>
                     72: #endif
                     73: #ifdef HAVE_SYS_SOCKET_H
                     74: #include <sys/socket.h>
                     75: #endif],dnl
                     76:     # We found fd_set type in a header, need special cast
                     77:     ac_cast="($ac_cv_type_fd_set *)",dnl
                     78:     # No fd_set type; it is safe to define it
                     79:     AC_DEFINE_UNQUOTED(fd_set,$ac_cv_type_fd_set,
                     80:                        [ Define if the type in arguments 2-4 to select() is fd_set. ]))
                     81:   fi
                     82:   AC_DEFINE_UNQUOTED(SELECT_FD_SET_CAST,$ac_cast,
                     83:                      [ Define if the type in arguments 2-4 to select() is fd_set. ])
                     84: fi
                     85: ])
                     86:

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>