This PR mainly exists as a reminder for myself, I have been bitten by
this a couple of times while testing an unrelated patch and getting
stumped by apparent major breakage.

Inside the build tree, for each $module and $MULTIDIR, the files
$target/$module/Makefile and probably also
$target/$MULTIDIR/$module/Makefile have broken rules for the 'Makefile'
target: when run, these rules just run './config.status Makefile',
whereas the right thing to do would be to also run the
'./config.status default-1' config commands.

FWIW, this is not important for a normal bootstrap, only for an
incremental rebuild in which the respective Makefile.in file has been
updated.  IOW, in practice it can only happen with
--enable-maintainer-mode or after a './contrib/gcc_update' which
happened to update the Makefile.in files but not the respective
configure files.

To reproduce: in an up to date build tree with --enable-multilib, do
  touch $srcdir/libgomp/Makefile.in
  make

and observe $target/libgomp/Makefile differences.  Fix by
  rm -f $target/*/Makefile
  make

I intend to eventually fix this, but it is low priority.


-- 
           Summary: build: target modules Makefiles have broken rebuild
                    rules (multilib issue)
           Product: gcc
           Version: 4.5.0
            Status: UNCONFIRMED
          Severity: minor
          Priority: P3
         Component: other
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: rwild at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43171

Reply via email to