Commit graph

397 commits

Author SHA1 Message Date
Ian Lance Taylor
ce201b347f Added new hp9000.mh file. 1992-09-29 15:51:10 +00:00
Ian Lance Taylor
26c4173247 HP/UX needs -Wp,-P when compiling with -O (comment only, since the
default is not to use -O).
1992-09-29 15:50:30 +00:00
Ken Raeburn
f3b36ecb30 * Makefile.in (ldexp.o, ldctor.o, ldlang.o, ldmain.o, ldwrite.o, lexsup.o,
mri.o, relax.o): Indicate dependence on ldgram.h.

* ld.h (strip_symbols_type): Add value STRIP_SOME.
* ldgram.y (OPTION_RETAIN_SYMBOLS_FILE): New terminal token.
(lang_add_keepsyms_file): New function.
* ldlex.l: Handle "-retain-symbols-file".
* ldsym.c (keepsyms_file, kept_syms): New vars.
(process_keepsyms): New functihon; reads file, marks symbols for saving.
(write_file_locals): File symbols should always be kept.
(ldsym_write): Warn about "-retain-symbols-file" overriding "-S" and "-s".
Process retain-symbols file before setting symtab.
* ldsym.h (SYM_KEEP): New flag for ldsym_type flags.
(keepsyms_file, kept_syms): Declare them.

* ldmain.c (main): Non-fatal errors should still cause non-zero exit status
even with -r.
1992-09-25 21:05:20 +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
e92bddcd1b Sanitize slip 1992-09-11 20:43:33 +00:00
Steve Chamberlain
1d7c7537dc Add i386coff.sh 1992-09-11 17:47:22 +00:00
Steve Chamberlain
2a9f20dbf1 New files 1992-09-11 17:47:01 +00:00
Steve Chamberlain
99e6298ae3 Support for i386-coff 1992-09-11 17:25:43 +00:00
Ian Lance Taylor
f5d8987980 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.
1992-09-09 18:59:30 +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
Per Bothner
d73812a1d6 * Makefile.in, Makefile.dos, generic.em, genscripts.sh,
gld960.em, h8300hms.em, h8300xray.em, lnk960.em, st2000.em,
	vanilla.em:  Rename all (generated) ld__*.c files to em_.c.
	This is one character shorter, and lets people build on
	SVR3 system. (ld__h8300xray.[co] was the killer there;
	h8300xray.sc-sh is also overlong, but seems harmless.)
	Based on a patch from Jonathan Ryshpan <hitachi!amito!jon>.
	* Makefile.in (clean):  Fix typo mostclean -> mostlyclean.
	* configure.in:  Add host isc.
1992-09-04 03:29:15 +00:00
Per Bothner
8e71a9842c Note version change to 2.0. 1992-09-04 02:45:57 +00:00
Per Bothner
fbd74d0712 Add TODO. 1992-09-03 22:56:45 +00:00
Per Bothner
091a79f59a * ldver.c: Bump to version 0.98.
* TODO:  New file.
1992-09-03 06:02:56 +00:00
Per Bothner
c52bdfecfd * ldmisc.c (xrealloc): New (needed by ../libiberty/cplus.dem.c).
* ldlex.l: Moved comment() to end, since some compilers
	otherwise have problems with input() used before it is defined.
1992-09-02 06:45:13 +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
Per Bothner
e4b9262014 Add scripts. 1992-09-01 22:14:49 +00:00
Per Bothner
a2d5971d85 Add isc-sysv3.2.sc. 1992-09-01 22:14:24 +00:00
Per Bothner
8f5a6be62c Remove non-existant file hp300bsd.mh. 1992-09-01 22:07:32 +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
Per Bothner
fe2b6209ff * cplus-dem.c: Removed. Use the version in libiberty now.
* ldmisc.c:  Use new libiberty version of cplus_demangle().
1992-08-31 01:14:44 +00:00
Ian Lance Taylor
5f2d9799ce Update ChangeLog, removing yesterday's 960 change and putting in
todays (960 now always uses little endian ordering).
1992-08-29 00:17:29 +00:00
Ian Lance Taylor
378dac8cc6 Back out yesterday's change for using host endian order in 960 bout files. 1992-08-28 21:10:36 +00:00
Ian Lance Taylor
94cc1ee79d Thu Aug 27 16:38:42 1992 Ian Lance Taylor (ian@cygnus.com)
* gld960.em (gld960_choose_target): the target depends on
	HOST_BIG_ENDIAN_P.
