Extend --copy-dt-needed-entries to creating DSO
[external/binutils.git] / ld / ChangeLog
1 2012-12-05  H.J. Lu  <hongjiu.lu@intel.com>
2
3         PR ld/14915
4         * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Also
5         check DT_NEEDED entries when creating shared object with
6         --copy-dt-needed-entries.
7
8 2012-12-05  Leif Ekblad  <leif@rdos.net>
9
10         * configure.tgt: Add x86_64-*-rdos.
11
12 2012-12-03  H.J. Lu  <hongjiu.lu@intel.com>
13
14         PR ld/14904
15         * ldmain.c (main): Don't check plugin_load_plugins return.
16
17         * lexsup.c (parse_args): Don't check plugin_opt_plugin return.
18
19         * plugin.c (dlerror): New.  Defined if HAVE_DLFCN_H isn't
20         defined.
21         (plugin_opt_plugin): Change return type to void.  Stop on
22         dlopen error and report error with dlerror ().
23         (plugin_load_plugins): Change return type to void.  Stop on
24         dlsym error and report error with dlerror ().  Don't use
25         set_plugin_error.
26         (plugin_call_cleanup): Issue an error for each plugin.
27
28         * plugin.h (plugin_opt_plugin): Change return type to void.
29         (plugin_load_plugins): Likewise.
30
31 2012-11-30  Joern Rennecke <joern.rennecke@embecosm.com>
32
33         * scripttempl/epiphany_4x4.sc, emulparams/elf32epiphany_4x4.sh: Add.
34         * emultempl/epiphanyelf_4x4.em: Likewise.
35         * configure.tgt: Add elf32epiphany_4x4 support.
36         * Makefile.am: Likewise.
37         * Makefile.in: Regenerate.
38
39 2012-11-29  Maciej W. Rozycki  <macro@codesourcery.com>
40
41         * Makefile.in: Regenerate.
42
43 2012-11-27  Nick Clifton  <nickc@redhat.com>
44
45         PR ld/14776
46         * ld.texinfo: Fix spelling mistakes.
47
48 2012-11-26  Roland McGrath  <mcgrathr@google.com>
49
50         * emultempl/aarch64elf.em (gld${EMULATION_NAME}_before_parse):
51         Copy last elf32.em here too.
52         * emultempl/armelf.em (gld${EMULATION_NAME}_before_parse): Likewise.
53         * emultempl/mmixelf.em (gld${EMULATION_NAME}_before_parse): Likewise.
54         * emultempl/scoreelf.em (gld${EMULATION_NAME}_before_parse): Likewise.
55
56 2012-11-21  Roland McGrath  <mcgrathr@google.com>
57
58         * ld.h (ld_config_type): New flag member separate_code.
59         * emultempl/elf32.em
60         (gld${EMULATION_NAME}_before_parse): Set it based on $SEPARATE_CODE.
61         * ldlang.c (ldlang_override_segment_assignment): If it's set, then
62         always return TRUE when SEC_CODE differs between the sections.
63
64 2012-11-20  H.J. Lu  <hongjiu.lu@intel.com>
65
66         * ld.texinfo: Document "-z global".
67
68         * emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Support
69         "-z global".
70         (gld${EMULATION_NAME}_list_options): Likewise.
71
72 2012-11-15  Maxim Kuvyrkov  <maxim@codesourcery.com>
73
74         Port lib32 arrangement from Debian.
75         * emulparams/elf_i386.sh: Include lib32 directories in library search
76         path.
77
78 2012-11-15  Simon Baldwin  <simonb@google.com>
79
80         * ldmain.c (main): Add start_sbrk set to sbrk(0) on entry.
81         On exit, compute data size as the delta between current
82         sbrk(0) and start_sbrk.
83
84 2012-11-09  Nick Clifton  <nickc@redhat.com>
85
86         * emultempl/rxelf.em (no_flag_mismatch_warnings): Initialise to
87         true.
88         (PARSE_AND_LIST_LONGOPTS): Add flag-mismatch-warnings.
89         (PARSE_AND_LIST_ARG_CASES): Add support for
90         --flag-mismatch-warnings.
91
92         * Makefile.am: (ALL_EMULATION_SOURCES): Add ev850_rh850.c.
93         * Makefile.in: Regenerate.
94         * configure.tgt (v850*-*-*): Make v850_rh850 the default
95         emulation. Add vanilla v850 as an extra emulation.
96         * emulparams/v850_rh850.sh: New file.
97         * scripttempl/v850_rh850.sc: New file.
98
99 2012-11-09  Edgar E. Iglesias <edgar.iglesias@gmail.com>
100
101         * Makefile.am: Add eelf32microblazeel.c and eelf32mbel_linux.c.
102         * Makefile.in: Regenerated.
103         * configure.tgt: Add microblazeel and set endian per target.
104         * emulparams/elf32mb_linux.sh: Add OUTPUT_FORMAT.
105         * emulparams/elf32microblaze.sh: Likewise.
106         * emulparams/elf32mbel_linux.sh: New file.
107         * emulparams/elf32microblazeel.sh: Likewise.
108
109 2012-11-09  H.J. Lu  <hongjiu.lu@intel.com>
110
111         * testplug.c (record_add_file): Remove trailing redundant `;'.
112
113 2012-11-05  Alan Modra  <amodra@gmail.com>
114
115         * configure.in: Apply 2012-09-10 change to config.in here.
116
117 2012-11-01  Nathan Sidwell  <nathan@codesourcery.com>
118
119         * emultempl/elf32.em: Print stacksize help.
120
121 2012-11-01  Alan Modra  <amodra@gmail.com>
122
123         * ldlang.c (insert_pad): Correct output section size calculation.
124         (lang_size_sections_1): Likewise for lang_data_statement and
125         lang_reloc_statement.
126
127 2012-10-29  Alan Modra  <amodra@gmail.com>
128
129         * configure.tgt (powerpcle-pe,winnt,cygwin): Add deffilep.o
130         and pe-dll.o.
131
132 2012-10-24  H.J. Lu  <hongjiu.lu@intel.com>
133
134         * ld.h (command_line): Remove
135         disable_target_specific_optimizations.
136         (RELAXATION_DISABLED_BY_DEFAULT): Removed.
137         (RELAXATION_DISABLED_BY_USER): Likewise.
138         (RELAXATION_ENABLED): Likewise.
139         (DISABLE_RELAXATION): Likewise.
140         (ENABLE_RELAXATION): Likewise.
141
142         * ldmain.c (main): Updated.
143
144         * ldmain.h (RELAXATION_DISABLED_BY_DEFAULT): New macro.
145         (RELAXATION_DISABLED_BY_USER): Likewise.
146         (RELAXATION_ENABLED): Likewise.
147         (DISABLE_RELAXATION): Likewise.
148         (ENABLE_RELAXATION): Likewise.
149
150 2012-10-23  Nathan Sidwell  <nathan@codesourcery.com>
151
152         * ld.texinfo (stack-size): New option.
153         * emultempl/elf32.em: Add stack-size option.
154
155 2012-10-22  Jan Beich  <jbeich@tormail.org>
156             Alan Modra  <amodra@gmail.com>
157
158         PR ld/14426
159         * ldlex.h (option_values): Add OPTION_IGNORE_UNRESOLVED_SYMBOL.
160         * lexsup.c (parse_args): Likewise.
161         (ld_options): Describe --ignore-unresolved-symbol.
162         * ldmain.h (add_ignoresym): Declare.
163         * ldmain.c (add_ignoresym): New function, extracted from..
164         (undefined_symbol): ..here.  Return if the symbol is in ignore_hash.
165         (constructor_callback): Don't use global link_info here.
166         (reloc_overflow): Likewise.
167
168 2012-10-22  Alan Modra  <amodra@gmail.com>
169
170         * plugin.c (plugin_load_plugins): Warning fix.
171
172 2012-10-18  Kai Tietz  <ktietz@redhat.com>
173
174         PR binutils/14067
175         * NEWS: Menition new feature.
176         * scripttempl/pep.sc: Add zdebug sections.
177         * scripttempl/pe.sc: L
178
179 2012-09-19  Steve Ellcey  <sellcey@mips.com>
180
181         * configure.tgt: Add mips*-mti-elf* target.
182
183 2012-09-17  Alan Modra  <amodra@gmail.com>
184
185         * ld.texinfo (Expression Section): Correct description of
186         conversions for a binary operation involving an absolute symbol
187         and a number.
188
189 2012-09-14  David Edelsohn  <dje.gcc@gmail.com>
190
191         * configure: Regenerate.
192
193 2012-09-13  Anthony Green  <green@moxielogic.com>
194
195         * emulparams/elf32moxie.sh (BIG_OUTPUT_FORMAT,
196         LITTLE_OUTPUT_FORMAT): Define.
197         (OUTPUT_FORMAT): Change to elf32-bigmoxie.
198         (EMBEDDED): Define.
199
200 2012-09-12  DJ Delorie  <dj@redhat.com>
201
202         * emulparams/elf32rx.sh (OTHER_READONLY_SECTIONS): Add W_* sections.
203
204 2012-09-10  Matthias Klose  <doko@ubuntu.com>
205
206         * config.in: Disable sanity check for kfreebsd.
207
208 2012-09-10  H.J. Lu  <hongjiu.lu@intel.com>
209
210         * configure: Regenerated.
211
212 2012-09-10  Iain Sandoe  <iain@codesourcery.com>
213             Alan Modra  <amodra@gmail.com>
214
215         * configure.tgt (powerpc-*-elf, et al): Define targ_extra_libpath.
216         Correct whitespace.
217         (powerpcle-*-elf, et al): Likewise.  Correct targ_extra_emuls.
218
219 2012-09-10  Iain Sandoe  <iain@codesourcery.com>
220
221         * configure.tgt (powerpc-*-elf, et al): Define targ64_extra_emuls
222         and targ64_extra_libpath.
223         (powerpcle-*-elf, et al): Likewise.
224
225 2012-09-09  Hans-Peter Nilsson  <hp@bitrange.com>
226
227         * emultempl/mmo.em (mmo_place_orphan): Rewrite to also attach
228         orphan sections to .data and .bss output sections, not just .text.
229         When giving up on finding a suitable output section, attach to any
230         output section other than .MMIX.reg_contents, if it exists.
231         * scripttempl/mmo.sc: Move output debug sections to just before
232         .MMIX.reg_contents.  Add .gnu.attributes.  Add new . = . NOP
233         assignments and move end-of-section provide-symbols after them
234         to force the end-of-section symbols to the address after orphan
235         placement.  Add SORT_NONE to .init and .fini sections.
236
237 2012-08-30  H.J. Lu  <hongjiu.lu@intel.com>
238
239         PR ld/14525
240         * scripttempl/elf.sc: Also provide __executable_start for PIE.
241
242 2012-08-17  Kai Tietz  <ktietz@redhat.com>
243
244         PR ld/14326
245         * scripttempl/pe.sc: Add _etext symbol.
246
247 2012-08-14  Nick Clifton  <nickc@redhat.com>
248
249         * configure.in (ALL_LINGUGAS): Add uk.
250         * configure: Regenerate.
251         * po/uk.po: New Ukranian translation.
252
253 2012-08-13  Ian Bolton  <ian.bolton@arm.com>
254             Laurent Desnogues  <laurent.desnogues@arm.com>
255             Jim MacArthur  <jim.macarthur@arm.com>
256             Marcus Shawcroft  <marcus.shawcroft@arm.com>
257             Nigel Stephens  <nigel.stephens@arm.com>
258             Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
259             Richard Earnshaw  <rearnsha@arm.com>
260             Sofiane Naci  <sofiane.naci@arm.com>
261             Tejas Belagod  <tejas.belagod@arm.com>
262             Yufeng Zhang  <yufeng.zhang@arm.com>
263
264         * Makefile.am: Add AArch64.
265         * Makefile.in: Regenerate.
266         * configure.tgt: Add AArch64.
267         * emulparams/aarch64elf.sh: New file.
268         * emulparams/aarch64elfb.sh: New file.
269         * emulparams/aarch64linux.sh: New file.
270         * emulparams/aarch64linuxb.sh: New file.
271         * emultempl/aarch64elf.em: New file.
272         * NEWS: Mention the new feature.
273
274 2012-08-09  Nick Clifton  <nickc@redhat.com>
275
276         * po/vi.po: Updated Vietnamese translation.
277
278 2012-08-07  Daniel Green  <venix1@gmail.com>
279
280         * scripttempl/pe.sc (R_TLS): Add .tls$AAA and .tls$ZZZ.
281         * scripttempl/pep.sc (R_TLS): Add .tls$AAA and .tls$ZZZ.
282
283 2012-08-07  Nick Clifton  <nickc@redhat.com>
284
285         * po/ja.po: Updated Japanese translation.
286
287 2012-08-06  Maciej W. Rozycki  <macro@codesourcery.com>
288
289         * emulparams/elf32bmip.sh: Make _gp hidden.
290         * emulparams/elf32bmipn32-defs.sh: Likewise.
291         * emulparams/elf32mipswindiss.sh: Likewise.
292         * scripttempl/mips.sc: Likewise.
293
294 2012-08-06  Maciej W. Rozycki  <macro@codesourcery.com>
295
296         * ldexp.h (etree_union): Add defsym member to the assign member
297         structure.
298         (exp_assign): Add hidden argument to prototype.
299         * ldexp.c (exp_fold_tree_1): Use the defsym member to handle
300         --defsym symbols.
301         (exp_assop): Add defsym argument, initialize the defsym member
302         of the assign structure.
303         (exp_assign): Handle hidden symbols.
304         (exp_defsym): Update to use the defsym argument to exp_assop.
305         (exp_provide): Update to handle the defsym argument to exp_assop.
306         * ldlex.l (HIDDEN): New token.
307         * ldgram.y (HIDDEN): Likewise.
308         (assignment, section): Update calls to exp_assign.
309         * ldctor.c (ldctor_build_sets): Likewise.
310         * mri.c (mri_format): Likewise.
311         * ldlang.c (lang_insert_orphan, lang_leave_overlay): Likewise.
312         (open_input_bfds): Remove --defsym symbols special case.
313         * emultempl/beos.em (gld_${EMULATION_NAME}_set_symbols): Update
314         call to exp_assign.
315         * emultempl/pe.em (gld_${EMULATION_NAME}_set_symbols): Likewise.
316         * emultempl/pep.em (gld_${EMULATION_NAME}_set_symbols): Likewise.
317         * emultempl/spuelf.em (spu_place_special_section): Likewise.
318         * emultempl/xtensaelf.em (ld_xtensa_insert_page_offsets):
319         Likewise.
320         * ld.texinfo (Assigning Values to Symbols): Add HIDDEN.
321         (HIDDEN): New subsection.
322
323 2012-07-31  H.J. Lu  <hongjiu.lu@intel.com>
324
325         PR ld/14156
326         * ldlang.c (wild_sort): Properly handle by_none.
327
328         * scripttempl/elf.sc: Add SORT_NONE to .init and .fini sections.
329         * scripttempl/elf32msp430.sc: Likewise.
330         * scripttempl/elf32msp430_3.sc: Likewise.
331         * scripttempl/elfd10v.sc: Likewise.
332         * scripttempl/elfd30v.sc: Likewise.
333         * scripttempl/elfxtensa.sc: Likewise.
334
335 2012-07-30  Nick Clifton  <nickc@redhat.com>
336
337         * po/ld.pot: Updated template.
338         * po/bg.po: Updated Bulgarian translation.
339         * po/es.po: Updated Spanish translation.
340         * po/fi.po: Updated Finnish translation.
341
342 2012-07-27  Mike Frysinger  <vapier@gentoo.org>
343
344         * configure.in (BFD_VERSION): Run bfd/configure --version and
345         parse the output of that.
346         * configure: Regenerate.
347
348 2012-07-27  Tristan Gingold  <gingold@adacore.com>
349
350         * NEWS: Add marker for 2.23.
351
352 2012-07-24  Jan Waclawek <konfera@efton.sk>
353
354         PR ld/14058
355         * emultempl/avrelf.em (avr_elf_after_allocation): Call
356         elf32_avr_size_stubs with is_prealloc_run as TRUE.
357
358 2012-07-13  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
359
360         * emulparams/elf_s390.sh (IREL_IN_PLT): Define.
361         * emulparams/elf64_s390.sh (IREL_IN_PLT): Define.
362
363 2012-07-13  Nick Clifton  <nickc@redhat.com>
364
365         PR ld/14357
366         * ldmain.c (trace_file_tries): Rename to 'verbose'.
367         * ldfile.c: Likewise.
368         * ldlang.c: Likewise.
369         * ldmain.h: Likewise.
370         * lexsup.c: Likewise.
371         * emultempl/elf32.em: Likewise.
372         * emultemp/spuelf.em: Likewise.
373         * pe-dll.c (pe_dll_generate_implib): Only print creation message
374         in verbose mode.
375
376 2012-07-10  H.J. Lu  <hongjiu.lu@intel.com>
377
378         PR ld/14156
379         * NEWS: Mention SORT_NONE.
380
381         * ld.h (sort_type): Add by_none.
382
383         * ld.texinfo: Document SORT_NONE.
384
385         * ldgram.y: Handle SORT_NONE.
386
387         * ldlang.c (update_wild_statements): Handle by_none.  Don't
388         sort .init/.fini sections.
389
390         * ldlex.l: Add SORT_NONE.
391
392 2012-07-02  H.J. Lu  <hongjiu.lu@intel.com>
393
394         * ld.texinfo: Replace __end_SECNAME with __stop_SECNAME.
395
396 2012-06-29  Nick Clifton  <nickc@redhat.com>
397
398         * scripttempl/alphavms.sc: Add .debug_macro section.
399         * scripttempl/elf.sc: Likewise.
400         * scripttempl/elf64hppa.sc: Likewise.
401         * scripttempl/elf_chaos.sc: Likewise.
402         * scripttempl/elfxtensa.sc: Likewise.
403         * scripttempl/ia64vms.sc: Likewise.
404
405         * scripttempl/armbpabi.sc: Add .debug_pubtypes, .debug_ranges and
406         .debug_macro sections.
407         * scripttempl/avr.sc: Likewise.
408         * scripttempl/elf32cr16.sc: Likewise.
409         * scripttempl/elf32crx.sc: Likewise.
410         * scripttempl/elf32msp430.sc: Likewise.
411         * scripttempl/elf32msp430_3.sc: Likewise.
412         * scripttempl/elf32sh-symbian.sc: Likewise.
413         * scripttempl/elfd30v.sc: Likewise.
414         * scripttempl/elfi370.sc: Likewise.
415         * scripttempl/elfm68hc11.sc: Likewise.
416         * scripttempl/elfm68hc12.sc: Likewise.
417         * scripttempl/elfxgate.sc: Likewise.
418         * scripttempl/i386beos.sc: Likewise.
419         * scripttempl/i386go32.sc: Likewise.
420         * scripttempl/ip2k.sc: Likewise.
421         * scripttempl/iq2000.sc: Likewise.
422         * scripttempl/mep.sc: Likewise.
423         * scripttempl/mmo.sc: Likewise.
424         * scripttempl/v850.sc: Likewise.
425         * scripttempl/xstormy16.sc: Likewise.
426
427 2012-06-28  H.J. Lu  <hongjiu.lu@intel.com>
428
429         * ldlang.c (update_wild_statements): Remove redundant statement.
430
431 2012-06-25  Alan Modra  <amodra@gmail.com>
432
433         * ldlang.c (load_symbols): Close file and set flags.loaded
434         after parsing script file.
435         (open_input_bfds): Don't segv on closed script.
436
437 2012-06-24  H.J. Lu  <hongjiu.lu@intel.com>
438
439         * configure.tgt: Enable elf_k1om for x86_64-*-linux-gnux32.
440         Remove x32 in tdir_i386linux and tdir_elf_i386.
441
442 2012-06-22  Roland McGrath  <mcgrathr@google.com>
443
444         * NEWS: Mention __ehdr_start.
445
446 2012-06-21  Alan Modra  <amodra@gmail.com>
447
448         * ldlang.c (lang_insert_orphan): Don't make __start_<sec> symbol
449         absolute, and remove unnecessary alignment.
450
451 2012-06-16  Alan Modra  <amodra@gmail.com>
452
453         * ldlang.h (lang_output_section_statement_type): Add after_end field.
454         (lang_abs_symbol_at_beginning_of, lang_abs_symbol_at_end_of): Delete.
455         (section_for_dot): Declare.
456         * ldlang.c (lang_size_sections_1): Correct comment.
457         (current_section): Move earlier.
458         (current_assign, prefer_next_section): New static vars.
459         (lang_do_assignments_1): Add found_end param.  Detect _end
460         assignment to set found_end.  Set os->after_end.  Set above statics.
461         (lang_do_assignments): Adjust lang_do_assignments_1 call.  Init
462         vars.
463         (section_for_dot): New function.
464         (lang_set_startof): Don't make an absolute symbol.
465         (lang_abs_symbol_at_beginning_of, lang_abs_symbol_at_end_of): Delete.
466         * ldexp.c (new_rel_from_abs): Use section_for_dot.
467         * emultempl/lnk960.em (symbol_at_beginning_of): New function.
468         (symbol_at_end_of): Likewise.
469         (lnk960_after_allocation): Use them.
470         * scripttempl/elf.sc: Precede OTHER_GOT_SYMBOLS with . = .; and
471         likewise before __bss_start.
472
473 2012-06-14  H.J. Lu  <hongjiu.lu@intel.com>
474
475         * plugin.c (set_tv_header): Handle link_info.pie.
476
477 2012-06-11  Alan Modra  <amodra@gmail.com>
478
479         PR ld/14215
480         * ldexp.c (fold_name <SIZEOF, ALIGNOF>): Allow forward section
481         references.
482         * emulparams/elf32_x86_64.sh (SEPARATE_GOTPLT): Depend on size of
483         .got.plt.
484         * emulparams/elf32mb_linux.sh (SEPARATE_GOTPLT): Likewise.
485         * emulparams/elf32tilegx.sh (SEPARATE_GOTPLT): Likewise.
486         * emulparams/elf32tilepro.sh (SEPARATE_GOTPLT): Likewise.
487         * emulparams/elf64tilegx.sh (SEPARATE_GOTPLT): Likewise.
488         * emulparams/elf_i386.sh (SEPARATE_GOTPLT): Likewise.
489         * emulparams/elf_k1om.sh (SEPARATE_GOTPLT): Likewise.
490         * emulparams/elf_l1om.sh (SEPARATE_GOTPLT): Likewise.
491         * emulparams/elf_x86_64.sh (SEPARATE_GOTPLT): Likewise.
492
493 2012-06-07  Georg-Johann Lay  <avr@gjlay.de>
494
495         PR 13697
496         * scripttempl/avr.sc (.data): Keep it.
497
498 2012-06-02  Andreas Schwab  <schwab@linux-m68k.org>
499
500         * Makefile.am (TEXINFO_TEX): Remove $(top_srcdir) prefix.
501         * Makefile.in: Regenerate.
502
503 2012-05-30  Alan Modra  <amodra@gmail.com>
504
505         * ldlang.h (lang_output_section_statement_type): Rename
506         "section_relative_symbol" field to "update_dot".
507         * ldlang.c: Update all uses.
508         (strip_excluded_output_sections): Don't test update_dot_tree here..
509         (lang_leave_overlay): ..set update_dot here.
510
511 2012-05-26  Alan Modra  <amodra@gmail.com>
512
513         * ldlex.h (enum option_values): Move from..
514         * lexsup.c: ..here.
515         * emultempl/ppc32elf.em: Include ldlex.h.
516         (PARSE_AND_LIST_ARGS_CASES): Disable optimisations when
517         --traditional-format.
518         * emultempl/ppc64elf.em: Likewise.
519
520 2012-05-25  Alan Modra  <amodra@gmail.com>
521
522         PR ld/13909
523         * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Handle
524         multiple .eh_frame sections attached to bfd.
525
526 2012-05-23  Cary Coutant  <ccoutant@google.com>
527
528         * scripttempl/armbpabi.sc: Match .data.rel.ro.* sections more
529         carefully.  Fix typo where .rela.data.rel.ro matches
530         .rel.data.rel.ro.
531         * scripttempl/mep.sc: Likewise.
532         * scripttempl/elf.sc: Match .data.rel.ro.* sections more carefully.
533         * scripttempl/elf64hppa.sc: Likewise.
534         * scripttempl/elfxtensa.sc: Likewise.
535
536 2012-05-17  Daniel Richard G.  <skunk@iskunk.org>
537             Nick Clifton  <nickc@redhat.com>
538
539         PR 14072
540         * configure.in: Add check that sysdep.h has been included before
541         any system header files.
542         * configure: Regenerate.
543         * config.in: Regenerate.
544         * sysdep.h: Generate an error if included before config.h.
545
546 2012-05-16  Sergio Durigan Junior  <sergiodj@redhat.com>
547
548         * emultempl/m68hc1xelf.em (hook_in_stub): Pass proper `bfd'
549         as the first argument for `bfd_get_section_name'.
550
551 2012-05-16  Samuel Thibault  <samuel.thibault@ens-lyon.org>
552
553         PR ld/14069
554         * emultempl/elf32.em: Include *-*-gnu* targets in ld.so.conf
555         support.
556
557 2012-05-15  James Murray <jsm@jsm-net.demon.co.uk>
558
559         * NEWS: Mention the support for S12X processors.
560
561 2012-05-14  James Lemke  <jwlemke@codesourcery.com>
562
563         * ldlang.c (walk_wild_consider_section): Don't copy section_flag_list.
564         Pass it to callback.
565         (walk_wild_section_general): Pass section_flag_list to callback.
566         (lang_add_section): Add sflag_list parm.
567         Move out logic to keep / omit a section & call bfd_lookup_section_flags.
568         (output_section_callback_fast): Add sflag_list parm.
569         Add new parm to lang_add_section calls.
570         (output_section_callback): Likewise.
571         (check_section_callback): Add sflag_list parm.
572         (lang_place_orphans): Add new parm to lang_add_section calls.
573         (gc_section_callback): Add sflag_list parm.
574         (find_relro_section_callback): Likewise.
575         * ldlang.h (callback_t): Add flag_info parm.
576         (lang_add_section): Add sflag_list parm.
577         * emultempl/armelf.em (elf32_arm_add_stub_section):
578         Add lang_add_section parm.
579         * emultempl/beos.em (gld*_place_orphan): Likewise.
580         * emultempl/elf32.em (gld*_place_orphan): Likewise.
581         * emultempl/hppaelf.em (hppaelf_add_stub_section): Likewise.
582         * emultempl/m68hc1xelf.em (m68hc11elf_add_stub_section): Likewise.
583         * emultempl/mipself.em (mips_add_stub_section): Likewise.
584         * emultempl/mmo.em (mmo_place_orphan): Likewise.
585         * emultempl/pe.em (gld_*_place_orphan): Likewise.
586         * emultempl/pep.em (gld_*_place_orphan): Likewise.
587         * emultempl/ppc64elf.em (ppc_add_stub_section): Likewise.
588         * emultempl/spuelf.em (spu_place_special_section): Likewise.
589         * emultempl/vms.em (vms_place_orphan): Likewise.
590
591 2012-05-14  Catherine Moore  <clm@codesourcery.com>
592
593         * NEWS:  Mention PowerPC VLE port.
594
595 2012-05-11  Daniel Richard G.  <skunk@iskunk.org>
596
597         PR binutils/14028
598         * configure.in: Invoke ACX_HEADER_STRING.
599         * configure: Regenerate.
600         * config.in: Regenerate.
601         * sysdep.h: If STRINGS_WITH_STRING is defined then include both
602         string.h and strings.h.
603
604 2012-05-08  Alan Modra  <amodra@gmail.com>
605
606         * Makefile.am (check_DEJAGNU): Export LC_ALL=C in place of other
607         LC and LANG environment vars.
608         * Makefile.in: Regenerate.
609
610 2012-05-07  Tristan Gingold  <gingold@adacore.com>
611
612         * pe-dll.c (udef_table): Make it static.
613
614 2012-05-05  Alan Modra  <amodra@gmail.com>
615
616         * pe-dll.c (process_def_file_and_drectve): Use bfd_und_section_ptr.
617         (generate_reloc): Use bfd_abs_section_ptr.
618
619 2012-05-04  H.J. Lu  <hongjiu.lu@intel.com>
620
621         * configure.tgt: Support x86_64-*-linux-gnux32.
622
623 2012-05-03  Sean Keys  <skeys@ipdatasys.com>
624
625         * Makefile.am (ALL_EMULATIONS): Added new emulation for XGATE
626         and XGATE (elf).
627         * Makefile.in: Rebuild.
628         * configure.tgt: Recognize XGATE.
629         * scripttempl/elfxgate.sc: New file, mostly cloned from m68hc12.
630         * emulparams/xgateelf: New emulation, mostly cloned from m68hc12.
631         * NEWS: Mention new support.
632
633 2012-04-26  Hans-Peter Nilsson  <hp@axis.com>
634
635         Make bfd asserts cause linker errors.
636         * ldmain.c (default_bfd_assert_handler): New variable.
637         (ld_bfd_assert_handler): New function.
638         (main): Call bfd_set_assert_handler.
639
640 2012-04-24  Alan Modra  <amodra@gmail.com>
641
642         * ldlang.c (size_input_section): Use sec_info_type rather than
643         usrdata->flags.just_syms.
644         * ldwrite.c (build_link_order): Likewise.
645         * emultempl/hppaelf.em (build_section_lists): Likewise.
646         * emultempl/ppc64elf.em (build_toc_list): Likewise.
647         * emultempl/armelf.em (build_section_lists): Likewise.
648         (after_allocation): Update for renamed sec_info_type value.
649         * emultempl/tic6xdsbt.em: Likewise.
650
651 2012-04-12  Roland McGrath  <mcgrathr@google.com>
652
653         * configure.tgt (arm*-*-nacl*, arm*b-*-nacl*): Handle them.
654         * emulparams/armelf_nacl.sh: New file.
655         * emulparams/armelfb_nacl.sh: New file.
656         * Makefile.am (ALL_EMULATION_SOURCES): Add earmelf_nacl.c
657         and earmelfb_nacl.c here.
658         (earmelf_nacl.c, earmelfb_nacl.c): New targets.
659         * Makefile.in: Regenerated.
660
661 2012-04-11  Tristan Gingold  <gingold@adacore.com>
662
663         * scripttempl/ia64vms.sc: New file.
664         * emultempl/vms.em (_before_parse): Support for ia64.
665         (elf64-ia64-vms): New fragment for ia64.
666         * emulparams/elf64_ia64_vms.sh: New file.
667         * configure.tgt (ia64-*-*vms*): Add.
668         * Makefile.am (ALL_64_EMULATION_SOURCES): Add eelf64_ia64_vms.c
669         (eelf64_ia64_vms.c): New rule.
670         * Makefile.in: Regenerate.
671
672 2012-04-06  Roland McGrath  <mcgrathr@google.com>
673
674         * configure.in (AC_CHECK_HEADERS): Add locale.h.
675         * config.in: Regenerate.
676         * configure: Regenerate.
677
678 2012-04-05  Nick Clifton  <nickc@redhat.com>
679
680         * configure.in (AC_CHECK_FUNCS): Add setlocale.
681         (AM_LC_MESSAGES): Add.
682         * aclocal.m4: Regenerate.
683         * config.in: Regenerate.
684         * configure: Regenerate.
685
686 2012-04-03  Roland McGrath  <mcgrathr@google.com>
687
688         * configure.tgt (i[3-7]86-*-nacl*, x86_64-*-nacl*): Handle them.
689         * emulparams/elf_nacl.sh: New file.
690         * emulparams/elf_i386_nacl.sh: New file.
691         * emulparams/elf32_x86_64_nacl.sh: New file.
692         * emulparams/elf_x86_64_nacl.sh: New file.
693         * Makefile.am (ALL_EMULATION_SOURCES): Add eelf_i386_nacl.c here.
694         (ALL_64_EMULATION_SOURCES): Add eelf32_x86_64_nacl.c and
695         eelf_x86_64_nacl.c here.
696         (eelf_i386_nacl.c, eelf32_x86_64_nacl.c, eelf_x86_64_nacl.c):
697         New targets.
698         * Makefile.in: Regenerated.
699
700         * scripttempl/elf.sc: Handle SEPARATE_CODE cases.
701
702 2012-04-02  Mike Frysinger  <vapier@gentoo.org>
703
704         * ldmisc.c (vfinfo): Assign new local str to fmt.  Delete
705         putc call.  If str and fmt are different, call fwrite on
706         the difference.
707
708 2012-03-30  Nick Clifton  <nickc@redhat.com>
709
710         * po/vi.po: Updated Vietnamese translation.
711
712 2012-03-27  Roland McGrath  <mcgrathr@google.com>
713
714         * configure.in: Set want64 on a 64-bit host regardless of
715         --enable-targets=all.
716         * configure: Regenerated.
717
718 2012-03-26  Tristan Gingold  <gingold@adacore.com>
719
720         * lexsup.c (parse_args): Add a missing '\n'.
721
722 2012-03-25  Alan Modra  <amodra@gmail.com>
723
724         * ldemul.c (before_allocation_default): Revert last change.
725         * ldlang.c (lang_add_section): Likewise.
726         (strip_excluded_output_sections): Don't strip output sections with
727         user input sections when emitrelocations, unless all are SEC_EXCLUDE.
728
729 2012-03-23  Alan Modra  <amodra@gmail.com>
730
731         * ldemul.c (before_allocation_default): When emitrelocations,
732         don't strip sections..
733         * ldlang.c (lang_add_section): ..and don't set up map_head, map_tail.
734
735 2012-03-14  Kai Tietz  <ktietz@redhat.com>
736             Pascal Obry  <pascal@obry.net>
737
738         * pe-dll.c (found_sym): New static variable.
739         (undef_count): Likewise.
740         (key_value): New structure.
741         (undef_sort_cmp): Compare routine for qsort/bsearch.
742         (pe_find_cdecl_alias_match): Add new argument.
743         (pe_undef_alias_cdecl_match): Removed.
744         (pe_undef_count): New helper routine.
745         (pe_create_undef_table): Likewise.
746         (pe_process_import_defs): Use pe_create_undef_table and
747         new pe_undef_alias_cdecl_match function.
748
749 2012-03-14  Alan Modra  <amodra@gmail.com>
750
751         PR ld/13839
752         * ldexp.c (fold_name): Ignore undefined symbols when assigning to
753         dot in mark phase.
754         (exp_fold_tree_1): Evaluate assignment to dot expressions even when
755         discarding result, for side effects.  Fix typo in error message.
756
757 2012-03-08  Tristan Gingold  <gingold@adacore.com>
758
759         * ldexp.c (exp_print_tree): Special case for SEGMENT_START.
760         (exp_print_token): Constify.
761
762 2012-03-08  Alan Modra  <amodra@gmail.com>
763
764         PR ld/10340
765         * ldfile.c (is_sysrooted_pathname): Remove notsame param.
766         (ldfile_add_library_path): Don't set sysrooted flag.
767         (ldfile_open_file_search): Likewise, and don't copy them.
768         (try_open): Delete exten and code handling such.  Add sysrooted
769         param and return whether path is in sysroot.
770         (ldfile_find_command_file): Delete extend param.  Add sysrooted
771         param.  Rename local var.  Update try_open calls.
772         (ldfile_open_command_file_1): Pass sysrooted to lex_push_file.
773         * ldfile.h (search_dirs_type): Remove sysrooted field.
774         * ldlang.c (new_afile): Always set sysrooted from input_flags.
775         (load_symbols): Don't set input_flags.sysrooted.
776         * ldlang.h (struct lang_input_statement_flags): Revise sysrooted
777         comment.
778         * ldlex.h (lex_push_file): Update prototype.
779         * ldlex.l (sysrooted_stack): New array.
780         (EOF): Pop input_flags.sysrooted.
781         (lex_push_file): Add sysrooted param.  Save and set
782         input_flags.sysrooted.
783
784 2012-03-06  Alan Modra  <amodra@gmail.com>
785
786         * ldlang.h (struct lang_input_statement_flags): New, extract from..
787         (lang_input_statement_type): ..here.  New field "flags".
788         (input_flags): Declare.
789         (missing_file): Delete.
790         * ldmain.h (whole_archive): Delete.
791         (add_DT_NEEDED_for_regular, add_DT_NEEDED_for_dynamic): Delete.
792         * ld.h (ld_config_type <dynamic_link>): Delete.
793         * ldmain.c (whole_archive): Delete.
794         (add_DT_NEEDED_for_regular, add_DT_NEEDED_for_dynamic): Delete.
795         * ldlang.c (missing_file, ldlang_sysrooted_script): Delete.
796         (input_flags): New variable.  Replace all uses of config.dynamic_link,
797         missing_file, ldlang_sysrooted_script, whole_archive,
798         add_DT_NEEDED_for_regular and add_DT_NEEDED_for_dynamic with fields
799         from here.
800         * ldfile.c: Likewise.
801         * ldgram.y: Likewise.
802         * ldmain.c: Likewise.
803         * ldwrite.c: Likewise.
804         * lexsup.c: Likewise.
805         * plugin.c: Likewise.
806         * emultempl/aix.em: Likewise.
807         * emultempl/armelf.em: Likewise.
808         * emultempl/elf32.em: Likewise.
809         * emultempl/hppaelf.em: Likewise.
810         * emultempl/linux.em: Likewise.
811         * emultempl/pe.em: Likewise.
812         * emultempl/pep.em: Likewise.
813         * emultempl/ppc64elf.em: Likewise.
814         * emultempl/scoreelf.em: Likewise.
815         * emultempl/spuelf.em: Likewise.
816         * emultempl/sunos.em: Likewise.
817         * emultempl/vms.em: Likewise.
818         * ldlang.c (new_afile): Use memset to init zero fields.
819         (load_symbols): Simplify save and restore of flags around command
820         file processing.
821         * ldfile.c (is_sysrooted_pathname): Tidy.
822
823 2012-03-05  Hans-Peter Nilsson  <hp@axis.com>
824
825         * configure.tgt (mips64*el-*-freebsd*, mips64*-*-freebsd*)
826         (mips*el-*-freebsd*, mips*-*-freebsd*): Correct triplets by
827         replacing trailing "-*" with "*".
828
829 2012-02-25  Walter Lee  <walt@tilera.com>
830
831         * Makefile.am (ALL_EMULATION_SOURCES): Add eelf32tilegx_be.c.
832         (ALL_64_EMULATION_SOURCES): Add eelf64tilegx_be.c.
833         (eelf32tilegx_be.c): Add rule to build this file.
834         (eelf64tilegx_be.c): Ditto.
835         * Makefile.in: Regenerate.
836         * configure.tgt (tilegx-*-*): Support big endian.
837         (tilegxbe-*-*): New.
838         * emulparams/elf32tilegx.sh (OUTPUT_FORMAT): Rename.
839         (BIG_OUTPUT_FORMAT): Define.
840         (LITTLE_OUTPUT_FORMAT): Define.
841         * emulparams/elf32tilegx_be.sh: New.
842         * emulparams/elf64tilegx.sh (OUTPUT_FORMAT): Rename.
843         (BIG_OUTPUT_FORMAT): Define.
844         (LITTLE_OUTPUT_FORMAT): Define.
845         * emulparams/elf64tilegx_be.sh: New.
846
847 2012-02-24  Kai Tietz  <ktietz@redhat.com>
848
849         PR binutils/13710
850         * deffilep.y (keyword_as_name): Disable LIBRARY
851         keyword.
852
853 2012-02-22  Alan Modra  <amodra@gmail.com>
854
855         PR ld/13683
856         * ldlang.c (lang_process): Rerun lang_do_assignments before
857         starting garbage collection.
858         * ldexp.c (fold_name): Generate a reloc for defined symbols
859         found without an associated output section during the mark phase.
860         (exp_fold_tree_1): Continue processing an expression, even if we
861         are unable to fold it, if we are in the first two evaluation
862         phases.
863         * ldexp.h (enum lang_phase_type): Add descriptions of the phases.
864
865 2012-02-19  Kai Tietz  <ktietz@redhat.com>
866
867         * deffilep.y (cmp_import_elem): Sort first by module name.
868         * pe-dll.c (process_def_file_and_drectve): Free strings
869         from removed export-element.
870         (add_bfd_to_link): Optimize loop on import-elements and lower
871         allocated memory.
872         (pe_implied_import_dll): Pass NULL instead of 0 for pointer
873         argument.
874
875 2012-02-18  Hans-Peter Nilsson  <hp@axis.com>
876
877         * ldmisc.c (vfinfo <%S>): Use same type and avoid cast for
878         temporary variable node used for NULL argument.
879
880 2012-02-18  Alan Modra  <amodra@gmail.com>
881
882         PR ld/13343
883         * ld.h (parsing_defsym): Delete.
884         * ldexp.c (exp_intop, exp_bigintop, exp_relop): Set type.filename.
885         (fold_binary, fold_name, exp_fold_tree_1, exp_get_vma, exp_get_fill,
886         exp_get_abs_int): Add tree arg for %S in error messages.  Don't
887         fudge lineno.
888         (exp_binop, exp_unop, exp_nameop, exp_assop, exp_assert): Copy
889         type.filename from sub-tree.
890         (exp_trinop): Likewise, and use "cond" rather than "lhs".
891         * ldexp.h (node_type): Add filename field to struct.
892         * ldfile.c (ldfile_input_filename): Delete.  Remove all refs.
893         * ldfile.h (ldfile_input_filename): Delete.
894         * ldgram.y (phdr_type, phdr_qualifiers, yyerror): Add NULL arg for
895         %S in error messages.
896         * ldemul.c (syslib_default, hll_default): Likewise.
897         * ldlang.c (lang_memory_region_lookup, lang_memory_region_alias,
898         lang_get_regions, lang_new_phdr): Likewise.
899         (lang_size_sections_1): Pass addr_tree for %S.
900         * ldlex.h (lex_redirect): Update prototype.
901         (ldlex_filename): Declare.
902         * ldlex.l (<EOF>): Don't set ldfile_input_filename.
903         (lex_redirect): Add fake_filename and count params.  Push
904         fake_filename to file_name_stack and init lineno from count.
905         (ldlex_filename): New function.
906         (lex_warn_invalid): Use above.
907         * ldmain.c (main): Update lex_redirect call.
908         * ldmisc.c (vfinfo <%S>): Take file name and line number from
909         etree_type arg, or use current if arg is NULL.
910         * lexsup.c (parsing_defsym): Delete.
911         (parse_args <OPTION_DEFSYM>): Update lex_redirect call.
912
913 2012-02-13  Kai Tietz  <ktietz@redhat.com>
914
915         * deffilep.y (find_export_in_list): Set is_indent for
916         first or last element, if identical.
917         (find_import_in_list): Likewise.
918
919 2012-02-11  Kai Tietz  <ktietz@redhat.com>
920
921         * deffilep.y (%union): New type id_const.
922         (opt_name2): New rule.
923         (keyword_as_name): New rule.
924         (dot_name): Replaced by opt_name2 rule.
925         (opt_name): Adjust rule.
926         (opt_equal_name): Likewise.
927
928 2012-02-11  Pascal Obry  <pascal@obry.net>
929
930         * pe-dll.c (auto_export): Use bsearch to speed up scan of exports
931         table.
932         (process_def_file_and_drectve): Maintain sorting of exports table
933         after stripping leading @ signs.
934
935 2012-02-09  Alan Modra  <amodra@gmail.com>
936
937         * ldgram.y (input_section_spec_no_keep): Don't ignore sect_flags.
938
939 2012-01-31  H.J. Lu  <hongjiu.lu@intel.com>
940
941         PR ld/13616
942         * emulparams/elf32_x86_64.sh: Remove NOP.
943         * emulparams/elf_i386.sh: Likewise.
944         * emulparams/elf_i386_be.sh: Likewise.
945         * emulparams/elf_i386_ldso.sh: Likewise.
946         * emulparams/elf_i386_vxworks.sh: Likewise.
947         * emulparams/elf_k1om.sh: Likewise.
948         * emulparams/elf_l1om.sh: Likewise.
949         * emulparams/elf_x86_64.sh: Likewise.
950
951         * ldlang.c (zero_fill): Initialized to 0.
952
953         * ldwrite.c (build_link_order): Set data size to linker odrder
954         size when they are the same.
955
956         * scripttempl/elf.sc: Don't specify fill if NOP is undefined.
957
958 2012-01-17  Alan Modra  <amodra@gmail.com>
959
960         * ldver.c (ldversion): Update copyright message year.
961
962 2012-01-15  Alan Modra  <amodra@gmail.com>
963
964         PR ld/12758
965         * ldlang.c (lang_process): Don't reopen all files, just those
966         newly added by plugin.
967
968 2012-01-11  Alan Modra  <amodra@gmail.com>
969
970         * emultempl/ppc64elf.em (PARSE_AND_LIST_PROLOGUE,
971         PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS,
972         PARSE_AND_LIST_ARGS_CASES): Handle --{no-,}plt-thread-safe and
973         --{no-,}plt-align.
974         (plt_thread_safe, plt_stub_align): New vars.
975         (gld${EMULATION_NAME}_after_allocation): Pass them to
976         ppc64_elf_size_stubs.  Align stub sections according to plt_stub_align.
977         * ld.texinfo: Document new command line options, and an old
978         undocumented option.
979
980 2012-01-09  Roland McGrath  <mcgrathr@google.com>
981
982         * configure.in: Use AM_ZLIB.
983         * configure: Regenerated.
984
985 For older changes see ChangeLog-2011
986 \f
987 Local Variables:
988 mode: change-log
989 left-margin: 8
990 fill-column: 74
991 version-control: never
992 End: