Commit 54b73ddf by Mark Mitchell Committed by Joseph Myers

gcc.c (do_spec_1): Do not add a -L path for a directory in the prefix list if...

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.

From-SVN: r96915
parent 98af7219
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.
2005-03-22 Kazu Hirata <kazu@cs.umass.edu> 2005-03-22 Kazu Hirata <kazu@cs.umass.edu>
* reload1.c (indirect_symref_ok, reload_obstack): Make them * reload1.c (indirect_symref_ok, reload_obstack): Make them
......
...@@ -4381,6 +4381,7 @@ do_spec_path (struct prefix_list *pl, const char *option, ...@@ -4381,6 +4381,7 @@ do_spec_path (struct prefix_list *pl, const char *option,
static size_t bufsize = 0; static size_t bufsize = 0;
static char *buffer; static char *buffer;
int idx; int idx;
bool multilib_p = false;
/* Used on systems which record the specified -L dirs /* Used on systems which record the specified -L dirs
and use them to search for dynamic linking. */ and use them to search for dynamic linking. */
...@@ -4403,6 +4404,7 @@ do_spec_path (struct prefix_list *pl, const char *option, ...@@ -4403,6 +4404,7 @@ do_spec_path (struct prefix_list *pl, const char *option,
strcat (buffer, machine_suffix); strcat (buffer, machine_suffix);
if (is_directory (buffer, dir_for_machine_suffix, 1)) if (is_directory (buffer, dir_for_machine_suffix, 1))
{ {
multilib_p = true;
do_spec_1 (option, separate_options, NULL); do_spec_1 (option, separate_options, NULL);
if (separate_options) if (separate_options)
do_spec_1 (" ", 0, NULL); do_spec_1 (" ", 0, NULL);
...@@ -4416,6 +4418,7 @@ do_spec_path (struct prefix_list *pl, const char *option, ...@@ -4416,6 +4418,7 @@ do_spec_path (struct prefix_list *pl, const char *option,
{ {
if (is_directory (pl->prefix, dir_for_no_suffix, 1)) if (is_directory (pl->prefix, dir_for_no_suffix, 1))
{ {
multilib_p = true;
do_spec_1 (option, separate_options, NULL); do_spec_1 (option, separate_options, NULL);
if (separate_options) if (separate_options)
do_spec_1 (" ", 0, NULL); do_spec_1 (" ", 0, NULL);
...@@ -4426,7 +4429,7 @@ do_spec_path (struct prefix_list *pl, const char *option, ...@@ -4426,7 +4429,7 @@ do_spec_path (struct prefix_list *pl, const char *option,
} }
} }
if (only_subdir) if (only_subdir || multilib_p)
return; return;
if (machine_suffix) if (machine_suffix)
...@@ -6188,10 +6191,6 @@ main (int argc, const char **argv) ...@@ -6188,10 +6191,6 @@ main (int argc, const char **argv)
startfile_prefix_spec exclusively. */ startfile_prefix_spec exclusively. */
else if (*cross_compile == '0' || target_system_root) 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) if (*md_startfile_prefix)
add_sysrooted_prefix (&startfile_prefixes, md_startfile_prefix, add_sysrooted_prefix (&startfile_prefixes, md_startfile_prefix,
"GCC", PREFIX_PRIORITY_LAST, 0, 1); "GCC", PREFIX_PRIORITY_LAST, 0, 1);
......
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