Commit graph

172 commits

Author SHA1 Message Date
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
Ken Raeburn
7c2c70f3f1 keep new msdos files 1995-02-07 19:14:32 +00:00
Steve Chamberlain
d468a1499b * archures.c, Makefile.in, targets.c, bfd-in2.h, coffcode.h,
config.bfd, configure.in, config/w65.mt: Initial support for the W65.
1995-01-16 05:44:00 +00:00
Ken Raeburn
8f12e98ad6 check makefile.in for arc, rce stuff 1995-01-12 20:44:01 +00:00
David Edelsohn
05cedcf6c1 Initial ARC support. 1994-11-30 01:29:26 +00:00
Michael Tiemann
fb870b50a7 Add changes from customer since last work. 1994-11-26 00:17:52 +00:00
Michael Tiemann
ca43dedd35 Clean up bitrot (such as interfaces that have changed since these
patches were last used).
1994-11-25 02:14:11 +00:00
Michael Tiemann
03c4ce2fcc Rename r16 files to rce, and fix some more .Sanitize typos. 1994-11-25 00:01:26 +00:00
Michael Tiemann
9f554efd62 *** empty log message *** 1994-11-24 21:48:21 +00:00
Michael Tiemann
5c680afdc4 Fix .Sanitize scrips so that r16 is truly scrubbed out.
Also, report errors if any traces of sanitize remain after sanitizing.
1994-11-24 21:36:00 +00:00
Michael Tiemann
d94aca1aff Safely check in r16 targets for binutils. 1994-11-24 20:30:11 +00:00
J.T. Conklin
ec35a1c2f3 NetBSD/m68k support, based on work by mikeb@snow.datametrics.com:
* config.bfd (m68*-*-netbsd*): Use m68k-nbsd as bfd_name.
* configure.in (m68knetbsd_vec): Added.
* targets.c (bfd_m68knetbsd_vec): Added.
* hosts/m68knbsd.h, config/m68k-nbsd.mt, m68knetbsd.c: New files.
* Makefile.in (BFD32_BACKENDS, CFILES): Add m68knetbsd.c.

miscellaneous cleanup required by all netbsd targets, based on work
by Andrew Cagney <cagney@highland.com.au>:
* netbsd.h (N_MAGIC, N_SET_MAGIC, N_GETMAGIC, N_GETMAGIC2, N_TXTADDR,
  N_TXTOFF, N_ALIGN, N_DATADDR, N_DATOFF): Removed.  Generic a.out
  definitions work.
* i386nbsd.c, ns32knbsd.c, sparcnbsd.c (__LDPGSZ): Removed.
  (MY(write_object_contents)): Use NetBSD's magic numbers
1994-10-28 18:11:15 +00:00
Ian Lance Taylor
c768bd3f2d * binary.c: New file for raw binary output format.
* Makefile.in (BFD_LIBS): Add binary.o.
	(CFILES): Add binary.c.
	* targets.c (binary_vec): Declare.
	(bfd_target_vector): Include binary_vec.
1994-10-18 18:51:01 +00:00
J.T. Conklin
a3f7a777c6 * configure.host (sparc-*-netbsd): use sparcnbsd.
(ns32k-*-netbsd): use ns32knbsd.

* hosts/{nbsd,i386nbsd,ns32knbsd,sparcnbsd}.h: New files, NetBSD
  host support.

* sparcnetbsd.c: New file, adds support for NetBSD/sparc.
* config/sparc-nbsd.mt: Likewise.

* netbsd.h: New file, definitions common to all netbsd ports.
* i386netbsd.c: Use it.
* ns32knetbsd.c: Use it.

* Makefile.in, configure.in, targets.c, config/i386-nbsd.mt,
  config/ns32k-nbsd.mt: canonicalize netbsd targets to conform to
  file/variable naming conventions.
* i386netbsd.c: New file, renamed from netbsd386.c.
* ns32knetbsd.c: New file, renamed from netbsd532.c.
1994-09-13 18:39:47 +00:00
Ian Lance Taylor
3cd942de1e * ctor.c: Remove; obsolete.
* Makefile.in: Rebuild dependencies.
	(BFD_LIBS): Remove ctor.o.
	(CFILES): Remove ctor.c.
	* libbfd.h: Rebuild.
