Commit graph

667 commits

Author SHA1 Message Date
Ian Lance Taylor
0c4d3f6fc7 * emultempl/elf32.em: When checking for a native emulation, check
that the current emulation is the default emulation.
	* emultempl/sunos.em: Likewise.
1996-04-08 20:03:53 +00:00
Ian Lance Taylor
b4cb4ea2ac * configure.in: Permit --enable-shared to specify a list of
directories.
	* configure: Rebuild.
1996-04-08 18:45:08 +00:00
Ian Lance Taylor
90ba7e6508 * lexsup.c (parse_args): Add -E as a synonym for -export-dynamic,
for HP/UX compatibility.
1996-04-08 15:57:57 +00:00
Ian Lance Taylor
6cc7365e2b * emultempl/elf32.em (gld${EMULATION_NAME}_check_ld_so_conf): New
static function, if ${host} = ${target}.
	(gld${EMULATION_NAME}_after_open): Call check_ld_so_conf to find a
	needed shared library if ${host} = $[target}.
1996-04-05 21:22:31 +00:00
Ian Lance Taylor
8a42aa5491 * configure.tgt: Add i[345]86-*-freebsdelf* target; from John
Polstra <jdp@polstra.com>.
1996-04-05 19:32:39 +00:00
Jackie Smith Cashion
4864a04fc9 Fri Apr 5 18:11:25 1996 James G. Smith <jsmith@cygnus.co.uk>
* emulparams/elf32{b,l}4300.sh (MACHINE): Add explicit
 	architecture number.
	* scripttempl/elf.sc: Use $MACHINE definition if present.
	* configure.tgt (targ_extra_emuls): Force 4100 build to use same
 	template as 4300.
1996-04-05 17:17:06 +00:00
Ian Lance Taylor
0932869065 * ldlang.c (lang_size_sections): Change region check to handle
regions which end at the highest possible address correctly.
	From Roland Weber <roweber@ira.uka.de>.
1996-04-01 22:51:35 +00:00
Ian Lance Taylor
23595ba57a * ldlang.c (section_already_linked): New static function.
(wild_doit): Discard sections with SEC_EXCLUDE set if not doing a
	relocateable link.  Don't worry about section being NULL, since it
	never should be.  Don't call init_os unless the section is going
	to be added.
	(ldlang_add_file): Call section_already_linked for each section.
	* ldmain.c (multiple_definition): Don't warn about multiple
	definitions in sections which are being discarded.
1996-04-01 16:52:17 +00:00
Steve Chamberlain
ea461c67c1 * scripttempl/{ppcpe.sc, pe.sc} (.junk): Remove and use /DISCARD/.
* emultempl/pe.em (init): Remove special case PPC code.
1996-03-31 08:39:06 +00:00
Jeff Law
0e88ffa284 * scripttempl/h8300.sc: Make vectors section 0xc4 bytes long
so as not to overwrite the magic syscall entry at 0xc4.
        * scripttempl/h8300h.sc: Likewise.
hmse.
1996-03-29 07:01:22 +00:00
David Edelsohn
bacc170351 * configure.tgt (sparc64-*-solaris2*): Delete.
Stick with sparc-*-solaris2*.
1996-03-28 19:06:49 +00:00
Ian Lance Taylor
cf2e4f5fde * ld.h (DISCARD_SECTION_NAME): Define to "/DISCARD/".
* ldlang.c (init_os): Fail on an attempt to initialize any section
	named DISCARD_SECTION_NAME.
	(wild_doit): Discard input sections assigned to an output section
	named DISCARD_SECTION_NAME.
	* ld.texinfo: Document use of /DISCARD/.
1996-03-27 18:17:28 +00:00
Ian Lance Taylor
64664e69cb * ldlang.c: Fix some indentation and comments. 1996-03-27 17:34:15 +00:00
Ian Lance Taylor
28113e82bd * ldmain.c (main): Call bfd_set_error_program_name. 1996-03-26 23:16:01 +00:00
Ian Lance Taylor
4bcc5d3238 * ldmisc.c (vfinfo): case 'I': If the file is not in an archive,
and the local symbol name does not match the filename, print the
	filename as well.
