Commit b8c73637 by Michael Matz Committed by Tobias Burnus

re PR driver/46516 (Non-multilib search problem in gcc.c / gfortran error:…

re PR driver/46516 (Non-multilib search problem in gcc.c / gfortran error: libgfortran.spec: No such file or directory)

2010-11-21  Michael Matz  <matz@suse.de>
            Tobias Burnus  <burnus@net-b.de>

        PR driver/46516
        * gfortranspec.c (lang_specific_driver,
        lang_specific_pre_link): Load libgfortran.spec in
        lang_specific_pre_link unless found in the -L path.


Co-Authored-By: Tobias Burnus <burnus@net-b.de>

From-SVN: r166998
parent 8812e4d5
2010-11-21 Michael Matz <matz@suse.de>
Tobias Burnus <burnus@net-b.de>
PR driver/46516
* gfortranspec.c (lang_specific_driver,
lang_specific_pre_link): Load libgfortran.spec in
lang_specific_pre_link unless found in the -L path.
2010-11-20 Janne Blomqvist <jb@gcc.gnu.org>
* f95-lang.c (gfc_init_decl_processing): Set size_type_node as
......
......@@ -75,6 +75,9 @@ static void append_arg (const struct cl_decoded_option *);
static unsigned int g77_newargc;
static struct cl_decoded_option *g77_new_decoded_options;
/* The path to the spec file. */
char *spec_file = NULL;
/* Return full path name of spec file if it is in DIR, or NULL if
not. */
......@@ -223,9 +226,6 @@ lang_specific_driver (struct cl_decoded_option **in_decoded_options,
/* Whether we should link a static libgfortran. */
int static_lib = 0;
/* The path to the spec file. */
char *spec_file = NULL;
/* Whether we need to link statically. */
int static_linking = 0;
......@@ -447,9 +447,10 @@ For more information about these matters, see the file named COPYING\n\n"));
#endif
/* Read the specs file corresponding to libgfortran.
If we didn't find the spec file on the -L path, then we hope it
is somewhere in the standard install areas. */
append_option (OPT_specs_, spec_file == NULL ? SPEC_FILE : spec_file, 1);
If we didn't find the spec file on the -L path, we load it
via lang_specific_pre_link. */
if (spec_file)
append_option (OPT_specs_, spec_file, 1);
if (verbose && g77_new_decoded_options != g77_x_decoded_options)
{
......@@ -467,8 +468,13 @@ For more information about these matters, see the file named COPYING\n\n"));
/* Called before linking. Returns 0 on success and -1 on failure. */
int
lang_specific_pre_link (void) /* Not used for F77. */
lang_specific_pre_link (void)
{
if (spec_file)
free (spec_file);
else
do_spec ("%:include(libgfortran.spec)");
return 0;
}
......
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