Commit graph

622 commits

Author SHA1 Message Date
Ian Lance Taylor
c3b34cfd3b * ld.h (flag_is_*): Removed macros.
* ldmain.c (enter_global_ref), ldsym.c (write_file_locals):
	Consistently check the BFD symbol flags directly, rather than
	using file_is_* macros.
1993-10-29 19:02:26 +00:00
Stan Shebs
1ffcbc2511 Sparc COFF support 1993-10-29 02:39:41 +00:00
Stan Shebs
7b95fe96ef Sparc Lynx support 1993-10-29 02:39:07 +00:00
David MacKenzie
da08e9b96c clarify reason for -sort-common 1993-10-29 00:30:51 +00:00
Ian Lance Taylor
d17eb3db0e * Makefile.in: Add dependency for $(EMULATION_OFILES). 1993-10-28 18:09:20 +00:00
Ian Lance Taylor
db4b5ad081 * relax.c (write_relax): Check return value of bfd_seclet_link. 1993-10-25 20:10:35 +00:00
Ken Raeburn
2fe6619ee0 * ldlang.c (delete_output_file_on_failure): New variable.
(open_output): Set it after bfd open succeeds.
* ldmisc.c (vfinfo): Test it.

Changes from Peter Hoogenboom, hoogen@cs.utah.edu:

* ldsym.c (write_file_locals): Set the BSF_FILE flag for object symbols.

* ldemul.c: Support was added to allow emulation-specific processing to occur.
This support was added primarily for linker stub generation in the elf32-hppa
gld.
(ldemul_finish, ldemul_create_output_section_statements):  New functions.
* ldemul.h: Support was added to allow emulation-specific processing to occur.
(As described above.)  Added finish and create_output_section_statements fields
to ld_emulation_xfer_struct structure.
* ldlang.c: Add calls to emulation-specific routines.
(lang_process):  Add call to ldemul_create_output_section_statements function.
(lang_process):  Add call to a emulation-specific routine (and
some processing after the call).
1993-10-25 16:35:23 +00:00
Ian Lance Taylor
1c4b3cda62 * configure.in (alpha-*-osf*): New target; use alpha.mt.
* Makefile.in (ALL_EMULATIONS): Added em_alpha.o.
	(em_alpha.c): New target; use alpha.sh and alpha.sc.
	* config/alphaosf.mh (NATIVE_LIB_DIRS, HOSTING_CRT0): Define.
	* config/alpha.mt: New file.
	* emulparams/alpha.sh: New file.
	* scripttempl/alpha.sc: New file.
1993-10-19 19:55:52 +00:00
Ian Lance Taylor
42f9673d8b New files for Alpha linker. 1993-10-19 19:52:33 +00:00
David Edelsohn
73f5d5febb * ldlang.c (lang_size_sections, lang_common): ALIGN_N can't handle
types of different sizes (eg: 64 and 32 bits), so coerce.
* ld.h (ALIGN_N): Add warning about usage.
1993-10-15 09:29:32 +00:00
Ian Lance Taylor
98b5caadf3 * ldmain.c (enter_global_ref): Just ignore any weak symbol for
which we already have a definition, rather than checking in
	several different places whether the symbol is weak.
1993-10-13 20:04:30 +00:00
Ian Lance Taylor
a71da76017 * configure.in (mips-*-elf*): New target; use mipsb-elf32.
* scripttempl/elf.sc: Only use OTHER_READONLY_SECTIONS and
	OTHER_READWRITE_SECTIONS if relocating.  Shell variables are not
	expanded within them.
	* config/mipsb-elf32.mt: New file.
	* emulparams/elf32mipb.sh: New file.
	* Makefile.in (em_elf32mipb.c): New target.
