summaryrefslogtreecommitdiff
path: root/m4
diff options
context:
space:
mode:
authorJim Meyering <jim@meyering.net>1997-09-01 02:15:13 +0000
committerJim Meyering <jim@meyering.net>1997-09-01 02:15:13 +0000
commitda4376bb23159bc401358effaa73b480314bc9ab (patch)
treede19633289d294a1174d86aad14682f1ed53a606 /m4
parent173606dfc6e373be16e2596ea50cb4ecd2849a6a (diff)
downloadcoreutils-da4376bb23159bc401358effaa73b480314bc9ab.tar.xz
.
Diffstat (limited to 'm4')
-rw-r--r--m4/d-type.m440
1 files changed, 40 insertions, 0 deletions
diff --git a/m4/d-type.m4 b/m4/d-type.m4
new file mode 100644
index 000000000..b3838f1f5
--- /dev/null
+++ b/m4/d-type.m4
@@ -0,0 +1,40 @@
+#serial 1
+
+dnl From Jim Meyering.
+dnl
+dnl Check whether struct dirent has a member named d_type.
+dnl
+
+AC_DEFUN(jm_STRUCT_DIRENT_D_TYPE,
+ [AC_REQUIRE([AC_HEADER_DIRENT])dnl
+ AC_CACHE_CHECK([for d_type member in directory struct],
+ jm_cv_struct_dirent_d_type,
+ [AC_TRY_LINK(dnl
+ [
+#include <sys/types.h>
+#ifdef HAVE_DIRENT_H
+# include <dirent.h>
+#else /* not HAVE_DIRENT_H */
+# define dirent direct
+# ifdef HAVE_SYS_NDIR_H
+# include <sys/ndir.h>
+# endif /* HAVE_SYS_NDIR_H */
+# ifdef HAVE_SYS_DIR_H
+# include <sys/dir.h>
+# endif /* HAVE_SYS_DIR_H */
+# ifdef HAVE_NDIR_H
+# include <ndir.h>
+# endif /* HAVE_NDIR_H */
+#endif /* HAVE_DIRENT_H */
+ ],
+ [struct dirent dp; dp.d_type = 0;],
+
+ jm_cv_struct_dirent_d_type=yes,
+ jm_cv_struct_dirent_d_type=no)
+ ]
+ )
+ if test $jm_cv_struct_dirent_d_type = yes; then
+ AC_DEFINE(D_TYPE_IN_DIRENT)
+ fi
+ ]
+)