Commit graph

241 commits

Author SHA1 Message Date
Ian Lance Taylor
c361ce46c5 * configure.in (powerpc-*-elf*): New target; use ppc-elf32.
* config/ppc-elf32.mt: New file.
	* emulparams/elf32ppc.sh: New file.
	* emultempl/ppc.em: New file.
	* Makefile.in (ALL_EMULATIONS): Added em_elf32ppc.o.
	(em_elf32ppc.c): New target; uses elf32ppc.sh, ppc.em and elf.sc.
	(EMULATION_OFILES): Added dependencies on ldexp.h and ldlang.h.
1994-02-25 03:32:08 +00:00
David MacKenzie
d4e5e3c330 Use getopt instead of lex and yacc to parse the command line.
* ld.texinfo (Options): Document changes to option syntax.
	* Makefile.in: Update dependencies.
	* ldver.c (help): Tweak dashes in usage message.
	* ldgram.y (%union): Remove unused members.
	Remove %tokens for command line options; add ones for input types.
	(command_line): Rules removed.
	(file): Instead of command line, recognize an
	input type indicator, then use the nonterminal for that type.
	(defsym_expr): New nonterminal from code formerly in command_line.
	* ldlex.h: Declare parser input type enum and variable.
	Don't declare parse_line.
	* ldlex.l: Remove unused variables.  Make some used ones static
	and comment them.
	(COMMAND): Start state and its rules removed.
	At start of yylex, return input state token if at start of input.
	(lex_redirect): Don't need to set yyout.
	(ldlex_command): Function removed.
	* ldmain.c (main): Instead of calling parse_line, set up the
	redirections and call yyparse directly.
	* ldmisc.c (vfinfo): If there's no input filename, print nothing, not
	"command line".
	* lexsup.c: Remove #if 0'd code.
	(parse_line): Function removed.
	(parse_args): Rewrite to use getopt_long_only.
	(set_default_dirlist): New function from code formerly in
	ldgram.y:command_line.
	(set_section_start): New function.
	* emultempl/generic.em, emultempl/gld960.em, emultempl/hppaelf.em,
	emultempl/lnk960.em, emultempl/m88kbcs.em: Don't enclose
	compiled-in link scripts in "{" and "}", as the grammar no longer
	wants them to be.
1994-02-25 03:26:25 +00:00
Ken Raeburn
db0a7149be (install-info): Depend on ld.info, and use "$<*" so
it'll get picked up from $(srcdir) if appropriate.
1994-02-16 01:17:43 +00:00
David MacKenzie
0b2f8d2edd * ldmisc.c (ldmalloc, xmalloc, ldrealloc, xrealloc): Functions
deleted; will use libiberty versions instead.
	* ldctor.c ldfile.c ldlang.c ldmain.c ldmisc.c ldmisc.h lexsup.c
	mri.c Makefile.in: Change callers.

	* ldmisc.c (vfinfo): Remove cleanup code.
	* ldmain.c (remove_output): Put it here (new function).
	(preserve_output): New function.
	(main): Register remove_output and preserve_output with atexit.
	* ldmain.c ldgram.y: Call xexit instead of exit.
	* ldmisc.h: Declare xexit.
1994-02-05 01:14:56 +00:00
Steve Chamberlain
9e0f78c8d7 * Makefile.in: Lots of new H8/500 memory models. 1994-02-04 23:19:33 +00:00
David MacKenzie
fb55f9b8ae * ldlex.l: Add rule to catch invalid input characters instead of
printing them.  Include "ldmain.h" for program_name decl.
	(lex_warn_invalid): New function.
	* Makefile.in: Add dependency.
1994-01-28 19:36:53 +00:00
Ken Raeburn
f3c6455fda * Makefile.in (check): Don't bother running any tests of
cross-linker until the test suite no longer assumes native mode.
1994-01-28 18:02:43 +00:00
Rob Savoye
03372cf4ab Change all occurances of RUNTEST_FLAGS to RUNTESTFLAGS to be consistant with
everything else. (and now work recursively too)
1994-01-26 21:44:50 +00:00
Stan Shebs
74e6b793b8 * Makefile.in: Format variable definitions consistently.
(LD_PROG): Remove unnecessary variables from link command,
	change variable LOADLIBES to EXTRALIBS.
1994-01-26 04:24:30 +00:00
Ian Lance Taylor
8a432746ae Motorola Delta sysV68 support from phdm@info.ucl.ac.BE (Philippe
De Muyter).
	* configure.in (m68k-motorola-sysv*) New target.
	* config/delta68.mt: New file.
	* emulparams/delta68.sh: New file.
	* scripttempl/delta68.sc: New file.
	* Makefile.in (ALL_EMULATIONS): Added em_delta68.o.
	(em_delta68.c): New target.
