After preventing creating an import library for an exe when there are no exports, to avoid a crash, it turned out that some projects expected to be able to create an import library for a dll with no exports, so more closely match the condition to the condition around initializing the dll name.

PR 26588
	* emultempl/pe.em (_finish): Generate an import library for DLLs,
	even if they have no exports.
	* emultempl/pep.em (_finish): Likewise.
This commit is contained in:
Jeremy Drake 2020-09-30 10:50:46 +01:00 committed by Nick Clifton
parent e37c930f9e
commit 51dee44b37
3 changed files with 11 additions and 2 deletions

View File

@ -1,3 +1,10 @@
2020-09-30 Jeremy Drake <sourceware-bugzilla@jdrake.com>
PR 26588
* emultempl/pe.em (_finish): Generate an import library for DLLs,
even if they have no exports.
* emultempl/pep.em (_finish): Likewise.
2020-09-28 Alan Modra <amodra@gmail.com>
* testsuite/ld-powerpc/tlsget.d,

View File

@ -1997,7 +1997,8 @@ gld_${EMULATION_NAME}_finish (void)
{
pe_dll_fill_sections (link_info.output_bfd, &link_info);
if (command_line.out_implib_filename
&& pe_def_file->num_exports != 0)
&& (pe_def_file->num_exports != 0
|| bfd_link_pic (&link_info)))
pe_dll_generate_implib (pe_def_file, command_line.out_implib_filename,
&link_info);
}

View File

@ -1824,7 +1824,8 @@ gld_${EMULATION_NAME}_finish (void)
{
pep_dll_fill_sections (link_info.output_bfd, &link_info);
if (command_line.out_implib_filename
&& pep_def_file->num_exports != 0)
&& (pep_def_file->num_exports != 0
|| bfd_link_pic (&link_info)))
pep_dll_generate_implib (pep_def_file,
command_line.out_implib_filename, &link_info);
}