1993-10-12 21:46:52 +00:00
Ian Lance Taylor
f1d043f50f elf32mipb.sh: New emulation parameter file for big endian MIPS ELF. 1993-10-12 21:36:05 +00:00
Ian Lance Taylor
514977a5ea mipsb-elf32.mt: New configuration file for big endian MIPS ELF. 1993-10-12 21:33:57 +00:00
Steve Chamberlain
9ddf56994c Use both h8300 emulations. 1993-10-08 17:45:23 +00:00
Roland Pesch
7f9ae73e76 Makefile.in: correct out-of-date TEXIDIR default
ld.texinfo: (a) fix INPUT cmd description (b) fix bad formatting in FSF
            style (warning examples) (c) add some index entries on warnings
1993-10-01 21:08:13 +00:00
Rob Savoye
a4aeaacf69 * ldlang.c (lang_add_input_file): If it's a library brought in by
INPUT(), then change the file type to lang_input_file_is_l_enum.
	* ldgram.y: In input_list, change lang_input_file_is_file_enum to
	lang_input_file_is_search_file_enum so objects brought in using
	INPUT() do a path lookup.
1993-10-01 01:28:55 +00:00
Stan Shebs
bd7b78f769 Lynx support 1993-09-28 20:59:59 +00:00
Stan Shebs
3f905ec153 Lynx support 1993-09-28 20:51:22 +00:00
Ian Lance Taylor
15fff00f6e * config/solaris2.mh: New file. Define HOSTING_CRT0 and
HOSTING_LIBS for testing.
1993-09-23 21:53:33 +00:00
Ian Lance Taylor
03451d7fa4 Add i386 SVR4 configuration files that I couldn't add remotely. See
ChangeLog.
1993-09-17 22:17:52 +00:00
Ian Lance Taylor
9a467cb2b5 Finish up support for i386-sysv4 (without shared libraries):
* ld.h (flag_is_weak): Define.
	* ldlang.c (print_symbol): Mention whether symbol is weak.
	(print_input_section): Print weak symbols as globals.
	* ldmain.c (refize): Do not zero out BSF_WEAK flag.
	(enter_global_ref): Do not warn if a weak symbol redefines a
	global symbol.  Do not let a weak symbol redefine a common symbol.
	(enter_file_symbols): Treat weak symbols as global symbols.
	(subfile_wanted_p): Do not pull in an object file from a archive
	just to resolve an undefined weak symbol.
	* ldmisc.c (vfinfo): Don't needlessly malloc space after a fatal
	error; the error might be that malloc has run out of space.
	* ldsym.c (write_file_locals): Treat weak symbols as global.
	* configure.in (i[34]86-*-sysv4*, i[34]86-*-elf*): New targets;
	use i386-elf.
	* config/i386v4.mh: New file; set NATIVE_LIB_DIRS to /usr/ccs/lib.
	* config/i386-elf.mt: New file; set EMUL to elf_i386.
	* emulparams/elf_i386.sh: New file.
	* scripttempl/elf.sc: Use ${NOP} as filler (defaults to 0).
	* Makefile.in (NATIVE_LIB_DIRS): Define to be empty.
	(ALL_EMULATIONS): Add em_elf_i386.o.
	(GENSCRIPTS): Pass NATIVE_LIB_DIRS as sixth argument.
	(em_elf_i386.c): New target, like other em_*.c targets.
	($(LD_PROG)): Pass $(CFLAGS) to $(CC).
	* genscripts.sh: Accept NATIVE_LIB_DIRS as sixth argument.  If
	nonempty, and configured for native, add it to LIB_PATH.
