Commit graph

205 commits

Author SHA1 Message Date
David Edelsohn
66e4c22978 * config.bfd,configure.in,configure: Add m32r support. 1996-09-09 19:37:47 +00:00
David Edelsohn
0cd98b92ab * Makefile.in (aout-sparcle.o): New target.
* aoutf1.h (TARGET_IS_BIG_ENDIAN_P): Don't define if little endian.
	* config.bfd (sparclet-*-aout*): Add case.
	* configure.in (sparcle_aout_vec): Add case.
	* configure: Regenerated.
	* libaout.h (machine_type): Add M_SPARCLET_LE.
	* targets.c (sparcle_aout_vec): Declare.
	(bfd_target_vector): Add sparcle_aout_vec.
	* aout-sparcle.c: New file.
1996-09-03 19:52:15 +00:00
Mark Alexander
71bcbd25c8 Remove reloc.c from v850_files. 1996-09-02 23:23:11 +00:00
J.T. Conklin
01b49cb35b * elf32-v850.c (reloc_type): Add R_V850_HI16_S.
(elf_v850_howto_table): Add info for HI16_S reloc.
(v850_reloc_map): Add HI_16_S reloc.
* reloc.c: Define BFD_RELOC_V850_* relocs.
1996-08-31 01:32:13 +00:00
Ian Lance Taylor
c86158e591 Add SH ELF support.
* elf32-sh.c: New file.
	* elf.c (prep_headers): Handle bfd_arch_sh.
	* elfcode.h (write_relocs): Handle absolute symbol.
	* elf-bfd.h (_bfd_elf32_link_read_relocs): Declare.
	(_bfd_elf64_link_read_relocs): Declare.
	* elflink.h (NAME(_bfd_elf,link_read_relocs)): Rename from
	elf_link_read_relocs.  Make globally visible.  Change all
	callers.
	(elf_link_input_bfd): Get external symbols from cache in
	symtab_hdr->contents.  Get contents from cache in
	elf_section_data.
	* elfxx-target.h (bfD_elfNN_bfd_relax_section): Only define if not
	already defined.
	* reloc.c: Define BFD_RELOC_SH_* relocs.
	* libbfd-in.h (_bfd_sh_align_load_span): Declare.
	* coff-sh.c (sh_insns_conflict): Fix a return value.
	(_bfd_sh_align_load_span): New globally visible function, broken
	out of sh_align_load.
	(sh_align_load): Call _bfd_sh_align_load_span.
	(sh_swap_insns): Change relocs parameter to PTR.
	* bfd-in2.h, libbfd.h: Rebuild.
	* targets.c (bfd_elf32_sh_vec): Declare.
	(bfd_elf32_shl_vec): Declare.
	* config.bfd (sh-*-elf*): New target.
	* configure.in (bfd_elf32_sh_vec): New target vector.
	(bfd_elf32_shl_vec): New target vector.
	* configure: Rebuild.
	* Makefile.in: Rebuild dependencies.
 	(BFD32_BACKENDS): Add elf32-sh.o.
	(BFD32_BACKENDS_CFILES): Add elf32-sh.c.

	* elf.c (map_sections_to_segments): Check that LMA does not skip a
	page before checking D_PAGED.
1996-08-30 22:09:51 +00:00
J.T. Conklin
0c1d95c791 * Makefile.in (ALL_MACHINES): Add cpu-v850.o.
(BFD32_BACKENDS) Add elf32-v850.o.
* archures.c: Add bfd_v850_arch.
* bfd-in2.h: Add bfd_v850_arch.
* config.bfd (v850-*-*): New target.
* configure: (bfd_elf32_v850_vec) New vector.
* configure.in: (bfd_elf32_v850_vec) New vector.
* cpu-v850.c: New file.
* elf.c (prep_headers): Added case bfd_arch_v850.
* elf32-v850.c: New file.
* targets.c (bfd_elf32_v850_vec): New vector.
1996-08-20 22:09:25 +00:00
Martin Hunt
50bd50d48f start-sanitize-d10v
Wed Jul 17 14:51:52 1996  Martin M. Hunt  <hunt@pizza.cygnus.com>
        * Makefile.in (ALL_MACHINES): Add cpu-d10v.o
        (BFD32_BACKENDS) Add elf32-d10v.o
        * archures.c: Add bfd_d10v_arch.
        * bfd-in2.h: Add bfd_d10v_arch.
        * config.bfd (d10v-*-*): New target.
        * configure: (bfd_elf32_d10v_vec) New vector.
        * configure.in: (bfd_elf32_d10v_vec) New vector.
        * cpu-d10v.c: New file.
        * elf.c (prep_headers): Added case bfd_arch_d10v.
        * elf32-d10v.c: New file.
        * libbfd.h: Rebuild.
        * reloc.c (BFD_RELOC_D10V_10_PCREL_R, BFD_RELOC_D10V_10_PCREL_L, BFD_RELOC_D10V_18,
          BFD_RELOC_D10V_18_PCREL): Define.
        * targets.c (bfd_elf32_d10v_vec): New vector.
end-sanitize-d10v
1996-07-18 00:47:05 +00:00
Jeff Law
34255b708c No longer need to sanitize away h8/s stuff. 1996-07-05 18:30:03 +00:00
Jeff Law
e2d46d50a3 Sanitize h8s stuff out of bfd-in2.h too. 1996-06-26 15:07:58 +00:00
Ian Lance Taylor
e8f4671749 Fri Jun 21 12:35:27 1996 Richard Henderson <rth@tamu.edu>
* elf64-alpha.c: New file.
	* config.bfd (alpha-*-linuxecoff*): New target.
	(alpha-*-linux*, alpha-*-elf*): New targets.
	* configure.in (bfd_elf64_alpha_vec): New vector.
	* configure: Rebuild.
	* targets.c (bfd_elf64_alpha_vec): Declare.
	(bfd_target_vector): Add bfd_elf64_alpha_vec if BFD64.
	* reloc.c (BFD_RELOC_ALPHA_GPDISP): Define.
	* bfd-in2.h, libbfd.h: Rebuild.
	* Makefile.in: Rebuild dependencies.
 	(BFD64_BACKENDS): Add elf64-alpha.o.
	(BFD64_BACKENDS_CFILES): Add elf64-alpha.c.
1996-06-21 16:40:43 +00:00
Jeff Law
2459179f7a * coff-h8300.c: Remove #if 0 code.
(compatable): Don't allow mixing/matching of different architectures.
Just stuff I noticed.

start-sanitize-h8s
        * archures.c (bfd_mach_h8300s): Add.
        * bfd-in2.h: Rebuilt.
        * coff-h8300.c (funcvec_hash_newfunc): Handle H8/S too.
        (BADMAG): Likewise.
        (h8300_reloc16_estimate): Likewise.
        (h8300_reloc16_extra_cases): Likewise.
        (h8300_bfd_link_add_symbols): Likewise.
        * coffcode.h (coff_set_arch_mach_hook): Likewise.
        (coff_set_flags): Likewise.
        * cpu-h8300.c (h8300_scan): Likewise.
        Add H8/S to bfd_h8300_arch list.
end-sanitize-h8s
H8/S support.  Sanitized away until we know its official status.
1996-06-18 22:26:09 +00:00
Ian Lance Taylor
c3d8e071bf Tue Jun 18 14:42:58 1996 Klaus Kaempf <kkaempf@progis.de>
Added support for Alpha OpenVMS:
	* evax.h, evax-alpha.c, evax-egsd.c, evax-emh.c: New files.
	* evax-etir.c, evax-misc.c, hosts/alphavms.h: New files.
	* config.h-vms, makefile.vms: New files.
	* config.bfd (alpha-*-*vms*): New target.
	* configure.in (evax_alpha_vec): New target vector.
	* configure: Rebuild.
	* reloc.c (BFD_RELOC_SWREL32, BFD_RELOC_SWREL64): Define.
	(BFD_RELOC_ALPHA_LINKAGE, BFD_RELOC_ALPHA_BASEREG): Define.
	* targets.c (bfd_target_evax_flavour): Define.
	(evax_alpha_vec): Declare.
	(bfd_target_vector): Add ecoffalpha_little_vec and evax_alpha_vec
	if BFD64 is defined.
	* bfd-in2.h, libbfd.h: Rebuild.
	* Makefile.in: Rebuild dependencies.
	(BFD64_BACKENDS): Add evax-alpha.o, evax-egsd.o, evax-etir.o,
	evax-emh.o, and evax-misc.o.
	(BFD64_BACKENDS_CFILES): Add evax-alpha.c, evax-egsd.c,
	evax-etir.c, evax-emh.c, and evax-misc.c.
	(HFILES): Add evax.h.
