summaryrefslogtreecommitdiff
path: root/gcc/gcc.c
diff options
context:
space:
mode:
authorjsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4>2005-03-23 01:23:51 +0000
committerjsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4>2005-03-23 01:23:51 +0000
commitd8fe3273bd13fa0948df8315ae7a8b2f25e36d7f (patch)
treecb066df20ca2da56076e280cfda545c043477540 /gcc/gcc.c
parent12be4bb231a85152154d4ac4ee68e26184554d6c (diff)
downloadgcc-d8fe3273bd13fa0948df8315ae7a8b2f25e36d7f.tar.gz
2005-03-23 Mark Mitchell <mark@codesourcery.com>
* gcc.c (do_spec_1): Do not add a -L path for a directory in the prefix list if we have already added a multilib directory based on that path. (main): Do not add MD_EXEC_PREFIX to the list of directories to search with -L. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96915 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/gcc.c')
-rw-r--r--gcc/gcc.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/gcc/gcc.c b/gcc/gcc.c
index eda3fa49f53..342ffa69d35 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -4381,6 +4381,7 @@ do_spec_path (struct prefix_list *pl, const char *option,
static size_t bufsize = 0;
static char *buffer;
int idx;
+ bool multilib_p = false;
/* Used on systems which record the specified -L dirs
and use them to search for dynamic linking. */
@@ -4403,6 +4404,7 @@ do_spec_path (struct prefix_list *pl, const char *option,
strcat (buffer, machine_suffix);
if (is_directory (buffer, dir_for_machine_suffix, 1))
{
+ multilib_p = true;
do_spec_1 (option, separate_options, NULL);
if (separate_options)
do_spec_1 (" ", 0, NULL);
@@ -4416,6 +4418,7 @@ do_spec_path (struct prefix_list *pl, const char *option,
{
if (is_directory (pl->prefix, dir_for_no_suffix, 1))
{
+ multilib_p = true;
do_spec_1 (option, separate_options, NULL);
if (separate_options)
do_spec_1 (" ", 0, NULL);
@@ -4426,7 +4429,7 @@ do_spec_path (struct prefix_list *pl, const char *option,
}
}
- if (only_subdir)
+ if (only_subdir || multilib_p)
return;
if (machine_suffix)
@@ -6188,10 +6191,6 @@ main (int argc, const char **argv)
startfile_prefix_spec exclusively. */
else if (*cross_compile == '0' || target_system_root)
{
- if (*md_exec_prefix)
- add_sysrooted_prefix (&startfile_prefixes, md_exec_prefix, "GCC",
- PREFIX_PRIORITY_LAST, 0, 1);
-
if (*md_startfile_prefix)
add_sysrooted_prefix (&startfile_prefixes, md_startfile_prefix,
"GCC", PREFIX_PRIORITY_LAST, 0, 1);