autoconf: 1999-10-04 Akim Demaille <akim@epita.fr>

https://github.com/libsdl-org/autoconf/commit/de394fe3065cd68973b95aba4c44bd81c095160d

From de394fe3065cd68973b95aba4c44bd81c095160d Mon Sep 17 00:00:00 2001
From: Akim Demaille <[EMAIL REDACTED]>
Date: Mon, 4 Oct 1999 10:42:20 +0000
Subject: [PATCH] 1999-10-04  Akim Demaille  <akim@epita.fr>

	Revert partially the previous changes: AC_CHECK_HEADERS_DIRENT is
	used by AC_HEADER_DIRENT.

	* autoheader.m4: Restablish the hook for AC_CHECK_HEADERS_DIRENT.

	* acspecific.m4 (AC_CHECK_HEADERS_DIRENT, AC_CHECK_HEADER_DIRENT):
 	Reinserted.
---
 ChangeLog                | 10 ++++++++++
 acspecific.m4            | 32 ++++++++++++++++++++++++++++++++
 autoheader.m4            |  1 +
 lib/autoconf/specific.m4 | 32 ++++++++++++++++++++++++++++++++
 4 files changed, 75 insertions(+)

diff --git a/ChangeLog b/ChangeLog
index 10b31da2..bf6372ce 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+1999-10-04  Akim Demaille  <akim@epita.fr>
+
+	Revert partially the previous changes: AC_CHECK_HEADERS_DIRENT is
+	used by AC_HEADER_DIRENT.
+
+	* autoheader.m4: Restablish the hook for AC_CHECK_HEADERS_DIRENT.
+
+	* acspecific.m4 (AC_CHECK_HEADERS_DIRENT, AC_CHECK_HEADER_DIRENT):
+ 	Reinserted.
+
 1999-10-02  Akim Demaille  <akim@epita.fr>
 
 	AC_DIR_HEADERS is hasbeen'ed.
diff --git a/acspecific.m4 b/acspecific.m4
index 19eca094..0ff1b083 100644
--- a/acspecific.m4
+++ b/acspecific.m4
@@ -839,10 +839,42 @@ else
 fi
 ])
 
+dnl Like AC_CHECK_HEADER, except also make sure that HEADER-FILE
+dnl defines the type `DIR'.  dirent.h on NextStep 3.2 doesn't.
+dnl AC_CHECK_HEADER_DIRENT(HEADER-FILE, ACTION-IF-FOUND)
+AC_DEFUN(AC_CHECK_HEADER_DIRENT,
+[ac_safe=`echo "$1" | sed 'y%./+-%__p_%'`
+AC_MSG_CHECKING([for $1 that defines DIR])
+AC_CACHE_VAL(ac_cv_header_dirent_$ac_safe,
+[AC_TRY_COMPILE([#include <sys/types.h>
+#include <$1>], [DIR *dirp = 0;],
+  eval "ac_cv_header_dirent_$ac_safe=yes",
+  eval "ac_cv_header_dirent_$ac_safe=no")])dnl
+if eval "test \"`echo '$ac_cv_header_dirent_'$ac_safe`\" = yes"; then
+  AC_MSG_RESULT(yes)
+  $2
+else
+  AC_MSG_RESULT(no)
+fi
+])
+
+dnl Like AC_CHECK_HEADERS, except succeed only for a HEADER-FILE that
+dnl defines `DIR'.
+dnl AC_CHECK_HEADERS_DIRENT(HEADER-FILE... [, ACTION])
+define(AC_CHECK_HEADERS_DIRENT,
+[for ac_hdr in $1
+do
+AC_CHECK_HEADER_DIRENT($ac_hdr,
+[changequote(, )dnl
+  ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
+changequote([, ])dnl
+  AC_DEFINE_UNQUOTED($ac_tr_hdr) $2])dnl
+done])
 
 AC_DEFUN(AC_DIR_HEADER,
 [AC_HASBEEN([$0], [; instead use AC_HEADER_DIRENT])])
 
+
 AC_DEFUN(AC_HEADER_STAT,
 [AC_CACHE_CHECK(whether stat file-mode macros are broken,
   ac_cv_header_stat_broken,
diff --git a/autoheader.m4 b/autoheader.m4
index 4a4e1ec5..b5655441 100644
--- a/autoheader.m4
+++ b/autoheader.m4
@@ -174,6 +174,7 @@ define([AC_NEED_DECLS], [AH_NEED_DECLS($@)])
 define([AC_CHECK_SIZEOF], [AH_CHECK_SIZEOF($@)])
 define([AC_CHECK_FUNCS], [AH_CHECK_FUNCS($@)])
 define([AC_CHECK_HEADERS], [AH_CHECK_HEADERS($@)])
+define([AC_CHECK_HEADERS_DIRENT], [AH_CHECK_HEADERS($@)])
 define([AC_CHECK_LIB], [AH_CHECK_LIB($@)])
 define([AC_PROG_LEX], [AH_PROG_LEX($@)])
 define([AC_FUNC_ALLOCA], [AH_FUNC_ALLOCA($@)])
diff --git a/lib/autoconf/specific.m4 b/lib/autoconf/specific.m4
index 19eca094..0ff1b083 100644
--- a/lib/autoconf/specific.m4
+++ b/lib/autoconf/specific.m4
@@ -839,10 +839,42 @@ else
 fi
 ])
 
+dnl Like AC_CHECK_HEADER, except also make sure that HEADER-FILE
+dnl defines the type `DIR'.  dirent.h on NextStep 3.2 doesn't.
+dnl AC_CHECK_HEADER_DIRENT(HEADER-FILE, ACTION-IF-FOUND)
+AC_DEFUN(AC_CHECK_HEADER_DIRENT,
+[ac_safe=`echo "$1" | sed 'y%./+-%__p_%'`
+AC_MSG_CHECKING([for $1 that defines DIR])
+AC_CACHE_VAL(ac_cv_header_dirent_$ac_safe,
+[AC_TRY_COMPILE([#include <sys/types.h>
+#include <$1>], [DIR *dirp = 0;],
+  eval "ac_cv_header_dirent_$ac_safe=yes",
+  eval "ac_cv_header_dirent_$ac_safe=no")])dnl
+if eval "test \"`echo '$ac_cv_header_dirent_'$ac_safe`\" = yes"; then
+  AC_MSG_RESULT(yes)
+  $2
+else
+  AC_MSG_RESULT(no)
+fi
+])
+
+dnl Like AC_CHECK_HEADERS, except succeed only for a HEADER-FILE that
+dnl defines `DIR'.
+dnl AC_CHECK_HEADERS_DIRENT(HEADER-FILE... [, ACTION])
+define(AC_CHECK_HEADERS_DIRENT,
+[for ac_hdr in $1
+do
+AC_CHECK_HEADER_DIRENT($ac_hdr,
+[changequote(, )dnl
+  ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
+changequote([, ])dnl
+  AC_DEFINE_UNQUOTED($ac_tr_hdr) $2])dnl
+done])
 
 AC_DEFUN(AC_DIR_HEADER,
 [AC_HASBEEN([$0], [; instead use AC_HEADER_DIRENT])])
 
+
 AC_DEFUN(AC_HEADER_STAT,
 [AC_CACHE_CHECK(whether stat file-mode macros are broken,
   ac_cv_header_stat_broken,