1996-06-18 19:07:51 +00:00
Jim Wilson
f98286385f Kill r16/rce/acp stuff. 1996-06-08 03:52:13 +00:00
Jim Wilson
4906b2a367 Kill r16/rce/acp stuff. 1996-06-08 03:45:18 +00:00
Ian Lance Taylor
d1bf45aa94 64-bit MIPS ELF ABI objdump support:
* elf64-mips.c: New file.
	* Makefile.in: Rebuild dependencies.
 	(BFD64_BACKENDS): Add elf64-mips.o.
	(BFD64_BACKENDS_CFILES): Add elf64-mips.c.
	* config.bfd (mips*el-*-elf*) Add bfd_elf64_bigmips_vec and
	bfd_elf64_littlemips_vec to targ_selvecs.
	(mips*-*-elf*): Likewise.
	* confingure.in: Add bfd_elf64_bigmips_vec and
	bfd_elf64_littlemips_vec to vector switch.
	* configure: Rebuild.
	* elf32-mips.c (_bfd_mips_elf_section_from_shdr): New function,
	broken out of mips_elf_section_from_shdr.
	(mips_elf32_section_from_shdr): Rename from
	mips_elf_section_from_shdr.  Call new function.
	(elf_backend_section_from_shdr): Update name of renamed function.
	* elf-bfd.h (struct elf_size_info): Change second parameter of
	write_out_phdrs to be const.  Likewise for second parameter of
	swap_symbol_out.
	(struct bfd_elf_section_data): Add rel_hdr2 field.
	(bfd_elf32_swap_symbol_in): Change second parameter to be const.
	(bfd_elf32_swap_symbol_out): Likewise.
	(bfd_elf32_swap_reloc_in): Likewise.
	(bfd_elf32_swap_reloc_out): Likewise.
	(bfd_elf32_swap_reloca_in): Likewise.
	(bfd_elf32_swap_reloca_out): Likewise.
	(bfd_elf32_swap_phdr_in): Likewise.
	(bfd_elf32_swap_phdr_out): Likewise.
	(bfd_elf32_swap_dyn_in): Likewise.
	(bfd_elf32_swap_dyn_out): Likewise.
	(bfd_elf32_slurp_symbol_table): Declare.
	(bfd_elf32_write_shdrs_and_ehdr): Declare.
	(bfd_elf32_write_out_phdrs): Declare.
	(bfd_elf64_swap_symbol_in): Change second parameter to be const.
	(bfd_elf64_swap_symbol_out): Likewise.
	(bfd_elf64_swap_reloc_in): Likewise.
	(bfd_elf64_swap_reloc_out): Likewise.
	(bfd_elf64_swap_reloca_in): Likewise.
	(bfd_elf64_swap_reloca_out): Likewise.
	(bfd_elf64_swap_phdr_in): Likewise.
	(bfd_elf64_swap_phdr_out): Likewise.
	(bfd_elf64_swap_dyn_in): Likewise.
	(bfd_elf64_swap_dyn_out): Likewise.
	(bfd_elf64_slurp_symbol_table): Declare.
	(bfd_elf64_write_shdrs_and_ehdr): Declare.
	(bfd_elf64_write_out_phdrs): Declare.
	(_bfd_mips_elf_section_from_shdr): Declare.
	* elf.c (bfd_section_from_shdr): Remove assertion requiring
	SHT_REL/SHT_RELA to match use_rela_p.  If there is already a reloc
	section for the section, add the new one to rel_hdr2.  Increment
	reloc_count rather than setting it.
	* elfcode.h (elf_slurp_symbol_table): Define name as macro.
	Remove static declaration.
	(elf_write_shdrs_and_ehdr): Define name as macro.
	(elf_write_out_phdrs): Likewise.
	(elf_swap_ehdr_in, elf_swap_ehdr_out): Declare.
	(elf_swap_shdr_in, elf_swap_shdr_out): Declare.
	(elf_swap_symbol_in): Change second parameter to be const.
	(elf_swap_symbol_out): Likewise.
	(elf_swap_ehdr_in, elf_swap_ehdr_out): Likewise.
	(elf_swap_shdr_in, elf_swap_shdr_out): Likewise.
	(elf_swap_phdr_in, elf_swap_phdr_out): Likewise.
	(elf_swap_reloc_in, elf_swap_reloc_out): Likewise.
	(elf_swap_reloca_in, elf_swap_reloca_out): Likewise.
	(elf_write_out_phdrs): Rename from write_out_phdrs.  Change second
	parameter to be const.  Make non-static.
	(elf_write_shdrs_and_ehdr): Rename from write_shdrs_and_ehdr.
	Make non-static.
	(elf_slurp_symbol_table): Make non-static.
	(NAME(_bfd_elf,size_info)): Update names of renamed functions.
	* elfxx-target.h (elf_info_to_howto): Define if not defined.
	(elf_backend_size_info): Likewise.
	(elfNN_bed): Use elf_backend_size_info.
	* targets.c (bfd_elf64_bigmips_vec): Declare.
	(bfd_elf64_littlemips_vec): Declare.
	(bfd_target_vector): Add bfd_elf64_bigmips_vec and
	bfd_elf64_littlemips_vec if BFD64 is defined.
