Hi all,
I just tried to build coreutils (6.10pre20070907 from Debian) on
interix.
The first thing I encountered is the "cannot read mounted file
systems" issue. I changed configure.ac to only warn about that.
Nevertheless, compilation of df.c was automatically disabled, so
apparently coreutils can handle this already.
The next thing is savewd.c, which requires errno value ESTALE to be
there, but interix doesn't have that one. The third is who.c, which
doesn't check for IPV6 (interix doesn't have IPV6). For these you'll
find a patch attached.
Another issue: I first tried to configure with
--enable-no-install-program=who, but nevertheless who.c is tried to be
built. Shouldn't --enable-no-install-program also disable compilation
of who.c? One might try to disable it, because it doesn't build :-)
After these patches the build went through, but "make check" doesn't:
Making check in man
make[2]: Entering directory `/tmp/coreutils-6.10~20070907/man'
/usr/bin/make check-local
make[3]: Entering directory `/tmp/coreutils-6.10~20070907/man'
PATH=../src:$PATH; export PATH; \
t=ls-files.$$; \
(cd . && ls -1 *.x) | sed 's/\.x$//' | LC_ALL=C sort > $t;\
(echo groups.1 uname.1 chroot.1 nice.1 who.1 users.1 [... 8<]
| tr -s ' ' '\n' | sed 's/\.1$//') \
| LC_ALL=C sort -u | diff - $t || { rm $t; exit 1; }; \
rm $t
16a17
df
30a32
hostid
make[3]: *** [check-x-vs-1] Error 1
df.c and hostid.c weren't tried to compile. I didn't look into the
details of this one, but simply disabled the whole check for now.
Martin
--- coreutils-6.10~20070907/gnulib/m4/ls-mntd-fs.m4.orig Sun Sep 24
08:49:03 2006
+++ coreutils-6.10~20070907/gnulib/m4/ls-mntd-fs.m4 Sat Sep 15 20:58:50 2007
@@ -327,7 +327,7 @@
fi
if test -z "$ac_list_mounted_fs"; then
- AC_MSG_ERROR([could not determine how to read list of mounted file systems])
+ AC_MSG_WARN([could not determine how to read list of mounted file systems])
# FIXME -- no need to abort building the whole package
# Can't build mountlist.c or anything that needs its functions
fi
--- coreutils-6.10~20070907/gnulib/lib/savewd.c.orig Wed Mar 21 09:07:20 2007
+++ coreutils-6.10~20070907/gnulib/lib/savewd.c Sat Sep 15 22:10:47 2007
@@ -54,7 +54,11 @@
wd->val.fd = fd;
break;
}
- if (errno != EACCES && errno != ESTALE)
+ if (errno != EACCES
+#ifndef __INTERIX
+ && errno != ESTALE
+#endif
+ )
{
wd->state = ERROR_STATE;
wd->val.errnum = errno;
--- coreutils-6.10~20070907/src/who.c.orig Sat Sep 15 23:02:44 2007
+++ coreutils-6.10~20070907/src/who.c Sat Sep 15 23:38:16 2007
@@ -424,6 +424,7 @@
}
#endif
+#if HAVE_IPV6
/* Needs configure check for ut_addr_v6, etc */
if (do_ips &&
memcmp(utmp_ent->ut_addr_v6, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 16))
@@ -474,6 +475,7 @@
getnameinfo(sa, salen, hoststr, 256, NULL, 0, flags);
}
+#endif
print_line (sizeof UT_USER (utmp_ent), UT_USER (utmp_ent), mesg,
sizeof utmp_ent->ut_line, utmp_ent->ut_line,
_______________________________________________
Bug-coreutils mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/bug-coreutils