1992-08-28 00:08:35 +00:00
Steve Chamberlain
cd1d8c6d89 * ldlang.c (lang_process): don't pass null pointers when
abs_output_section is what is required.
	* ldwrite.c (ldwrite): use malloc to allocate the largest space
	used, and pass that down.
	* relax.c,relax.h (write_relaxnorel): use the passed malloc area rather
	than alloca.
1992-08-27 00:32:05 +00:00
Ian Lance Taylor
afba2b2286 Renamed OSE configuration to ose. 1992-08-24 22:32:46 +00:00
Ken Raeburn
571c4c2636 common/undef sym handling fix from p3 1992-08-21 01:43:49 +00:00
Roland Pesch
cb70c87297 Introduce more blanks in examples; minor formatting cleanup. 1992-08-19 21:34:47 +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
Roland Pesch
0e166a6353 Thanks to Zoo watchfulness:
(1) reflect current name of linker (now "ld", not "gld");
(2) fill in missing portion of a reference to full manual;
(3) fix old random typo spotted while proofing above.
1992-08-17 18:28:26 +00:00
Steve Chamberlain
6bf2e3a762 * ldlex.l: now parses comment correctly, added ~ to acceptable
chars in filenames

	* ldexp.c (exp_unop): pass down abs_output_section - now can have
	unary -ve constants.

	* ldlang.c (lang_finish): warn when an entry symbol supplied on
	the command line can't be found.
1992-08-13 19:16:49 +00:00
Roland Pesch
426fad1ef9 Include -N description (and include -N in synopsis). 1992-08-08 00:36:16 +00:00
Roland Pesch
246504a5c4 Restore docn for -N, now reintroduced into this generation of linker. 1992-08-08 00:31:17 +00:00
Steve Chamberlain
ae475b39b2 * ldlang.h: add new field "loadable" to output_section_statement.
* ldlang.c (lang_output_section_statement_lookup): initilize new
	field. (wild_doit): if new field is not set, then stop output
	section from being loadable.
	(lang_enter_output_section_statement): set the field from the
	NOLOAD keyword
	* ldgram.y: new synax for NOLOAD. Removes a shift/reduce too.
	* h8300hms.sc-sh, h8300hms.em: get -r right.
1992-08-07 19:34: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
David Henkel-Wallace
12ad398426 OSE stuff. 1992-07-23 19:01:34 +00:00
David Henkel-Wallace
3dfac3bc35 hp stuff. 1992-07-23 19:01:19 +00:00
K. Richard Pixley
ec467c8310 removed rcsids 1992-07-18 05:06:56 +00:00
Steve Chamberlain
67cddd9faf * ldlang.c (lang_map): print changes in sizes due to relaxing
(size_input_section): maintain the delta information.
	* ldlang.h: add new field to struct to contain delta info.
	* relax.c  (relax_section): complain if input not relaxable.
	* ldlex.l : add '_', ',' and '$' to chars which can appear at the
	start of a filename