1996-05-29 20:33:00 +00:00
Michael Meissner
0d1fcbbb90 Add PPCbug boot record support 1996-05-07 20:20:55 +00:00
Ian Lance Taylor
1726b8f0a4 Optimize linking of stabs in sections as used in ELF and COFF.
* stabs.c: New file.
	* libbfd-in.h (_bfd_link_section_stabs): Declare.
	(_bfd_write_section_stabs): Declare.
	(_bfd_write_stab_strings): Declare.
	* libbfd.h: Rebuild.
	* libcoff-in.h (struct coff_section_tdata): Add stab_info field.
	(struct coff_link_hash_table): Add stab_info field.
	* libcoff.h: Rebuild.
	* cofflink.c (_bfd_coff_link_hash_table_init): Initialize
	stab_info field.
	(coff_link_add_symbols): Call _bfd_link_section_stabs if
	appropriate.
	(_bfd_coff_final_link): Write out stab strings hash table.
	(_bfd_coff_link_input_bfd): Handle optimized stabs sections.
	* coff-ppc.c (ppc_bfd_coff_final_link): Write out stab strings
	hash table.
	* elf-bfd.h (struct elf_link_hash_table): Add stab_info field.
	(struct bfd_elf_section_data): Add stab_info field.
	* elf.c (_bfd_elf_link_hash_table_init): Initialize stab_info
	field.
	* elflink.h (elf_link_add_object_symbols): If appropriate, call
	_bfd_link_section_stabs.
	(elf_bfd_final_link): Write out stab strings hash table.
	(elf_link_input_bfd): Handle optimized stabs sections.
	* reloc.c (_bfd_final_link_relocate): Check address against
	_raw_size rather than _cooked_size.
	* Makefile.in: Rebuild dependencies.
	(BFD_LIBS): Add stabs.o
	(BFD_LIBS_CFILES): Add stabs.c.
1996-04-22 22:35:53 +00:00
Ian Lance Taylor
c877bdf1a5 * ns32k.h: New file.
* cpu-ns32k.h: Include ns32k.h.  Rename externally visible
	functions to start with _bfd_.
	* aout-ns32k.c: Include ns32k.h.  Change references to renamed
	functions in cpu-ns32k.h.
	* Makefile.in: Rebuild dependencies.
	(HFILES): Add ns32k.h.
1996-03-27 19:57:34 +00:00
Ian Lance Taylor
55626bf086 Tue Feb 27 14:17:31 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* m68klinux.c: New file.
	* hosts/m68klinux.h: New file.
	* config.bfd (m68*-*-linuxaout*, m68*-*-linux*): New targets.
	* configure.in (m68*-*-linux*): New native host.
	(m68klinux_vec): New vector.
	* configure: Rebuild.
	* targets.c (m68klinux_vec): Declare.
	* i386linux.c (bfd_i386linux_size_dynamic_sections): Renamed from
	bfd_linux_size_dynmic_sections to avoid clash with m68klinux.c.
	* bfd-in.h (bfd_i386linux_size_dynamic_sections): Rename
	declaration from bfd_linux_size_dynamic_sections.
	(bfd_m68klinux_size_dynamic_sections): Declare.
	* bfd-in2.h: Rebuild.
	* Makefile.in: Rebuild dependencies.
	(BFD32_BACKENDS): Add m68klinux.o.
	(BFD32_BACKENDS_CFILES): Add m68klinux.c.
