URL:
  <http://savannah.gnu.org/bugs/?19658>

                 Summary: In crosscompiling mode make clean removes files
that cannot be regenerated.
                 Project: findutils
            Submitted by: ametzler
            Submitted on: Samstag 21.04.2007 um 19:57
                Category: None
                Severity: 3 - Normal
              Item Group: Compilation Failure
                  Status: None
                 Privacy: Public
             Assigned to: None
         Originator Name: Neil Williams
        Originator Email: 
             Open/Closed: Open
         Discussion Lock: Any
                 Release: 4.2.30
           Fixed Release: None

    _______________________________________________________

Details:

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



    _______________________________________________________

File Attachments:


-------------------------------------------------------
Date: Samstag 21.04.2007 um 19:57  Name: bug420190.diff  Size: 1kB   By:
ametzler
Patch
<http://savannah.gnu.org/bugs/download.php?file_id=12548>

    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?19658>

_______________________________________________
  Nachricht geschickt von/durch Savannah
  http://savannah.gnu.org/



_______________________________________________
Bug-findutils mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/bug-findutils

Reply via email to