re PR fortran/61418 (HDF5 build failure with -flto: libgfortran.spec: attempt to rename spec 'lib' to already defined spec 'liborig')
2014-06-05 Richard Biener <rguenther@suse.de> PR fortran/61418 * gfortranspec.c (spec_file): Remove. (find_spec_file): Likewise. (lang_specific_driver): Do not look for specs file in -L or append -specs command line argument. (lang_specific_pre_link): Always %:include libgfortran.spec. From-SVN: r211280
This commit is contained in:
parent
1c960e02e7
commit
9803e573d3
|
@ -1,3 +1,12 @@
|
|||
2014-06-05 Richard Biener <rguenther@suse.de>
|
||||
|
||||
PR fortran/61418
|
||||
* gfortranspec.c (spec_file): Remove.
|
||||
(find_spec_file): Likewise.
|
||||
(lang_specific_driver): Do not look for specs file in -L
|
||||
or append -specs command line argument.
|
||||
(lang_specific_pre_link): Always %:include libgfortran.spec.
|
||||
|
||||
2014-06-02 Andrew MacLeod <amacleod@redhat.com>
|
||||
|
||||
* fortran/trans.c (trans_runtime_error_vararg): Call
|
||||
|
|
|
@ -73,34 +73,11 @@ 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. */
|
||||
static char *spec_file = NULL;
|
||||
|
||||
/* This will be NULL if we encounter a situation where we should not
|
||||
link in the fortran libraries. */
|
||||
static const char *library = NULL;
|
||||
|
||||
|
||||
/* Return full path name of spec file if it is in DIR, or NULL if
|
||||
not. */
|
||||
static char *
|
||||
find_spec_file (const char *dir)
|
||||
{
|
||||
const char dirsep_string[] = { DIR_SEPARATOR, '\0' };
|
||||
char *spec;
|
||||
struct stat sb;
|
||||
|
||||
spec = XNEWVEC (char, strlen (dir) + sizeof (SPEC_FILE) + 4);
|
||||
strcpy (spec, dir);
|
||||
strcat (spec, dirsep_string);
|
||||
strcat (spec, SPEC_FILE);
|
||||
if (!stat (spec, &sb))
|
||||
return spec;
|
||||
free (spec);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
/* Return whether strings S1 and S2 are both NULL or both the same
|
||||
string. */
|
||||
|
||||
|
@ -313,12 +290,6 @@ For more information about these matters, see the file named COPYING\n\n"));
|
|||
cool facility for handling --help and --verbose --help. */
|
||||
return;
|
||||
|
||||
case OPT_L:
|
||||
if (!spec_file)
|
||||
spec_file = find_spec_file (decoded_options[i].arg);
|
||||
break;
|
||||
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
@ -449,12 +420,6 @@ 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, 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)
|
||||
{
|
||||
fprintf (stderr, _("Driving:"));
|
||||
|
@ -473,8 +438,7 @@ For more information about these matters, see the file named COPYING\n\n"));
|
|||
int
|
||||
lang_specific_pre_link (void)
|
||||
{
|
||||
free (spec_file);
|
||||
if (spec_file == NULL && library)
|
||||
if (library)
|
||||
do_spec ("%:include(libgfortran.spec)");
|
||||
|
||||
return 0;
|
||||
|
|
Loading…
Reference in New Issue