Check for chsize.

Link with ftruncate.o unconditionally if ftruncate is missing.
This was required when cross-compiling to i586-mingw32msvc.
This commit is contained in:
Jim Meyering 2001-04-21 14:08:00 +00:00
parent 7f9d95c41d
commit 9c52203523

View File

@ -1,27 +1,14 @@
#serial 2 #serial 3
# See if we need to emulate a missing ftruncate function using fcntl. # See if we need to emulate a missing ftruncate function using fcntl or chsize.
AC_DEFUN(jm_FUNC_FTRUNCATE, AC_DEFUN(jm_FUNC_FTRUNCATE,
[ [
AC_CHECK_FUNCS(ftruncate, , [ftruncate_missing=yes]) AC_CHECK_FUNCS(ftruncate, , [ftruncate_missing=yes])
if test "$ftruncate_missing" = yes; then if test "$ftruncate_missing" = yes; then
AC_CHECK_HEADERS(unistd.h) AC_CHECK_HEADERS([unistd.h])
AC_MSG_CHECKING([fcntl emulation of ftruncate]) AC_CHECK_FUNCS([chsize])
AC_CACHE_VAL(fu_cv_sys_ftruncate_emulation, AC_LIBOBJ(ftruncate)
[AC_TRY_LINK([
#include <sys/types.h>
#include <fcntl.h>], [
#if !defined(F_CHSIZE) && !defined(F_FREESP)
chsize();
#endif
],
fu_cv_sys_ftruncate_emulation=yes,
fu_cv_sys_ftruncate_emulation=no)])
AC_MSG_RESULT($fu_cv_sys_ftruncate_emulation)
if test $fu_cv_sys_ftruncate_emulation = yes; then
AC_LIBOBJ(ftruncate)
fi
fi fi
]) ])