1993-09-17 22:11:00 +00:00
Stan Shebs
4f6d6db937 Added statements for stab sections in coff files. 1993-09-17 20:16:17 +00:00
David Edelsohn
d71cbf2a83 Add EMUL=h8300h. 1993-09-12 23:12:31 +00:00
David Edelsohn
1bff7c388a * ldmain.c (main): Call set_scripts_dir after argv has been processed. 1993-09-12 23:07:40 +00:00
Jeffrey Wheat
67d9694933 Added CXXFLAGS to compile stage in ld.cdtest/cdtest.exp 1993-09-10 17:00:19 +00:00
Jeffrey Wheat
108f145ba4 Changed CXX back to g++. Using ../gcc/xgcc breaks because of <assert.h> 1993-09-10 16:53:33 +00:00
Jeffrey Wheat
8a6665aef8 Changed CXX back to g++. ../gcc/xgcc breaks the cdtest because of <assert.h> 1993-09-10 16:50:52 +00:00
Jeffrey Wheat
3a9149a7b7 Fixed RUNTEST* CXX CXXFLAGS macros and check rule. 1993-09-10 16:37:47 +00:00
David MacKenzie
cbb5c2d133 * Makefile.in (TAGS): Use shell wildcards. 1993-09-10 14:29:45 +00:00
Jeffrey Osier
959eba2070 * Makefile.in: add TEXINPUTS variable and use it in ld.dvi target 1993-09-08 01:08:26 +00:00
Roland Pesch
a0a55af6a7 * ld.texinfo: re-enable included config file; conditionalize doc
for -oformat to interact properly with SingleFormat doc config
	var; rename @up/@down to @raisesections/@lowersections.
1993-09-03 23:48:59 +00:00
David MacKenzie
836a5ee449 tiny additions & fixes 1993-09-03 22:47:04 +00:00
David Edelsohn
c10744770c * ld.h (BYTE_SIZE, SHORT_SIZE, LONG_SIZE): Define as suggested by
Steve.
1993-08-26 22:22:36 +00:00
Ken Raeburn
4346166b07 From Peter Hoogenboom <hoogen@shafer.cs.utah.edu>:
* emultempl/hppaosf.em (ld_hppaosf_emulation): Correct name for PA
ELF emulation is "elf32-hppa" not "elf-big".
(hppaosf_before_parse): Remove unneeded processing of environment variables.
* scripttempl/hppaosf.sc: Include .hppa_linker_stubs sections in
.text segment of output file.
* emulparams/hppaosf.sh (OUTPUT_FORMAT): Use elf32-hppa.
1993-08-24 23:45:26 +00:00
K. Richard Pixley
95a2b9d2ce move BYTE_SIZE, SHORT_SIZE, LONG_SIZE from ldlang.c into ld.h 1993-08-24 23:34:32 +00:00
K. Richard Pixley
b98bd3db83 define BYTE_SIZE, SHORT_SIZE, and LONG_SIZE which are no longer in bfd.h. 1993-08-24 23:17:52 +00:00
David D. Zuhn
3b55444d36 keep i386-linux.h 1993-08-18 22:54:11 +00:00
Ian Lance Taylor
ddddcdf0f3 * ldlang.c (open_output, lang_check): Check return value of
bfd_set_arch_mach.
1993-08-17 19:25:18 +00:00
Steve Chamberlain
ea1c0ad276 * scripttempl/h8500.sc: Start all sections in a different segment.
* scripttempl/z8ksim.sc: Handle constructors
1993-08-17 14:04:24 +00:00
Jeffrey Wheat
8b46d73404 added support for the original "make chech-cdtest" 1993-08-12 23:20:25 +00:00
Jeffrey Wheat
26f709de0f cleaned up tests to work like they did originally in the makefile 1993-08-12 23:19:09 +00:00
Jeffrey Wheat
d301e438b5 check targets reimplemented to old way. 1993-08-12 15:54:30 +00:00
Ian Lance Taylor
d62026add2 * config/i386v.mh, config/irix4.mh: Use gcc
-print-libgcc-file-name rather than $(libdir)/libgcc.a.
1993-08-11 19:14:25 +00:00
Ian Lance Taylor
75fe54719c * config/i386sco.mh: New file; copy of i386v.mh to correspond to
bfd/configure.host change.
1993-08-11 15:57:39 +00:00
David MacKenzie
91fd30d46c mention that [section] is no longer supported 1993-08-10 16:12:30 +00:00
David MacKenzie
31f55aa540 clean up error messages 1993-08-06 20:13:28 +00:00
Ian Lance Taylor
3353630442 * scripttempl/mips.sc: Always define _ftext, _fdata, _fbss.
(BSS_VAR): Removed; now always define _fbss.
	* emulparams/mipsidt.sh, emulparams/mipsidtl.sh (BSS_VAR):
	Removed.
