On Sun, Mar 27, 2011 at 10:34 AM, justin wrote:
> So I need one last hint, how to correct following correctly?
>
>
> #if defined (HAVE64) && !defined(AJ_MACOSXLF) && !defined(AJ_HPUXLF) &&
> !defined(AJ_FreeBSDLF) && !defined(AJ_AIXLF)
>    struct dirent64 *dp;
> #else
>    struct dirent *dp;
> #endif
>
> #if defined (HAVE64) && !defined(AJ_MACOSXLF) && !defined(AJ_HPUXLF) &&
> !defined(AJ_FreeBSDLF) && !defined(AJ_AIXLF)
>    struct stat64 sbuf;
> #else
>    struct stat sbuf;
> #endif

neither should be necessary with LFS.  if you call
AC_USE_SYSTEM_EXTENSIONS or AC_SYS_LARGEFILE, the system will take
care of translating stat into stat64 as needed.

but in practice, i guess what they'll want to do is:
 - call AC_USE_SYSTEM_EXTENSIONS at top of configure script
 - add some AC_TRY_COMPILE's:
AC_CACHE_CHECK([for stat64], ac_cv_struct_stat64,
  [AC_TRY_COMPILE([#include <sys/stat.h>],
  [struct stat64 st],
  ac_cv_struct_stat64=yes, ac_cv_struct_stat64=no)])
  if test "x$ac_cv_struct_stat64" = xyes; then
    AC_DEFINE(HAVE_STRUCT_STAT64)
  fi
 - change the code to look at HAVE_STRUCT_STAT64 instead of random
system defines

(largely untested :P)
-mike

Reply via email to