Commit Graph

1098 Commits

Author SHA1 Message Date
Ian Lance Taylor
80fd1f4584 * lexsup.c (parse_args): Accept -h as a synonym for --soname, for
Solaris compatibility.
1995-08-16 15:50:27 +00:00
Ian Lance Taylor
62a72a565d * ld-scripts/script.exp: Split script verification into a proc.
Add simple test of MRI script.
	* ld-scripts/scriptm.t: New file.
1995-08-15 21:37:19 +00:00
Ian Lance Taylor
3a47309642 * ldgram.y (YYDEBUG): If not defined, define as 1.
(CASE, EXTERN, START): New tokens.
	(mri_script_command): Handle CASE, EXTERN, INCLUDE, START.
	(casesymlist): New nonterminal.
	(extern_name_list): New nonterminal.
	* ldlex.l: Accept lower case trailing base specifiers.  Don't
	ignore the first digit when the base is a suffix.  Accept many
	EXPRESSION state tokens in MRI state.  Support MRI continuation
	lines and MRI semicolon comments.  Accept all MRI keywords in
	lower case.  Add CASE, EXTERN, and START MRI keywords.
1995-08-15 21:35:46 +00:00
Ken Raeburn
52a55937a2 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Use xmalloc instead of
alloca.
1995-08-08 23:31:28 +00:00
J.T. Conklin
65d22248e9 * Makefile.in (CC_FOR_TARGET, CXX_FOR_TARGET): Don't use
$r/../gcc/xgcc unless it is present.
1995-08-08 22:25:36 +00:00
Ken Raeburn
cc298fb97a treat linuxoldld like linuxaout* 1995-07-28 01:43:15 +00:00
Steve Chamberlain
66a61efd37 Thu Jul 27 15:26:28 1995 steve chamberlain <sac@slash.cygnus.com>
* scripttempl/i386pe.sc: Cope with constructors.
	* scripttempl/z8ksim.sc: Deleted.
	* scripttempl/z8000.sc: Resurrected as this, but
	can handle z8001 and z8002 formats.
	* emulparams/z8ksim.sh: Deleted.
	* emulparams/{z8001.sh, z8002.sh}: New files.
	* config/z8ksim.mt: Deleted
	* config/z8k-coff.mt: New, generates both emulations.
1995-07-27 22:43:44 +00:00
Ian Lance Taylor
0f5e0993ec * config/default.exp: Define objcopy if it is not defined.
* ld-sh/*: New tests for SH relaxing.
1995-07-24 21:03:12 +00:00
Ian Lance Taylor
86c2d1a39e * ld-empic/empic.exp: If $CC does not exist, call untested rather
than unresolved.
1995-07-24 19:36:57 +00:00
Ian Lance Taylor
59a0866d8c * ldlang.c (lang_process): Call reset_memory_regions for each
relaxation pass.
1995-07-24 19:25:32 +00:00
Michael Meissner
dd0f963525 Add R_PPC_SDAREL relocation. 1995-07-22 02:59:48 +00:00
Ken Raeburn
d2c66084be ldmain.c (constructor_callback): Allocate set_name in stack frame, rather than
always calling alloca with a fixed size.
1995-07-20 20:35:03 +00:00
David Edelsohn
45bc71881e * emulparams/armpe.sh (OUTPUT_FORMAT): Change to pei-arm-little.
(LITTLE_OUTPUT_FORMAT, BIG_OUTPUT_FORMAT): Define.
1995-07-19 23:23:31 +00:00
Ian Lance Taylor
242eee7a0b * ldwrite.c (split_sections): Don't split the first input section
into a new output section.
1995-07-17 17:59:27 +00:00
Michael Meissner
c7950dcc68 Use elf config file. 1995-07-15 04:35:17 +00:00
Ian Lance Taylor
63e1380d57 * emultempl/mipsecoff.em (check_sections): Use %P, not %F. 1995-07-14 20:11:43 +00:00
Ian Lance Taylor
738844c1f1 * ld-undefined/undefined.exp: New test, to check reporting of
undefined symbols.
	* ld-undefined/undefined.c: New file.
1995-07-14 17:11:53 +00:00
Ian Lance Taylor
8a0683c1fa * ldver.c (help): Update list of options to match currently
supported list.
1995-07-14 16:12:26 +00:00
Ian Lance Taylor
047e0fcd8e * ldexp.c (exp_intop): Don't cast stat_alloc arg to bfd_size_type;
it takes a size_t anyhow.
	(exp_binop): Likewise.
	(exp_trinop): Likewise.
	(exp_unop): Likewise.
	(exp_nameop): Likewise.
	(exp_assop): Likewise.
	* ldlang.c (lang_memory_region_lookup): Likewise.
	(init_os): Likewise.
	(ldlang_add_undef): Likewise.
	(insert_pad): Likewise.
	* ldfile.c (ldfile_add_arch): Don't cast xmalloc arg to
	bfd_size_type.
1995-07-13 17:57:53 +00:00
Ian Lance Taylor
395ccfce21 * ldemul.h (ldemul_open_dynamic_archive): Add search parameter to
declaration.
	(ld_emulation_xfer_type): Add search parameter to
	open_dynamic_archive entry point.
	* ldemul.c (ldemul_open_dynamic_archive): Add search parameter.
	* ldfile.c (ldfile_try_open_bfd): Rename from try_open_bfd, and
	make non-static.  Change all callers to use new name.
	(ldfile_open_file_search): Make static.  If entry is dynamic, call
	ldemul_open_dynamic_archive.
	(ldfile_open_file): Don't call ldemul_open_dynamic_archive.
	* ldfile.h (ldfile_open_file_search): Don't declare.
	(ldfile_try_open_bfd): Declare.
	* emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive):
	Accept search parameter.  Don't search for a library, just look in
	a single place.
	* emultempl/linux.em (gld${EMULATION_NAME}_open_dynamic_archive):
	Likewise.
1995-07-12 15:37:12 +00:00
Ian Lance Taylor
917199fe29 * ldmisc.c (vfinfo): Don't print the line number if it isn't
meaningful.
1995-07-11 16:30:02 +00:00
Ian Lance Taylor
a89d9f5bf1 * ld.h (ld_config_type): Add field warn_constructors.
* ldmain.c (add_to_set): Warn if config.warn_constructors.
	(constructor_callback): Likewise.
	* lexsup.c (parse_args): Handle -warn-constructors.
	* ld.texinfo, ld.1: Document -warn-constructors.
PR 7406.
1995-07-10 22:16:12 +00:00
Ian Lance Taylor
c16b92d224 * emultempl/elf32.em (gld${EMULATION_NAME}_check_needed): Don't
get confused by directory names if we searched for the file.
PR 7401.
1995-07-10 22:01:03 +00:00
Ian Lance Taylor
7213def760 Based on patches from H.J. Lu <hjl@nynexst.com>:
* ldlang.h (lang_input_statement_type): Add new field dynamic.
	* ldlang.c (new_afile): Set dynamic from config.dynamic_link.
	* ldfile.c: Include bfdlink.h.
	(ldfile_open_file): Check dynamic field of entry, not global
	dynamic_link field.  Don't do a dynamic search when doing a
	relocateable link.
	* ldmain.c (main): Don't warn about dynamic_link for a
	relocateable link.
	* emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Skip file if
	dynamic is false.
	(gld${EMULATION_NAME}_create_output_section_statements): Always
	loop over input files.
	* Makefile.in: Rebuild dependencies.
1995-07-10 21:16:40 +00:00
Ian Lance Taylor
4551e108a0 * ld.texinfo, ld.1: Document -Bstatic, -Bdynamic, -Bshared, and
-shared.

Mon Jul 10 13:29:43 1995  Eric Youngdale  <eric@aib.com>

	* ldmain.c (main): Set link_info.symbolic to false.
	* lexsup.c (parse_args): Handle -Bsymbolic.
1995-07-10 17:41:13 +00:00
Ian Lance Taylor
1730bce9a3 Move testsuite ChangeLog entry into testsuite ChangeLog. 1995-07-10 15:18:38 +00:00
Ian Lance Taylor
3219881fcd Remove C comment characters from modified FSF address in expect scripts. 1995-07-10 15:16:41 +00:00
Ian Lance Taylor
10de6952c9 * ld-versados/versados.exp: If a test fails, report it correctly:
don't try to run the next test, and don't report a pass as well as
	a fail.
1995-07-10 15:15:10 +00:00
Ken Raeburn
943fbd5bd5 fsf address update, but not in COPYING files 1995-07-07 22:49:42 +00:00
Fred Fish
eac6290c7e * ldmain.c (HAVE_SBRK): Define for everything except
specific systems that are known to not support sbrk.
	(main):  Use HAVE_SBRK to decide whether or not to use sbrk.
1995-07-05 07:47:43 +00:00
Ian Lance Taylor
7158d2b1a3 * emultempl/elf32.em (gld${EMULATION_NAME}_find_exp_assignment):
Handle etree_provide.
PR 7164.
1995-07-04 17:44:38 +00:00
Ian Lance Taylor
7523be3552 * emultempl/elf32.em (global_needed): New static variable.
(global_found): Likewise.
	(gld${EMULATION_NAME}_after_open): New static function.
	(gld${EMULATION_NAME}_search_needed): Likewise.
	(gld${EMULATION_NAME}_try_needed): Likewise.
	(gld${EMULATION_NAME}_check_needed): Likewise.
	(ld_${EMULATION_NAME}_emulation): Replace after_open_default with
	gld${EMULATION_NAME}_after_open.
PR 7083.
1995-07-04 16:57:34 +00:00
Steve Chamberlain
cb848d619c * configure.in (i386-*-win32): New target.
* ld/testsuite/versados/(t1,t2).ld: End in newlines.
1995-07-03 21:34:53 +00:00
Ian Lance Taylor
22d3533cae * lexsup.c (parse_args): Let -G either set the small data size or
be equivalent to --shared, depending on the next argument.  Accept
	and ignore -z for Solaris compatibility.
PR 7118.
1995-07-03 18:40:26 +00:00
Ian Lance Taylor
243e769870 * lexsup.c (parse_args): Cast fopen result to PTR before storing
it in link_info.base_file.  Fix indentation.
1995-07-02 21:53:21 +00:00
Steve Chamberlain
de71eb7786 Wed Jun 28 17:11:25 1995 Steve Chamberlain <sac@slash.cygnus.com>
* ldmain.c (main): Always initialize PE info in link_info.
	* lexsup.c (OPTION_BASE_FILE): New option.
	(parse_args): Handle new option.
	* emulparams/armpe.sh: Output pei.
	* emultempl/i386pe.em: Add newline to end.
	* scripttempl/armpe.sc: Change output and quote the $s.
	* scripttempl/i386pe.sc: Change output and quote the $s.
1995-06-29 00:21:00 +00:00
Steve Chamberlain
a900bc406e Fix pathnames right.. 1995-06-25 14:52:42 +00:00
Steve Chamberlain
cd5431634a Fix filenames with two dots. 1995-06-24 02:48:48 +00:00
Ken Raeburn
a2fb6995e0 msdos and moss code from Bryan Ford 1995-06-23 02:05:04 +00:00
Michael Meissner
d513119138 Add .fixup section 1995-06-22 19:08:18 +00:00
Steve Chamberlain
b368d24697 Sanitize seems to care about trailing spaces. 1995-06-22 16:30:19 +00:00
Steve Chamberlain
1684136b21 add ld-versados. 1995-06-21 20:55:01 +00:00
Stan Shebs
aad9058089 Keep MPW x SH compiled linker script. 1995-06-21 20:00:22 +00:00
Steve Chamberlain
8370f03b67 New tests. 1995-06-21 17:15:11 +00:00
Stan Shebs
0283d893cb * mpw-esh.c: New file, modified for MPW from esh.c.
* scripttempl/sh.sc: Reformatted to simplify MPWification,
	use *() to concat stab sections instead of [].
1995-06-21 00:52:21 +00:00
Steve Chamberlain
8a239b6235 * scripttempl/armpe.sc: Add constructor support. 1995-06-15 15:48:35 +00:00
Steve Chamberlain
935cd0dd9d * ldlang.c (lang_size_sections): Any section with a DATA
statement has contents.
1995-06-13 16:12:04 +00:00
Ken Raeburn
74b3ead343 m68k elf linker fixes from Andreas Schwab 1995-06-11 19:30:02 +00:00
Steve Chamberlain
ba0784fe48 * emulparams/armpe.sh, scriptempl/armpe.sc: Add end and stack. 1995-06-08 21:19:31 +00:00
Steve Chamberlain
28d0c3ce19 Add support for ARM-PE.
* Makefile.in (ALL_EMULATIONS): Add armpe.o
	* configure.in: Recognize armpe.
	* config/arm-pe.mt: New file.
	* emulparams/armpe.sh: New file.
	* scripttempl/armpe.sc: New file.
1995-05-24 18:26:23 +00:00
Ken Raeburn
6a98ecf24e * lib/ld.exp (default_ld_compile): If cc argument is multiple words, use only
the first when trying to verify the availability of the compiler.
1995-05-23 00:20:44 +00:00
David Edelsohn
8574107796 (cf-h8300h.mt): Deleted. 1995-05-22 22:25:46 +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
Michael Meissner
7e11b1db3d Make filenames unique to 8.3 characters for Powerpc. 1995-05-16 22:29:39 +00:00
Steve Chamberlain
3f38a017be Fri May 12 11:03:55 1995 Steve Chamberlain <sac@slash.cygnus.com>
Tom Griest <griest@cs.yale.edu>

	Initial support for PE executables (eg NT, win32)

	* Makefile.in (configure.in, ei386pe): Add support.
	* ldmain.c (main): Initialize PE argument info.
	* ldwrite.c (print_file_stuff): Don't print out .drectve
	and .debug section info.
	* lexsup.c (set_subsystem, set_stack_heap, OPTION_HEAP,
	 OPTION_SUBSYSTEM, parse_argsm set_subsystem, set_stack_heap):
	 Handle new arguments.
	* config/i386-pe.mt, emultempl/i386pe.em, scripttempl/i386pe.sc:
	New files
1995-05-12 18:55:06 +00:00
Stu Grossman
dea16e4dba * scripttempl/hppaelf.sc: Remove .PARISC.unwind section from text
segment.  This allows ld -r to preserve unwind sections.
1995-05-11 01:40:42 +00:00
Michael Meissner
417ced0de7 Add little endian PowerPC support. 1995-05-09 21:23:44 +00:00
Ken Raeburn
fa9dea803d * ldlang.c (print_output_section_statement): Check subsection_alignment,
instead of checking section_alignment twice.  Noticed by Alan Modra
<alan@spri.levels.unisa.edu.au>.
1995-05-03 18:08:09 +00:00
Jeff Law
55ac59da2e Add hppa1.1-hp-lites support. 1995-05-02 22:39:41 +00:00
Ken Raeburn
575a4d91ed keep new files 1995-04-15 08:21:11 +00:00
Ken Raeburn
bd1a093d78 * Makefile.in (ALL_EMULATIONS): Added em68kelf.o.
(em68kelf.o): New target.
* config/m68k-elf.mt, emulparams/m68kelf.sh: New files.
* configure.in: Use them for m68*-*-elf.
1995-04-14 20:33:05 +00:00
Stan Shebs
36ae618cfb Always keep MPW support 1995-04-12 18:46:15 +00:00
Stan Shebs
b8e2d17d95 Merge MPW ChangeLog with generic ChangeLog 1995-04-12 18:44:27 +00:00
David Edelsohn
7e87eb1342 * emulparams/arcelf.sh (ENTRY): Define. 1995-04-07 03:40:15 +00:00
Ian Lance Taylor
59b4c1998a Thu Mar 30 14:32:26 1995 H.J. Lu (hjl@nynexst.com)
* configure.in: Change linux to default to elf.  Using
	i[345]86-*-linuxaout will build a linker which defaults to a.out.
	* config/i386-laout.mt: Rename from old config/i386-linux.mt.
	* config/i386-linux.mt: Rename from old config/i386-lelf.mt.
	* config/i386-lelf.mt: Remove.
1995-03-30 19:42:38 +00:00
Ian Lance Taylor
e920526d00 * ld.texinfo, ld.1: Document the -no-keep-memory option. 1995-03-30 18:10:51 +00:00
Ian Lance Taylor
a735edad13 * ldmain.c (main): Revert patch of March 10, since the SVR4 linker
does mark shared libraries as executable.
1995-03-27 16:11:22 +00:00
Ian Lance Taylor
68233e44d9 * ldlang.c (lang_common): Change power to int. Pass larger values
before smaller values.
	(lang_one_common): Treat info as int *.  Don't bother to check for
	last value, since it is now zero.
1995-03-21 20:17:07 +00:00
Ian Lance Taylor
4da1dceac5 tipo 1995-03-18 06:56:51 +00:00
Ian Lance Taylor
f400bbbb4f * ldlang.c (load_symbols): An empty is archive is OK. 1995-03-18 06:53:14 +00:00
Stan Shebs
6e49f018bc update for changed mpw filename 1995-03-18 00:14:30 +00:00
Stan Shebs
ab4ccfd5bc * mpw-config.in (i386-unknown-aout): Change to i386-unknown-go32.
(i386-unknown-coff): Remove.
	(sh-hitachi-hms): New target.
	(emulation_ofiles): Set correctly for each target.
	(version, TDEFINES): Add to makefile fragment.
	* mpw-make.in (BISON): Use byacc instead of bison.
	(em_*.c): Replace with e*.c everywhere.
	(ldgram.h): Separate action from ldgram.c generation.
	(LD_PROG): Depend on Version.r.
	(Version.r): generate from version info.
	* mpw-em.c: Remove.
	* mpw-emipsidt.c: New file, modified for MPW from emipsidt.c.
1995-03-18 00:13:26 +00:00
Michael Meissner
86d0248d41 Provide eabi C++ static constructor/destructor support. 1995-03-16 22:22:39 +00:00
Ian Lance Taylor
ee499d8192 * ld.texinfo, ld.1: Document --whole-archive. 1995-03-16 19:14:24 +00:00
Ian Lance Taylor
f2f55b1677 * ldlang.c (load_symbols): If whole_archive is true and ENTRY
describes an archive, call bfd_link_add_symbols on each member.
	* ldmain.c (whole_archive): New variable.
	(main): Initialize it to false.
	* ldmain.h: Declare whole_archive.
	* lexsup.c (parse_args): Grok --whole-archive switch.
1995-03-16 19:06:41 +00:00
Ian Lance Taylor
171eb2f259 * genscripts.sh (EMULATION_NAME): Set LIB_PATH to empty when not
using the default emulation.
1995-03-16 17:03:26 +00:00
Ian Lance Taylor
cb5362c557 * config/dgux.mh (HOSTING_EMU): Use -m rather than trying to set
LDEMULATION.
	* config/hppaelf.mh (HOSTING_EMU): Likewise.
1995-03-16 16:39:53 +00:00
Ian Lance Taylor
e66fa842d0 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Set force_maj
for -lc.N.  From H.J. Lu <hjl@nynexst.com>.
1995-03-14 17:32:12 +00:00
Ian Lance Taylor
22c41f00b6 * ldmain.c (main): Don't set EXEC_P if link_info.shared is set. 1995-03-10 20:26:49 +00:00
Ian Lance Taylor
01bc8f35b5 * ldlex.l: Return -lFILENAME as the token LNAME.
* ldgram.y: Add token LNAME.
	(input_list): Treat LNAME like NAME, but pass it to
	lang_add_input_file as lang_input_file_is_l_enum.
	* ld.texinfo: Document using -lFILENAME in INPUT.
1995-03-10 20:02:51 +00:00
Ian Lance Taylor
ec5865657b document split-by-reloc and split-by-file 1995-03-10 18:36:43 +00:00
David Edelsohn
17948aa1bc * emulparams/arcelf.sh (OUTPUT_FORMAT): Change to elf32-littlearc.
(LITTLE_OUTPUT_FORMAT, BIG_OUTPUT_FORMAT): Define.
1995-03-08 05:11:53 +00:00
Ian Lance Taylor
b939d1f43b * ldemul.c (ldemul_choose_mode): If emulation not recognized, list
all supported emulations.
1995-03-07 05:53:47 +00:00
Ian Lance Taylor
b73b413106 * ldemul.c (ldemul_list_emulations): New function.
* ldemul.h (ldemul_list_emulations): Declare.
	* ldver.c (help): List supported targets and emulations.
PR 6345.
1995-03-06 19:21:33 +00:00
Ian Lance Taylor
30e1257637 * emultempl/elf32.em (hold_rel): New static variable.
(gld${EMULATION_NAME}_place_orphan): Place readonly sections with
	contents whose names begin with ".rel" after hold_rel.  Remove the
	assertion which checked for unplaced .rel sections.  Don't try to
	sort the section into place if place->bfd_section is NULL.
	(gld${EMULATION_NAME}_place_section): Set hold_rel to the first
	section beginning with ".rel".
1995-03-03 22:09:24 +00:00
Ian Lance Taylor
21a2f02616 Doc note from pierre@phi.la.tce.com (Pierre Willard):
* ld.texinfo: -X and -x work even if -s or -S are not specified.
	* ld.1: Similar change.
1995-03-02 19:36:10 +00:00
Ian Lance Taylor
0b153077ec * emulparams/gld960coff.sh (COFF_CTORS): Define.
* scripttempl/i960.sc: Use COFF_CTORS if CONSTRUCTING.
1995-03-01 18:57:24 +00:00
Ian Lance Taylor
882c80a7cc * configure.in (i[345]86-*-linuxelf*): New target. Use i386-lelf.
(i[345]86-*-gnuelf*): New target.  Use i386-gelf.
	* config/i386-lelf.mt: New file.
	* config/i386-gelf.mt: New file.
1995-02-28 17:44:35 +00:00
Rob Savoye
decc32b7c1 * configure.in: Match on mips-ecoff, and default to the IDT
configuration.
1995-02-28 17:29:02 +00:00
Michael Meissner
1e4b4b1c03 Add support for .got1 and .got2 sections; Offset _GLOBAL_OFFSET_TABLE_ by 32768 from GOT start. 1995-02-17 18:09:23 +00:00
Ken Raeburn
4ad2d64031 * Makefile.in (distclean): Do recursive deletion, since ldscripts is a directory. 1995-02-09 23:33:41 +00:00
Ian Lance Taylor
be2213ebee * ldmain.c (main): If trace_file_tries is true, and we are using
an internal linker script, print out the script.
	* ldfile.c (try_open): Reindent function.  Make the messages about
	opening script files more informative.
PR 6309.
1995-02-09 21:57:55 +00:00
Ian Lance Taylor
1f59c7a7fd * lexsup.c (parse_args): For -V, call ldversion with 1, not 0.
* ld.texinfo, ld.1: Update accordingly.
1995-02-09 16:41:28 +00:00
Ian Lance Taylor
fa247c00bc fix comments 1995-02-09 16:31:54 +00:00
Ian Lance Taylor
3565dee4eb * ldlang.c (lang_one_common): Adjust references to common symbol
information for new structure.
1995-02-08 22:56:15 +00:00
Ian Lance Taylor
23244cd6e0 * ldmain.c (undefined_symbol): Handle section being NULL. 1995-02-06 23:24:20 +00:00
Ian Lance Taylor
484a089694 tipo 1995-02-06 20:12:54 +00:00
Ian Lance Taylor
8ed88239b4 * ldctor.c (ldctor_build_sets): Handle bfd_link_hah_defweak.
* ldexp.c (fold_name): Likewise.
	* ldlang.c (print_one_symbol): Likewise.
	(lang_finish): Likewise.
	* ldmain.c (multiple_common): Likewise.
	* ldwrite.c (print_symbol): Likewise.  Also, bfd_link_hash_weak
	renamed to bfd_link_hash_undefweak.
1995-02-06 20:01:38 +00:00
Ian Lance Taylor
5039302a4c * scripttempl/alpha.sc: Set address of .data section correctly
when -n or -N is used.  Patch from Chris G Demetriou
	<Chris_G_Demetriou@LAGAVULIN.PDL.CS.CMU.EDU>.
1995-02-06 17:18:57 +00:00
David Edelsohn
e802f0be04 * ldlang.c (lang_size_sections): Clarify error message when user
specified start addr conflicts with region.  Fix resetting of
	region pointer.
1995-02-01 00:23:47 +00:00