1993-08-06 18:35:03 +00:00
David MacKenzie
867a1b8a18 error fixes and clarifications 1993-08-05 22:49:26 +00:00
Jeffrey Wheat
7c6a9e798c Changes to add dejagnu testsuite support 1993-08-05 04:16:43 +00:00
Jeffrey Wheat
671fe6e9a3 New files for ld testsuites 1993-08-05 04:14:51 +00:00
David MacKenzie
8bf66be8aa add missing newlines in messages 1993-08-05 02:52:17 +00:00
Steve Chamberlain
cdbcb08c10 Keep h8300h.sc 1993-08-04 17:24:11 +00:00
Steve Chamberlain
8f20740950 Keep h8300h.em 1993-08-04 17:23:30 +00:00
Steve Chamberlain
e85fd7216e Keep m88kbcs.em 1993-08-04 17:19:22 +00:00
David MacKenzie
1cd4cca9bf add more info about -warn-common 1993-08-03 23:09:03 +00:00
David MacKenzie
2a28d8b006 add -warn-common option 1993-08-03 22:47:28 +00:00
David MacKenzie
3e27cc11c4 don't list objfiles... as an option 1993-08-03 00:33:38 +00:00
Ken Raeburn
94f9d427e5 * scripttempl/elf.sc: Add hooks for .sdata, .sbss, and
target-specific sections, and for changing data section vma.
1993-08-02 16:52:10 +00:00
Ken Raeburn
7ff4288057 elf files changed names; keep i386linux.sh 1993-07-30 22:30:29 +00:00
Ken Raeburn
8a910eb2ba renaming elf emulparams files to work with current emulation handling code 1993-07-26 19:46:09 +00:00
Ken Raeburn
6b93d764ca solaris 2 changes 1993-07-26 18:09:05 +00:00
Ken Raeburn
52a3f425d5 Pass emulation name without ".sh". 1993-07-26 18:08:43 +00:00
Ken Raeburn
fcea515b61 (MAXPAGESIZE): Renamed from PAGE_SIZE.
(TEXT_START_ADDR): Value should be 0x10100.
(NONPAGED_TEXT_START_ADDR): Same (I guess).
1993-07-23 17:58:24 +00:00
Ken Raeburn
cd739ca9b8 renamed PAGE_SIZE to MAXPAGESIZE 1993-07-23 17:57:35 +00:00
David MacKenzie
d59e5a4707 move compile-in decision to genscripts.sh 1993-07-22 00:55:56 +00:00
David MacKenzie
18d9a9c502 fix typo 1993-07-22 00:37:43 +00:00
David MacKenzie
a6152e399b The default script is now compiled in; the others are still in the filesystem. 1993-07-22 00:33:10 +00:00
Mark Eichin
077398b1bf change linux to use OTHER_EMULATIONS 1993-07-20 16:54:23 +00:00
Mark Eichin
9c4d1ed92c experimental linux support 1993-07-20 16:50:41 +00:00
Ken Raeburn
820c446cce Make emul-list.h depend on Makefile, so changes to EMULATION_OFILES get
reflected.
1993-07-20 16:38:49 +00:00
Ken Raeburn
0750b974c0 disable em_i386linux.o until emulparams/i386linux.sh is checked in 1993-07-20 16:31:47 +00:00
Mark Eichin
c4161ca8c2 more linux support bits 1993-07-19 15:00:19 +00:00
Mark Eichin
783fec2af9 add linux support (may not work yet, just cloned from i386-aout) 1993-07-19 14:51:00 +00:00
Ian Lance Taylor
fe619ced4a * ldgram.y (OPTION_Lfile): New token.
(command_line_option): Accept OPTION_L NAME (whitespace after -L).
	* ldlex.l (<COMMAND>): Accept -L without FILENAME.
