old-cross-binutils/ld/emultempl
Thomas Preud'homme 7635954182 Add support for creating ELF import libraries
2016-07-15  Thomas Preud'homme  <thomas.preudhomme@arm.com>

bfd/
	* 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/
	* bfdlink.h (struct bfd_link_info): Declare new ldscript_def and
	out_implib_bfd fields.

2016-07-15  Thomas Preud'homme  <thomas.preudhomme@arm.com>
	    Nick Clifton  <nickc@redhat.com>

ld/
	* 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.
	* testsuite/ld-elf/elf.exp (Generate empty import library): New test.
	(Generate import library): Likewise.
	* testsuite/ld-elf/implib.s: Likewise.
	* testsuite/ld-elf/implib.rd: New file.
	* testsuite/ld-elf/empty-implib.out: Likewise
2016-07-15 17:50:48 +01:00
..
aarch64elf.em [AArch64] Also puts value in place for R_AARCH64_RELATIVE 2016-05-03 11:59:37 +01:00
aix.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
alphaelf.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
arclinux.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
armcoff.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
armelf.em Support for dedicated output section for some ARM veneer types 2016-05-23 09:38:32 +01:00
astring.sed * emultempl/ostring.sed: Rename from stringify.sed. 1999-08-06 22:46:03 +00:00
avrelf.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
beos.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
bfin.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
cr16elf.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
crxelf.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf-generic.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32.em Add support for creating ELF import libraries 2016-07-15 17:50:48 +01:00
epiphanyelf_4x4.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
genelf.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
generic.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
gld960.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
gld960c.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
hppaelf.em [HPPA] Attach linker created dynamic sections to stub bfd 2016-05-11 22:51:14 +09:30
ia64elf.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
irix.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
linux.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
lnk960.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
m68hc1xelf.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
m68kcoff.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
m68kelf.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
metagelf.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
mipself.em MIPS/LD: Convert ELF linker emulation option macros to an enum 2016-01-04 23:35:03 +00:00
mmix-elfnmmo.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
mmixelf.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
mmo.em Speedup mmo and pe orphan placement for relocatable link 2016-03-02 05:07:50 -08:00
msp430.em Remove use of alloca. 2016-03-21 16:31:46 +00:00
nds32elf.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
needrelax.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
netbsd.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
nios2elf.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
ostring.sed * emultempl/ostring.sed: Rename from stringify.sed. 1999-08-06 22:46:03 +00:00
pe.em Add support for creating ELF import libraries 2016-07-15 17:50:48 +01:00
pep.em Add support for creating ELF import libraries 2016-07-15 17:50:48 +01:00
ppc32elf.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
ppc64elf.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
README Copyright update for binutils 2016-01-01 23:00:01 +10:30
rxelf.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
scoreelf.em update many old style function definitions 2016-04-20 07:04:49 -04:00
sh64elf.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
solaris2.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
spu_icache.o_c Regenerate spu overlay and icache manager files 2014-11-04 22:36:13 +10:30
spu_icache.S bfd/ 2009-03-17 12:46:19 +00:00
spu_ovl.o_c Regenerate spu overlay and icache manager files 2014-11-04 22:36:13 +10:30
spu_ovl.S Copyright update for binutils 2016-01-01 23:00:01 +10:30
spuelf.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
sunos.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
tic6xdsbt.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
ticoff.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
v850elf.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
vanilla.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
vms.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
vxworks.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
xtensaelf.em Copyright update for binutils 2016-01-01 23:00:01 +10:30
z80.em Copyright update for binutils 2016-01-01 23:00:01 +10:30

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

The files in this directory are sourced by genscripts.sh, after
setting some variables to substitute in, to produce
C source files that contain jump tables for each emulation.

Copyright (C) 2012-2016 Free Software Foundation, Inc.

Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved.