diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index e4bdb0e3d8e919919a6759de4bb05c9b8eaaa3fa..4bb936d22398e739cedafcda88823acca55b8aff 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2003-03-04  Daniel Jacobowitz  <drow@mvista.com>
+
+	* configure.in: Don't always define TARGET_SYSTEM_ROOT.
+	* configure: Regenerated.
+	* gcc.c: Check whether TARGET_SYSTEM_ROOT is defined.
+
 2003-03-04  Andreas Jaeger  <aj@suse.de>
 
 	* configure.in: Check for <memcheck.h>.
diff --git a/gcc/configure b/gcc/configure
index 92921cf738fcac6a3bbd80813dd96f9d3df2e8df..fe71c2a63c6ac90450e5a9b9eb8331622277f3b3 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -2376,7 +2376,7 @@ if test "${with_sysroot+set}" = set; then
 else
   
  TARGET_SYSTEM_ROOT=
- TARGET_SYSTEM_ROOT_DEFINE='-DTARGET_SYSTEM_ROOT=0'
+ TARGET_SYSTEM_ROOT_DEFINE=
  CROSS_SYSTEM_HEADER_DIR='$(gcc_tooldir)/sys-include'
 
 fi
diff --git a/gcc/configure.in b/gcc/configure.in
index 3e8e1b24666794572b09bfebba700db6e6a305ce..fa9cab394b094fb3f1e685e5d62d9b7b019d581c 100644
--- a/gcc/configure.in
+++ b/gcc/configure.in
@@ -574,7 +574,7 @@ AC_ARG_WITH(sysroot,
  esac
 ], [
  TARGET_SYSTEM_ROOT=
- TARGET_SYSTEM_ROOT_DEFINE='-DTARGET_SYSTEM_ROOT=0'
+ TARGET_SYSTEM_ROOT_DEFINE=
  CROSS_SYSTEM_HEADER_DIR='$(gcc_tooldir)/sys-include'
 ])
 AC_SUBST(TARGET_SYSTEM_ROOT)
diff --git a/gcc/gcc.c b/gcc/gcc.c
index a07bd9c6f8ac3e1b0a088e9fdf1b11be49cc24ba..a73985a3e6de56661c6a48079a5bea45cdb1bbac 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -202,7 +202,11 @@ static int report_times;
 /* Nonzero means place this string before uses of /, so that include
    and library files can be found in an alternate location.  */
 
+#ifdef TARGET_SYSTEM_ROOT
 static const char *target_system_root = TARGET_SYSTEM_ROOT;
+#else
+static const char *target_system_root = 0;
+#endif
 
 /* Nonzero means pass the updated target_system_root to the compiler.  */