1993-07-16 21:15:40 +00:00
David Edelsohn
dd8ca662ce h8/300h stuff 1993-07-16 20:46:46 +00:00
David Edelsohn
5448fed531 Fix h8300h support (need own .mt file). 1993-07-16 20:44:05 +00:00
David Edelsohn
fb564b406c h8/300h support 1993-07-16 20:43:14 +00:00
David MacKenzie
922018a10c remove dupliate include 1993-07-15 22:02:01 +00:00
David MacKenzie
c3cbe3f459 source cleanups; fix finding scripts 1993-07-15 21:49:24 +00:00
David Edelsohn
4ab3a31f9e Add h8/300h support. 1993-07-15 21:45:16 +00:00
David MacKenzie
bbd2521f26 source cleanups; fix finding scripts 1993-07-15 21:43:28 +00:00
David Edelsohn
a5ef437e7f h8/300h support 1993-07-15 21:41:50 +00:00
Ian Lance Taylor
b0955bc979 * scripttempl/m88kbcs.sc: Removed TARGET statement. Changed
OUTPUT_FORMAT to use ${OUTPUT_FORMAT}.
	* emulparams/m88kbcs.sh: It's coff-m88kbcs, not m88kbcs.
1993-07-15 19:59:21 +00:00
Ian Lance Taylor
9edc5b2eca * Makefile.in (em_m88kbcs.c): Correct dependency.
(scripttempl/m88kbcs.sc): It's ARCH, not arch.
1993-07-15 17:57:26 +00:00
David MacKenzie
cffdcde9e9 * ldfile.c (ldlang_open_file, ldfile_open_command_file),
main.c (main): Print the errno string in the error message.
1993-07-15 04:46:25 +00:00
David Edelsohn
ac2c0ee786 * configure.in: Accept h8300h for target cpu.
* ldmisc.c (vfinfo): Have demangle remove leading underscore if
present (demangle is smart enough to know whether to do it or not).
1993-07-14 03:08:33 +00:00
David Edelsohn
8a80def6f4 Accept h8300h for target cpu. 1993-07-14 03:07:04 +00:00
David D. Zuhn
e7569ec89f add a -I to the makeinfo command line 1993-07-13 03:01:22 +00:00
David MacKenzie
f42084627b * ldmain.c (set_scripts_dir): Check . and <ld bin dir>/../lib for
ldscripts, as well as <ld bin dir> and SCRIPTDIR.
1993-07-13 00:54:45 +00:00
David MacKenzie
d723cd17d5 * ldlang.c (lang_process): Use sizeof instead of magic constant.
* ldmain.c (get_emulation, check_for_scripts_dir,
	set_scripts_dir):  New functions.
	(main): Call them.
1993-07-12 19:34:04 +00:00
Ken Raeburn
e7affb090d configure.in, elf.sc changes 1993-07-12 15:07:42 +00:00
Ken Raeburn
aa6743a58d Include .init, .fini, .rodata sections.
Create symbol "end" instead of "__end".
Comment out some parts that may not be needed (yet) for elf.
1993-07-12 15:05:38 +00:00
Ken Raeburn
e900b30cae Solaris 2 support; sparc64 sanitization. 1993-07-12 15:01:15 +00:00
Ken Raeburn
dc31b55093 fix values 1993-07-12 15:00:55 +00:00
Ken Raeburn
96593d4b82 Solaris 2 configuration; sparc64 sanitization. 1993-07-12 14:59:29 +00:00
Ken Raeburn
ba9ca6a387 Handle sparc64-* before sparc*.
Accept sparc-elf and sparc-solaris configurations (though ../configure.in
should still not configure this directory by default, it's not completely
working).
1993-07-12 14:56:45 +00:00
Ken Raeburn
3bf3f99aa7 keep elf.sc 1993-07-08 23:38:49 +00:00
Ken Raeburn
f90bb826e5 initial v9 stuff 1993-07-08 22:44:34 +00:00
Ken Raeburn
3cb6141731 ldmisc,ldlang,Makefile changes 1993-07-08 20:28:03 +00:00