Commit graph

163 commits

Author SHA1 Message Date
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