1996-03-21 18:32:34 +00:00
Ian Lance Taylor
8ef401e289 Patches from John Polstra <jdp@polstra.com> for FreeBSD ELF:
* lexsup.c (parse_args): -Bshareable is a synonym for -shared.
	* emulparams/elf_i386.sh (NONPAGED_TEXT_START_ADDR): Make the same
	as TEXT_START_ADDR.
1996-03-21 18:19:38 +00:00
Ian Lance Taylor
baaaf6f299 Wed Mar 20 18:18:25 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* ld.texinfo: Fix typos.  Use @pxref only inside parentheses.
1996-03-20 23:19:47 +00:00
Ian Lance Taylor
0f5898ccf9 * ldmain.c (add_wrap): New function.
* ldmain.h (add_wrap): Declare.
	* lexsup.c (parse_args): Call add_wrap.
1996-03-20 21:57:31 +00:00
David Edelsohn
60e4268030 * configure.host (sparc*-*-solaris2* host): Accept any sparc variant. 1996-03-20 00:45:57 +00:00
Jeff Law
deddae6681 * scripttempl/h8300.sc: Change name of page zero memory
from "null" to "vectors".  Create an output section for
        vectors.  Add comments on how to explicitly place items
        in the vector table.
        * scripttempl/h8300h.sc: Likewise.
hmse
1996-03-14 00:49:42 +00:00
Ian Lance Taylor
96704ebcbc * emultempl/lnk960.em (machine_table): Add jx and hx. 1996-03-13 22:41:25 +00:00
Ian Lance Taylor
5cb57c2c07 * genscripts.sh: Don't use ${9:-xx}, since Ultrix /bin/sh doesn't
support it.
1996-03-13 17:40:58 +00:00
Ian Lance Taylor
e3d73386d7 * lexsup.c (parse_args): Handle --wrap.
* ldmain.c (main): Initialize link_info.wrap_hash.
	* ldexp.c (fold_name): Use bfd_wrapped_link_hash_lookup in DEFINED
	and NAME cases.
	* ld.texinfo, ld.1: Document --wrap.
1996-03-12 23:39:18 +00:00
Ian Lance Taylor
4b7d2399ae Tue Mar 12 12:43:59 1996 David Mosberger-Tang <davidm@koala.azstarnet.com>
* ld.h (ld_config_type): Add warn_multiple_gp field.
	* lexsup.c (parse_args): Handle --warn-multiple-gp.
	* ldmain.c (warning_callback): Suppress multiple gp values warning
	if --warn_multiple_gp was not used.
	* ld.texinfo, ld.1: Document --warn-multiple-gp.
1996-03-12 17:47:55 +00:00
Ian Lance Taylor
ea2488ad2e * configure: Rebuild with autoconf 2.8. 1996-03-12 17:22:07 +00:00
Ian Lance Taylor
02df835b83 Don't do SunOS style dynamic linking for sparc-aout:
* configure.tgt (sparc64-*-aout*): Use sparcaout, not sun4.
	(sparclite*-fujitsu-*, sparc*-*-aout): Likewise.
	(sparc*-wrs-vxworks*): Likewise.
	* emulparams/sparcaout.sh: New file.
	* Makefile.in (ALL_EMULATIONS): Add esparcaout.o.
	(esparcaout.c): New target.
1996-03-12 17:04:25 +00:00
Ian Lance Taylor
6771b6e23c * ldemul.h (ldemul_unrecognized_file): Declare.
(ldemulation_xfer_type): Add unrecognized_file field.
	* ldemul.c (ldemul_unrecognized_file): New function.
	* ldlang.c (load_symbols): If a file can not be recognized, call
	ldemul_unrecognized_file before trying it as a linker script.
	* aix.em (gld${EMULATION_NAME}_unrecognized_file): New static
	function.
	(gld${EMULATION_NAME}_read_file): Use FOPEN_RT, not "r".
	(ld_${EMULATION_NAME}_emulation): Initialize unrecognized_file.
1996-03-06 23:12:41 +00:00
Ian Lance Taylor
3d0c8fa1d4 * ldlang.c (wild): Handle foo.a(.text) by mapping each included
member of foo.a separately.  From Jouke Numan <jnuman@bazis.nl>.
1996-03-04 19:12:43 +00:00
Ian Lance Taylor
16385918b7 Fri Mar 1 10:24:59 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* emultempl/elf32.em (gld${EMULATION_NAME}_find_exp_assignment):
	Search trinary.cond rather than searching trinary.lhs twice.
1996-03-01 15:27:57 +00:00
Stan Shebs
e24b45a873 * mpw-make.sed: Edit out shared library support.
(@TDIRS@): Edit out, can't use genscripts.
1996-02-27 23:21:35 +00:00
Ian Lance Taylor
228b04d2c5 Tue Feb 27 15:09:21 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* configure.tgt (m68k-*-linuxaout*, m68k-*-linux*): New targets.
	* emulparams/m68klinux.sh: New file.
	* emultempl/linux.em (gld${EMULATION_NAME}_before_allocation):
	Call bfd_${EMULATION_NAME}_size_dynamic_sections instead of
	bfd_linux_size_dynamic_sections.
	* Makefile.in (ALL_EMULATIONS): Add em68klinux.o.
	(em68klinux.c): New target.
	* configure.host (m68*-*-linuxaout*, m68*-*-linux*): New hosts.

Tue Feb 27 12:55:46 1996  Ian Lance Taylor  <ian@cygnus.com>

	* Makefile.in (ALL_EMULATIONS): Sort into alphabetical order.
	Fill in missing entries.
1996-02-27 20:46:55 +00:00
Ian Lance Taylor
3c8deccc4f * lexsup.c (parse_args): Recognize --no-whole-archive.
* ldlang.h (lang_input_statement_type): Add whole_archive field.
	* ldlang.c (new_afile): Set whole_archive field.
	(load_symbols): Check input file specific whole_archive field
	rather than global variable.
	* ld.texinfo, ld.1: Document --no-whole-archive.
PR 9094.
1996-02-27 17:59:46 +00:00
Ian Lance Taylor
fc7b6582a9 * configure.tgt: Correct gldi960 to gld960. 1996-02-20 21:12:02 +00:00
Ian Lance Taylor
169df8d594 * emultempl/elf32.em (gld${EMULATION_NAME}_check_needed): Check
the SONAME if it is available.
	(gld${EMULATION_NAME}_stat_needed): Use the SONAME, not the
	filename, when checking for conflicting library versions.  Don't
	assume that the suffix is only numbers and dots.
1996-02-19 17:40:42 +00:00
Ian Lance Taylor
c653b37092 * ld.texinfo: Mention that -R can be used for -rpath. 1996-02-19 16:17:33 +00:00
Ian Lance Taylor
9e2ef09802 * configure.host: Check for 'do not mix' from native linker before
trying to use -rpath.
1996-02-18 20:06:40 +00:00
Ian Lance Taylor
c99fbc42b5 * configure.in: Remove explicit substitution of CFLAGS; autoconf
does it anyhow.
	* configure: Rebuild.
	* Makefile.in (LDFLAGS): Set to @LDFLAGS@.
1996-02-15 22:17:27 +00:00
Ian Lance Taylor
7e19f60e5a * configure.in: Call AC_PROG_CC before configure.host.
* configure: Rebuild.
	* configure.host: Remove go32 host, since it should no longer be
	necessary.  Don't set CC for romp host.
1996-02-15 21:32:43 +00:00
Ian Lance Taylor
22aa130282 * scripttempl/elf.sc: Don't skip a page in virtual memory space if
the text segment ends exactly on a page boundary.
1996-02-15 20:28:52 +00:00
Ian Lance Taylor
ad43e45b46 * configure.in: Substitute RPATH_ENVVAR.
* configure: Rebuild.
	* configure.host: Set RPATH_ENVVAR.
	* Makefile.in (RPATH_ENVVAR): New variable.
	(check): Use $(RPATH_ENVVAR) rather than LD_LIBRARY_PATH.
