coreutils-6.3 includes a patch, c99-to-c89.diff, to allow it to be compiled on platforms that don't support declarations after statements. However, this patch is not sufficent -- I had to fix two other areas to get coreutils to compile under GCC 2.95.3.
I've appended my fixes. They are to be applied after the existing c99-to-c89.diff. ---- Michael Deutschmann <[EMAIL PROTECTED]> diff -durpN coreutils-6.3/src/remove.c coreutils-6.3-fix/src/remove.c --- coreutils-6.3/src/remove.c 2006-10-01 02:53:43.000000000 -0700 +++ coreutils-6.3-fix/src/remove.c 2006-10-01 02:53:17.000000000 -0700 @@ -1360,8 +1360,9 @@ remove_dir (int fd_cwd, Dirstack_state * But that's no big deal since we're interactive. */ struct stat empty_st; Ternary is_empty; + enum RM_status s; cache_stat_init (&empty_st); - enum RM_status s = prompt (fd, ds, empty_dir, &empty_st, x, + s = prompt (fd, ds, empty_dir, &empty_st, x, PA_REMOVE_DIR, &is_empty); if (s != RM_OK) diff -durpN coreutils-6.3/src/shred.c coreutils-6.3-fix/src/shred.c --- coreutils-6.3/src/shred.c 2006-09-02 23:38:54.000000000 -0700 +++ coreutils-6.3-fix/src/shred.c 2006-10-01 02:53:31.000000000 -0700 @@ -460,7 +460,7 @@ dopass (int fd, char const *qname, off_t out. Thus, it shouldn't give up on bad blocks. This code works because lim is always a multiple of SECTOR_SIZE, except at the end. */ - verify (sizeof r % SECTOR_SIZE == 0); + {verify (sizeof r % SECTOR_SIZE == 0);} if (errnum == EIO && 0 <= size && (soff | SECTOR_MASK) < lim) { size_t soff1 = (soff | SECTOR_MASK) + 1; _______________________________________________ Bug-coreutils mailing list Bug-coreutils@gnu.org http://lists.gnu.org/mailman/listinfo/bug-coreutils