Sat 21 Apr 2007 05:57:41 PM UTC, original submission:
This is http://bugs.debian.org/420190 submitted by Neil Williams:
---------------------
When cross-building, findutils becomes confused. Upstream carries a regexprops.texi file which findutils expects to be able to rebuild, so it deletes it during a clean. Later, the cross build fails because:
make[3]: Entering directory
`/opt/emdebian/trunk/f/findutils/trunk/findutils-4.2.30/doc' echo
"WARNING: ../gnulib/lib/regex.h is newer than regexprops.texi but
regexprops.texi cannot be rebuilt because we are cross-compiling.
Continuing anyway." >&2 WARNING: ../gnulib/lib/regex.h is newer than
regexprops.texi but regexprops.texi cannot be rebuilt because we are
cross-compiling. Continuing anyway.
...
find.texi:3116: @include `regexprops.texi': No such file or directory.
makeinfo: Removing output file `find.info' due to errors; use --force
to preserve. make[3]: *** [find.info] Error 1
One way to solve this would be to make doc/ a conditional subdirectory so that cross-builds can simply not bother running make in doc/ by specifying --disable-texi to ./configure.
Alternatively, whatever is detecting the cross-build should also ensure that if a file cannot be rebuilt during a cross-build, it should not be removed during a cross-build clean. ;-)
The first build appeared fine - subsequent builds fail.
---------------------
This can easily tested by forcing crosscompilation mode:
CFLAGS="-Wall -g -O2" ./configure --build i386-pc-linux-gnu --host i686-pc-linux-gnu
make
make clean
CFLAGS="-Wall -g -O2" ./configure --build i386-pc-linux-gnu --host i686-pc-linux-gnu
make
<--- There is the error.
The issue also seems to apply to CVS HEAD. A trivial patch is attached.
thanks, cu andreas
|