1996-02-15 19:00:07 +00:00
Ian Lance Taylor
95d31c3c8f * configure.tgt (*-*-ieee*): New target; use vanilla.
Wed Feb 14 18:49:01 1996  Alan Modra  <alan@spri.levels.unisa.edu.au>

	* configure.in: Redo emulation handling so that each emulation
	searches the correct tool directory, based on the target alias.
	For example, "configure --enable-targets=m68k-coff i386-linux"
	will search /usr/local/i386-linux/lib for linux and
	/usr/local/m68k-coff/lib for m68k-coff.
	* configure: Rebuild.
	* configure.tgt: Add special tdir settings for Linux.
	* Makefile.in: Add @TDIRS@.  Pass "$(tdir_EMUL)" to ${GENSCRIPTS}
	for each eEMUL.c target.
	* genscripts.sh: Accept specific alias as 9th argument, and use it
	in LIB_PATH.
1996-02-14 23:54:05 +00:00
Ian Lance Taylor
307585f1c9 Wed Feb 14 16:38:36 1996 Martin Anantharaman <martin@mail.imech.uni-duisburg.de>
* ldlang.c (lang_set_startof): Don't do anything for a
	relocateable link.

	* ldgram.y (mri_script_file): Call mri_draw_tree.
	* mri.c (mri_draw_tree): Make globally visible.  Don't bother to
	create memory regions.
	(mri_load): Don't call mri_draw_tree.
	* mri.h (mri_draw_tree): Declare.

	* configure.tgt (m68*-*-psos): New target.
	* emulparams/m68kpsos.sh: New file.
	* scripttempl/psos.sc: New file.
	* Makefile.in (ALL_EMULATIONS): Add em68kpsos.o.
	(em68kpsos.c): New target.
1996-02-14 21:43:54 +00:00
Ian Lance Taylor
db3bfcd64c * emultempl/elf32.em (gld${EMULATION_NAME}_before_parse): Strip
`:foo' from ${ARCH}.
1996-02-14 16:10:18 +00:00
Ian Lance Taylor
9cb8a981e9 Tue Feb 13 15:58:58 1996 Bryan Ford <baford@snake.cs.utah.edu>
* scripttempl/i386msdos.sc: Don't pad the .text section.  Put
	.rodata in .data.
1996-02-13 21:00:44 +00:00
Ian Lance Taylor
b6acf0846a * configure.host: Set HDLFLAGS for *-*-hpux with --enable-shared. 1996-02-13 20:33:12 +00:00
Ian Lance Taylor
625489271d * emultempl/elf32.em (gld${EMULATION_NAME}_stat_needed): Warn if
it looks like we might be linking in two different versions of the
	same shared library.  Based on a patch from H J Lu <hjl@zoom.com>.
1996-02-13 19:05:38 +00:00
Ian Lance Taylor
708f7fbcd3 * ldlang.c (lang_size_sections): Increment the section size when a
padding statement is encountered.
PR 8965.
1996-02-09 00:26:56 +00:00
Ian Lance Taylor
2e5983457a * configure.in: Look for --enable-shared. Change the value of
BFDLIB when linking against a shared library on SunOS.
	* configure: Rebuild.
	* configure.host: If using a shared BFD library, try to pass a
	reasonable -rpath option when linking.
	* Makefile.in (BFDLIB): Set to @BFDLIB@.
1996-02-07 19:03:38 +00:00
Ian Lance Taylor
f8d489718f Support for building bfd and opcodes as shared libraries, based on
patches from Alan Modra <alan@spri.levels.unisa.edu.au>:
	* configure.in (HLDFLAGS): New substitution.
	* configure: Rebuild.
	* configure.host: Set HLDFLAGS on SunOS.
	* Makefile.in (HLDFLAGS): New variable.
	(BFDDEP): New variable.
	(BFDLIB): Change to -L../bfd -lbfd.
	($(LD_PROG)): Depend upon $(BFDDEP) rathern than $(BFDLIB).  Use
	$(HLDFLAGS) in link.
	(check): Set LD_LIBRARY_PATH in the environment.
1996-02-05 21:28:15 +00:00
Ian Lance Taylor
ae9120f917 * configure: Regenerate. 1996-02-02 21:50:53 +00:00