1996-02-27 19:31:29 +00:00
J.T. Conklin
fe16107dfa * configure.in (*-*-netbsd*): Set COREFILE to netbsd-core.c.
don't define TRAD_HEADER.
* configure: Rebuild.
* netbsd-core.c: New file, support for NetBSD core files.
* hosts/*nbsd.h: Removed.
1996-02-06 22:19:05 +00:00
Ian Lance Taylor
047c57ac71 Rename XL to JX, and remove sanitization. 1996-02-06 19:15:26 +00:00
Ian Lance Taylor
d19df9b51f Wed Jan 31 12:55:49 1996 Richard Henderson <rth@tamu.edu>
* coff-aux.c: New file.
	* hosts/m68kaux.h: New file.
	* config.bfd (m68*-apple-aux*): New target.
	* configure.in (m68*-apple-aux*): New native host.
	(m68kaux_coff_vec): New vector.
	* configure: Rebuild.
	* targets.c (m68kaux_coff_vec): Declare.
	* coffcode.h (bfd_coff_backend_data): Add field
	_bfd_coff_link_add_one_symbol.
	(bfd_coff_link_add_one_symbol): Define.
	(compare_arelent_ptr): New static function if TARG_AUX.
	(coff_write_relocs): If TARG_AUX, sort the relocs.
	(coff_write_object_contents): Set A/UX aouthdr magic number.
	(coff_link_add_one_symbol): Define if not defined.
	(bfd_coff_std_swap_table): Initialize new field.
	* libcoff.h: Rebuild.
	* cofflink.c (coff_link_add_symbols): Call
	bfd_coff_link_add_one_symbol rather than
	_bfd_generic_link_add_one_symbol.
	* coff-m68k.c (COFF_PAGE_SIZE): Don't define if already defined.
	* coff-alpha.c (alpha_ecoff_backend_data): Initialize new field.
	* coff-mips.c (mips_ecoff_backend_data): Likewise.
	* Makefile.in: Rebuild dependencies.
	(BFD32_BACKENDS): Add coff-aux.o.
	(BFD32_BACKENDS_CFILES): Add coff-aux.c.
1996-01-31 18:17:12 +00:00
David Edelsohn
75c9ddc9c5 * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Delete checking
of flags, only flags used are controlled by mach number.  Bump up
	output file mach number to highest of input file mach numbers.
	(elf32_sparc_object_p): Watch for EF_SPARC_SUN_US1.
	(elf32_sparc_final_write_processing): Set EF_SPARC_SUN_US1 if v8plusa.
Also, delete v8plus sanitization.
1996-01-24 18:45:50 +00:00
David Edelsohn
5bc513b4fb * archures.c (bfd_mach_sparc_v9): Renamed from bfd_mach_sparc64.
start-sanitize-v8plus
	(bfd_mach_sparc_{v8plus,v8plusa}): Define.
end-sanitize-v8plus
	(bfd_mach_sparc_v9a): Define.
	* bfd-in2.h: Regenerated.
	* aoutx.h (aout,machine_type): bfd_mach_sparc64 renamed to
	bfd_mach_sparc_v9.
	* config.bfd (sparc64-*-sysv4*,sparc64-*-solaris2*): Set targ_defvec
	to bfd_elf32_sparc_vec.
	* cpu-sparc.c (arch_info_struct): Renamed from sparc_arch_info.
start-sanitize-v8plus
	Add v8plus{,a} support.
end-sanitize-v8plus
	Add v9a support.
start-sanitize-v8plus
	* elf32-sparc.h: #include "elf/sparc.h".
	(elf32_sparc_set_private_flags, elf32_sparc_copy_private_bfd_data,
	elf32_sparc_merge_private_bfd_data, elf32_sparc_object_p,
	elf32_sparc_final_write_processing): New functions.
	(bfd_elf32_bfd_set_private_flags, bfd_elf32_bfd_copy_private_bfd_data,
	bfd_elf32_bfd_merge_private_bfd_data, elf_backend_object_p,
	elf_backend_final_write_processing): Define.
end-sanitize-v8plus
1996-01-22 17:15:49 +00:00
David Edelsohn
065822fc3d Oops. Forgot sanitization. 1996-01-20 17:05:56 +00:00
Fred Fish
767f22d543 * config.bfd (i[345]86-*-freebsd*): Add target.
* configure.in (i386freebsd_vec): Add vec.
	* configure: Regenerate.
	* Makefile.in (BFD32_BACKENDS): Add i386freebsd.o.
	(BFD32_BACKENDS_CFILES): Add i386freebsd.c.
	Rebuild dependencies..
	* freebsd.h: New file.
	* i386freebsd.c: New file.
	* targets.c (i386freebsd_vec): Declare.
	(bfd_target_vector): Add i386freebsd_vec.
	* i386linux.c (SEGMENT_SIZE): Define as TARGET_PAGE_SIZE
	* i386netbsd.c (SEGMENT_SIZE):  Define as TARGET_PAGE_SIZE
1996-01-05 05:44:27 +00:00
Ian Lance Taylor
ffd1548911 * ihex.c: New file; support for Intel Hex format.
* targets.c (enum bfd_flavour): Add bfd_target_ihex_flavour.
	(ihex_vec): Declare.
	(bfd_target_vector): Always include ihex_vec.
	* bfd.c (struct _bfd): Add ihex_data field to tdata union.
	* Makefile.in: Rebuild dependencies.
	(BFD_LIBS): Add ihex.o
	(BFD_LIBS_CFILES): Add ihex.c.
	* bfd-in2.h: Rebuild.
1995-12-02 02:00:08 +00:00
Ian Lance Taylor
cf587de853 Mon Nov 6 17:13:15 1995 Harry Dolan <dolan@ssd.intel.com>
* coff-i860.c: New file, based on coff-i386.c.
	* cpu-i860.c: New file, based on cpu-i386.c.
	* hosts/i860mach3.h: New file, based on hosts/i386mach3.h.
	* config.bfd (i860-*-mach3*, i860-*-osf1*, i860-*-coff*): New
	targets, using i860coff_vec.
	* configure.in (i860-*-mach3*, i860-*-osf1*): New hosts, using
	trad-core.o and hosts/i860mach3.h.
	(i860coff_vec): Use coff-i860.o and cofflink.o.
	* configure: Rebuild.
	* Makefile.in: Rebuild dependencies.
	(ALL_MACHINES): Add cpu-i860.o.
	(BFD32_BACKENDS): Add coff-i860.o.
	(CFILES): Add cpu-i860.c and coff-i860.c.
	* targets.c (i860coff_vec): Declare.
	(bfd_target_vector): Add &i860coff_vec.
	* archures.c (bfd_i860_arch): Declare.
	(bfd_archures_list): Add &bfd_i860_arch.
	* coffcode.h (coff_set_arch_mach_hook): Handle I860 magic number.
	(coff_set_flags): Handle bfd_arch_i860.
	(coff_write_object_contents): Handle I860 a.out magic number.
1995-11-06 23:04:44 +00:00
Fred Fish
d9e771e3b0 * core.c: Renamed to corefile.c
* makefile.dos (OBJS): Change core.o to corefile.o
	* Makefile.in (CFILES, BFD_LIBS): Use corefile.c instead of core.c
1995-11-05 00:29:13 +00:00
Fred Fish
6ab826bd98 * libelf.h: Rename to elf-bfd.h to avoid conflict with
systems that have a system <libelf.h>.
	* Makefile.in: Globally replace libelf.h with elf-bfd.h.
	* bfd.c, elf.c, elf32-arc.c, elf32-gen.c, elf32-hppa.c,
	elf32-hppa.h, elf32-i386.c, elf32-i860.c, elf32-m68k.c,
	elf32-m88k.c, elf32-mips.c, elf32-ppc.c, elf32-sparc.c,
	elf64-gen.c, elf64-sparc.c, elfcode.h, elflink.c,
	elfxx-target.h: Include elf-bfd.h rather than libelf.h.
	* elfxx-target.h: Change libelf.h reference to elf-bfd.h.
1995-10-31 23:29:05 +00:00
Ken Raeburn
e295a90d12 keep files added by Niklas Hallqvist 1995-10-31 07:43:58 +00:00
Stu Grossman
d6d44ef984 * config.bfd: Add config stuff for mips*-*-magic* to set
targ_defvec to ecoff_big_vec.
1995-10-27 16:45:28 +00:00
Ian Lance Taylor
dd98464413 Add start at AIX linker support; no shared libraries yet.
* xcofflink.c: New file.
	* configure.in (rs600coff_vec): Use xcofflink.o.
	* configure: Rebuild.
	* libcoff-in.h (struct xcoff_tdata): Add csects and debug_indices
	fields.
	(struct xcoff_section_tdata): Define.
	(xcoff_section_data): Define macro.
	(_bfd_xcoff_bfd_link_hash_table_create): Declare.
	(_bfd_xcoff_bfd_link_add_symbols): Declare.
	(_bfd_xcoff_bfd_final_link): Declare.
	(_bfd_ppc_xcoff_relocate_section): Declare.
	* libcoff.h: Rebuild.
	* coff-rs6000.c: Clean up a bit.
	(xcoff_mkobject): Default modtype to 1L, not RE.  Initialize
	cputype, csects, and debug_indices.
	(xcoff_copy_private_bfd_data): Copy cputype.
	(xcoff_howto_table): Rename from rs6000coff_howto_table.
	(xcoff_rtype2howto): Rename from rs6000coff_rtype2howto.
	(xcoff_reloc_type_lookup): Rename from
	rs6000coff_reloc_type_lookup.
	(coff_relocate_section): Define.
	(_bfd_xcoff_sizeof_headers): Define.
	(_bfd_xcoff_bfd_get_relocated_section_contents): Define.
	(_bfd_xcoff_bfd_relax_section): Define.
	(_bfd_xcoff_bfd_link_split_section): Define.
	(rs6000coff_vec): For BFD_JUMP_TABLE_LINK, use _bfd_xcoff, not
	coff.
	* coffcode.h (coff_compute_section_file_positions): If AIX,
	increment sofar by SMALL_AOUTSZ if not executable.
	(coff_write_object_contents): If AIX, always output an a.out
	header; if not executable, header size of SMALL_AOUTSZ.
	* hash.c (struct bfd_strtab_hash): Add xcoff field.
	(_bfd_stringtab_init): Initialize xcoff field.
	(_bfd_xcoff_stringtab_init): New function.
	(_bfd_stringtab_add): In XCOFF mode, leave two bytes for length.
	(_bfd_stringtab_emit): In XCOFF mode, write out length.
	* libbfd-in.h (_bfd_xcoff_stringtab_init): Declare.
	* libbfd.h: Rebuild.
	* Makefile.in: Rebuild dependencies.
	(BFD32_BACKENDS): Add xcofflink.o.
	(CFILES): Add xcofflink.c.
ld -r works on hello, world.
1995-10-16 21:54:48 +00:00
Stan Shebs
63c67f3c43 Comings and goings of Mac-specific files. 1995-09-29 02:39:58 +00:00
Ian Lance Taylor
8d2a09b0ca add new coff-ppc files 1995-09-27 14:29:22 +00:00
Ian Lance Taylor
936b870cfd * config.in: Rename from config.h.in.
* configure.in: Call AC_CONFIG_HEADER with config.h:config.in.
	* configure: Rebuild.
	* Makefile.in (stamp-h): Set CONFIG_HEADERS to config.h:config.in
	when calling config.status.
1995-09-07 17:03:55 +00:00
Ian Lance Taylor
b7577823b6 * configure.in: Call AC_CONFIG_HEADER. Substitute
HOST_64BIT_LONG.  Check that various header files exist.  Check
	that fcntl exists.  Call BFD_BINARY_FOPEN.  Check whether malloc
	and/or free need to be declared.  Don't make a link to sysdep.h.
	Define TRAD_HEADER for various hosts.
	* configure: Rebuild.
	* configure.host: Don't set my_host.  Add definitions taken from
	host header files for various entries.  Remove entries which now
	do nothing.
	* acconfig.h: New file.
	* config.h.in: New file, built by autoheader.
	* sysdep.h: New file.
	* Makefile.in (do_distclean): Don't remove sysdep.h.
	(RECONFIG): Remove.
	(LOCAL_H_DEPS): New variable.
	($(BFD_LIBS)): Use $(LOCAL_H_DEPS) rather than libbfd.h and
	$(RECONFIG).
	($(BFD_MACHINES), $(BFD_BACKENDS)): Likewise.
	($(OPTIONAL_BACKENDS)): Likewise.
	(stmp-bfd.h): Just substitute for BFD_HOST_64BIT_LONG, rather than
	looking through sysdep.h.
	* bfd-in.h (BFD_HOST_64BIT_LONG): Define; set by Makefile.
	(BFD_HOST_64_BIT): Define based on BFD_HOST_64BIT_LONG.
	(fprintf_vma, sprintf_vma): Likewise.
	(int64_type, uint64_type): Don't define.
	* bfd-in2.h: Rebuild.
	* archures.c, bfd.c, srec.c: Include <ctype.h>.
	* elfcore.h: Check HAVE_SYS_PROCFS_H rather than HAVE_PROCFS.
	* lynx-core.c: Include stuff from old hosts/lynx.h.
	* opncls.c (bfd_fdopenr): Check HAVE_FNCTL and defined (F_GETFL),
	rather than NO_FCNTL.
	* targets.c (bfd_target_list): Check HOST_HPPAHPUX and ! __STDC__
	rather than NATIVE_HPPAHPUX_COMPILER.
	* trad-core.c: Don't include <errno.h>.  Include TRAD_HEADER if it
	is defined.
	* hosts/*.h: Remove all header files which merely include,
	declare, and define things.  Leave header files which define
	information needed by trad-core.c.
1995-09-06 22:53:43 +00:00
Ian Lance Taylor
f515fb2f93 * configure.host: Incorporate host Makefile fragments by setting
shell variables.
	* configure.in: Call AC_PROG_CC.  Substitute CFLAGS, HDEFINES and
	AR.  Call AC_PROG_INSTALL.  Substitute CC_FOR_BUILD, choosing a
	value based on whether the code is being compiled by a cross
	compiler.  Don't substitute host_makefile_frag or frags.
	* aclocal.m4: New file to define local AC_PROG_CC.
	* configure: Rebuild.
	* Makefile.in (INSTALL): Set to @INSTALL@.
	(INSTALL_PROGRAM): Set to @INSTALL_PROGRAM@.
	(INSTALL_DATA): Set to @INSTALL_DATA@.
	(AR): Set to @AR@.
	(CC): Define as @CC@.
	(CFLAGS): Set to @CFLAGS@.
	(CC_FOR_BUILD): Set to @CC_FOR_BUILD@.
	(@host_makefile_frag@): Remove.
	(ALL_CFLAGS): Change $(HDEFINES) to @HDEFINES@.  Move $(CFLAGS)
	after other options.
	(config.status): Remove dependency upon @frags@.
	* config/*.mh, config/README: Remove.
1995-09-04 21:13:51 +00:00
Ken Raeburn
2ec2c9f4b8 sanitize changelog.2 1995-09-03 07:08:36 +00:00
Steve Chamberlain
1613e0758e Split. 1995-09-02 00:24:04 +00:00
Steve Chamberlain
4e98461f60 Thu Aug 31 16:00:53 1995 steve chamberlain <sac@slash.cygnus.com>
* Makefile.in: Update dependencies.
	* aout-target.h (MY_bfd_print_private_bfd_data): New.
	* bfd-in.h (PE STUFF): Deleted.
	* bfd.c (tdata->pe_obj_data): New.
	(bfd_print_private_bfd_data): New.
	* coff-i386.c, coff-arm.c (coff_*-rtype_to_howto): Get image base from
	new place.
	* libcoff.h, libbfd.h, bfd-in2.h: Rebuilt.
	* coffcode.h (pe_value): Delete
	(coff_mkobject, coff_mkobject_hook): Conditionally build.
	(coff_compute_section_file_positions): Look in new place.
	(add_data_entry, fill_pe_header_info): Deleted.
	(coff_write_object_contents): Remove PE stuff.
	(coff_bfd_print_private_bfd_data): New.
	* coffswap.h: Remove PE stuff.
	* elfxx-target.h (bfd_elfNN_bfd_print_private_bfd_data): New.
	* libbfd-in.h (_bfd_generic_bfd_print_private_bfd_data): New.
	* libcoff-in.h (pe_data_type): New.
	* libecoff.h (_bfd_ecoff_bfd_print_private_bfd_data): New.
	* targets.c (_bfd_print_private_bfd_data): New.
	* peicode.h: New file.
1995-08-31 23:33:37 +00:00
Ken Raeburn
7c1a9ec39d keep configure; clean elf.c not elfcode.h for arc 1995-07-06 17:03:06 +00:00
Ken Raeburn
5cb0993caf clean configure when cleaning configure.in 1995-07-06 02:59:06 +00:00
Ken Raeburn
ede4eed483 Added new files elflink.c, elflink.h, elfcore.h.
Moved some mostly size-independent stuff from elfcode.h to elf.c, adding a data
structure to elfcode.h with some misc data and callback functions.  Added a
pointer to that structure to the target back end data.  More work can be done
here.

Renamed generic elf routines (not cpu-specific stuff) to start with bfd_elf or
_bfd_elf.  Updated most call sites, sometimes defined some macros.

Moved some dynamic linking support code from m68k, sparc, i386 to common files,
using target back end flags to control behavior.  More work can probably be
done here too.

Moved core- and linker-support code out of elfcode.h to elf.c, elfcore.h,
elflink.h, or elflink.c.  Now elfcode.h contains only .o and executable
support, plus #includes of elfcore.h and elflink.h.  Much of the contents of
these other header files can probably still be moved from the .h files to the
.c files, to get compiled only once.

Cleaned up some "gcc -Wall" warnings regarding unused or uninitialized
variables, in generic and cpu-specific code.
1995-07-06 02:22:00 +00:00
Ian Lance Taylor
4b18dd1ec2 Remove elf32-targetd.h and elf64-targets.h. Add elfxx-target.h. 1995-07-02 19:23:29 +00:00
Steve Chamberlain
c3c112fc84 *** empty log message *** 1995-06-03 02:26:19 +00:00
Steve Chamberlain
a3444c4926 Wed May 24 10:52:01 1995 Steve Chamberlain <sac@slash.cygnus.com>
pr ld/6997

	* elf32-i386.c (elf_i386_relocate_section): Give error
	message when linking to a shared reloc which isn't there.

Wed May 24 10:40:00 1995  Steve Chamberlain  <sac@slash.cygnus.com>

	Support for ARM-PE.

	* Makefile.in, coffcode.h, config.bfd, configure.in, pe-arm.c,
	 pei-arm.c, reloc.c, targets.c, config/arm-pe.mt:
	 Support for ARM COFF/PE.
1995-05-24 18:14:23 +00:00
Ken Raeburn
ff15324f63 Bunch of changes from Richard Earnshaw for generic bi-endian ARM aout targets.
Details in change logs.
1995-05-18 22:21:18 +00:00
Steve Chamberlain
b297038d0b Thu May 11 16:43:14 1995 Steve Chamberlain <sac@slash.cygnus.com>
tekhex.c (first_phase): Understand type 0 symbols.
	(tekhex_write_object_contents): Fix typo in final record.

Thu May 11 16:43:14 1995  Steve Chamberlain  <sac@slash.cygnus.com>

	pr ld/6840

	* coff-i960.c (optcall_callback): don't try and optimize
	undefined refs.
	(coff_write_relocs): Search for broken relocs on the way
	out and fix them up.
	(coff_renumber_symbols): Calculate and return index of
	first undefined symbol.
	(coff_write_object_contents): Call coff_renumber_symbols
	and coff_write_relocs with the new args.
	* libcoff.h: (coff_renumber_symbols, coff_renumber_symbols):
	Modified prototypes.

Thu May 11 16:43:14 1995  Steve Chamberlain  <sac@slash.cygnus.com>
			  Tom Griest <griest@cs.yale.edu>

	Initial support for PE format.

	* Makefile.in, targets.c, configure.in, config.bfd:
	Add support for i386-*-winnt and i386-*-pe.
	* archive.c (do_slurp_coff_armap):  Understand NTPE format
	archives.
	(_bfd_slurp_extended_name_table): Turn \ in a filename
	into /.
	* bfd-in.h (bfd_link_subsystem, _bfd_link_stack_heap): New.
	* coff-i386.c  (howto_table): Conditionalize PCRELOFFSET.
	* coffcode.h (IMAGE_BASE): New.
	(coff_compute_section_file_positions): Throw away .junk
	sections for PE, align symbols.
	(coff_write_object_contents): Throw away .junk sections
	for PE. Remember info on .idata and .rsrc sections.
	Fill in the PE header.
	(coff_slurp_symbol_table): PE uses C_SECTION class.
	* cofflink.c (_bfd_coff_final_link): Keep PE info up to date.
	(_bfd_coff_generic_relocate_section): Cope with PE relocs.
	* coffswap.h (coff_swap_{aout/file/scn/sym}hdr_{in/out}):
	New code for PE headers.
1995-05-13 18:03:25 +00:00
Stan Shebs
241d8883ed Always keep all MPW support files 1995-04-04 19:53:04 +00:00