(error_at_line): Use strerror portably here, too,
[gnulib.git] / lib / fileblocks.c
index 6a421cf..1a44516 100644 (file)
@@ -1,5 +1,5 @@
 /* Convert file size to number of blocks on System V-like machines.
-   Copyright (C) 1990, 1997 Free Software Foundation, Inc.
+   Copyright (C) 1990, 1997, 1998 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
 
 /* Written by Brian L. Matthews, blm@6sceng.UUCP. */
 \f
-#ifdef HAVE_CONFIG_H
+#if HAVE_CONFIG_H
 # include <config.h>
 #endif
 
-#if !HAVE_ST_BLOCKS && !defined _POSIX_SOURCE && defined BSIZE
-# include <sys/types.h>
+#include <sys/types.h>
+
+#if HAVE_SYS_PARAM_H
 # include <sys/param.h>
+#endif
+
+#if !HAVE_ST_BLOCKS && !defined _POSIX_SOURCE && defined BSIZE
 
 # if HAVE_UNISTD_H
 #  include <unistd.h>
 # endif
 
 # ifndef NINDIR
+
+#  if defined (__DJGPP__)
+typedef long daddr_t; /* for disk address */
+#  endif
+
 /* Some SysV's, like Irix, seem to lack this.  Hope it's correct. */
 /* Number of inode pointers per indirect block. */
-#  define NINDIR (BSIZE/sizeof(daddr_t))
+#  define NINDIR (BSIZE / sizeof (daddr_t))
 # endif /* !NINDIR */
 
 /* Number of direct block addresses in an inode. */
@@ -41,8 +50,7 @@
 /* Return the number of 512-byte blocks in a file of SIZE bytes. */
 
 off_t
-st_blocks (size)
-     off_t size;
+st_blocks (off_t size)
 {
   off_t datablks = size / 512 + (size % 512 != 0);
   off_t indrblks = 0;