Next: Generic Structures, Up: Structures
The following macros check for certain structures or structure members.
Perform all the actions of
AC_HEADER_DIRENT(see Particular Headers). Then, ifstruct direntcontains ad_inomember, defineHAVE_STRUCT_DIRENT_D_INO.
HAVE_STRUCT_DIRENT_D_INOindicates only the presence ofd_ino, not whether its contents are always reliable. Traditionally, a zerod_inoindicated a deleted directory entry, though current systems hide this detail from the user and never return zerod_inovalues. Many current systems report an incorrectd_inofor a directory entry that is a mount point.
Perform all the actions of
AC_HEADER_DIRENT(see Particular Headers). Then, ifstruct direntcontains ad_typemember, defineHAVE_STRUCT_DIRENT_D_TYPE.
If
struct statcontains anst_blksizemember, defineHAVE_STRUCT_STAT_ST_BLKSIZE. The former name,HAVE_ST_BLKSIZEis to be avoided, as its support will cease in the future. This macro is obsoleted, and should be replaced byAC_CHECK_MEMBERS([struct stat.st_blksize])
If
struct statcontains anst_blocksmember, defineHAVE_STRUCT_STAT_ST_BLOCKS. Otherwise, require anAC_LIBOBJreplacement of `fileblocks'. The former name,HAVE_ST_BLOCKSis to be avoided, as its support will cease in the future.
If
struct statcontains anst_rdevmember, defineHAVE_STRUCT_STAT_ST_RDEV. The former name for this macro,HAVE_ST_RDEV, is to be avoided as it will cease to be supported in the future. Actually, even the new macro is obsolete and should be replaced by:AC_CHECK_MEMBERS([struct stat.st_rdev])