summaryrefslogtreecommitdiff
path: root/m4
diff options
context:
space:
mode:
authorEric Blake <ebb9@byu.net>2009-11-18 22:14:39 -0700
committerEric Blake <ebb9@byu.net>2009-11-20 07:12:32 -0700
commitaddbb8a80994c7133922f2904dfb929481a3ac17 (patch)
tree1a487d36c3124333c3ef0527d6b8611c4d3aeb4e /m4
parenta905b35027f406a031a844995b32b7b9291d0336 (diff)
downloadgnulib-addbb8a80994c7133922f2904dfb929481a3ac17.tar.gz
nanosleep: improve port to mingw
test-nanosleep failed to link, and exposed a need for argument validation when nanosleep is missing. * lib/nanosleep.c (rpl_nanosleep): Reject invalid arguments. * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Incorporate LIBSOCKET into LIB_NANOSLEEP, but only when needed. * modules/select (Link): Document LIBSOCKET. * m4/select.m4 (gl_FUNC_SELECT): Ensure LIBSOCKET is defined early enough.
Diffstat (limited to 'm4')
-rw-r--r--m4/nanosleep.m410
-rw-r--r--m4/select.m43
2 files changed, 11 insertions, 2 deletions
diff --git a/m4/nanosleep.m4 b/m4/nanosleep.m4
index 211b367a01..2251e935e7 100644
--- a/m4/nanosleep.m4
+++ b/m4/nanosleep.m4
@@ -1,4 +1,4 @@
-# serial 29
+# serial 30
dnl From Jim Meyering.
dnl Check for the nanosleep function.
@@ -18,6 +18,7 @@ AC_DEFUN([gl_FUNC_NANOSLEEP],
AC_REQUIRE([gl_HEADER_TIME_H_DEFAULTS])
AC_CHECK_HEADERS_ONCE([sys/time.h])
+ AC_REQUIRE([gl_FUNC_SELECT])
nanosleep_save_libs=$LIBS
@@ -102,6 +103,13 @@ AC_DEFUN([gl_FUNC_NANOSLEEP],
if test "$gl_cv_func_nanosleep" = 'no (mishandles large arguments)'; then
AC_DEFINE([HAVE_BUG_BIG_NANOSLEEP], [1],
[Define to 1 if nanosleep mishandles large arguments.])
+ else
+ for ac_lib in $LIBSOCKET; do
+ case " $LIB_NANOSLEEP " in
+ *" $ac_lib "*) ;;
+ *) LIB_NANOSLEEP="$LIB_NANOSLEEP $ac_lib";;
+ esac
+ done
fi
AC_LIBOBJ([nanosleep])
gl_PREREQ_NANOSLEEP
diff --git a/m4/select.m4 b/m4/select.m4
index 53cc059656..d801c38f4d 100644
--- a/m4/select.m4
+++ b/m4/select.m4
@@ -1,4 +1,4 @@
-# select.m4 serial 2
+# select.m4 serial 3
dnl Copyright (C) 2009 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@@ -8,6 +8,7 @@ AC_DEFUN([gl_FUNC_SELECT],
[
AC_REQUIRE([gl_HEADER_SYS_SELECT])
AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
+ AC_REQUIRE([gl_SOCKETS])
if test "$ac_cv_header_winsock2_h" = yes; then
AC_LIBOBJ([select])
else