From 6c80a64553f3ebffaf5c44c947b43ecad4e94b34 Mon Sep 17 00:00:00 2001
From: Alexandre Oliva <aoliva@redhat.com>
Date: Thu, 9 Nov 2000 13:56:53 +0000
Subject: [PATCH] mklibgcc.in (EXTRA_MULTILIB_PARTS): Prevent `make' from
 interpreting $out as a macro assignment.

* mklibgcc.in (EXTRA_MULTILIB_PARTS): Prevent `make' from
interpreting $out as a macro assignment.
* Makefile.in (T_TARGET): New auxiliary macro and target.
(all): Add a target right in the beginning, so that we don't build
T_TARGET by default.

From-SVN: r37342
---
 gcc/ChangeLog   | 8 ++++++++
 gcc/Makefile.in | 8 ++++++++
 gcc/mklibgcc.in | 9 +++++++--
 3 files changed, 23 insertions(+), 2 deletions(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 7fda91053e10..e63ecbc9cc4b 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,11 @@
+2000-11-09  Alexandre Oliva  <aoliva@redhat.com>
+
+	* mklibgcc.in (EXTRA_MULTILIB_PARTS): Prevent `make' from
+	interpreting $out as a macro assignment.
+	* Makefile.in (T_TARGET): New auxiliary macro and target.
+	(all): Add a target right in the beginning, so that we don't build
+	T_TARGET by default.
+
 2000-11-09  Graham Stott  <grahams@redhat.com>
 
         * config/i386/i386.md (mmx_pinsrw): Output operands in correct
diff --git a/gcc/Makefile.in b/gcc/Makefile.in
index 2fefb3f14446..3b2e8d9ca0b4 100644
--- a/gcc/Makefile.in
+++ b/gcc/Makefile.in
@@ -24,6 +24,9 @@
 # uninstall, TAGS, mostlyclean, clean, distclean, maintainer-clean,
 # stage1, stage2, stage3, stage4.
 
+# This is the default target.
+all:
+
 # Suppress smart makes who think they know how to automake Yacc files
 .y.c:
 
@@ -562,6 +565,11 @@ CRT0STUFF_T_CFLAGS =
 # "t" or nothing, for building multilibbed versions of, say, crtbegin.o.
 T =
 
+# Should T contain a `=', libgcc.mk will make T_TARGET, setting
+# $(T_TARGET) to the name of the actual target filename.
+T_TARGET =
+T_TARGET : $(T_TARGET)
+
 # End of variables for you to override.
 
 # Definition of `all' is here so that new rules inserted by sed
diff --git a/gcc/mklibgcc.in b/gcc/mklibgcc.in
index e9dc22cb7a26..1953da472889 100644
--- a/gcc/mklibgcc.in
+++ b/gcc/mklibgcc.in
@@ -363,13 +363,18 @@ for f in $EXTRA_MULTILIB_PARTS; do
     flags=`echo ${ml} | sed -e 's/^[^;]*;//' -e 's/@/ -/g'`;
     case $dir in
     .) out=$f ; t= ;;
-    *) out="$dir/$f" ; t=$dir/ ;;
+    *) out=$dir/$f ; t=$dir/ ;;
+    esac
+    case $out in
+    # Prevent `make' from interpreting $out as a macro assignment
+    *'$(EQ)'*) targ="T_TARGET=$out T_TARGET" ;;
+    *) targ=$out ;;
     esac
 
     echo $out: stmp-dirs
     echo "	$make_compile" \\
     echo '	  LIBGCC2_CFLAGS="$(LIBGCC2_CFLAGS)' $flags '" ' \\
-    echo '	  MULTILIB_CFLAGS="'$flags'"' T=$t $out
+    echo '	  MULTILIB_CFLAGS="'$flags'"' T=$t $targ
 
     all="$all $out"
   done
-- 
GitLab