OSDN Git Service

PR go/48411
authorian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 14 Feb 2012 18:58:48 +0000 (18:58 +0000)
committerian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 14 Feb 2012 18:58:48 +0000 (18:58 +0000)
* Make-lang.in (gccgo-cross$(exeext)): New target.
(go.all.cross): Depend on gccgo-cross$(exeext) instead of
gccgo$(exeext).
(go.install-common): Only install GCCGO_TARGET_INSTALL_NAME if
gccgo-cross$(exeext) does not exist.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@184221 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/go/ChangeLog
gcc/go/Make-lang.in

index 40afb84..255b3f5 100644 (file)
@@ -1,3 +1,12 @@
+2012-02-14  Ian Lance Taylor  <iant@google.com>
+
+       PR go/48411
+       * Make-lang.in (gccgo-cross$(exeext)): New target.
+       (go.all.cross): Depend on gccgo-cross$(exeext) instead of
+       gccgo$(exeext).
+       (go.install-common): Only install GCCGO_TARGET_INSTALL_NAME if
+       gccgo-cross$(exeext) does not exist.
+
 2012-02-07  Ian Lance Taylor  <iant@google.com>
 
        * gccgo.texi (Function Names): Document //extern instead of
index 08aaafb..2994fe1 100644 (file)
@@ -42,6 +42,13 @@ gccgo$(exeext): $(GCCGO_OBJS) $(EXTRA_GCC_OBJS) libcommon-target.a $(LIBDEPS)
          $(GCCGO_OBJS) $(EXTRA_GCC_OBJS) libcommon-target.a \
          $(EXTRA_GCC_LIBS) $(LIBS)
 
+# The cross-compiler version.  This is built mainly as a signal to the
+# go.install-common target.  If this executable exists, it means that
+# go.all.cross was run.
+gccgo-cross$(exeext): gccgo$(exeext)
+       -rm -f gccgo-cross$(exeext)
+       cp gccgo$(exeext) gccgo-cross$(exeext)
+
 # Use strict warnings.
 go-warn = $(STRICT_WARN)
 
@@ -107,7 +114,7 @@ gccgo.pod: go/gccgo.texi
 
 # Build hooks.
 
-go.all.cross: gccgo$(exeext)
+go.all.cross: gccgo-cross$(exeext)
 go.start.encap: gccgo$(exeext)
 go.rest.encap:
 go.info: doc/gccgo.info
@@ -136,13 +143,15 @@ check_go_parallelize = go-test.exp=*/test/\[0-57-9a-bd-hj-zA-Z\]* \
 
 go.install-common: installdirs
        -rm -f $(DESTDIR)$(bindir)/$(GCCGO_INSTALL_NAME)$(exeext)
-       -rm -f $(DESTDIR)$(bindir)/$(GCCGO_TARGET_INSTALL_NAME)$(exeext)
        $(INSTALL_PROGRAM) gccgo$(exeext) $(DESTDIR)$(bindir)/$(GCCGO_INSTALL_NAME)$(exeext)
-       if test -f $(DESTDIR)$(bindir)$(GCCGO_TARGET_INSTALL_NAME)$(exeext); then \
-         :; \
-       else \
-         cd $(DESTDIR)$(bindir) && \
-          $(LN) $(GCCGO_INSTALL_NAME)$(exeext) $(GCCGO_TARGET_INSTALL_NAME)$(exeext); \
+       -if test -f go1$(exeext); then \
+         if test -f gccgo-cross$(exeext); then \
+           :; \
+         else \
+           rm -f $(DESTDIR)$(bindir)/$(GCCGO_TARGET_INSTALL_NAME)$(exeext); \
+           ( cd $(DESTDIR)$(bindir) && \
+             $(LN) $(GCCGO_INSTALL_NAME)$(exeext) $(GCCGO_TARGET_INSTALL_NAME)$(exeext) ); \
+         fi; \
        fi
 
 go.install-plugin: