This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFC PATCH, binutils, ELF 9/11] Add support for creating import libraries


On Thursday 07 July 2016 12:48:31 Nick Clifton wrote:
> Hi Thomas,
> 
> >> Please find an updated patch below.
> >> 
> >> *** bfd/ChangeLog ***
> >> 
> >> 2016-02-17  Thomas Preud'homme  <thomas.preudhomme@arm.com>
> >> 
> >>         * elf-bfd.h (elf_backend_filter_implib_symbols): Declare backend
> >>         hook.
> >>         (_bfd_elf_filter_global_symbols): Declare.
> >>         * elf.c (_bfd_elf_filter_global_symbols): New function.
> >>         * elflink.c (elf_filter_global_symbols): Likewise.
> >>         (elf_output_implib): Likewise.
> >>         (bfd_elf_final_link): Call above function, failing if it does.
> >>         * elfxx-target.h (elf_backend_filter_implib_symbols): Define
> >>         macro and
> >>         default it to NULL.
> >>         (elf_backend_copy_indirect_symbol): Fix spacing.
> >>         (elf_backend_hide_symbol): Likewise.
> >>         (elfNN_bed): Initialize elf_backend_filter_implib_symbols backend
> >>         hook.
> >> 
> >> *** include/ChangeLog ***
> >> 
> >> 2015-10-30  Thomas Preud'homme  <thomas.preudhomme@arm.com>
> >> 
> >>         * bfdlink.h (struct bfd_link_info): Declare new ldscript_def and
> >>         out_implib_bfd fields.
> >> 
> >> *** ld/ChangeLog ***
> >> 
> >> 2015-11-02  Thomas Preud'homme  <thomas.preudhomme@arm.com>
> >> 
> >>         * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Open
> >>         import
> >>         library file for writing and initialize implib_bfd field of
> >>         link_info
> >>         structure.
> >>         * emultempl/pe.em (pe_implib_filename): Remove variable
> >>         declaration.
> >>         (OPTION_IMPLIB_FILENAME): Remove macro definition.
> >>         (gld${EMULATION_NAME}_add_options): Remove --out-implib option.
> >>         (gld_${EMULATION_NAME}_list_options): Likewise.
> >>         (gld${EMULATION_NAME}_handle_option): Likewise.
> >>         (gld_${EMULATION_NAME}_finish): Use
> >>         command_line.out_implib_filename
> >>         instead of pe_implib_filename.
> >>         * emultempl/pep.em (pep_implib_filename): Remove variable
> >>         declaration.
> >>         (OPTION_IMPLIB_FILENAME): Remove enumerator.
> >>         (gld${EMULATION_NAME}_add_options): Remove --out-implib option.
> >>         (gld_${EMULATION_NAME}_list_options): Likewise.
> >>         (gld${EMULATION_NAME}_handle_option): Likewise.
> >>         (gld_${EMULATION_NAME}_finish): Use
> >>         command_line.out_implib_filename
> >>         instead of pep_implib_filename.
> >>         * ld.h (args_type): Declare new out_implib_filename field.
> >>         * ld.texinfo (--out-implib): Move documentation to
> >>         arch-independent
> >>         part and rephrase to apply to ELF targets.
> >>         * ldexp.c (exp_fold_tree_1): Set ldscript_def field to 1 for
> >>         symbols
> >>         defined in linker scripts.
> >>         * ldlex.h (enum option_values): Declare new OPTION_OUT_IMPLIB
> >>         enumerator.
> >>         * lexsup.c (ld_options): Add entry for new --out-implib switch.
> >>         (parse_args): Handle OPTION_OUT_IMPLIB case.
> >> 
> >> *** ld/testsuite/ChangeLog ***
> >> 
> >> 2015-10-30  Thomas Preud'homme  <thomas.preudhomme@arm.com>
> >> 
> >>         * ld-elf/elf.exp (Generate empty import library): New test.
> >>         (Generate import library): Likewise.
> >>         * ld-elf/implib.s: Likewise.
> >>         * ld-elf/implib.rd: New file.
> >>         * ld-elf/empty-implib.out: Likewise
> 
> Approved - please apply - but please could you add a line to the ld/NEWS
> file mentioning the new feature.

Sure, will do.

> 
> Also - I suspect that you will want this patch to go in to the 2.27
> release.  The decision is up to Tristan, but I would urge that it be
> delayed until 2.28 as I think that it needs some time to bed-in, so to
> speak.

Absolutely, I agree. I'll post an updated patch with a NEWS entry against 
current trunk but will wait for 2.27 to be released before applying it. 
Therefore don't worry if you see the NEWS entry in the 2.27 section, I'll 
rebase it once 2.27 is out.

Thanks Richard and Nick for the review.

Best regards,

Thomas


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]