diff options
-rw-r--r-- | lib/make/cctk_Config.h.in | 15 | ||||
-rw-r--r-- | lib/make/configure.in | 34 |
2 files changed, 46 insertions, 3 deletions
diff --git a/lib/make/cctk_Config.h.in b/lib/make/cctk_Config.h.in index 6e2383c0..a0c2bd9d 100644 --- a/lib/make/cctk_Config.h.in +++ b/lib/make/cctk_Config.h.in @@ -82,15 +82,22 @@ #undef HAVE_MODE_T +/* Do we have socklen_t ? */ + +#undef HAVE_SOCKLEN_T + /* Some include things */ #undef HAVE_TIME_H #undef HAVE_SYS_TIME_H #undef HAVE_UNISTD_H -#undef HAVE_ASSERT_H #undef HAVE_STRING_H +#undef HAVE_ASSERT_H #undef HAVE_SYS_STAT_H #undef HAVE_GETOPT_H #undef HAVE_REGEX_H +#undef HAVE_SYS_TYPES_H +#undef HAVE_SYS_SOCKET_H +#undef HAVE_WINSOCK2_H #undef TIME_WITH_SYS_TIME @@ -117,7 +124,11 @@ /* The TYPE of socklen_t if it does not exist */ -#undef CCTK_SOCKLEN_T +#ifdef HAVE_SOCKLEN_T +#define CCTK_SOCKLEN_T socklen_t +#else +#define CCTK_SOCKLEN_T int +#endif /******************************************************************************/ diff --git a/lib/make/configure.in b/lib/make/configure.in index b4677d0f..cc4e299d 100644 --- a/lib/make/configure.in +++ b/lib/make/configure.in @@ -382,11 +382,43 @@ CCTK_CHECK_HEADERS(assert.h) CCTK_CHECK_HEADERS(sys/stat.h) CCTK_CHECK_HEADERS(getopt.h) CCTK_HEADER_REGEX +CCTK_CHECK_HEADERS(sys/types.h) +CCTK_CHECK_HEADERS(sys/socket.h) +CCTK_CHECK_HEADERS(winsock2.h) AC_HEADER_TIME #Check type of socklen -CCTK_CHECK_SOCK_LENGTH_TYPE + +# Check if we have socklen_t available +AC_MSG_CHECKING([if socklen_t is defined]) +AC_CACHE_VAL(cctk_cv_have_socklen_t, +[AC_TRY_COMPILE([#include <stdio.h> +#include <stdlib.h> +#ifdef HAVE_UNISTD_H +#include <unistd.h> +#endif +#ifdef HAVE_SYS_TYPES_H +#include <sys/types.h> +#endif +#ifdef HAVE_SYS_SOCKET_H +#include <sys/socket.h> +#endif +#ifdef HAVE_WINSOCK2_H +#include <winsock2.h> +#endif], +[socklen_t foo; return 0], eval "cctk_cv_have_socklen_t=yes", +eval "cctk_cv_have_socklen_t=no") +]) +if test "$cctk_cv_have_socklen_t" = "yes"; then + AC_DEFINE(HAVE_SOCKLEN_T) + AC_MSG_RESULT(yes) +else + AC_MSG_RESULT(no) +fi + +dnl Let's see if the above does it for us. +dnl CCTK_CHECK_SOCK_LENGTH_TYPE # C++ STL stuff |