[Buildroot] coreutils build failing
Peter Korsgaard
jacmet at uclibc.org
Thu Sep 10 07:28:40 UTC 2009
>>>>> "Stephen" == Stephen Rodgers <hwstar at rodgers.sdcoxmail.com> writes:
Hi,
Stephen> As you requested, I tarred up the config.log from the failed
Stephen> coreutils-7.4 build. You should be able to wget
Stephen> config.log.tar.gz using the following url:
Stephen> http://test.qrvc.com/config.log.tar.gz
Thanks. The bug is in the coreutils configure script:
grep -i -A1 -B1 '^[^|].*dest.*exists' config.log
configure:28670: result: yes
configure:28672: checking whether rename is broken when the destination exists
configure:28684: result: no
--
gl_cv_func_re_compile_pattern_working=no
gl_cv_func_rename_dest_exists_bug=no
gl_cv_func_rename_trailing_dest_slash_bug=yes
--
#define RENAME_TRAILING_SLASH_BUG 1
#define RENAME_DEST_EXISTS_BUG 1
#define rename rpl_rename_dest_slash
It correctly detects that you don't need the windows-only rename
workaround, but still it ends up defining RENAME_DEST_EXISTS_BUG.
The logic (m4/rename.m4) goes:
if test $gl_cv_func_rename_trailing_slash_bug = yes ||
test $gl_cv_func_rename_dest_exists_bug = yes; then
AC_LIBOBJ([rename])
AC_DEFINE([rename], [rpl_rename],
[Define to rpl_rename if the replacement function should be used.])
if test $gl_cv_func_rename_trailing_slash_bug; then
AC_DEFINE([RENAME_TRAILING_SLASH_BUG], [1],
[Define if rename does not work for source file names with a trailing
slash, like the one from SunOS 4.1.1_U1.])
fi
if test $gl_cv_func_rename_dest_exists_bug; then
AC_DEFINE([RENAME_DEST_EXISTS_BUG], [1],
[Define if rename does not work when the destination file exists,
as on Windows.])
fi
gl_PREREQ_RENAME
fi
Notice that the 2nd test doesn't do 'test $var = yes', so if any of the
2 variables are true both defines will get set. Just above we see:
dnl When crosscompiling, assume rename is broken.
gl_cv_func_rename_trailing_slash_bug=yes)
So the quick fix is to tell configure that we don't need the trailing
slash bugfix (which also just adds to the size and isn't needed on
uclibc).
I've done that in git (dfca1b2e0e) - Please give it a try.
I've just checked, and all of this is removed in the recently released
coreutils 7.5, so we might consider upgrading to that.
--
Bye, Peter Korsgaard
More information about the buildroot
mailing list