FLEX -> LEX
[binutils-gdb.git] / ld / ChangeLog
1 Tue May 5 12:12:24 1992 K. Richard Pixley (rich@cygnus.com)
2
3 * Makefile.in: FLEX -> LEX.
4
5 * ld.texinfo: {} -> @{@}.
6
7 Mon May 4 17:52:41 1992 Roland H. Pesch (pesch@fowanton.cygnus.com)
8
9 * ld.texinfo: describe alternate, MRI-compatible linker scripts
10 (and associated change in -c option, now used for these scripts)
11
12 Mon May 4 16:10:10 1992 Steve Chamberlain (sac@thepub.cygnus.com)
13
14 * ldver.c: Bumped version to 1.96 - new release, resync with the
15 bfd too #.
16 * ldexp.c, ldlang.c: now build memory shape tree in obstacks
17 rather than with raw malloc, makes it easier to track where memory
18 is going.
19 * ldsym.h, ldsym.c: create obstack for all global symbols too.
20 * ldwrite.c (ldwrite): moved malloc so only used when needed.
21 * sa29200-sc.sh: added support for .lit, data1 and data2 sections.
22
23
24 Fri May 1 18:17:52 1992 K. Richard Pixley (rich@cygnus.com)
25
26 * config/sparc.mh: use ../gcc/libgcc.a on check if it exists.
27
28 * Makefile.in: use bootstrap for check.
29
30 Fri May 1 13:03:41 1992 Steve Chamberlain (sac@thepub.cygnus.com)
31
32 * ldgram.y, ldlex.c, mri.c: added more compatible words; BASE, ALIAS and
33 PUBLIC.
34 * Makefile.in: now use flex, not lex
35 * ldlex.l, ldlang.c, ldctor.c: lint
36
37 Wed Apr 22 12:48:42 1992 Steve Chamberlain (sac@thepub.cygnus.com)
38
39 * ldlex.l: added CMDFILENAMECHAR state so that you can lex
40 different sorts of filenames on the command line than in a script.
41
42 Mon Apr 20 22:37:04 1992 K. Richard Pixley (rich@rtl.cygnus.com)
43
44 * Makefile.in: rework CFLAGS so that they can be passed on the
45 make command line. Remove MINUS_G. Default CFLAGS to -g.
46
47 Fri Apr 17 08:57:17 1992 Steve Chamberlain (sac@thepub.cygnus.com)
48
49 * relax.c: added handling for new "padding" seclet type, used to
50 fill out gaps between section.
51 * ldgram.y, ldlex.l: now -defsym on the command line is done
52 properly.
53
54 Wed Apr 15 21:20:07 1992 K. Richard Pixley (rich@rtl.cygnus.com)
55
56 * Makefile.in: the tooldir copy of ld goes directly in tooldir.
57
58 Wed Apr 15 16:09:33 1992 Steve Chamberlain (sac@thepub.cygnus.com)
59
60 * mri.c, ldgram.y, ldlex.l: added support for minimal strange link
61 scripts.
62
63 Thu Apr 9 05:52:02 1992 Ken Raeburn (Raeburn@Cygnus.COM)
64
65 * Makefile.in (install): Install second copy in $(tooldir)/bin
66 without $(program_prefix), since that's what gcc expects.
67
68 Sat Apr 4 17:44:06 1992 Steve Chamberlain (sac@thepub.cygnus.com)
69
70 * ldlex.l, ldgram.y, ldlex.h: Rewrote lexer. Now it's much nicer.
71 * h8300*: fix bit rot and add support for h8300xray target
72 * go32.sh: target emulation for go32.
73
74 Mon Mar 16 14:53:29 1992 Steve Chamberlain (sac@rtl.cygnus.com)
75
76 * gld960.em, i960.sc-sh. Fix i960 bit rot
77
78 Fri Mar 13 19:47:22 1992 K. Richard Pixley (rich@cygnus.com)
79
80 * Makefile.in: install man page.
81
82 Fri Mar 13 08:23:59 1992 Steve Chamberlain (sac@thepub.cygnus.com)
83
84 * config/mt-<foo> renamed to <foo>.mt
85 * config/mh-<foo> renamed to <foo>.mt
86 * configure.in changed to reflect this
87 * genscripts.sh now make .xbn files rather than .xN files
88
89 Sat Mar 7 03:40:40 1992 K. Richard Pixley (rich@cygnus.com)
90
91 * ldver.h: fix decl of ldversion.
92
93 Fri Mar 6 22:00:35 1992 K. Richard Pixley (rich@cygnus.com)
94
95 * Makefile.in: added check target.
96
97 Fri Mar 6 06:59:04 1992 Steve Chamberlain (sac@thepub.cygnus.com)
98
99 * ldmain.c (Q_enter_file_symbols): now aliases work again
100
101 Thu Mar 5 21:39:29 1992 K. Richard Pixley (rich@cygnus.com)
102
103 * Makefile.in: added clean-info target.
104
105 Thu Mar 5 16:55:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
106
107 * ldexp.c (exp_print_tree): don't try and follow null pointers
108 around.
109 * ldgram.y: remove 11 shift reduce errors
110
111 Tue Mar 3 15:46:39 1992 K. Richard Pixley (rich@rtl.cygnus.com)
112
113 * Makefile.in: added tooldir and program_prefix.
114
115 Fri Feb 28 08:17:45 1992 Steve Chamberlain (sac at thepub.cygnus.com)
116
117 * ldlang.c (size_input_section): don't move absolute sections
118 around!
119
120
121 Thu Feb 27 09:20:41 1992 Steve Chamberlain (sac at thepub.cygnus.com)
122
123 * cplus-dem.c: yet another copy of this - maybe it should go into
124 libiberty ?
125 * ldgram.y: now -V and -v have different actions
126 * ldver.c: if -V, prints list of emulations compiled in
127 * ldmisc.c: support for cplus demangling
128
129
130 Wed Feb 26 18:04:40 1992 K. Richard Pixley (rich@cygnus.com)
131
132 * Makefile.in, configure.in: removed traces of namesubdir,
133 -subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
134 copyrights to '92, changed some from Cygnus to FSF.
135
136 Thu Feb 20 17:43:46 1992 Per Bothner (bothner at cygnus.com)
137
138 * Makefile.in: Change mkscript rule into one for ./mkscript
139 (for the sake of makes that don't realize they're the same).
140 * PORTING: Add more details.
141 * genscripts.sh: Add more tailorability of DATA_ALIGNMENT.
142
143 Mon Feb 17 12:04:36 1992 Per Bothner (bothner at cygnus.com)
144
145 * Makefile.in, and new files hp300bsd.sh, config/mh-hp300bsd,
146 config/mt-hp300bsd: New port to hp300 running BSD.
147
148 Sat Feb 15 13:59:54 1992 Per Bothner (bothner at cygnus.com)
149
150 Major rewrite of how ld is configured. The major idea
151 is to use shell scripts to generate everything.
152 * generic.em replaces ldtemplate.
153 * Other *.em files replace various *.c files.
154 A *.em file is a shell script that generates the corresponding
155 ld__*.c file that implements an emulation. This is usually
156 a straight 'cat' of a here-document, possibly with substitutions.
157 * Script files (*.sc) are places by *.sc-sh scripts.
158 Again, these are simple shell scripts that 'cat'
159 here-documents, usually with some substitutions.
160 The output a *.sc-sh is a script file.
161 * Each emulation is defined by a short shell script with
162 extension *.sh that specifies the emulation-specific
163 parameters (such as the name of the *.sh-sc and *.em
164 files to use).
165 * genscript.sh is the master shell script used to generate
166 an emulation. It is passed various argument, including
167 the name a the emulation-speciic *.sh file that it
168 "sources" to set variables to emulation-specifc parameters.
169 * config/mt-foo: Changed EMUL=GLDFOO_EMULATION_NAME
170 to EMUL=foo. (The GLDFOO_EMULATION_NAMEs have bee removed.)
171 * config/mh-foo: Rename LDEMULATION names as appropriate
172 (usually 'gldfoo' -> plain 'foo').
173 * ldwrite.c: Fixed a typo in a comment.
174 * Makefile.in: Major changes. Removed some the sed
175 magic to converts scripts, since that is now handled
176 by genscripts.sh and the *.sc-sh scipt generators.
177 * config.h: Remove a bunch of macros defining emulations
178 and targets. This becomes one less file to edit when
179 adding emulations or targets.
180 * ldemul.h (struct ld_emulation_xfer_struct): Add
181 emulation_name and target_name fields.
182 * ldemul.c, ldemul.h: Define some default functions used
183 by most emulations (and remove from the *.em scripts).
184 * ldemul.c (ldemul_choose_target): Search the new
185 ld_emulations array using a loop (instead of a hardwired
186 nested if statement).
187 Define the ld_emulation from the automatically-geenrated
188 ldemul-list.h. This means you no longer have to edit ldemul.c
189 to add a new emulation.
190 * ldmain.c: Replace {GLD,LNK}960_EMULATION_NAME by
191 their expansions, since the former no longer exist.
192 * PORTING: A very rough first draft of a porting guide.
193
194 * ldgram.y, ldlex.l, lexsup.c: Changes to allow an assignment
195 to be terminated by a new-line (instead of requiring a semicolon).
196
197 Mon Feb 10 16:21:02 1992 Steve Chamberlain (sac at rtl.cygnus.com)
198
199 * ldexp.c, ldlang.c: added new idea "abs_output_section", removes
200 tests for NULL pointers all over the place.
201 * ldlang.c (lang_process): remember to relocate global symbols
202 *after* relaxing has done it stuff.
203
204 Thu Feb 6 11:40:15 1992 Steve Chamberlain (sac at rtl.cygnus.com)
205
206 * config/mt-coff-h8300: use EMUL like everything else
207 * ldlang.c: (print_padding_statement): print the right address.
208 * Makefile.in, config.h, ldemul.c: renamed h8300hds to h8300hms
209
210
211 Tue Feb 4 15:28:01 1992 Steve Chamberlain (sac at rtl.cygnus.com)
212
213 * ldlex.l: Put pack -noinhibit-exec and -sort-common
214 * ldlang.c (print_data_statement): print the right address.
215
216 Thu Jan 30 17:51:53 1992 Per Bothner (bothner at cygnus.com)
217
218 * Makefile.in: The rule for testing ld by re-linking itself
219 via an intermediate -r link was moved to the ld1 rule
220 instead of the ld2 rule. This allows ld2 and ld3 to be identical,
221 which allows the bootstrap rule to work.
222 * ldctor.c (find_constructors): Don't create a constructor
223 list if it is already defined (as would happen if ld is
224 invoked by collect).
225
226 Wed Jan 29 08:35:39 1992 Steve Chamberlain (sac at rtl.cygnus.com)
227
228 * config/mh-sparc.h: now uses libgcc.a
229 * ldmain.c: quit using exit
230 * *sc: use *(COMMON) rather than [COMMON]
231 * ldlex.l, lexsup.c: much thinking moved from .l and put into .c,
232 to allow preprocessing of .l file.
233 * Makefile.in: New ldlex.l mangling
234 * ldexp.c (fold_binary): perform expressions with % and / in
235 integer.
236 * ldfile.c (open_a): open archives on VMS in a special way
237
238
239 Tue Jan 28 10:18:16 1992 Steve Chamberlain (sac at rtl.cygnus.com)
240
241 * ldgram.y: map -M behave in the same way as -Map (sets file name
242 to be "-".
243 * ldsym.c, ldlang.c: remember that size of a section is dependent on
244 whether or not relaxing has been done.
245 * ldmain.c: don't open a map file if it doesn't have a name
246 * relax.c: all the brains have moved into bfd.
247 * ldwrite.c: ammend comment
248
249 Fri Jan 24 14:23:46 1992 Steve Chamberlain (sac at rtl.cygnus.com)
250
251 * Makefile.in: added relax, also made three stage go through a
252 partial link stage.
253 * relax.c : added
254 * config.h: if GNU960 defined, then default emulation mode is
255 GLD960
256 * ldexp.h, ldexp.c: map to file hooks
257 * ldlang.c: map to file hooks
258 * ldgram.y: added -Map -relax
259 * ldlex.l: added -relax, -Map
260 * ldmain.c: open map file
261 * ldmisc.c: support for map file
262 * ldwrite.c: new relax magic
263
264 Thu Dec 19 18:49:51 1991 John Gilmore (gnu at cygnus.com)
265
266 * Makefile.in, config/tm-*.h: Clean up make output, only
267 pass DEFAULT_EMULATION to ldmain.c.
268
269 Wed Dec 18 15:02:47 1991 Per Bothner (bothner at cygnus.com)
270
271 * ldver.c: Bump to version 1.94.
272
273 Tue Dec 10 04:07:23 1991 K. Richard Pixley (rich at rtl.cygnus.com)
274
275 * Makefile.in: infodir belongs in datadir.
276
277 Mon Dec 9 16:26:43 1991 Per Bothner (bothner at cygnus.com)
278
279 * Makefile.in: Pass -y to bison. (Again;
280 accidentally deleted by Rich.)
281 * news.sc, ldgld68k.sc: Define __end as well as _end.
282
283 Sat Dec 7 17:19:26 1991 Steve Chamberlain (sac at rtl.cygnus.com)
284
285 * ldindr.h: added to contain prototypes of ldindr.c
286 * ldfile.c: include ctype.h
287 * ldmain.c: include the requried prototype headers
288 * ldwrite.c: get_reloc_upper_bound has been renamed
289 bfd_get_reloc_upper_bound
290
291 Fri Dec 6 23:29:26 1991 K. Richard Pixley (rich at rtl.cygnus.com)
292
293 * Makefile.in: punt "fundamental" mode because it breaks my emacs
294 macros. install using INSTALL_PROGRAM and INSTALL_DATA. remove
295 spaces following hyphens, bsd make can't cope. added
296 standards.text support and made it look like all the other
297 makefiles.
298
299 * configure.in: configure now runs entirely in objdir so make file
300 existence checks against ${srcdir}. Mark this directory as
301 target dependent.
302
303 Thu Dec 5 22:46:16 1991 K. Richard Pixley (rich at rtl.cygnus.com)
304
305 * Makefile.in: idestdir and ddestdir go away. Added copyrights
306 and shift gpl to v2. Added ChangeLog if it didn't exist. docdir
307 and mandir now keyed off datadir by default.
308
309 Wed Dec 4 23:36:55 1991 Per Bothner (bothner at cygnus.com)
310
311 * ldver.c: Bumped version to 1.93.
312 * Makefile.in: Pass -y to bison.
313
314 Mon Nov 25 18:28:40 1991 Steve Chamberlain (sac at cygnus.com)
315
316 * config.h: h8 is now coff, not ieee
317 * h8300hds.sc: reflect the same
318
319 Thu Nov 14 19:55:09 1991 Per Bothner (bothner at cygnus.com)
320
321 * ldver.c (ldversion()): Update to 1.92.
322 * ldctor.c: There are two places constructor sets
323 can be defined. One of them checked for an existing
324 duplicate, the other didn't. Unfortunately, the latter
325 was called after the former ...
326 So, factor out code for inserting a new element into
327 constructor_name_list (after checking for a duplicate)
328 into a new function add_constructor_name, and call
329 it from both aforementioned places (ldlang_add_constructor
330 and ldlang_check_for_constructors).
331
332 Wed Nov 13 15:17:43 1991 Per Bothner (bothner at cygnus.com)
333
334 * Makefile.in: Rename .c files generated from ldtemplate
335 to have names starting with ld__. This helps 'make clean'.
336
337 Tue Nov 12 18:36:50 1991 Steve Chamberlain (sac at cygnus.com)
338
339 * Makefile.in: Take out the version number for install
340 * m88kbcs.sc: put in contructor blocks.
341
342 Mon Nov 11 18:47:33 1991 Per Bothner (bothner at cygnus.com)
343
344 * ldmisc.c, ldmisc.h: Re-write info() to take a filename
345 parameter, a format, and an arg pointer, and rename it to
346 vfinfo(). Write info() in terms of new vfinfo().
347 New einfo() is the same as info(), except it writes to stderr.
348 * ldemul.c, ldexp.c, ldlang.c, ldlnk960.c, ldmain.c, ldwrite.c,
349 ldmisc.c: Replace "error" calls to info() by new einfo().
350
351 Mon Nov 11 09:57:32 1991 Steve Chamberlain (steve at cygnus.com)
352
353 * ldlex.l ldgram.y: made -V option do same as -v
354 * Makefile.in: Added $(MINUS_G) flag so debugging can be
355 turned off
356
357 Sun Nov 3 16:37:37 1991 Steve Chamberlain (steve at cygnus.com)
358 i386 aout changes from Bob Kukura
359 * Makefile.in, config.h: added i386aout support
360 * configure.in: fixed /h-{myhost} typo
361 * ldgram.y: -MM now gives more boring map.
362 * ldlang.c: now does D_PAGED flag the right way.
363 * ldsym.c: -MM flags does the right thing.
364
365 Sun Nov 3 15:00:03 1991 Per Bothner (bothner at cygnus.com)
366
367 * configure.in: Fixed typo. Also, a fix for hp300bsd.
368 * ldlang.c (init_os): Compensate for BFD change,
369 where bfd_make_section now returns NULL for a duplicate
370 section request, instead of the old section.
371
372 Thu Oct 17 15:27:13 1991 Per Bothner (bothner at cygnus.com)
373
374 * ldver.c: Bump to version 1.91 (consistent with binutils).
375
376 Wed Oct 16 12:27:08 1991 Per Bothner (bothner at cygnus.com)
377
378 * Makefile.in, config.h, ld.h, ldemul.c, ldexp.c, ldexp.h,
379 ldgram.y, ldlex.l, ldlnk960.c, ldmain.c, ldmisc.c, ldmisc.h,
380 ldsym.c, ldsym.h, ldtemplate, ldvanilla.c, ldver.c, ldver.h,
381 ldwarn.c, ldwarn.h, ldwrite.c, ldwrite.h, mkscript.c:
382 Add or update copyright notices.
383
384 Mon Oct 14 23:55:27 1991 Per Bothner (bothner at cygnus.com)
385
386 * README: New file.
387 * Makefile.in: Changed installation directory name scheme
388 to be consistent with gcc. Also changed 'install'.
389
390 Mon Oct 14 17:30:02 1991 Roland H. Pesch (pesch at cygnus.com)
391
392 * Makefile.in: new targets ld.mm, ld.me
393
394 Mon Oct 14 17:27:24 1991 Per Bothner (bothner at cygnus.com)
395
396 * Makefile.in, ldtemplate: Need to use separate scripts
397 for -n and -N options. Yet more complication.
398
399 Fri Oct 11 22:40:46 1991 John Gilmore (gnu at cygnus.com)
400
401 * Makefile.in: Avoid using $< in explicit Make rules (it doesn't
402 work). Add some lines to avoid Sun Make VPATH bugs.
403
404 Fri Oct 11 16:42:22 1991 Per Bothner (bothner at cygnus.com)
405
406 * news.sc: Add alignment for data segment.
407 * ldtemplate: Add (yet another) script to get for -n or -N
408 options. (These need different alignment than ZMAGIC files.)
409 * Makefile.in: Add stuff for new foo.xn scripts.
410 These are generated by replacing "ALIGN(0x...00)" by ".".
411
412 Fri Oct 11 15:43:04 1991 Roland H. Pesch (pesch at cygnus.com)
413
414 * Makefile.in: new targets ld.ms, ld-index.ms
415 ld.texinfo: remove tabs, other cleanups for texi2roff
416
417 Fri Oct 11 13:51:54 1991 Per Bothner (bothner at cygnus.com)
418
419 * ldmain.c (main): Make config.magic_demand_paged be true
420 by default. Don't the WP_TEXT and D_PAGED flags of
421 output_bfd here; it's too late, so set it when output_bfd
422 is created (in ldlang.c). Also fix setting of EXEC_P flag
423 * ldlang.c (ldlang_open_output): Set output_bfd->flags here.
424 * ldlang.c: Remove some duplicate extern declarations.
425 * ldgram.y: Fixes to -N and -n options.
426 * Makefile.in: Recognize upper case letters in sed script
427 to remove assignments from script files.
428 * ldtemplate: Don't assukme that -N or -n options
429 imply use of -r script.
430 * mkscript.c: Tweaking to correctly handle \n and \\ in input.
431
432 Fri Oct 11 10:29:27 1991 Steve Chamberlain (steve at cygnus.com)
433
434 * ldtemplate: include bfd.h before sysdep.h.
435
436 Fri Oct 11 04:24:45 1991 John Gilmore (gnu at cygnus.com)
437
438 Restructure configuration scheme for bfd, binutils, ld.
439
440 * include/sys/h-*.h: Move to bfd/hosts/h-*.h.
441 * configure.in: Revise to symlink sysdep.h to ../bfd/hosts/h-xxx.h.
442 Change some config names to match other dirs.
443 * *.c: Include bfd.h before sysdep.h, so ansidecl and PROTO()
444 get defined first.
445 * config/: Rename some config files to match up h-*.h names.
446 Remove all the HOST_SYS definitions from the config files.
447
448 Tue Oct 8 16:00:57 1991 Per Bothner (bothner at cygnus.com)
449
450 * ldexp.h, ldlang.h: Change enum boolean -> enum bfd_boolean.
451 * ldtemplate: Remove ldfile_add_library_path calls;
452 just use the SEARCH_DIR commands in the script files.
453 * Makefile.in: Add LIB_PATH macro, which if set is used to replace
454 the SEARCH_DIR commands in the scripts (using ugly sed magic).
455 This is primarily intended for cross-linking, where you would
456 place libaries in a different place than native libraries.
457 Also, emulations made from ldtemplate now use $(srcdir).
458 * ldglda29k.sc: Change SEARCH_DIR commands to a conventional
459 form; people can use the Makefile's LIB_PATH to override.
460
461 Tue Oct 8 14:51:21 1991 Roland H. Pesch (pesch at cygnus.com)
462
463 * Makefile.in: fix target ld.dvi, add target ld.info
464 ld.texinfo: make info filename ld.info
465
466 Fri Oct 4 21:51:58 1991 John Gilmore (gnu at cygnus.com)
467
468 * Makefile.in: Avoid using $< in non-suffix rules (breaks on Sun
469 Make).
470 * ldfile.c, ldlang.c, ldmain.c, ldwrite.c: Cope with renames of a
471 few BFD types & enums.
472