The following makes install-driver behave sanely when GCC_INSTALL_NAME
and GCC_TARGET_INSTALL_NAME match (or GCC_INSTALL_NAME and
$(target_noncanonical)-gcc-$(version)).  We seem to force both
$(target_noncanonical)-gcc and $(target_noncanonical)-gcc-$(version)
installs, but still apply $program_transform_name to both and thus
they can become all equal, for example with
--program-prefix=$(target_noncanonical) --program-suffix=$(version).

Tested with that odd(?) combination, ok for trunk?

(of course I'd rather get rid of those special cases, but they probably
exist for a "reason")

Thanks,
Richard.

2014-03-31  Richard Biener  <rguent...@suse.de>

        PR bootstrap/60719
        * Makefile.in (install-driver): Guard extra installs with special
        names properly.

Index: gcc/Makefile.in
===================================================================
*** gcc/Makefile.in     (revision 208955)
--- gcc/Makefile.in     (working copy)
*************** install-common: native lang.install-comm
*** 3205,3214 ****
  install-driver: installdirs xgcc$(exeext)
        -rm -f $(DESTDIR)$(bindir)/$(GCC_INSTALL_NAME)$(exeext)
        -$(INSTALL_PROGRAM) xgcc$(exeext) 
$(DESTDIR)$(bindir)/$(GCC_INSTALL_NAME)$(exeext)
!       -rm -f 
$(DESTDIR)$(bindir)/$(target_noncanonical)-gcc-$(version)$(exeext)
!       -( cd $(DESTDIR)$(bindir) && \
!          $(LN) $(GCC_INSTALL_NAME)$(exeext) 
$(target_noncanonical)-gcc-$(version)$(exeext) )
!       -if [ ! -f gcc-cross$(exeext) ] ; then \
          rm -f $(DESTDIR)$(bindir)/$(target_noncanonical)-gcc-tmp$(exeext); \
          ( cd $(DESTDIR)$(bindir) && \
            $(LN) $(GCC_INSTALL_NAME)$(exeext) 
$(target_noncanonical)-gcc-tmp$(exeext) && \
--- 3205,3217 ----
  install-driver: installdirs xgcc$(exeext)
        -rm -f $(DESTDIR)$(bindir)/$(GCC_INSTALL_NAME)$(exeext)
        -$(INSTALL_PROGRAM) xgcc$(exeext) 
$(DESTDIR)$(bindir)/$(GCC_INSTALL_NAME)$(exeext)
!       -if [ "$(GCC_INSTALL_NAME)" != "$(target_noncanonical)-gcc-$(version)" 
]; then \
!         -rm -f 
$(DESTDIR)$(bindir)/$(target_noncanonical)-gcc-$(version)$(exeext) \
!         -( cd $(DESTDIR)$(bindir) && \
!            $(LN) $(GCC_INSTALL_NAME)$(exeext) 
$(target_noncanonical)-gcc-$(version)$(exeext) ) \
!       fi
!       -if [ ! -f gcc-cross$(exeext) ] \
!           && [ "$(GCC_INSTALL_NAME)" != "$(GCC_TARGET_INSTALL_NAME)" ]; then \
          rm -f $(DESTDIR)$(bindir)/$(target_noncanonical)-gcc-tmp$(exeext); \
          ( cd $(DESTDIR)$(bindir) && \
            $(LN) $(GCC_INSTALL_NAME)$(exeext) 
$(target_noncanonical)-gcc-tmp$(exeext) && \

Reply via email to