1994-01-14 20:43:07 +00:00
Ian Lance Taylor
4a6afc88bb A major rewrite to move the bulk of the linker into BFD so that
more efficient backend code can be written for specific object
	files.
	* lderror.c, lderror.h, ldindr.c, ldindr.h, ldsym.c, ldsym.h,
	ldwarn.c, ldwarn.h, relax.c, relax.h: Removed.
	* ldctor.c, ldctor.h: Complete rewrite.
	* ldwrite.c, ldwrite.h: Complete rewrite.
	* ld.h (strip_symbols_type, strip_symbols): Removed.  Use
	link_info.strip instead.  Changed all uses.
	(discard_locals_type, discard_locals): Removed.  Use
	link_info.discard instead.  Changed all uses.
	(ld_config_type): Removed relocateable_output field; use
	link_info.relocateable instead; changed all uses.  Added stats
	field.
	(set_asymbol_chain, get_asymbol_chain, get_loader_symbol,
	set_loader_symbol): Removed.
	* ldexp.h (node_class): Added etree_rel.
	(etree_type): Added rel field.
	* ldexp.c (exp_print_token): Bracketed table initialization.
	(exp_relop): New function.
	(fold_name): Use linker hash table rather than ldsym functions.
	(exp_fold_tree): Likewise.  Also, handle etree_rel case.
	(exp_print_tree): Handle etree_rel.
	* ldgram.y (strip_symbols, discard_locals): Removed.
	(OPTION_stats, OPTION_no_keep_memory): New tokens.  Handle them.
	(REL): New token.  Does not appear in grammar, but needed for
	expression code.
	(file): Don't call lang_final; it's called by main anyhow.
	* ldlex.l: Accept -stats and -no-keep-memory options.
	* ldlang.h (fill_type): Make unsigned int, not unsigned short.
	* ldlang.c: Consistently use fill_type for fill argument.
	(lang_init_script_file, script_file): Removed.
	(create_object_symbols): Removed.  Use
	link_info.create_object_symbols_section instead.  Changed all
	uses.
	(lang_add_keepsyms_file): Removed.
	(lookup_name): Call bfd_link_add_symbols instead of
	ldmain_open_file_read_symbol.
	(wild): Don't iterate over script_file.
	(open_output): Create link hash table.
	(lang_place_undefineds): Rewrote.
	(lang_size_sections): Handle relaxing (doesn't work yet).
	(lang_relocate_globals): Removed.
	(lang_finish): Use link hash table rather than ldsym functions.
	(lang_common): Rewrote.
	(lang_one_common): New function.
	(ldlang_add_file): Add file to link_info.input_bfds list.  Set
	usrdata.
	(create_symbol): Removed.
	(lang_process): Don't call lang_init_script_file.  Call
	ldctor_build_sets rather than find_constructors.  Don't call
	lang_relocate_globals.
	(lang_abs_symbol_at_beginning_of): Rewrote.
	(lang_abs_symbol_at_end_of): Rewrote.
	* ldmain.c (had_y): Removed.
	(lprefix, lprefix_len): Removed; use link_info fields instead.
	Changed all uses.
	(multiple_def_count, commons_pending, undefined_global_sym_count,
	total_symbols_seen, total_files_seen): Removed.
	(link_callbacks, link_info): New variables.
	(main): Initialize link_info.  Don't call init_bfd_error_vector or
	ldsym_init.  Don't set now unused variables.  Handle -stats.
	(get_emulation): Removed obsolete and nonfunctional GNU960 code.
	(add_ysym): Rewrote.
	(read_entry_symbols, refize, enter_global_ref, enter_file_symbols,
	search_library, gnu960_check_format, decode_library_subfile,
	linear_library, symdef_library, clear_syms, subfile_wanted_p):
	Removed.
	(add_keepsyms_file, add_archive_element, multiple_definition,
	multiple_common, add_to_set, warning_callback, undefined_symbol,
	reloc_overflow, reloc_dangerous, unattached_reloc, notice_ysym):
	New functions.
	* ldmisc.c (vfinfo): Accept a string for %T, not a symbol.  Don't
	require symbols for %C; look them up instead.
	* emultempl/hppaosf.em: Pass link_info to
	hppa_look_for_stubs_in_section.
	* Makefile.in: Rebuilt dependencies.
	(CFILES): Removed lderror.c, ldindr.c, ldsym.c, ldwarn.c, and
	relax.c.
	(HFILES): Removed lderror.h, ldindr.h, ldsym.h, ldwarn.h, and
	relax.h.
	(EMULATION_OFILES): Depend on bfdlink.h, ldmain.h, ldexp.h,
	ldlang.h and ldctor.h.

	* Makefile.in (ldlex.c): Don't depend on ldgram.h.  Remove
	declarations of free and malloc from flex output.  Change malloc
	to ldmalloc in flex output.
1993-12-30 19:51:41 +00:00
Ken Raeburn
4ecfad7942 Fix up dependencies and rules for ld.dvi, ld.info. 1993-11-04 00:09:39 +00:00
Ken Raeburn
3c1af24dd5 * Makefile.in (distclean): Don't get rid of dvi or info files. 1993-11-03 23:09:24 +00:00
Stan Shebs
7b95fe96ef Sparc Lynx support 1993-10-29 02:39:07 +00:00
Ian Lance Taylor
d17eb3db0e * Makefile.in: Add dependency for $(EMULATION_OFILES). 1993-10-28 18:09:20 +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
Jeffrey Wheat
d301e438b5 check targets reimplemented to old way. 1993-08-12 15:54:30 +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
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
David Edelsohn
4ab3a31f9e Add h8/300h support. 1993-07-15 21:45:16 +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 D. Zuhn
e7569ec89f add a -I to the makeinfo command line 1993-07-13 03:01:22 +00:00
Ken Raeburn
58bf66f96e (ALL_EMULATIONS): Include $(OTHER_EMULATIONS) in case some target has stuff
to add.
1993-07-08 20:24:02 +00:00
Ian Lance Taylor
e357065c7e * Makefile.in (install): Don't install as $(tooldir)/bin/gld;
collect2 doesn't look for gld any more anyhow.
1993-07-07 18:36:12 +00:00
David MacKenzie
a04f1d001e Passing -L. is no longer necessary. 1993-07-03 02:23:22 +00:00
David MacKenzie
ff76a7dbf3 Fix previous fix. 1993-07-03 02:18:12 +00:00
David MacKenzie
173a0c3d26 * ldmain.c (main): Don't add scriptdir to the lib search path.
* genscripts.sh: Put the scripts in the ldscripts directory, not
	emulations.
	* configure.in (ldscripts): Make, instead of emulations.
	* Makefile.in (scriptdir): Take off the "ld" part.
	(install, clean, distclean): Use ldscripts, not emulations.
	In tests, pass -L., not -Lemulations.
	(ldmain.o): Don't pass -DSCRIPTDIR=....
	* ldlang.c (lang_process): Add "ldscripts/" to the name of the
	default script file.
1993-07-03 02:01:03 +00:00
K. Richard Pixley
559d7baf89 * Makefile.in (ldgram.[hc]): rewrite this rule in such a way that gnu
make can run in parallel without colliding on yacc's static file
  names.
1993-06-30 22:48:51 +00:00
David D. Zuhn
5ebaf24b77 single-quote $program_transform_name 1993-06-18 19:25:38 +00:00
David D. Zuhn
9cd039e778 more install/program_transform_name fixes 1993-06-18 17:03:58 +00:00
Steve Chamberlain
d360d135af Fix install. 1993-06-18 01:30:34 +00:00
David D. Zuhn
e0d005f216 get install.sh canonicalized 1993-06-17 23:50:35 +00:00
David MacKenzie
565c93e92a * Makefile.in (.cc.o): Restore .SUFFIXES entry for .cc
and .cc.o rule.
1993-06-17 21:34:11 +00:00
David MacKenzie
8ddef5528d * ldfile.c (ldfile_open_command): Don't try .ld extension.
It wasn't documented (or likely used) and wastes time.
	(try_open): If EXTEN is empty, don't try it.

	* ldctor.c, lderror.c, ldexp.c, ldfile.c, ldindr.c, ldlang.c,
	ldlex.l, ldmain.c, ldmisc.c, ldsym.c, ldver.c, ldwarn.c,
	ldwrite.c, lexsup.c, mri.c, relax.c: Replace DEFUN macro calls
	with normal function declarations.

	* Move *.em to emultempl/*.em.  Move *.sh to emulparams/*.sh.
	Move *.sc-sh to scripttempl/*.sc.
	* {emultempl,emulparams,scripttempl}/README: New files.
	* sh.em, st2000.em, z8ksim.em, h8300hms.em, h8500hms.em: Files
	removed, replaced with generic.em.
	* h8300.sh, h8500.sh, h8300.sc, h8500.sc: Renamed from
	 h8[35]00hms.s[ch].  Change their contents to omit the "hms".

	* *.em (*_get_script): Return script name instead of script contents.
	* ldlang.c (lang_process): Change caller.

	* ldlex.l, ldgram.y: Recognize -m option.
	Check for input files after *all* options in grammar.
	* ldmain.c (main): Check for -m options.  Add default directory
	for -m.

	* mkscript.c: File removed.
	* genscripts.sh: Take two more parameters, tooldirlib and libdir,
	to add to the default LIB_PATH.
	Look for input files in the new subdirectories.
	Create the scripts in emulations subdirectory and don't filter
	them through mkscript.
	* configure.in: Make the emulations subdirectory.

	* Makefile.in: Account for all of the above changes.
	Remove unused .SUFFIXES.  Get libgcc.a path with gcc
	-print-libgcc-file-name instead of $(libdir)/libgcc.a.
	Put CFLAGS last in the compilation rules.
	Add -I../bfd to INCLUDES so sysdep.h is found.

	* ldfile.c (try_open): If opening without the extension fails,
	try with the extension even if -v or -V was given.
	had_script is imported (from ldgram.y), not exported.
1993-06-17 20:55:43 +00:00
Ken Raeburn
f905eff404 look in ../include instead of ../bfd for bfd.h 1993-06-16 03:10:01 +00:00
David D. Zuhn
c97b9003b0 remove parentdir support; use INSTALL_XFORM 1993-06-16 00:03:44 +00:00
David D. Zuhn
91b3a2b678 * Makefile.in: remove old C++ rules; remove install:all and
install-info:info dependencies (these cause some spurious rebuilds
	at 'make install' time)
1993-06-04 23:20:08 +00:00
Ian Lance Taylor
1053ea99cb Remove sh sanitization comments. 1993-06-04 20:01:31 +00:00
Ian Lance Taylor
98f3d1afa4 * configure.in (mips-idt-ecoffl*): New target; use mips-idtl.
(mips-idt-ecoff*): Added trailing '*'.
	* config/mips-idtl.mt: New file; use EMUL of mipsidtl.
	* mipsidtl.sh: New file; like mipsidt.sh, but little endian.
	* Makefile.in (ALL_EMULATIONS): Added em_mipsidtl.o.
1993-06-04 19:50:31 +00:00
Ian Lance Taylor
6354589838 * Makefile.in: configure looks for ####, so remove lines with many
'#' characters.
	* config/irix4.mh, config/i386v.mh: New files; set HOSTING_CRT0
	and HOSTING_LIBS correctly so that ``make check'' will work.
1993-05-25 22:37:41 +00:00
Ian Lance Taylor
ef86818669 * mips.sc-sh: Put constructors in the .data section.
* Makefile.in (cdtest): Added dependency on ld.new.
1993-05-04 19:39:33 +00:00
Per Bothner
034351e334 * Makefile.in: Change definition of $(tooldir) to match FSF.
* vax.sh, config/vax.mt, configure.in, Makefile.in:
	Support VAX Ultrix and BSD.
1993-05-04 02:51:33 +00:00
Roland Pesch
2412a76837 ld.texinfo:
Conditionalize manual to maintain Cygnus, Hitachi versions in parallel.
(Texinfo conditionals are stable enough to permit this, at last!)
NOTE: @ignore'd passages from earlier versions DELETED; use CVS history
      to retrieve if wanted.

gen-doc.texi, h8-doc.texi: manual configuration definitions.

Makefile.in: link config defn (`gen' by default) to configdoc.texi, included
      by ld.texinfo

.Sanitize: add gen-doc.texi, h8-doc.texi
1993-03-30 23:25:03 +00:00
Ian Lance Taylor
ce7d4b0d57 * mips.sc-sh: Added variables which may be overridden by a
specific emulation.
	* mipsidt.sh: New file; emulation for IDT MIPS board.
	* Makefile.in (ALL_EMULATIONS): Added em_mipsidt.o.
	(em_mipsidt.c): New target.  Uses mipsidt.sh and mips.sc-sh.
	* config/mips-idt.mt: New file; sets EMUL to mipsidt.
	* configure.in (mips-idt-ecoff): New target; uses mips-idt.
1993-03-04 20:49:26 +00:00
Ken Raeburn
e637dcf08b mips-bsd and 386bsd support 1993-02-28 14:46:25 +00:00
Ian Lance Taylor
af6237a4a8 Thu Jan 28 15:12:04 1993 Ian Lance Taylor (ian@cygnus.com)
* Makefile.in (install): Remove $(tooldir)/bin/gld before creating
	the link to it.
1993-01-28 23:13:32 +00:00
Ian Lance Taylor
42b5c73927 Fri Jan 22 14:22:44 1993 Ian Lance Taylor (ian@cygnus.com)
* mips.sc-sh: New file.  Ultrix, and hopefully other MIPS ECOFF
	targets, linker script.
	* mipslit.sh: New file.  Little endian MIPS emulation.
	* config/mips-lit.mt: New file.  Use mipslit emulation.
	* configure.in (mips-dec-ultrix*): Use target mips-lit.
	* Makefile.in (ALL_EMULATIONS): Added em_mipslit.o.
	(em_mipslit.c): New target.  Uses mipslit.sh.
1993-01-22 22:30:52 +00:00
Steve Chamberlain
22a78f0d96 Fri Sep 25 11:08:01 1992 Steve Chamberlain (sac@thepub.cygnus.com)
Added initial support for the z8k
	* z8ksim.em, z8ksim.sc-sh, z8ksim.sh: new files
	* configure.in, Makefile.in: modified to reflect above

	* ldlang.c (lang_check): when linking conflicting architectures,
	make the output file reflect at least one of the bad inputs.
1992-09-25 18:11:04 +00:00
Ian Lance Taylor
5640944588 Tue Sep 15 15:35:38 1992 Ian Lance Taylor (ian@cygnus.com)
* Makefile.in (install): if $(tooldir) exists, install ld in
	$(tooldir)/bin.
1992-09-15 23:30:30 +00:00
Steve Chamberlain
99e6298ae3 Support for i386-coff 1992-09-11 17:25:43 +00:00
Ian Lance Taylor
ab57b17418 Brought in from p3. If anybody knows good numbers for m68k COFF,
please let me know, or plug them in yourself.

Wed Sep  9 11:52:58 1992  Ian Lance Taylor  (ian@cygnus.com)

	* Makefile.in, m68kcoff.sh, m68kcoff.sc-sh, config/m68k-coff.mt:
	added m68k-coff emulation mode, stolen from a29k emulation.
	Almost certainly wrong, but perhaps better than sun3.

Also fixed an error message in configure.in so that it started with
'***' like the other error messages do.
1992-09-09 18:59:11 +00:00
David D. Zuhn
2df681368b new configure triple work, added solaris 2 & irix host support, fix FLEX definition 1992-09-02 00:49:47 +00:00
Per Bothner
fc60e4f737 Removed cplus-dem.[ch]. (These are now in ../libiberty.) 1992-09-01 23:10:08 +00:00
Ian Lance Taylor
0bb95ac84a Brought forward from p3:
Sun Aug 30 21:38:53 1992  Ian Lance Taylor  (ian@cygnus.com)

	* Makefile.in: map "ld" through program_transform_name when
	installing.
1992-09-01 01:17:01 +00:00
Ian Lance Taylor
b189e892be Moved in from p3:
Tue Aug 18 13:41:36 1992  Ian Lance Taylor  (ian@cygnus.com)

	* configure.in: accept all m68K family members.

	* Makefile.in: always create installation directories.
1992-08-18 20:48:29 +00:00
Roland Pesch
40ab85327f Use new name of man page (ld.1). 1992-08-17 18:35:59 +00:00
Per Bothner
4b91c519fd * ldint.texinfo: New internals manual (beginnings thereof).
* PORTING:  Removed, merged into ldint.texinfo.
1992-08-07 01:37:39 +00:00
Per Bothner
917bffa7f6 * cdtest-main.cc, cdtest-func.cc, cdtest-foo.h, cdtest-foo.cc,
cdtest.exp:  A test program (copied from libg++/test-install)
	that tests that constructor and destructors are handled
	corrrectly.
1992-08-05 04:15:37 +00:00
David D. Zuhn
b40f9c73f7 fix installation problem which forced a relink of ld on 2nd and subsequent installation 1992-08-03 22:07:36 +00:00
Steve Chamberlain
5cdea2ac20 Install into the right place for cross 1992-06-26 22:42:15 +00:00
Per Bothner
5ff21fa5c0 * Makefile.in: Use srcdir instead of VPATH in ldgram/ldlex
rules, since these are used when building a distribution.
	* Makefile.in (ldlex.c):  Don't re-direct output, since that
	leaves a bogus output files if it fails.
1992-05-22 22:36:35 +00:00
K. Richard Pixley
bf3acf4485 use flex & bison from ../ if they exist 1992-05-06 18:08:10 +00:00
K. Richard Pixley
813da1a517 FLEX -> LEX 1992-05-05 19:13:58 +00:00
Steve Chamberlain
fe3e4dfcfd New stuff for 29200 1992-05-02 02:08:21 +00:00
Steve Chamberlain
e14a43bfaf * ldgram.y, ldlex.c, mri.c: added more compatible words; BASE, ALIAS and
PUBLIC.
	* Makefile.in: now use flex, not lex
1992-05-02 01:35:12 +00:00
K. Richard Pixley
d3451fe888 use bootstrap for check 1992-05-02 01:19:02 +00:00
K. Richard Pixley
77b19d3d3e rework CFLAGS such that they can be passed on command line to make 1992-04-22 23:35:47 +00:00
K. Richard Pixley
119afd7b5f tooldir copy of ld belongs directly in tooldir 1992-04-21 05:34:11 +00:00
Ken Raeburn
1900f884b3 Install second copy as $(tooldir)/bin/ld, since that's what gcc wants. 1992-04-09 09:54:52 +00:00
Steve Chamberlain
9d1fe8a410 New lexer.
New targets for h8/300 simulator and DOS
1992-04-05 01:47:16 +00:00
Steve Chamberlain
12fa72d472 * config/mt-<foo> renamed to <foo>.mt
* config/mh-<foo> renamed to <foo>.mt
	* configure.in changed to reflect this
	* genscripts.sh now make .xbn files rather than .xN files
1992-03-13 16:25:26 +00:00
Per Bothner
1584d0697d New hp300bsd port. 1992-02-17 20:08:20 +00:00
Per Bothner
7e5c1057bb * Makefile.in: Major changes. Removed some the sed
magic to converts scripts, since that is now handled
	by genscripts.sh and the *.sc-sh scipt generators.
	* config.h:  Remove a bunch of macros defining emulations
	and targets.  This becomes one less file to edit when
	adding emulations or targets.
	* ldemul.h (struct ld_emulation_xfer_struct):  Add
	emulation_name and target_name fields.
	* ldemul.c, ldemul.h:  Define some default functions used
	by most emulations (and remove from the *.em scripts).
	* ldemul.c (ldemul_choose_target):  Search the new
	ld_emulations array using a loop (instead of a hardwired
	nested if statement).
	Define the ld_emulation from the automatically-geenrated
	ldemul-list.h.  This means you no longer have to edit ldemul.c
	to add a new emulation.
	* ldmain.c:  Replace {GLD,LNK}960_EMULATION_NAME by
	their expansions, since the former no longer exist.
	* PORTING:  A very rough first draft of a porting guide.
1992-02-15 23:13:00 +00:00
Steve Chamberlain
d20fb44510 A change to the makefile got lost; ldmain. forgot that it should set
DEFAULT_EMULATION, so ld didn't know who it was.
1992-02-01 00:50:35 +00:00
K. Richard Pixley
60048a2cee add bootstrap target 1992-01-29 22:47:09 +00:00
Steve Chamberlain
cbbdbb9f29 * config/mh-sparc.h: now uses libgcc.a
* ldmain.c: quit using exit
	* *.sc: use *(COMMON) rather than [COMMON]
	* ldlex.l, lexsup.c: much thinking moved from .l and put into .c,
	to allow preprocessing of .l file.
	* Makefile.in: New ldlex.l mangling
	* ldexp.c (fold_binary): perform expressions with % and / in
	integer.
	* ldfile.c (open_a): open archives on VMS in a special way
	* lderror.c: forgot to check in from a long while ago
1992-01-29 16:43:16 +00:00
Steve Chamberlain
2e2bf962db * Makefile.in: added relax, also made three stage go through a
partial link stage.
	* relax.c : added
	* config.h: if GNU960 defined, then default emulation mode is
	GLD960
	* ldexp.h, ldexp.c: map to file hooks
	* ldlang.c: map to file hooks
	* ldgram.y: added -Map -relax
	* ldlex.l: added -relax, -Map
	* ldmain.c: open map file
	* ldmisc.c: support for map file
	* ldwrite.c: new relax magic
1992-01-24 22:34:34 +00:00
Heinz G. Seidl
2cbe4c5f9e install ld in the gcclibdir if present 1992-01-24 22:11:28 +00:00
Per Bothner
e06ba18dad * Makefile.in: Pass -y to bison. (Again; accidentally deleted by Rich.)
* news.sc, ldgld68k.sc:  Define __end as well as _end.
1991-12-10 00:31:17 +00:00
K. Richard Pixley
31e54f5d6d allow for yacc, whether or not it really works 1991-11-14 07:42:02 +00:00
K. Richard Pixley
afe3aa730c build and install info 1991-11-14 00:20:13 +00:00
Roland Pesch
9c7810d6b2 (1) better filtering of roff-formattable doc targets
(2) better (I think) conformance to local practice re $(srcdir) and
makeinfo -o
1991-11-14 00:15:47 +00:00
Per Bothner
c61b4184f4 * Makefile.in: Rename .c files generated from ldtemplate
to have names starting with ld__.  This helps 'make clean'.
1991-11-13 23:18:47 +00:00
Steve Chamberlain
092df318fa * Makefile.in: Take out the version number for install
* m88kbcs.sc: put in contructor blocks.
1991-11-13 02:39:14 +00:00
Steve Chamberlain
550e87b54d * ldlex.l ldgram.y: made -V option do same as -v
* Makefile.in: Added $(MINUS_G) flag so debugging can be
turned off
1991-11-11 17:59:52 +00:00
Steve Chamberlain
887b336397 Install ld into ddestdir/bin. 1991-11-08 02:16:19 +00:00
Steve Chamberlain
ffa057ee82 *** empty log message *** 1991-11-05 20:36:54 +00:00
Steve Chamberlain
ce4d59e25d Sun Nov 3 16:37:37 1991 Steve Chamberlain (steve at cygnus.com)
i386 aout changes from Bob Kukura
	* Makefile.in, config.h: added i386aout support
	* configure.in: fixed /h-{myhost} typo
	* ldgram.y: -MM now gives more boring map.
	* ldlang.c: now does D_PAGED flag the right way.
	* ldsym.c: -MM flags does the right thing.
1991-11-04 00:45:25 +00:00
Roland Pesch
954ac2eafd * Makefile.in: new targets ld.mm, ld.me
(more roff forms of doc)
1991-10-15 00:31:56 +00:00
Per Bothner
972e7b4bc4 * Makefile.in, ldtemplate: Need to use separate scripts
for -n and -N options.  Yet more complication.
1991-10-15 00:28:43 +00:00
John Gilmore
33ce0085ba * Makefile.in: Avoid using $< in explicit Make rules (it doesn't
work).  Add some lines to avoid Sun Make VPATH bugs.
1991-10-12 05:42:05 +00:00
Per Bothner
b7e24eef35 * news.sc: Add alignment for data segment.
* ldtemplate: Add (yet another) script to get for -n or -N
	options.  (These need different alignment than ZMAGIC files.)
	* Makefile.in:  Add stuff for new foo.xn scripts.
	These are generated by replacing "ALIGN(0x...00)" by ".".
1991-10-11 23:47:05 +00:00
Roland Pesch
10a69a373d Slightly better comments (re doc targets). 1991-10-11 22:51:31 +00:00
Roland Pesch
8073190bd2 Support for "ld.ms", "ld-index.ms" ROFF-style doc targets. 1991-10-11 22:42:57 +00:00
Per Bothner
6719c75b99 * ldmain.c (main): Make config.magic_demand_paged be true
by default.  Don't the WP_TEXT and D_PAGED flags of
	output_bfd here; it's too late, so set it when output_bfd
	is created (in ldlang.c).  Also fix setting of EXEC_P flag
	* ldlang.c (ldlang_open_output):  Set output_bfd->flags here.
	* ldlang.c: Remove some duplicate extern declarations.
	* ldgram.y: Fixes to -N and -n options.
	* Makefile.in:  Recognize upper case letters in sed script
	to remove assignments from script files.
	* ldtemplate:  Don't assukme that -N or -n options
	imply use of -r script.
	* mkscript.c:  Tweaking to correctly handle \n and \\ in input.
1991-10-11 21:02:22 +00:00
Steve Chamberlain
565a4c769c * Makefile.in, config.h, configure.in, ldemul.c: added ebmon29k
stuff
1991-10-11 19:31:15 +00:00
Per Bothner
ee17cac9c6 * ldexp.h, ldlang.h: Change enum boolean -> enum bfd_boolean.
* ldtemplate: Remove ldfile_add_library_path calls;
	just use the SEARCH_DIR commands in the script files.
	* Makefile.in: Add LIB_PATH macro, which if set is used to replace
	the SEARCH_DIR commands in the scripts (using ugly sed magic).
	This is primarily intended for cross-linking, where you would
	place libaries in a different place than native libraries.
	Also, emulations made from ldtemplate now use $(srcdir).
	* ldglda29k.sc: Change SEARCH_DIR commands to a conventional
	form; people can use the Makefile's LIB_PATH to override.
1991-10-08 23:18:03 +00:00
Roland Pesch
8d317d2a7a * Makefile.in: fix target ld.dvi, add target ld.info
ld.texinfo: make info filename ld.info
1991-10-08 21:52:43 +00:00
Steve Chamberlain
bee36ac3e7 Added right dependencies for h8300hds.sc 1991-10-07 15:07:29 +00:00
Steve Chamberlain
58b8383afd Support for the h8300 with an hds monitor, first cut. 1991-10-06 19:17:07 +00:00
John Gilmore
5784123fb7 * Makefile.in: Avoid using $< in non-suffix rules (breaks on Sun Make).
* ldfile.c, ldlang.c, ldmain.c, ldwrite.c:  Cope with renames of a
few BFD types & enums.
* ChangeLog:  Create.
1991-10-05 04:55:05 +00:00
Per Bothner
3e0f5f4f9e Added a kludge for when yacc is used in place of bison:
Rename the yacc outputs y.tab.[ch] to what we want: ldgram.[ch].
1991-10-03 21:50:08 +00:00
K. Richard Pixley
e45bef1edd Some $(srcdir)'s become $(unsubdir)'s in order to support +objdir. 1991-10-02 10:05:30 +00:00
K. Richard Pixley
f1eb48b62e no more configure on which to depend 1991-10-02 07:24:45 +00:00
K. Richard Pixley
4976e6ab23 Very minor bug, broke "make -t". 1991-10-02 04:52:31 +00:00
K. Richard Pixley
a26878d1fa Exploit the new executable config.status 1991-10-01 03:46:00 +00:00
Per Bothner
e1e5fbfcbb * ldlnk960.c: Use new naming convention for *.x{,u,r} include scripts.
* ldm88k.sc: "Clean up" script, so that ldm88kUr.sc and ldm88kr.sc
	can be automatically generated.
	* ldemul.c, configure.in, config.h, Makefile.in:
	Add support for Sony NewsOS3.
	* Makefile.in: Re-do the way ldemulation scipts and structures
	are done. do we only need one or two files for each emulation
	target (a TARGET.sc and optionally TARGET.c, if ldtemplate
	isn't suitable).  This gets rid of lots of extra source files.
1991-09-27 20:09:23 +00:00
Steve Chamberlain
1baac72eb9 *** empty log message *** 1991-09-03 21:14:14 +00:00
Steve Chamberlain
1e33287356 *** empty log message *** 1991-09-03 21:14:13 +00:00
Steve Chamberlain
30104b16c3 *** empty log message *** 1991-09-03 21:04:24 +00:00
K. Richard Pixley
e0220a5bc5 Correct for a deficiency in sun make. 1991-08-13 15:14:25 +00:00
K. Richard Pixley
c252bac868 Changed the script rule from "mkscript" to "./mkscript". 1991-08-12 19:56:45 +00:00
K. Richard Pixley
ca70eaefa2 With most makes, yacc is predefined so the previous approach doesn't
work.
1991-07-23 04:08:16 +00:00
K. Richard Pixley
e7218a07c7 Correct the rule for mkscript. The explicit rule failed in subdirs.
The default rule works just fine.
1991-07-16 15:35:37 +00:00
Steve Chamberlain
5209444a40 *** empty log message *** 1991-07-16 00:07:19 +00:00
K. Richard Pixley
e46cdcdd36 Changes to use yacc and/or bison in place. 1991-06-20 22:04:41 +00:00
Steve Chamberlain
cc964c6f4b Cleaned up map file printing.
Added support for bcs linkage

Added NOLOAD, DESCT, COPY and OVERLAY keyword (though they don't do
anything yet)
1991-06-14 20:16:51 +00:00
K. Richard Pixley
5d63a6687f Awk for version number. 1991-06-12 21:34:45 +00:00
K. Richard Pixley
30ba1dfeaf Added support for binary comparisons. 1991-06-09 20:22:11 +00:00
John Gilmore
38f7d29d23 Remove processed scripts in "make clean". 1991-05-31 03:34:29 +00:00
K. Richard Pixley
fe9c20e21f Fixed link line. 1991-05-27 22:47:33 +00:00
Steve Chamberlain
19b03b7aa4 *** empty log message *** 1991-05-18 02:57:45 +00:00
K. Richard Pixley
7dc139f16d mkdep is not a standard tool nor do we support or install it.
Assuming it's existence kills config, make, and install.
1991-05-18 01:01:09 +00:00
Steve Chamberlain
239d28f3e8 Added make dep
Made filenames suitable for PCs
1991-05-14 18:53:33 +00:00
Steve Chamberlain
3795e57647 C
:wq



q







VS: ----------------------------------------------------------------------
1991-05-14 14:40:39 +00:00
John Gilmore
e77463a15c Merge devo/bfd with GDB's bfd.
Things that use -lbfd must also use -liberty, to get obstacks.
1991-05-02 03:08:32 +00:00
John Gilmore
d6e467b4c5 Use the new merged include directory. 1991-04-25 04:25:00 +00:00
Steve Chamberlain
a37cc0c05c *** empty log message *** 1991-04-23 15:59:24 +00:00
K. Richard Pixley
e7921bd4c5 Pulled host & target dependancies out of Makefile. allow more
flexibility in config.h.
1991-04-18 02:01:12 +00:00
K. Richard Pixley
8c32cf6e55 Now handles multiple host and targets. 1991-04-15 23:41:05 +00:00
Steve Chamberlain
f78e2569ad Checkpoint before a merge 1991-04-14 03:23:25 +00:00
K. Richard Pixley
f2e91404e7 Cut 2. Subdirs. 1991-04-10 22:56:51 +00:00
K. Richard Pixley
2ee11735a2 First minimally usable config checkin. 1991-04-09 23:21:17 +00:00
K. Richard Pixley
eb02fd64a6 Initial revision 1991-04-04 19:01:18 +00:00