1994-09-12 15:47:52 +00:00
Ken Raeburn
6c3bc2b8f6 keep arm files 1994-09-09 18:35:11 +00:00
Ian Lance Taylor
69645d10fb Add new style linker support to COFF backend. a29k only for now.
* cofflink.c: New file.
	* libcoff-in.h: Include bfdlink.h.
	(obj_coff_external_syms, obj_coff_strings): Define accessor macro.
	(obj_coff_sym_hashes): Define accessor macro.
	(struct coff_tdata): Add fields external_syms, strings, and
	sym_hashes.
	(struct coff_link_hash_entry): Define.
	(struct coff_link_hash_table): Define.
	(coff_link_hash_lookup, coff_link_hash_traverse): Define.
	(coff_hash_table): Define.
	(_bfd_coff_link_hash_table_create): Declare.
	(_bfd_coff_link_add_symbols, _bfd_coff_final_link): Declare.
	* coffcode.h (bfd_coff_backend_data): Add fields _bfd_relsz,
	_bfd_coff_swap_reloc_in, _bfd_coff_sym_is_global,
	_bfd_coff_compute_section_file_positions,
	_bfd_coff_relocate_section.
	(bfd_coff_relsz, bfd_coff_swap_reloc_in): Define.
	(bfd_coff_sym_is_global): Define.
	(bfd_coff_compute_section_file_positions): Define.
	(bfd_coff_relocate_section): Define.
	(coff_mkobject_hook): Initialize obj_raw_syment_count and
	obj_conv_table_size.
	(coff_compute_section_file_positions): Set target_index of all
	sections.  Set output_has_begun field.
	(coff_write_object_contents): Don't set target_index; now done by
	coff_compute_section_file_positions.  Remove obsolete handling of
	scn_base and data_base.  Don't bother to check that target_index
	is positive, since it always is.  Remove use of pad, which is
	always zero.  Check obj_raw_syment_count, not bfd_get_symcount,
	for the number of symbols, but only write them out if
	bfd_get_symcount is non-zero.
	(coff_slurp_symbol_table): Use obj_raw_syment_count, not
	bfd_get_symcount for the number of symbols.  Don't set
	obj_conv_table_size.
	(coff_sym_is_global): New static function or macro.
	(coff_slurp_reloc_table): Call coff_swap_reloc_in, not
	bfd_swap_reloc_in.
	(coff_bfd_link_hash_table_create): If coff_relocate_section is
	defined, define as _bfd_coff_link_hash_table_create.
	(coff_bfd_link_add_symbols): Similar change.
	(coff_bfd_final_link): Similar change.
	(coff_relocate_section): Define as NULL if not defined.
	(bfd_coff_std_swap_table): Initialize new fields.
	* coffgen.c (coff_real_object_p): Don't set obj_raw_syment_count
	and obj_conv_table_size here.
	(coff_count_linenumbers): Reindent.  If bfd_get_symcount is zero,
	add up the line numbers from the sections.
	(coff_write_symbols): Don't set bfd_get_symcount.
	(coff_pointerize_aux): Don't pointerize a nonpositive x_endndx
	field.
	(coff_get_normalized_symtab): Use obj_raw_syment_count, not
	bfd_get_symcount.
	(coff_print_symbol): If auxp->fix_end, print x_endndx value.
	* coffswap.h (coff_swap_reloc_in): Rename from bfd_swap_reloc_in.
	Reindent.  Change argument type to  PTR.
	* coff-a29k.c (coff_a29k_relocate_section): New static function.
	(coff_relocate_section): Define.
	* configure.in (a29kcoff_big_vec): Compile cofflink.o.
	* coff-alpha.c (alpha_ecoff_backend_data): Initialize new fields.
	* coff-mips.c (mips_ecoff_backend_data): Likewise.
	* libcoff.h: Rebuilt.
	* Makefile.in: Rebuilt dependencies.
	(BFD32_BACKENDS): Add cofflink.o.
	(CFILES): Add cofflink.c.
