Commit 2fda54bd by Matthias Klose Committed by Matthias Klose

gcc.c (add_sysrooted_prefix): Remove trailing dir separator from system root.

2012-01-27  Matthias Klose  <doko@ubuntu.com>

        * gcc.c (add_sysrooted_prefix): Remove trailing dir separator from
          system root.
        * incpath.c (add_standard_paths): Likewise.

From-SVN: r183591
parent 3beac6b9
2012-01-27 Matthias Klose <doko@ubuntu.com>
* gcc.c (add_sysrooted_prefix): Remove trailing dir separator from
system root.
* incpath.c (add_standard_paths): Likewise.
2012-01-27 Richard Henderson <rth@redhat.com> 2012-01-27 Richard Henderson <rth@redhat.com>
* config/m68k/m68k.c (TARGET_ATOMIC_TEST_AND_SET_TRUEVAL): New. * config/m68k/m68k.c (TARGET_ATOMIC_TEST_AND_SET_TRUEVAL): New.
......
...@@ -2445,9 +2445,17 @@ add_sysrooted_prefix (struct path_prefix *pprefix, const char *prefix, ...@@ -2445,9 +2445,17 @@ add_sysrooted_prefix (struct path_prefix *pprefix, const char *prefix,
if (target_system_root) if (target_system_root)
{ {
char *sysroot_no_trailing_dir_separator = xstrdup (target_system_root);
size_t sysroot_len = strlen (target_system_root);
if (sysroot_len > 0
&& target_system_root[sysroot_len - 1] == DIR_SEPARATOR)
sysroot_no_trailing_dir_separator[sysroot_len - 1] = '\0';
if (target_sysroot_suffix) if (target_sysroot_suffix)
prefix = concat (target_sysroot_suffix, prefix, NULL); prefix = concat (target_sysroot_suffix, prefix, NULL);
prefix = concat (target_system_root, prefix, NULL); prefix = concat (sysroot_no_trailing_dir_separator, prefix, NULL);
free (sysroot_no_trailing_dir_separator);
/* We have to override this because GCC's notion of sysroot /* We have to override this because GCC's notion of sysroot
moves along with GCC. */ moves along with GCC. */
......
/* Set up combined include path chain for the preprocessor. /* Set up combined include path chain for the preprocessor.
Copyright (C) 1986, 1987, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, Copyright (C) 1986, 1987, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2010 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2010, 2012
Free Software Foundation, Inc. Free Software Foundation, Inc.
Broken out of cppinit.c and cppfiles.c and rewritten Mar 2003. Broken out of cppinit.c and cppfiles.c and rewritten Mar 2003.
...@@ -166,7 +166,15 @@ add_standard_paths (const char *sysroot, const char *iprefix, ...@@ -166,7 +166,15 @@ add_standard_paths (const char *sysroot, const char *iprefix,
/* Should this directory start with the sysroot? */ /* Should this directory start with the sysroot? */
if (sysroot && p->add_sysroot) if (sysroot && p->add_sysroot)
str = concat (sysroot, p->fname, NULL); {
char *sysroot_no_trailing_dir_separator = xstrdup (sysroot);
size_t sysroot_len = strlen (sysroot);
if (sysroot_len > 0 && sysroot[sysroot_len - 1] == DIR_SEPARATOR)
sysroot_no_trailing_dir_separator[sysroot_len - 1] = '\0';
str = concat (sysroot_no_trailing_dir_separator, p->fname, NULL);
free (sysroot_no_trailing_dir_separator);
}
else if (!p->add_sysroot && relocated else if (!p->add_sysroot && relocated
&& !filename_ncmp (p->fname, cpp_PREFIX, cpp_PREFIX_len)) && !filename_ncmp (p->fname, cpp_PREFIX, cpp_PREFIX_len))
{ {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment