Commit graph

1373 commits

Author SHA1 Message Date
Stan Shebs
aacc02d70f Reflect updates to Mac support 1995-10-27 05:30:14 +00:00
Stan Shebs
49af8a4ec7 * mpw-config.in: Add PowerMac target support, generate config.h.
* mac-ld.r: New file, Mac resources.
	* mpw-make.sed: New file, edits Makefile.in into MPW syntax.
	* mpw-make.in: Remove.
	* mpw-eppcmacos.c: Prebuilt version of PowerMac linking script.
1995-10-27 05:28:17 +00:00
Ian Lance Taylor
27b4433688 * ld-bootstrap/bootstrap.exp: On AIX, pass -bI/lib/syscalls.exp
along with --static.
1995-10-27 03:30:15 +00:00
Ian Lance Taylor
b18896d9bd * ld-scripts/script.s: Make symbols global. 1995-10-27 02:53:47 +00:00
Ian Lance Taylor
c7c8b500b9 * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): Treat
-static as a synonym for -bnso.
1995-10-27 01:59:30 +00:00
Ian Lance Taylor
328e5a48e8 * scripttempl/aix.sc: Move special symbols inside sections.
Always start .data at 0.
1995-10-26 18:12:41 +00:00
Ken Raeburn
b008b7bf76 updated for jsmith's file renaming 1995-10-25 22:07:38 +00:00
Per Bothner
8a8965f1c0 * Makefile.in (diststuff): Also make info.
(maintainer-clean realclean):  Also delete *.info*.
1995-10-25 18:51:37 +00:00
Ian Lance Taylor
585c92fe44 add OUTPUT_FORMAT and LIB_SEARCH_DIRS 1995-10-25 17:51:13 +00:00
Ian Lance Taylor
1764521ffe tweak option handling 1995-10-25 17:37:35 +00:00
Ian Lance Taylor
57fc1e90b7 * emultempl/aix.em: Add support for various AIX linker options,
for AIX import and export files, and for AIX shared objects.
	* scripttempl/aix.sc: Add .pad.  Put .ds just before the TOC.
1995-10-25 15:49:27 +00:00
Ian Lance Taylor
7d6439d974 * ldmain.c (main): Initialize new field link_info.static_link.
* ldmain.c (add_keepsyms_file): Add \n at end of einfo calls.
	(constructor_callback): Likewise.
	* ldmisc.c (vfinfo): Likewise.
	* ldwrite.c (build_link_order): Likewise.
1995-10-25 15:48:53 +00:00
Ian Lance Taylor
e54bf1c1a4 * ld.texinfo: The MRI ALIGN directive is supported. 1995-10-25 15:28:28 +00:00
Jackie Smith Cashion
bef5440479 Renamed the VR4300 specific emulparams files to 8.3 unique names,
since the old names could cause problems when hosting the source tree
on non-Un*x systems.
1995-10-23 11:56:50 +00:00
Ian Lance Taylor
5e8e7e6680 * ldlex.l: Treat PROVIDE as a keyword in expression state. 1995-10-19 21:42:41 +00:00
Steve Chamberlain
9c284f3f98 * scripttempl/pe.sc (.bss): Move to be after .text 1995-10-19 00:35:37 +00:00
Ian Lance Taylor
5df68a88c4 * emultempl/sunos.em (gld${EMULATION_NAME}_find_exp_assignment):
Search trinary.cond rather than searching trinary.lhs twice.  From
	linli@ihp.PHys.ethz.CH.
1995-10-17 22:38:50 +00:00
Ian Lance Taylor
235c6a672f * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Move
directory searching code into gld${EMULATION_NAME}_search_dir.
	(gld${EMULATION_NAME}_search_dir): New static function, extracted
	from gld${EMULATION_NAME}_find_so.
	(global_needed, global_found): New static variables.
	(gld${EMULATION_NAME}_after_open): New static function.
	(gld${EMULATION_NAME}_search_needed): New static function.
	(gld${EMULATION_NAME}_try_needed): New static function.
	(gld${EMULATION_NAME}_check_needed): New static function.
	(ld_${EMULATION_NAME}_emulation): Use new after_open function.
	* ld.texinfo, ld.1: Mention -rpath-link on SunOS.
1995-10-17 22:36:25 +00:00
Ian Lance Taylor
03165292c0 * Makefile.in (eelf32ppc.c): Depend upon elf32.em, not generic.em.
(eelf32lppc.c): Likewise.
	* emulparams/elf32lppc.sh (TEMPLATE_NAME): Define as elf32.
	(GENERATE_SHLIB_SCRIPT): Define as yes.
1995-10-17 16:23:59 +00:00
Ian Lance Taylor
b5f076d4aa * configure.tgt (powerpc-*-aix*): New target; use aixppc.
(rs6000-*-aix*): New target; use aixrs6.
	* emulparams/aixppc.sh, emulparams/aixrs6.sh: New files.
	* emultempl/aix.em: New file.
	* scripttempl/aix.sc: New file.
	* Makefile.in (ALL_EMULATIONS): Add eaixppc.o and eaixrs6.o.
	(eaixppc.c, eaixrs6.c): New targets.
1995-10-16 23:19:04 +00:00
Ian Lance Taylor
091824ebcd * ldlang.c (lang_finish): Don't try to use an entry_symbol from a
section which was not linked into the final output.
PR 8172.
1995-10-10 21:54:24 +00:00
Steve Chamberlain
ef1d2d2ebf * emultempl/pe.em (gld_${EMULATION_NAME}_parse_args): Fix
fatal typos.
1995-10-10 17:21:18 +00:00
Ian Lance Taylor
5caef232bd * ld.h (args_type): Add rpath_link field.
* emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Search for
	required dependencies in rpath_link path.  Only search
	LD_LIBRARY_PATH when configured native.
	* lexsup.c (parse_args): Recognize -rpath-link.
	* ld.1, ld.texinfo: Document -rpath-link.
1995-10-10 05:05:18 +00:00
Ian Lance Taylor
776f259038 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Don't
bother searching for needed libraries unless doing a final link.
1995-10-07 21:09:57 +00:00
Ken Raeburn
8016553585 Mon Sep 25 22:49:32 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* ld/ld.1: Fix formatting bugs.
1995-10-06 20:46:02 +00:00
Ian Lance Taylor
f054ce204a * ldexp.c (exp_get_abs_int): Return bfd_vma, not int.
* ldexp.h (exp_get_abs_int): Update declaration.
	* ldlang.c (print_output_section_statement): Use fprintf_vma to
	print return value of exp_get_abs_int.
PR 8142.
1995-10-04 21:39:29 +00:00
Ian Lance Taylor
8055e7a883 * emultempl/elf32.em (global_stat): New file static variable.
(gld${EMULATION_NAME}_try_needed): Call stat_needed to make sure
	that the file has not already been included under another name.
	(gld${EMULATION_NAME}_stat_needed): New static function.
1995-10-02 17:59:14 +00:00
Ian Lance Taylor
0b0642d6eb * emultempl/sunos.em (gld${EMULATION_NAME}_before_allocation): If
command_line.rpath is set, use it, rather than the -L options, to
	build the rules section.
	* ld.texinfo: Document this use of -rpath.
1995-09-29 22:37:36 +00:00
Ian Lance Taylor
dd16b6557e * lexsup.c (parse_args): Don't set link_info.shared for -assert
pure-text.  Pass true, not 1, to lang_add_entry.
	* emultempl/sunos.em (find_assign): New static variable.
	(found_assign): New static variable.
	(gld${EMULATION_NAME}_before_allocation): Rename local h to hdyn.
	If not a relocateable link, and no start symbol was specified on
	the command line, and there are any undefined symbols, set
	link_info.shared.  If link_info.shared is set, set the address of
	the .text section to 0x20.
	(gld${EMULATION_NAME}_find_assignment): Rename from
	gld${EMULATION_NAME}_find_statement_assignment.  If find_assign is
	set, then just set found_assign based on whether an assignment is
	found to find_assign.
	(gld${EMULATION_NAME}_get_script): Don't use a special script when
	producing a shared library.
	* emulparams/sun4.sh (GENERATE_SHLIB_SCRIPT): Remove.
	* scripttempl/aout.sc: Remove CREATE_SHLIB tests.
	* ldlang.c (entry_from_cmdline): New global variable.
	(lang_add_entry): Change cmdline parameter from int to boolean.
	Use global entry_from_cmdline rather than function static
	from_cmdline.
	* ldlang.h (entry_from_cmdline): Declare.
	(lang_add_entry): Change declaration of second parameter from int
	to boolean.
	* ldgram.y: Pass false, not 0, to lang_add_entry.
1995-09-29 15:33:29 +00:00
Ian Lance Taylor
630f4ac9c6 * ld.h (parsing_defsym): Declare.
* ldlex.h (lex_string): Declare.
	* ldlex.l (lex_string): Define.
	* lexsup.c (parsing_defsym): Define.
	(parse_args): In OPTION_DEFSYM case, set lex_string before calling
	lex_redirect, and clear it after calling yyparse.  Set
	parsing_defsym around call to yyparse.
	* ldmain.c (main): Set lex_string before calling lex_redirect, and
	clear it after calling yyparse.
	* ldmisc.c (vfinfo): For %S, handle --defsym arguments and built
	in linker scripts correctly.
PR 8092.
1995-09-28 19:18:07 +00:00
Ian Lance Taylor
a69bb1fa31 * scripttempl/sparccoff.sc: Add .ctors/.dtors handling like other
COFF targets, allowing for the leading underscore used on SPARC
	COFF.
PR 8006.
1995-09-28 17:59:51 +00:00
Ian Lance Taylor
b4f9d9bc42 mention creating SunOS shared libraries 1995-09-28 16:41:31 +00:00
Ian Lance Taylor
a43308b283 * ld-shared/shared.exp: Run the tests on sparc*-*-sunos4*. Add
appropriate modifications and setup_xfails.
	* ld-shared/sun4.dat: New file.
1995-09-28 16:39:55 +00:00
Ian Lance Taylor
5753006bf0 * lexsup.c (parse_args): Handle -assert.
* emulparams/sun4.sh (GENERATE_SHLIB_SCRIPT): Define.
	* emultempl/sunos.em (gld${EMULATION_NAME}_get_script): Use the
	shared library script when appropriate.
	* scripttempl/aout.sc: If CREATE_SHLIB is set, start the .text
	section at SIZEOF_HEADERS.
1995-09-28 16:36:34 +00:00
David Edelsohn
132dd91099 * Makefile.in (earmcoff.c): Build.
* configure.tgt (arm-*-coff): New target
	* emulparms/armcoff.sh: New file.
	* scripttempl/armcoff.sc: New file.
1995-09-28 08:48:02 +00:00
Ian Lance Taylor
ef89823938 * scripttempl/i386coff.sc: Remove .data2; no longer needed. 1995-09-26 18:01:34 +00:00
Ian Lance Taylor
8dd03673bf * ldfile.c (ldfile_set_output_arch): Make arch const. 1995-09-22 22:09:43 +00:00
Michael Meissner
7453a7533f Locate __bss_start at the real start of bss. 1995-09-21 21:57:32 +00:00
Ian Lance Taylor
208bc89e0b Based on patches by Alan Modra <alan@spri.levels.unisa.edu.au>:
* Makefile.in (CC_FOR_TARGET): Remove brokensed stuff.
	(CXX_FOR_TARGET): Likewise.
	(install): Likewise.
	(GENERATED_HFILES): Remove config.h.
	(.dep): Depend upon config.h.
1995-09-18 18:57:59 +00:00
Ian Lance Taylor
08879cdec8 Mon Sep 18 14:39:38 1995 Arne H. Juul <arnej@pvv.unit.no>
* configure.tgt (mips*-dec-netbsd*): New target.
1995-09-18 18:42:00 +00:00
Ian Lance Taylor
5f4c7a8dec * lib/ld.exp (default_ld_version): Call prune_system_crud.
(default_ld_relocate, default_ld_link): Likewise.
	(default_ld_simple_link, default_ld_compile): Likewise.
	(default_ld_assemble, default_ld_nm): Likewise.
1995-09-18 18:23:06 +00:00
Ian Lance Taylor
bca8b442e6 mention COFF linker improvement 1995-09-18 17:39:04 +00:00
Ken Raeburn
db8beef4ea configure.host: fix shell syntax errors 1995-09-16 00:05:19 +00:00
Ian Lance Taylor
4977f3b47e * Makefile.in (maintainer-clean): New target. 1995-09-12 22:23:17 +00:00
Ian Lance Taylor
cf7f2f7151 * ldmain.c (struct warning_callback_info): Define.
(warning_callback): Add new parameter symbol.  Call
	warning_find_reloc to try to find the section and VMA.
	(warning_find_reloc): New static function.
	* emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
	Pass NULL as symbol parameter to warning callback.
1995-09-12 20:34:49 +00:00
Steve Chamberlain
20a753dfd5 Thu Sep 7 12:50:49 1995 steve chamberlain <sac@slash.cygnus.com>
* scripttemp/pe.sc:  Allow both spellings of .ctors/.dtors.
	Start .text section on the right boundary. Always align
	stabs.
1995-09-12 19:46:03 +00:00
Ian Lance Taylor
cca520b580 * ld.texinfo: Clarify -L option. 1995-09-12 19:01:48 +00:00
Ian Lance Taylor
b75d0928b1 * ldlang.c (lang_one_common): Add cast to avoid warning.
(topower): Likewise.  Also, reindent.
	* ldwrite.c (clone_section): Change i to unsigned int.
	* emultempl/sunos.em (gld${EMULATION_NAME}_before_allocation): Add
	cast to avoid warning.
1995-09-12 16:25:51 +00:00
Ian Lance Taylor
57aa2887e8 Revert Linux directory searching: it turns out that Linux no longer
uses it.
1995-09-11 15:04:49 +00:00
Ian Lance Taylor
ed753c2049 Add Linux style directory searching.
* configure.tgt: Add i386lelf to targ_extra_emuls for
	i[345]86-*-linuxaout* and i[345]86-*-linuxoldld.  For
	i[345]86-*-linux*, set targ_emul to i386lelf, and add elf_i386 to
	targ_extra_emuls.
	* emulparams/i386lelf.sh: New file, a copy of elf_i386.sh.
	* emultempl/elf32.em: If TARGET_IS_i386lelf, use autoconf
	recommended mechanism to define DIR and struct dirent.
	(libcmp): New static function use only when TARGET_IS_i386lelf.
	(gld${EMULATION_NAME}_open_dynamic_archive): Likewise.
	* Makefile.in (ALL_EMULATIONS): Add ei386lelf.o
	(ei386lelf.c): New target.
1995-09-08 23:37:45 +00:00
Ian Lance Taylor
62b4ac8bc6 * ldemul.h (ldemul_set_symbols): Declare.
(ldemul_parse_args): Declare.
	* ldemul.c (ldemul_parse_args): Fix indentation.
1995-09-08 21:28:17 +00:00
Ian Lance Taylor
74453659c5 * ld-cdtest/cdtest.exp: If the compiler does not exist, mark the
tests as untested rather than unresolved.
1995-09-08 21:16:31 +00:00
Ian Lance Taylor
b8345a37ac * configure.in: Call AC_HEADER_DIRENT.
* configure, config.in: Rebuild.
	* emultempl/sunos.em: Use autoconf recommend mechanism to define
	DIR and struct dirent.
1995-09-08 21:11:40 +00:00
Ian Lance Taylor
d62ef165e3 * configure.tgt (mips*-*-bsd*): New case. 1995-09-08 20:46:44 +00:00
Ian Lance Taylor
673f5b9f2c * configure.host (i[345]86-sequent-ptx* | i[345]86-sequent-sysv*)
New case.
	* configure.tgt (i[345]86-*-ptx*): New case.
1995-09-08 20:34:05 +00:00
Ian Lance Taylor
ef346f1a7f * config.in: Rename from config.h.in.
* configure.in: Call AC_CONFIG_HEADER with config.h:config.in.
	Check for config.h:config.in when creating stamp-h.
	* configure: Rebuild.
	* Makefile.in (stamp-h): Depend upon config.in rather than
	config.h.in.  Set CONFIG_HEADERS to config.h:config.in when
	calling config.status.
1995-09-07 17:20:53 +00:00
Ian Lance Taylor
f40d9bc267 * Makefile.in (distclean): Remove config.h and stamp-h. 1995-09-07 16:53:02 +00:00
Ian Lance Taylor
36ea6198a7 * configure.host (sparc-*-sunos64*): Remove.
* ldlang.c (lang_map): Check BFD64, not HOST_64_BIT.
1995-09-07 14:52:12 +00:00
Ian Lance Taylor
9d32554321 * ldexp.c (exp_fold_tree): Don't warn about moving the location
counter backward in the absolute section.
PR 7942.
1995-09-07 14:49:31 +00:00
Ian Lance Taylor
d66c832b59 * configure.in: Rewrite to use autoconf.
* configure.host: New file.
	* configure.tgt: New file.
	* aclocal.m4: New file.
	* configure: New file, built by autoconf.
	* acconfig.h: New file.
	* config.h.in: New file, built by autoheader.
	* sysdep.h: New file.
	* ld.h: Incorporate old contents of config.h.
	* config.h: Remove.
	* Makefile.in: Various changes for new configure script.  Also:
	(CC_FOR_BUILD): Remove.
	(ldmain.o): Don't bother to ensure that EMUL is non-empty.
	(dep.sed): Use @SRCDIR@, not @srcdir@.
	* dep-in.sed: Use @SRCDIR@, not @srcdir@.
	* genscripts.sh: Create ldscripts if it does not exist.
	* ldemul.c, lexsup.c, mpw-emipsidt.c: Don't include "config.h".
	* mpw-esh.c, emultemp/*.em: Likewise.
	* ldmain.c: Likewise.  Include <ctype.h>.  Don't try to set
	HAVE_SBRK here.
	* config/*.mt, config/*.mh: Remove.
1995-09-06 18:58:05 +00:00
Ken Raeburn
af0786b401 some ns32k updates from Ian Dall 1995-09-05 19:04:22 +00:00
Ian Lance Taylor
f6feefe448 * ldmain.c (warning_callback): Add abfd, section, and address
parameters.
	* emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
	Change call to warning accordingly.

	* emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): If not
	relocateable and not shared, put .gnu.warning.SYMBOL sections into
	the .text section.
1995-09-01 18:06:53 +00:00
Jackie Smith Cashion
751b7dcc00 NEC VR4300 target (IDT SIM monitor) support.
Fri Sep  1 08:35:16 1995  James G. Smith  <jsmith@beauty.cygnus.com>

        * configure.in: Added mips*vr4300-idt-elf* and
        mips*vr4300el-idt-elf* targets.
        * Makefile.in: Added eelf32vr4300* targets.
        * emulparams/{elf32vr4300.sh, elf32vr4300el.sh}: Added.
        * config/{mips-vr4300.mt, mips-vr4300el.mt}: Added.
1995-09-01 15:38:07 +00:00
Ian Lance Taylor
4dd284fab7 * scripttempl/a29k.sc: Fix to be reasonable. From Brendan Kehoe
<brendan@cygnus.com>.
1995-09-01 14:54:01 +00:00
Steve Chamberlain
5f8ac7e7f6 Thu Aug 31 16:37:07 1995 steve chamberlain <sac@slash.cygnus.com>
* ldemul.c (ldemul_parse_args): New.
	* ldemul.h (ld_emulation_xfer_struct): Add parse_args.
	* lexsup.c (all pe stuff): Moved into pe.em
	(parse_args): Call emulation arg parser.
	* emultempl/pe.em (parse_args): handle PE specfic args.
1995-08-31 23:42:53 +00:00
Ian Lance Taylor
0b4fc03b37 * ldlang.c (lang_memory_region_lookup): Don't use the first region
as the default region.  Create a new region instead.
1995-08-31 21:02:39 +00:00
Steve Chamberlain
6fd48357ec Tue Aug 22 07:36:58 1995 steve chamberlain <sac@slash.cygnus.com>
* scripttempl/pe.sc: Keep .edata, don't base stabs at 0.
	* emulparams/armpe.sh: Run PE script.
1995-08-22 14:38:01 +00:00
Steve Chamberlain
011d93b38d Mon Aug 21 18:30:42 1995 steve chamberlain <sac@slash.cygnus.com>
* ldmain.c (main): Remove PE stuff.
	* lexsup.c (options): Load more PE options.
	(set_pe_value): New function.
1995-08-22 01:54:56 +00:00
Steve Chamberlain
229ba4b362 * ldmain.c (main): Remove PE stuff.
* lexsup.c (options): Load more PE options.
	(set_pe_value): New function.
1995-08-22 01:32:11 +00:00
Steve Chamberlain
eb7f87c5c8 Thu Aug 17 13:35:49 1995 steve chamberlain <sac@slash.cygnus.com>
* emultempl/{armpe.sc, i386pe.sc}: Deleted.
	* emultempl/pe.sc: New file performs generic PE support and sorts
	archive members.
	* emulparams/{armpe.sh,i386pe.sh}: Use new file.
	* scripttempl/{armpe.sc, i386pe.sc}: Deleted
	* scripttempl/pe.sc: New.
	* Makefile.in: Use new files.
b
1995-08-17 22:53:56 +00:00
David Edelsohn
ed67cfa226 * scripttempl/h8500s.sc (.rdata): All data must go in data segment.
(.strings,.ctors,.dtors): Likewise.
1995-08-17 21:49:40 +00:00
Steve Chamberlain
a048254cce * scripttempl/armpe.sc: Always start code at 0x401000, even 1995-08-16 23:29:18 +00:00
Steve Chamberlain
22cd79c599 Wed Aug 16 11:38:59 1995 steve chamberlain <sac@slash.cygnus.com>
* scripttempl/armpe.sc: Always start code at 0x401000, even
	if -r.
	* ldwrite.c (strdup): New extern declaration.
	* ldgram.y (atype): New rule to clarify type parsing.
	* ldlang.c (init_os): Remove commented out code.
	(lang_size_sections): Set SEC_ALLOC and SEC_LOAD bits
	unless told not to by the link script.
1995-08-16 20:34:44 +00:00
Ian Lance Taylor
1d169acc61 * ldlang.c (lang_set_startof): New static function.
(lang_process): Call it.
1995-08-16 17:18:59 +00:00
Ian Lance Taylor
9b22219054 * ldgram.y: Tweak casesymlist to avoid bison errors. 1995-08-16 16:26:57 +00:00
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
Ian Lance Taylor
1abb243d51 * ldexp.c (fold_name): In case NAME, permit an absolute symbol
in lang_allocating_phase_enum.
PR 6259.
1995-01-31 17:40:50 +00:00
Ian Lance Taylor
50708d5612 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): For
a MIPS target, clobber the size of all but the first input
	.reginfo section to be 0, so that lang_size_sections sets the
	correct size for the output .reginfo section.
1995-01-27 21:28:52 +00:00
Ian Lance Taylor
ae02b41c50 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
Remove unused variable is.
1995-01-27 00:54:51 +00:00
Michael Meissner
5f16938da9 Add embedded PowerPC ELF support. 1995-01-26 17:59:08 +00:00
Ian Lance Taylor
2a056eaff2 * ld-bootstrap/bootstrap.exp: If not in the ld build directory,
call untested for each test, rather than ignoring it.  If one test
	fails, go on to the next one instead of returning.
	* ld-cdtest/cdtest.exp: If compilations fail, mark tests as
	unresolved.
	* ld-empic/empic.exp: Likewise.  Also, always pass the same test
	name to pass or fail.
	* ld-shared/shared.exp: Likewise.  Also, always run all tests.
	* ld-scripts/defined.exp: If as or nm fail, mark test as
	unresolved.  Always pass the same test name to pass or fail.
	* ld-scripts/script.exp: Likewise.
	* ld-scripts/sizeof.exp: Likewise.
1995-01-24 20:16:49 +00:00
Ian Lance Taylor
5f3548d6c7 update copyrights 1995-01-24 16:01:04 +00:00
Ian Lance Taylor
6ade1673fc * ldctor.c (ldctor_add_set_entry): Don't dump core if a
constructor entry is in the absolute section.
1995-01-24 15:34:16 +00:00
Ian Lance Taylor
c1e128e5a1 * configure.in (i[345]86-*-gnu*): Set ld_target to i386-gnu.
* config/i386-gnu.mt: New file.  Include ELF support.
1995-01-23 19:00:46 +00:00
Steve Chamberlain
506f4ede9c * configure.in (w65-*-*): New target.
* Makefile.in: Update.
	* scripttempl/w65.sc: New.
	* config/coff-w65.mt: New.
1995-01-16 00:51:02 +00:00
Ian Lance Taylor
cc37d01df3 * ldlang.c (lang_place_orphans): Don't ignore files with
just_syms_flag set.  Instead, put all their sections in
	bfd_abs_section_ptr, using the section VMA as the output_offset.
PR 6159.
1995-01-12 06:34:11 +00:00
Ken Raeburn
cc38364d44 Don't use const with reloc_howto_type, since it's now defined to be const. 1995-01-12 05:04:04 +00:00
Ian Lance Taylor
1db367dae0 * ld-scripts/sizeof.exp: New test, based on bug report from
anders.blomdell@control.lth.se.
	* ld-scripts/sizeof.s: New file.
	* ld-scripts/sizeof.t: New file.
1995-01-11 16:49:57 +00:00
Ian Lance Taylor
93a0630f61 * ldexp.c (fold_binary): Adding or subtracting an absolute value
to a relative value does not require forcing the relative value to
	be absolute.  Also, reindent function.
1995-01-11 16:26:15 +00:00
Ian Lance Taylor
e2a8da6a50 * lib/ld.exp: Use [which $ld] rather than [file exists $ld] to see
if the linker exists.
1995-01-04 23:59:43 +00:00
Steve Chamberlain
fa440b5a55 * ldwrite.c (clone_section): Create a symbol with the
same name as the section.
1994-12-29 06:06:56 +00:00
Steve Chamberlain
885ae6b979 * ld.h (split_by_reloc, split_by_file): New flags.
* ldwrite.c  (clone_section, split_sections): New functions.
	* lexsup.c (parse_args): Understand new split options.
1994-12-19 22:16:27 +00:00
Ken Raeburn
a466a7a00a there isn't a configure script here though 1994-12-17 21:19:38 +00:00
Ken Raeburn
0672158da0 need to sanititze Makefile.in for arc too 1994-12-17 21:07:51 +00:00
David Edelsohn
c5b5589ed3 Remove duplicate of ARC sanitization. 1994-12-16 23:29:55 +00:00
Ken Raeburn
d0bfd8ec2b sanitize out arc stuff 1994-12-14 21:45:07 +00:00
Ken Raeburn
f8eccafb19 * lib/ld.exp (prune_system_crud): Define if not already defined, in case the
user isn't using the newest DejaGnu version that we haven't released to the net
yet.
1994-12-14 21:40:30 +00:00
Stan Shebs
1a8b189e1c * mpw-config.in (m68k-apple-macos, ppc-apple-macos,
i386-unknown-aout, i386-unknown-coff): New targets.
	(m68k-aout, m68k-coff): Remove targets.
	(mk.tmp): Add definition of EMUL.
1994-12-14 21:33:33 +00:00
David Edelsohn
070ac72796 Initial arc-elf support. 1994-12-14 00:44:50 +00:00
Ian Lance Taylor
4e59f36df8 * scripttempl/elf.sc: Move .ctors and .dtors from .text segment to
.data segment.  They must be writable when creating a shared
	library.  From H.J. Lu <hjl@nynexst.com>.
1994-12-09 22:24:03 +00:00
Ken Raeburn
89a19a0df7 keep everything 1994-12-06 23:30:12 +00:00
Michael Tiemann
0041db5a97 Switch r3 to scratch register, r0 to stack register.
Other misc changes before beta shipment to customer.
1994-12-06 02:04:58 +00:00
Ian Lance Taylor
3c2476067c * config/default.exp: Define objdump if it is not defined.
* ld-empic/*: New tests to test -membedded-pic code.
1994-12-02 22:29:20 +00:00
Ian Lance Taylor
dc5df17b8a * emultempl/miposecoff.em: New file.
* emulparams/mipsidt.sh (TEMPLATE_NAME): Set to mipsecoff.
	* emulparams/mipsidtl.sh (TEMPLATE_NAME): Likewise.
	* scripttempl/mips.sc: Put .rel.sdata sections in .text, and
	provide __runtime_reloc_start and __runtime_reloc_stop if they are
	used.   Align _fdata to a 16 byte boundary.
	* Makefile.in (emipsidt.c): Depend upon mipsecoff.em rather than
	generic.em.
	(emipsidtl.c): Likewise.
	(check): Pass CC_FOR_HOST and CFLAGS_FOR_HOST to runtest.
1994-12-02 22:28:09 +00:00
Ian Lance Taylor
39a6e282d1 * ld.h (args_type): Add new field embedded_relocs.
* ldemul.h (ldemul_after_open, after_open_default): Declare.
	(ld_emulation_xfer_struct): Add new field after_open.
	* ldemul.c (ldemul_after_open): New function.
	(after_open_default): New function.
	* ldlang.c (lang_process): Call ldemul_after_open.
	* lexsup.c (parse_args): Handle --embedded-relocs.
	* emultempl/elf32.em (ld_${EMULATION_NAME}_emulation): Initialize
	new after_open field to after_open_default.
	* emultempl/generic.em, emultempl/gld960.em: Likewise.
	* emultempl/gld960c.em, emultempl/hppaelf.em: Likewise.
	* emultempl/linux.em, emultempl/m88kbcs.em: Likewise.
	* emultempl/sunos.em, emultempl/vanilla.em: Likewise.
	* ld.texinfo, ld.1: Mention -embedded-relocs.
1994-12-02 22:25:50 +00:00
Ian Lance Taylor
6294d8d0a5 * ld-bootstrap/bootstrap.exp: Pass cmp output through
prune_system_crud.
	* ld-cdtest/cdtest.exp: Pass diff output through
	prune_system_crud.
	* ld-shared/shared.exp: Likewise.

	* config/default.exp: Remove unused and useless proc ld_load.
1994-11-28 16:26:30 +00:00
Steve Chamberlain
6ae98644a4 Add shl 1994-11-26 18:10:37 +00:00
Michael Tiemann
fb870b50a7 Add changes from customer since last work. 1994-11-26 00:17:52 +00:00
Michael Tiemann
fb14975b70 Enable ld to build for RCE. This is not tested yet! 1994-11-25 17:06:38 +00:00
Michael Tiemann
ff030c9827 *** empty log message *** 1994-11-25 00:25:34 +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
5fa6096860 Recognize and sanitize r16 as a target. 1994-11-24 22:02:18 +00:00
Michael Tiemann
d94aca1aff Safely check in r16 targets for binutils. 1994-11-24 20:30:11 +00:00
Steve Chamberlain
e93e87cb7b * Makefile.in: Add eshl.o.
* config/coff-sh.mt: Add shl emulation.
1994-11-24 06:06:23 +00:00
Ian Lance Taylor
18368f46c4 * scripttempl/elf.sc: Fill .text section with NOPS. From Eric
Youngdale <eric@aib.com>.
1994-11-22 17:19:36 +00:00
Ian Lance Taylor
60822a364f Patches from pirker@eiunix.tuwien.ac.at (Martin Pirker).
* config/i386linux.mh: New file; set HOSTING_CRT0.
	* genscripts.sh: Don't put ${libdir} in LIB_PATH if it is
	/usr/lib, since that is already in LIB_PATH.
1994-11-17 20:11:15 +00:00
Jeff Law
15ec1d5c97 * scripttempl/hppaelf.sc (.text): Handle a use rdefined text start
address.
	(.data, .bss): If "-N", then place the data/bss just after the end
	of the .text section rather than at the default 0x40000000.
1994-11-16 23:40:44 +00:00
Jeff Law
831d7ac47c * scripttempl/hppaelf.sc (.text): Place unwind descriptors in the
text segment.
1994-11-16 17:06:20 +00:00
Ken Raeburn
8e0e09f600 keep riscix, pc532mach files 1994-11-15 09:15:56 +00:00
Ian Lance Taylor
fee3930ea4 Keep ld-shared. 1994-11-14 16:57:14 +00:00
Ian Lance Taylor
0632d303d1 Keep i386lynx.mh. 1994-11-14 16:54:44 +00:00
Ian Lance Taylor
fd41732af2 * scripttempl/elf.sc: Add ENTRY(${ENTRY}), and default ${ENTRY} to
_start.
1994-11-12 20:59:18 +00:00
Ian Lance Taylor
5efddb2e7c * ld.h (args_type): Add field export_dynamic.
* lexsup.c (parse_args): Recognize --export-dynamic.
	* emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
	Pass export_dynamic argument to bfd_elf32_size_dynamic_sections.
1994-11-12 20:54:09 +00:00
Ian Lance Taylor
809391bd0a * ldlang.c (lang_one_common): Set SEC_ALLOC in any section where
we allocate common symbols.
1994-11-09 17:48:24 +00:00
Ian Lance Taylor
cd1d4f83e7 Tue Nov 8 17:50:43 1994 Eric Youngdale (eric@aib.com)
* scripttempl/elf.sc: Add .rel.init, .rela.init, .rel.fini, and
	.rela.fini to the list of .rel* sections.
1994-11-08 22:57:13 +00:00
Ian Lance Taylor
6a02a973c4 * ldlang.c (load_symbols): Add new argument place. Only accept
linker scripts if place is not NULL.  Put commands found in an
	assumed linker script into place.
	(lookup_name): Pass NULL as place argument to load_symbols.
	(open_input_bfds): In lang_input_statement_enum case, pass a place
	argument to load_symbols, and store any new statements after the
	current one.
PR 5917.
1994-11-08 22:54:07 +00:00
Ken Raeburn
ca8f2f0d74 Makefile.in: fix tipo in e*nbsd.c dependencies 1994-11-04 20:14:03 +00:00
Ken Raeburn
0128cbae50 * Makefile.in (check): Add missing "else true" clause.
* emulparams/vax.sh (OUTPUT_FORMAT): Use "a.out".

* scripttempl/go32coff.sc: Changes from DJ Delorie: Change default entry point
to "start".  Align at end of each section to 0x200.  Start .text section 0x1000
later.  Add _etext, _edata, _end symbols.
1994-11-04 00:39:49 +00:00
Ian Lance Taylor
52329a29a2 * ldctor.c (ldctor_add_set_entry): Don't permit a set to be
composed of different object file formats.
	(ldctor_build_sets): If the output format does not support the
	reloc, and we are not generating a relocateable link, try getting
	the reloc from the input format.
1994-11-02 17:22:28 +00:00
J.T. Conklin
e574ddd43a * Makefile.in (ALL_EMULATIONS): Added em68knbsd.o.
(em68knbsd.c): New target.

* config/m68k-nbsd.mt: New file.
* emulparams/m68knbsd.sh: New file.
* configure.in (m68*-*-netbsd*): Use above configs.
1994-11-01 18:33:35 +00:00
Ian Lance Taylor
fbf967b0da * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): If we find an
appropriately named static library, stop the search at that
	directory.
1994-11-01 00:37:05 +00:00
Ian Lance Taylor
0d29b6cc9d * lib/ld.exp (default_ld_compile): Remove the output file before
compiling.
1994-10-31 00:05:09 +00:00
Ian Lance Taylor
f9c3e5871e * ld-shared: New directory, with new files to test generating ELF
shared libraries.
1994-10-27 21:33:10 +00:00
Ian Lance Taylor
b5bd927ce5 * lib/ld.exp (default_ld_compile): If the compilation worked, but
no object file was created, check to see if the compiler foolishly
	ignored the -o switch when compiling, and move the resulting
	object if it did.
1994-10-27 21:31:50 +00:00
J.T. Conklin
32286e08a5 * Makefile.in (ALL_EMULATIONS): Added ei386nbsd.o, ens32knbsd.o
and esparcnbsd.o; sorted entries.
  (ei386nbsd.c,ens32knbsd.c,esparcnbsd.c): New targets.

* config/netbsd532.mt: Removed.
* emulparams/netbsd532.sh: Removed.

* config/{i386-nbsd.mt,ns32k-nbsd.mt,sparc-nbsd.mt}: New files.
* emulparams/{i386nbsd.sh,ns32knbsd.sh,sparcnbsd.sh}: New files.
* configure.in (i[345]86-*-netbsd*, ns32k-pc532-netbsd*,
  sparc*-*-netbsd*): Use above configs.
1994-10-26 21:02:02 +00:00
Ian Lance Taylor
fdfe873a8a * ldmain.c (multiple_common): One of the types may now be
bfd_link_hash_indirect.  The old BFD argument may be NULL.
1994-10-25 15:48:09 +00:00
Ian Lance Taylor
3286598fca * configure.in: Add * at the end of m68k-hp-hpux. 1994-10-21 02:02:54 +00:00
Ian Lance Taylor
81100e78a3 * ldlex.l: Cast assignment to yy_ch_buf field to char *, not to
YY_CHAR *.
1994-10-18 19:59:52 +00:00
J.T. Conklin
51bdfd9b22 * scripttempl/nw.sc: Gather constructors and destructors and
define __CTOR__LIST__ and __DTOR_LIST__ appropriately.
1994-10-17 22:03:09 +00:00
Ken Raeburn
0a1e63c4b5 updated version 1994-10-17 20:33:46 +00:00
J.T. Conklin
9ff30f20cd * Makefile.in (ALL_EMULATIONS): Add ei386nw.o and eppcnw.o.
(ei386nw.c, eppcnw.c): New targets.

* config/{i386,ppc}-nw.mt, emulparams/{i386,ppc}nw.sh,
  scripttmpl/nw.sc: New files, for i386 and powerpc netware.

* configure.in: Changed netware ld_target name to be {i386,ppc}-nw
  instead of {i386,ppc}-elf.

* configure.in (sparc*-*-netware): Removed.  There is no such
  thing anymore.
1994-10-14 22:57:12 +00:00
J.T. Conklin
54d6484691 * ldint.texinfo: Move misplaced `@end iftex'. 1994-10-14 21:38:10 +00:00
Ian Lance Taylor
81d191be79 Fri Oct 14 12:02:18 1994 Eric Youngdale (eric@aib.com)
* scripttempl/elf.sc: Add .rel.ctors, .rela.ctors, .rel.dtors, and
	.rela.dtors to the list of .rel* sections.
1994-10-14 16:04:27 +00:00
Ken Raeburn
f608f62e26 configure.in: handle i[345]86-*-linux*, not just -linux 1994-10-13 18:17:11 +00:00
Ian Lance Taylor
243f6d0d67 * scripttempl/aout.sc: Set _etext and __etext to ., not
${DATA_ALIGNMENT}.  This is compatible with SunOS, and, with luck,
	will not break any other system.  From Eric Valette
	<ev@chorus.fr>.
1994-10-13 15:26:35 +00:00
Ian Lance Taylor
a82ae15d4b * lexsup.c (parse_args): Change -V to be a synonym for -v. Add
--verbose to get the old -V behaviour.
	* ld.1, ld.texinfo: Document this change.
1994-10-12 20:26:35 +00:00
Ian Lance Taylor
f2b38b9848 missed this file 1994-09-29 16:42:43 +00:00
Ian Lance Taylor
d2c0200413 * VMS does not permits `.' in directory names. Renamed
ld.bootstrap to ld-bootstrap, ld.cdtest to ld-cdtest, and
	ld.scripts to ld-scripts.
1994-09-29 16:39:01 +00:00
Ian Lance Taylor
f81eadb499 * config/default.exp: Set variables as and nm. Create tmpdir if
it does not already exist.
	* ld.bootstrap/bootstrap.exp: Don't create tmpdir here.
	* ld.cdtest/cdtest.exp: Likewise.
	* ld.scripts/defined.exp: Likewise.  Also, don't set as and nm
	here.  Change perror for no variables found to fail.
	* ld.scripts/script.exp: New test.
	* ld.scripts/script.t, ld.scripts/script.s: New files.
1994-09-28 16:21:32 +00:00
Ian Lance Taylor
9de5523bb6 * ld.scripts: New directory.
* ld.scripts/defined.exp, ld.scripts/defined.s: New files.
	* ld.scripts/defined.t: New file.
	* lib/ld.exp (default_ld_simple_link): New function.
	(default_ld_assemble, default_ld_nm): New functions.
	* config/default.exp: Rename from unix-ld.exp.
	(ld_simple_link, ld_assemble, ld_nm): New functions.
1994-09-28 00:06:27 +00:00
Ian Lance Taylor
aa61b92302 * ldexp.c (fold_name): For DEFINED case, don't try to look up the
name in the hash table during the first phase--the hash table does
	not even exist at that point, much less have the right value.
PR 5699.
1994-09-27 22:41:51 +00:00
Ian Lance Taylor
262c876349 * Makefile.in (CC): Define.
(CXX): Move definition, change from g++ to gcc.
	(EXPECT, RUNTEST): Copy definitions from top level Makefile.in.
	(RUNTEST_CC, RUNTEST_CFLAGS): Remove.
	(RUNTEST_CXX, RUNTEST_CXXFLAGS): Remove.
	(CC_FOR_TARGET, CXX_FOR_TARGET): Copy from top level Makefile.in.
	(.cc.o): Comment out.
	(testdir): Remove.
	(site.exp): Don't create testdir or set tmpdir.
	(check): Run checks even if not running native.  Use CC_FOR_TARGET
	instead of RUNTEST_CC, and likewise for CXX.
	(cdtest targets): Comment out.
	* config/solaris2.mh (HOSTING_LIBS): Only mention crtend.o once.
	* cdtest-bar.cc, cdtest-foo.cc, cdtest-foo.h: Remove.
	* cdtest-main.cc, cdtest.exp: Remove.
1994-09-27 22:25:04 +00:00
Ian Lance Taylor
5c680d3f29 * config/unix-ld.exp: Set ld using findfile.
* lib/ld.exp (default_ld_relocate): Return a value.  Change format
	of log messages.
	(default_ld_compile): Likewise.
	(default_ld_link): Likewise.  Also, don't include $BFDLIB and
	$LIBIBERTY in link.
	* ld.bootstrap/bootstrap.exp: Rewrite.
	* ld.cdtest/cdtest.exp: Rewrite.
	* ld.cdtest/cdtest-foo.cc: Update from top level ld directory.
	* ld.cdtest/cdtest-foo.h: Likewise.
	* ld.cdtest/cdtest-main.cc: Likewise.
1994-09-27 22:23:51 +00:00
Ian Lance Taylor
1eadd162c4 * emulparams/elf32bmip.sh: Rename from elf32mipb.sh to avoid DOS
file naming problems.
	* emulparams/elf32lmip.sh: Rename from elf32mipl.sh.
	* Makefile.in (ALL_EMULATIONS): Rename eelf32mipb.o to
	eelf32bmip.o and eelf32mipl.o to eelf32lmip.o.
	(eelf32bmip.c): Rename from eelf32mipb.c.  Use elf32bmip.sh.
	(eelf32lmip.c): Rename from eelf32mipl.c.  Use elf32lmip.sh.
	* config/mipsb-elf32.mt (EMUL): Use elf32bmip, not elf32mipb.
	* config/mipsl-elf32.mt (EMUL): Use elf32lmip, not elf32mipl.
1994-09-26 22:08:57 +00:00
Ian Lance Taylor
381897782a * genscripts.sh: Always search /usr/local/TARGET/lib. 1994-09-26 18:00:10 +00:00
Ian Lance Taylor
2150c3eea6 * scripttempl/elf.sc: If -N is set, force DATA_ADDR to be ".". 1994-09-26 15:41:20 +00:00
Ian Lance Taylor
a2eea82333 * lexsup.c (parse_args): Add support for -a for HP/UX
compatibility.
1994-09-23 16:31:32 +00:00
Ian Lance Taylor
8603728123 * ld.h (args_type): Add new field endian.
* lexsup.c (parse_args): Handle -EB and -EL by setting
	command_line.endian.
	* ldgram.y (ifile_p1): Accept OUTPUT_FORMAT with three arguments.
	* ldlang.c (lang_add_output_format): Add arguments big and little.
	If command_line.endian is set, use it to select big or little
	rather than the default.  Changed all callers.
	* ldlang.h (lang_add_output_format): Update declaration.
	* emulparams/elf32mipb.sh: Define BIG_OUTPUT_FORMAT and
	LITTLE_OUTPUT_FORMAT.
	* emulparams/elf32mipl.sh: Likewise.
	* emulparams/mipsbig.sh: Likewise.
	* emulparams/mipsbsd.sh: Likewise.
	* emulparams/mipsidt.sh: Likewise.
	* emulparams/mipsidtl.sh: Likewise.
	* emulparams/mipslit.sh: Likewise.
	* scripttempl/elf.sc: Define BIG_OUTPUT_FORMAT and
	LITTLE_OUTPUT_FORMAT if not already defined.  Pass them to
	OUTPUT_FORMAT.
	* scripttempl/mips.sc: Pass BIG_OUTPUT_FORMAT and
	LITTLE_OUTPUT_FORMAT to OUTPUT_FORMAT.
	* scripttempl/mipsbsd.sc: Likewise.
1994-09-20 21:16:11 +00:00
Ian Lance Taylor
5ccef1803e * Makefile.in (ALL_EMULATIONS): Add eelf32mipb.o and eelf32mipl.o.
(eelf32mipl.c): New target.
1994-09-20 19:07:36 +00:00
Ian Lance Taylor
f1781adcf3 * configure.in (mips*el-elf*): New target.
* config/mipsl-elf32.mt: New file.
	* emulparams/elf32mipl.sh: New file.
1994-09-20 18:41:27 +00:00
Ian Lance Taylor
006ae0e478 * ldmain.c (main): Rather than prohibiting ld -r -s, treat it as
ld -r -S -x.
PR 5596.
1994-09-16 16:17:26 +00:00
Ian Lance Taylor
7aa8f49656 * ldmisc.c (vfinfo): Print BFD file name as well as file name
returned by find_nearest_line, in case the file name is something
	unhelpful such as a .h file.  Handle %u.
1994-09-15 17:07:02 +00:00
Ian Lance Taylor
8150b20a18 Add some news. 1994-09-15 17:05:24 +00:00
Ian Lance Taylor
809ee7e036 * ld.h (ld_config_type): Add new field warn_once.
* ldmain.c (undefined_symbol): Handle -warn-once.
	* lexsup.c (parse_args): Recognize -warn-once.
	* ld.texinfo (Options): Document -warn-once.
	* ld.1: Likewise.
PR 4456.
1994-09-14 22:27:16 +00:00
Steve Chamberlain
467a038026 Wed Sep 14 12:49:12 1994 Steve Chamberlain (sac@jonny.cygnus.com)
* ldlang.c (lang_do_assignments): Make sure output statement
	has an attached bfd_section before trying to dereference it.
1994-09-14 20:45:43 +00:00
Ian Lance Taylor
31c271643b Tweak the new handling of function names. 1994-09-14 18:29:06 +00:00
Ian Lance Taylor
cc23cc69c5 * ldmisc.c (vfinfo): Handle %D as %C, but never print the function
name.  For %C, print the function name on a separate line, to keep
	the length of error messages under control.
	* ldmain.c (multiple_definition): Use %D for ``first defined
	here.''
	(undefined_symbol): Use %D for ``more undefined references
	follow''.
PR 3770.
1994-09-14 17:08:37 +00:00
Ian Lance Taylor
8bff41c1b7 * ldmisc.c (multiple_warn): Remove; no longer used.
* ldmisc.h (multiple_warn): Don't declare.
1994-09-14 16:50:19 +00:00
Steve Chamberlain
3deb20fbc1 * ldlang.c (print_output_section_statement): Print all lines
to the map file.
1994-09-14 04:55:00 +00:00
Ian Lance Taylor
0b3499f672 * ldlang.c (load_symbols): Check for archive before object. Use
bfd_check_format_matches, and, if ambiguous, print a list of
	matching formats.  If file format is not recognized, treat file as
	a linker script.
	* ldgram.y (yyerror): If assuming an object file is a script,
	mention that.  Tweak the format of the error messages.
	* ldlex.l (lex_warn_invalid): If assuming an object is a script,
	guess that this is not actually a script, and just report that the
	file format was not recognized.
	* ld.texinfo (Options): Admit that -( may be used more than once.
	Add note that unrecognized object files are now treated as linker
	scripts.

	* ldfile.c (ldfile_input_filename): Make const.
	(ldfile_assumed_script): New variable.
	(try_open): Change arguments types to const.
	(ldfile_find_command_file): Likewise.
	(ldfile_open_command_file): Likewise.  Also, set lineno to 1.
	* ldfile.h: Update declarations for ldfile.c changes.
	* ldlex.l: Include <ctype.h>.
	(file_name_stack): Change to be const char *.
	(lineno_stack): New static variable.
	(<<EOF>>): Set lineno as well as ldfile_input_filename.
	(lex_push_file): Make name argument const.  Initialize
	lineno_stack entry.
	(lex_redirect): Initialize lineno_stack entry.
	(lex_warn_invalid): Handle non printable characters nicely.
	* ldlex.h (lex_push_file): Declare second argument as const.

	* ldgram.y (ifile_p1): Recognize GROUP.
	* ldlex.l: Recognize GROUP.
	* ld.texinfo (Option Commands): Document GROUP.
1994-09-13 20:42:47 +00:00
Stan Shebs
177941a1c9 Merge in former supposed GM-specific bits 1994-09-13 00:20:31 +00:00
Stan Shebs
2b51073813 Remove supposedly (but not really) GM-specific bits 1994-09-13 00:18:55 +00:00
Ian Lance Taylor
2fd87dbc90 * config/m68klynx.mh: New file. 1994-09-12 21:06:35 +00:00
Jeff Law
cb2af5cfec * emultempl/hppaelf.em: Add newlines to the error messages. 1994-09-12 07:51:14 +00:00
Ian Lance Taylor
7b63ff7683 * config/i386lynx.mh: New file.
* scripttempl/i386lynx.sc: Don't put .ctors and .dtors in .text
	unless CONSTRUCTING.
1994-09-12 02:42:49 +00:00
Ian Lance Taylor
dd37f21531 * emulparams/elf32mipb.sh (TEMPLATE_NAME): Define as elf32.
(GENERATE_SHLIB_SCRIPT): Define as yes.
	(DYNAMIC_LINK): Define as false.
	* emultempl/elf32.em (gld${EMULATION_NAME}_before_parse):
	Initialize config.dynamic_link to DYNAMIC_LINK if it is defined.
	(gld${EMULATION_NAME}_place_orphan): Reset stat_ptr at end.
	* Makefile.in (eelf32mipb.c): Depend upon elf32.em rather than
	generic.em.
1994-09-10 20:04:17 +00:00
Steve Chamberlain
fa3539fe77 * scripttempl/h8500b.sc: Put rdata stuff into own segment. 1994-09-08 23:36:17 +00:00
Ian Lance Taylor
a864a26ecc * emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Don't define;
.got section is now explicitly handled in elf.sc.
1994-09-08 17:26:27 +00:00
Ian Lance Taylor
82950a806a x 1994-09-07 03:57:59 +00:00
Ian Lance Taylor
1822664fe4 * scripttempl/m68kcoff.sc: Put .bss in data segment.
* scripttempl/h8300.sc: Change .stab and .stabstr to use a VMA of
	0, and to only be marked as NOLOAD if relocating.
	* scripttempl/h8500.sc, scripttempl/h8500b.sc: Likewise.
	* scripttempl/h8500c.sc, scripttempl/h8500m.sc: Likewise.
	* scripttempl/h8500s.sc, scripttempl/i386coff.sc: Likewise.
	* scripttempl/i386go32.sc, scripttempl/i386lynx.sc: Likewise.
	* scripttempl/m68kcoff.sc, scripttempl/m68klynx.sc: Likewise.
	* scripttempl/sh.sc, scripttempl/sparccoff.sc: Likewise.
	* scripttempl/sparclynx.sc: Likewise.
1994-09-07 03:57:09 +00:00
Ken Raeburn
318b02b6b9 ARM Acorn/RISCiX target and host patches from Richard Earnshaw 1994-09-05 10:53:00 +00:00
Ian Lance Taylor
3b21918aa6 * ld.h (args_type): Add field soname.
* lexsup.c (parse_args): Handle -soname argument.
	* emultempl/elf32.em: In call to bfd_elf32_size_dynamic_sections,
	pass soname.
	* ld.texinfo: Document -soname.
1994-08-30 16:04:19 +00:00
Ian Lance Taylor
69927008de * ldlang.c (lang_check): Don't try to set the architecture if the
input and output files are incompatible.  Just warn.
For Synoptics.
1994-08-29 19:24:48 +00:00
Ian Lance Taylor
6d4454364b * configure.in: Change i[34]86 to i[345]86. 1994-08-24 16:53:39 +00:00
Ian Lance Taylor
b400f56dbb Make the ELF linker handle orphaned sections reasonably. Also,
define __start_SECNAME and __stop_SECNAME around sections whose
	names can be represented in C, for the benefit of symbol sets in
	glibc.
	* ldemul.h (ldemul_place_orphan): Declare.
	(ld_emulation_xfer_type): Add place_orphan field.
	* ldemul.c (ldemul_place_orphan): New function.
	* ldlang.h (wild_doit): Declare.
	* ldlang.c (wild_doit): Make nonstatic.
	(lang_place_orphans): Call ldemul_place_orphan.
	* emultempl/elf32.em: Include <ctype.h> and "ldgram.h".
	(hold_section, hold_use, hold_text, hold_data, hold_bss): New
	static variables.
	(gld${EMULATION_NAME}_place_orphan): New static function.
	(gld${EMULATION_NAME}_place_section): New static function.
	(ld_${EMULATION_NAME}_emulation): Initialize place_orphan field.
1994-08-18 20:10:54 +00:00
Ian Lance Taylor
9e5a036f28 * scripttempl/aout.sc: Add .linux-dynamic after .data. 1994-08-16 04:19:32 +00:00
Ian Lance Taylor
c1a9aaa316 * Treat --dll-verbose as --version, for Linux compatibility. From
hjl@nynexst.com (H.J. Lu).
1994-08-16 04:10:03 +00:00
Ian Lance Taylor
1fee94ece0 * ldexp.h (exp_get_abs_int): Declare. 1994-08-15 21:18:48 +00:00
Jason Molenda
28d1c6ec8c Fri Aug 5 20:55:55 1994 Jason Molenda (crash@phydeaux.cygnus.com)
* configure.in: add i960-nindy-coff support.
1994-08-06 03:57:19 +00:00
Jean Marie Diaz
63936abc32 * ldlex.l (yy_create_string_buffer): Handle change to internal
interface in flex 2.4.7.
1994-08-04 18:56:04 +00:00
Jean Marie Diaz
bb329c2009 Tue Aug 2 11:52:06 1994 Eric Youngdale (ericy@cais.cais.com)
* emultempl/linux.em (gld${EMULATION_NAME}_find_address_statement):
	New function; add 0x20 to any use of -Ttext.
	(gld${EMULATION_NAME}_create_output_section_statements): New
	function.
	(ld_${EMULATION_NAME}_emulation): Use the new function
	gld${EMULATION_NAME}_create_output_section_statements.
1994-08-02 16:01:56 +00:00
Ian Lance Taylor
a1ed243577 * scripttempl/mips.sc: Redo script to set . outside of sections
and not bother to explicitly specify section addresses.
1994-08-01 19:55:21 +00:00
Ian Lance Taylor
b019d460d1 * scripttempl/elf.sc: Copy several more relocation sections into
the output.  Put .got.plt sections into .got.
1994-07-26 15:04:40 +00:00
Ian Lance Taylor
31ddb15694 * scripttempl/elf.sc: Use PROVIDE to define etext, edata, and end.
Add a new script operator, PROVIDE, to define a symbol only if it
	is needed.
	* ldgram.y (PROVIDE): New token.
	(assignment): Accept PROVIDE.
	* ldlex.l (PROVIDE): New token.
	* ldexp.h (node_type): Add etree_provide to node_class enum.
	(exp_provide): Declare.
	* ldexp.c (exp_fold_tree): Handle etree_provide.
	(exp_provide): New function.
	(exp_print_tree): Handle etree_provide.
	* ld.texinfo: Document PROVIDE.
1994-07-22 20:55:45 +00:00
Ian Lance Taylor
36c6e8c37f * ldlang.c (lang_common): Pass desired alignment to
lang_one_common as power of two.
	(lang_one_common): Get common symbol alignment from linker hash
	table entry.  Treat desired alignment as a power of two.
1994-07-22 18:46:28 +00:00
Ian Lance Taylor
309c8153fa * ldlang.c (wild_section): Attach all section with the given name,
not just the first one.  If there is no name, attach all sections
	even if the SEC_IS_COMMON flag is set.
1994-07-22 16:23:35 +00:00
Ian Lance Taylor
a1ad915dc4 * ld.h (args_type): Add field rpath.
* lexsup.c (S_ISDIR): Define if not already defined.
	(parse_args): Add support for -rpath.  If -R is used to name a
	directory, treat it as -rpath for Solaris compatibility.
	* emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
	Pass command_line.rpath to bfd_elf32_size_dynamic_sections.
	* ldmain.c (main): Initialize command_line.rpath to NULL.
	* ld.texinfo: Document -rpath option.
1994-07-20 19:55:36 +00:00
Ken Raeburn
cdf7137776 ns32k port from Ian Dall 1994-07-14 19:20:53 +00:00
Ian Lance Taylor
db770dfa72 * lexsup.c (parse_args): Changed "retain-symbols-file" from
no_argument to required_argument.  From djm.
1994-07-08 15:06:29 +00:00
Jeff Law
aee611f53c * scripttempl/hppaelf.sc (__stack_zero): Don't define this name,
it was for the HPUX dynamic loader's use and it creates problems
	with ELF GDB.
1994-07-05 01:38:32 +00:00
Stan Shebs
10f1b5978b Elim dup of file names 1994-06-30 23:19:26 +00:00