This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

[PATCH]: Fix *-*-gnu* config


Here's a patch to fix the *-*-gnu* (aka the Hurd) config.  It
eleminates some dead wood from config.gcc, and puts the
i[34567]86-*-gnu* and mips-*-gnu* config details between all the other
i[34567]86-*-* and mips-*-* configs (such that they won't be
overlooked when someone makes changes that affect a specific cpu).

The MD_FALLBACK_FRAME_STATE_FOR undefine is necessary since the Hurd's
config is based on the Linux config, but the Linux-specific
MD_FALLBACK_FRAME_STATE_FOR doesn't work for us (and probably isn't
even necessary).

This patch is for mainline, I'll submit a patch for the branch in the
near future.  Can someone please install this?

Mark


Index: ChangeLog
from  Mark Kettenis  <kettenis@gnu.org>

	* config.gcc (*-*-gnu*): Set reasonable defaults here and move
	tm_file overrides for i[34567]86-*-* and mips-*-* to ...
	(i[34567]86-*-gnu*): ... here ...
	(mips-*-gnu*): ... and here.
	* config/i386/gnu.h (MD_FALLBACK_FRAME_STATE_FOR): Undefine.

Index: config.gcc
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config.gcc,v
retrieving revision 1.58
diff -u -r1.58 config.gcc
--- config.gcc 2001/05/03 19:32:51 1.58
+++ config.gcc 2001/05/07 09:27:48
@@ -260,29 +260,17 @@
 	xm_defines=POSIX
 	;;
 *-*-gnu*)
-	# On the Hurd, the setup is just about the same on
-	# each different CPU.  The specific machines that we
-	# support are matched above and just set $cpu_type.
+	# On the Hurd, the setup is supposed to be about the same on
+	# each different CPU.
 	xm_defines=POSIX
-	tm_file="${cpu_type}/gnu.h"
-	extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
-	# GNU always uses ELF.
-	elf=yes
-	# GNU tools are the only tools.
+	# We use GNU tools of course.
 	gnu_ld=yes
 	gas=yes
 	# These details are the same as for Linux.
 	xmake_file=x-linux
 	# But here we need a little extra magic.
 	tmake_file="t-linux t-gnu"
-	case $machine in
-	i[34567]86-*-*)
-		tm_file="${cpu_type}/${cpu_type}.h i386/att.h linux.h i386/linux.h gnu.h ${tm_file}"
-		;;
-	mips*-*-*)
-		tm_file="svr4.h ${cpu_type}/${cpu_type}.h ${tm_file}"
-		;;
-	esac
+	extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
 	;;
 *-*-openbsd*)
 	tm_file=${cpu_type}/openbsd.h
@@ -1094,6 +1082,7 @@
 	fi
 	;;
 i[34567]86-*-gnu*)
+	tm_file="i386/i386.h i386/att.h linux.h i386/linux.h gnu.h i386/gnu.h"
 	float_format=i386
 	;;
 i[34567]86-go32-msdos | i[34567]86-*-go32*)
@@ -2413,6 +2402,7 @@
 	fi
 	;;
 mips-*-gnu*)
+	tm_file=mips/gnu.h
 	;;
 mipsel-*-ecoff*)
 	tm_file=mips/ecoffl.h
Index: config/i386/gnu.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/i386/gnu.h,v
retrieving revision 1.10
diff -u -r1.10 gnu.h
--- config/i386/gnu.h 2001/01/09 22:10:53 1.10
+++ config/i386/gnu.h 2001/05/07 10:15:52
@@ -30,3 +30,6 @@
        %{pg:gcrt1.o%s} %{!pg:%{p:gcrt1.o%s} %{!p:crt1.o%s}}} \
      %{static:crt0.o%s}} \
    crti.o%s %{!shared:crtbegin.o%s} %{shared:crtbeginS.o%s}"
+
+/* FIXME: Is a Hurd-specific fallback mechanism necessary?  */
+#undef MD_FALLBACK_FRAME_STATE_FOR


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]