1994-09-06 19:28:55 +00:00
Ian Lance Taylor
af76a6e052 Remove aout-ns32k.h. 1994-08-11 04:39:16 +00:00
Ken Raeburn
e26e4fbc0b i960xl sanitization; keep some more ns32k related files 1994-07-27 00:10:18 +00:00
Stan Shebs
56fbe88919 Update to reflect comings and goings of ns32k and mach-related files 1994-07-25 20:04:11 +00:00
Stan Shebs
75c8a303bb Remove more GM-specific stuff. 1994-06-28 02:12:13 +00:00
Ken Raeburn
346a6d5982 keep makefile.dos 1994-06-16 20:27:39 +00:00
Ken Raeburn
66599384bb unsanitizing v9 1994-06-15 22:41:46 +00:00
Ken Raeburn
c06e55d99a changes from gas-2.3/binutils-2.4 dist (details in branch log msgs, changelogs) 1994-05-27 16:58:05 +00:00
Ian Lance Taylor
7ce8b9d18d Removed sanitization of PowerPC NetWare. Also rebuilt Makefile
dependencies.
1994-05-20 18:22:45 +00:00
Ian Lance Taylor
77d1128466 For PR 1927.
Changed m68k-aout to set flags to 0; m68k-sunos still uses 1.
	* aout0.c: New file.
	* targets.c (aout0_big_vec): Declare.
	(bfd_target_vector): Add aout0_big_vec.
	* config.bfd (m68*-*-aout*): Use m68k-0aout, not m68k-aout.
	* config/m68k-aout.mt (SELECT_VECS): Removed.
	* config/m68k-0aout.mt: New file.
	* configure.in (aout0_big_vec): New target vector: use aout0.o,
	aout32.o and stab-syms.o.
	* Makefile.in: Rebuilt dependencies.
	(BFD32_BACKENDS): Add aout0.o.
	(CFILES): Add aout0.c.

	* libaout.h (struct aout_backend_data): Add field exec_hdr_flags.
	* aout-target.h (MY_exec_hdr_flags): If not defined, define as 0.
	MY(backend_data): Initialize exec_hdr_flags field.
	* aoutf1.h (sunos_32_set_arch_mach): Make static.
	(aout32_sunos4_write_object_contents): Set flags from backend
	info.
	(MY_exec_hdr_flags): If not defined, define as 1.
	(sunos4_aout_backend): Initialize exec_hdr_flags field.
	* aout-encap.c (encap_write_object_contents): Set flags from
	backend info.
	(MY_exec_hdr_flags): Define as N_FLAGS_COFF_ENCAPSULATE.
	* hp300hpux.c (MY_exec_hdr_flags): Define as 0x2.
	(MY(write_object_contents)): Set flags from backend info.
	* i386aout.c (MY(backend_data)): Initialize exec_hdr_flags field.
	* i386mach3.c (MY(backend_data)): Likewise.
	* mipsbsd.c (MY(backend_data)): Likewise.
	* sparclynx.c (NAME(aout,sparclynx_write_object_contents)): Set
	flags from backend info.
	(sparclynx_aout_backend): Initialize exec_hdr_flags field.
1994-05-04 19:37:36 +00:00
Peter Schauer
bdf1b51158 * i386dynix.c, config/i386-dynix.mt: New files, handling Dynix
variant of a.out.
	* configure.in, config.bfd:  Use them for Dynix.
	* Makefile.in:  Add dependencies for i386dynix.o.
	* targets.c:  Add definition for i386dynix_vec.
1994-03-30 08:53:45 +00:00
Jim Kingdon
5d70e4d137 * bfd.c (struct _bfd): Add cisco_core_struct to tdata union.
* libbfd.c (bfd_read, bfd_seek): Add comments regarding errors.
	* cisco-core.c: New file.
	* Makfile.in: Change accordingly.
	* bfd-in2.h: Rebuilt.
1994-03-19 06:36:47 +00:00
Stan Shebs
8b0f1c2004 Don't need mpw-xconfig.in anymore. 1994-03-17 23:08:36 +00:00
Jim Kingdon
f8ffa54812 * i386os9k.c : new file to handle os9k format bfd. 1994-03-15 16:20:51 +00:00
Ian Lance Taylor
45ccfd58d2 * elf32-ppc.c: Renamed from elf32-powerpc.c.
start-sanitize-powerpc-netware
	* nlm32-ppc.c: Renamed from nlm32-powerpc.c.
 	end-sanitize-powerpc-netware
	* Makefile.in, configure.in: Corresponding changes.
1994-03-12 17:48:16 +00:00
Ian Lance Taylor
99ec1f66c1 start-sanitize-powerpc-netware
Support for PowerPC NetWare.
	* config.bfd (powerpc-*-netware*): New target; use ppc-nlm.
	* config/ppc-nlm.mt: New file.
	* configure.in (nlm32_powerpc_vec): New target vector; use
	nlm32-powerpc.o, nlm32.o, nlm.o.
	* targets.c (nlm32_powerpc_vec): Declare.
	* Makefile.in (BFD32_BACKENDS): Add nlm32-powerpc.o.
	(CFILES): Should add nlm32-powerpc.c, but didn't, because the
	dependencies can't be sanitized.
	end-sanitize-powerpc-netware

	Initial support for PowerPC ELF.  Done without an ABI, and
	probably to be changed when I get an ABI.
	* config.bfd (powerpc-*-sysv4*): New target; use ppc-elf.
	* config/ppc-elf.mt: New file.
	* configure.in (bfd_elf32_powerpc_vec): New target vector; use
	elf32-powerpc.o, elf32.o, elf.o.
	* elf32-powerpc.c: New file.
	* elfcode.h (prep_headers): Add bfd_arch_powerpc case.
	(elf_set_arch_mach): Likewise.
	* targets.c (bfd_elf32_powerpc_vec): Declare.
	* Makefile.in (BFD32_BACKENDS): Add elf32-powerpc.o.
	(CFILES): Add elf32-powerpc.c.
	Rebuilt dependencies.
1994-02-18 17:09:13 +00:00
Ian Lance Taylor
384c17918b PowerPC CPU support. 1994-02-08 00:35:31 +00:00
Stan Shebs
e4c7516baa Set lose_these_too correctly 1994-01-11 01:15:02 +00:00