1992-07-14 15:39:31 +00:00
Steve Chamberlain
f7c7689713 * ldmain.c(main): prevent -r and -relax from being on at the same
time.
1992-07-14 01:00:31 +00:00
David Henkel-Wallace
0b0b5dbac1 Support -program_suffix (and make -program_prefix actually work). 1992-07-10 18:37:35 +00:00
Steve Chamberlain
28b6b1ab85 , 1992-07-02 00:53:25 +00:00
Steve Chamberlain
be1627d309 Aliasing bug fixes 1992-07-02 00:53:14 +00:00
Steve Chamberlain
5cdea2ac20 Install into the right place for cross 1992-06-26 22:42:15 +00:00
Steve Chamberlain
30d1a3904f * h8300hms.em, h8300hms.sc-sh: do the right thing for -r
* ldexp.c:  lint
	* ldlang.c(open_output): set the target arch and machine as soon
	as we can. (lang_size_sections): use new macros for setting vma
	* ldwrite.c: lint
1992-06-18 16:42:46 +00:00
Steve Chamberlain
833ff6f0f7 hitachi bug gix 1992-06-16 17:12:59 +00:00
Steve Chamberlain
305d9b19c8 Bug fixes for Hitachi 1992-06-16 17:12:51 +00:00
Michael Tiemann
5bdf878ebf Accept m680?0 for wrs as vxworks68. Also deleted an unreachable path to wrs. 1992-06-15 15:49:30 +00:00
Steve Chamberlain
bb63f602dd Keep this just in case 1992-06-10 14:44:52 +00:00
Steve Chamberlain
e47bfa6305 *** empty log message *** 1992-06-08 17:14:18 +00:00
Steve Chamberlain
075d735996 lint 1992-06-08 17:14:10 +00:00
Steve Chamberlain
b257477fa0 *** empty log message *** 1992-06-08 17:09:57 +00:00
Steve Chamberlain
ee4af9e839 don't crash when provided empty symbol table 1992-06-08 17:09:40 +00:00
Steve Chamberlain
5e81edb2ec * ldgram.y, ldlex.l: parse ABSOLUTE
* ldexp.c: add support for ABSOLUTE
1992-05-27 22:18:50 +00:00
Per Bothner
52d6340e55 * config/*.mh: Miscellaneous clean-up: Removed definitions
of YACC (since it is not longer used in the Makefile).
	Remove HOSTING_* definitions that are subsumed by the
	ones added to Makefile.in.  Removed most definitions of CC.
	* config/{sparc,news,hp300bsd,decstation}.mh:  Removed;
	These are no longer needed.
1992-05-27 20:21:42 +00:00
Per Bothner
7aacc9cc02 * Makefile.in: Added default definitions for HOSTING_CRT0,
HOSTING_LIBS, and HOSTING_EMU, based on those in config/*.mh.
1992-05-27 20:20:47 +00:00
Steve Chamberlain
cf2623b060 Don't be too sanitary
(thanks Per)
1992-05-26 22:28:07 +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
Per Bothner
91e25b4f8f * ldlex.c: Fix some unnecessary flex-specific-isms. 1992-05-22 20:56:37 +00:00
Per Bothner
d219bf5068 * config/sparc.mh: Fix HOSTING_LIBS so it has a chance of working. 1992-05-22 20:48:50 +00:00
Steve Chamberlain
a1fb7cd400 Keep sa29200.mt 1992-05-08 15:14:38 +00:00
Roland Pesch
82d1666a7c Thu May 7 17:01:12 1992 Roland H. Pesch (pesch@fowanton.cygnus.com)
* ld.texinfo: references to linker now say "ld" not "gld".
1992-05-08 00:05:32 +00:00
Roland Pesch
7b0155478d @{ ... @} --> @code{ ... } 1992-05-07 19:54:26 +00:00
Steve Chamberlain
32846f9c3e changed calling convention for Q_enter_global_ref
* ldexp.c, ldlang.c, ldmain.c: reflect this
	* ldver.c: bump version to 1.97.1
	* ldindr.c (add_indirect): when an edict declaring an indirect
	symbol is found, make sure that any ideas about the symbol being
	common are changed if it now known to be defined.
	* ldmain.c (linear_library): complain once if archive isn't
	ranlibbed.
	* ldlang.h, ldlang.c: make room for and initialize the complain
	once field.
1992-05-06 20:31:01 +00:00
K. Richard Pixley
bf3acf4485 use flex & bison from ../ if they exist 1992-05-06 18:08:10 +00:00
Steve Chamberlain
7153b2ff71 *** empty log message *** 1992-05-06 01:08:02 +00:00
Steve Chamberlain
a72f4e5f84 * ldfile.c: merge in VMS filename support
* ldmain.c (main): take out ./ from library path, and close file
	before unlinking. Make multiple defs of a symbol create an
	unexecable file.
	* ldmisc.c: fatal errosrs delete output file
1992-05-06 01:07:05 +00:00
Steve Chamberlain
9c99a57eca * relax.c (build_it): don't allocate space in the output file for
stuff if -R flag applys to it.
1992-05-06 00:49:18 +00:00
Per Bothner
98377f31b7 * ldver.c: Increase version number to 1.97, for consistency with ../binutils. 1992-05-05 21:07:32 +00:00
K. Richard Pixley
813da1a517 FLEX -> LEX 1992-05-05 19:13:58 +00:00
K. Richard Pixley
3f350edad0 {} -> @{@} 1992-05-05 19:13:06 +00:00
Roland Pesch
e0047d4930 doc doc changes 1992-05-05 00:55:04 +00:00
Roland Pesch
2d59b2c30e Doc for MRI-compatible linker scripts. 1992-05-05 00:52:27 +00:00
Steve Chamberlain
bfbdc80f0a * ldver.c: Bumped version to 1.96 - new release, resync with the
bfd too #.
	* ldexp.c, ldlang.c: now build memory shape tree in obstacks
	rather than with raw malloc, makes it easier to track where memory
	is going.
	* ldsym.h, ldsym.c: create obstack for all global symbols too.
	* ldwrite.c (ldwrite): moved malloc so only used when needed.
	* sa29200-sc.sh: added support for .lit, data1 and data2 sections.
1992-05-04 23:38:42 +00:00
Steve Chamberlain
0fdf9f815b More 29200 stuff 1992-05-02 02:09:20 +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
Steve Chamberlain
51e6c7505f Add hp300bsd 1992-05-01 22:34:25 +00:00
Steve Chamberlain
a586b5bc64 Add mri.h 1992-05-01 22:08:40 +00:00
Steve Chamberlain
dc4726c236 lint 1992-05-01 20:09:44 +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
Steve Chamberlain
ee0c4cf7d1 * ldlex.l: added CMDFILENAMECHAR state so that you can lex
different sorts of filenames on the command line than in a script.
1992-04-22 19:55:15 +00:00
K. Richard Pixley
119afd7b5f tooldir copy of ld belongs directly in tooldir 1992-04-21 05:34:11 +00:00
Steve Chamberlain
0d3e45eab0 * relax.c: added handling for new "padding" seclet type, used to
fill out gaps between section.
	* ldgram.y, ldlex.l: now -defsym on the command line is done
	properly.
1992-04-17 15:59:37 +00:00
Steve Chamberlain
1bd1fa2ddb Lint found by Rich and gcc 1992-04-16 18:03:51 +00:00
Steve Chamberlain
b11a9b2866 added mri.c 1992-04-15 23:11:53 +00:00
Steve Chamberlain
2e38b71d27 Strange link script support 1992-04-15 23:11:09 +00:00
Steve Chamberlain
3d2b83ea49 Personal checkpoint - now should parse some MRI stuff 1992-04-15 22:23:33 +00:00
Sean Eric Fagan
b6422192ea Changed to allow hosting on an Apollo Series 400 under the BSD4.3 emulation
environment.
1992-04-14 21:32:34 +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
5531526a10 Fix for new filenames 1992-03-17 00:38:14 +00:00
Steve Chamberlain
d5a13d8ea0 i960 bitrot fix 1992-03-16 22:54:51 +00:00
K. Richard Pixley
f0280cd218 install man page too 1992-03-14 03:47:55 +00:00