changeset 10773:f5c827c58c0d

Avoid using AC_CHECK_DECL inside AC_CACHE_CHECK.
author Bruno Haible <bruno@clisp.org>
date Sat, 08 Nov 2008 15:05:16 +0100
parents 7bba9893a5aa
children 84a8612b66c0
files ChangeLog m4/sys_ioctl_h.m4
diffstat 2 files changed, 12 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2008-11-07  Bruno Haible  <bruno@clisp.org>
+
+	* m4/sys_ioctl_h.m4 (gl_SYS_IOCTL_H): Avoid using AC_CHECK_DECL inside
+	AC_CACHE_CHECK.
+
 2008-11-07  Bruno Haible  <bruno@clisp.org>
 
 	* modules/select-tests (configure.ac): Check for unistd.h, sys/wait.h.
--- a/m4/sys_ioctl_h.m4
+++ b/m4/sys_ioctl_h.m4
@@ -1,4 +1,4 @@
-# sys_ioctl_h.m4 serial 1
+# sys_ioctl_h.m4 serial 2
 dnl Copyright (C) 2008 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -19,10 +19,13 @@
     dnl header file, such as <unistd.h> or <stropts.h>, is needed for that.
     AC_CACHE_CHECK([whether <sys/ioctl.h> declares ioctl],
       [gl_cv_decl_ioctl_in_sys_ioctl_h],
-      [AC_CHECK_DECL([ioctl],
+      [dnl We cannot use AC_CHECK_DECL because it produces its own messages.
+       AC_COMPILE_IFELSE(
+         [AC_LANG_PROGRAM(
+            [AC_INCLUDES_DEFAULT([#include <sys/ioctl.h>])],
+            [(void) ioctl;])],
          [gl_cv_decl_ioctl_in_sys_ioctl_h=yes],
-         [gl_cv_decl_ioctl_in_sys_ioctl_h=no],
-         [#include <sys/ioctl.h>])
+         [gl_cv_decl_ioctl_in_sys_ioctl_h=no])
       ])
     if test $gl_cv_decl_ioctl_in_sys_ioctl_h != yes; then
       SYS_IOCTL_H='sys/ioctl.h'