[Bug other/43171] build: target modules Makefiles have broken rebuild rules (multilib issue)

egall at gwmail dot gwu.edu gcc-bugzilla@gcc.gnu.org
Mon Dec 22 21:23:00 GMT 2014


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

Eric Gallager <egall at gwmail dot gwu.edu> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |egall at gwmail dot gwu.edu

--- Comment #1 from Eric Gallager <egall at gwmail dot gwu.edu> ---
(In reply to Ralf Wildenhues from comment #0)
> 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.

For modules that use automake, the rules that automake generates for the
'Makefile' target look like this:

.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
    @case '$?' in \
      *config.status*) \
        echo ' $(SHELL) ./config.status'; \
        $(SHELL) ./config.status;; \
      *) \
        echo ' cd $(top_builddir) && $(SHELL) ./config.status $@
$(am__depfiles_maybe)'; \
        cd $(top_builddir) && $(SHELL) ./config.status $@
$(am__depfiles_maybe);; \
    esac;

Checking 'am__depfiles_maybe', it seems that automake sets it empty by default,
so maybe 'default-1' needs to be added to 'am__depfiles_maybe' in the
Makefile.am of any module that uses automake? 

(or whatever 'default-1' is called, that is; in my tree, I renamed the
corresponding AC_CONFIG_COMMANDS argument in config/multi.m4 to say
'multilib-default-1' instead, as I find that more descriptive, but that would
be a separate topic...)



More information about the Gcc-bugs mailing list