This patch removes the inclusion of the default manifest in final links for
[platform/upstream/binutils.git] / ld / ChangeLog
1 2014-04-08  Nick Clifton  <nickc@redhat.com>
2
3         * scripttempl/pe.sc (R_RSRC): Remove default manifest.
4         * scripttempl/pep.sc (R_RSRC): Remove default manifest.
5
6 2014-04-08  Jon TURNEY  <jon.turney@dronecode.org.uk>
7
8         * emultempl/elf32.em (id_note_section_size, read_hex, write_build_id):
9         Move code for parsing build-id option and calculating the build-id to...
10         * ldbuildid.c: New file.
11         * ldbuildid.h: New file.
12         * Makefile.am (CFILES, HFILES, OFILES, ld_new_SOURCES): Add new
13         files.
14         * Makefile.in: Regenerate.
15         * ld.texinfo: Update --build-id description to mention COFF
16         support.
17         * NEWS: Mention support for COFF build ids.
18         * emultempl/pe.em (gld${EMULATION_NAME}_handle_option):
19         (pecoff_checksum_contents, write_build_id, setup_build_id)
20         (gld_${EMULATION_NAME}_after_open):  Handle and implement
21         build-id option.
22         * emultempl/pep.em: Likewise.
23
24 2014-04-04  Cary Coutant  <ccoutant@google.com>
25
26         PR gold/16804
27         * ld.texinfo: Document optional comma following output section
28         command and overlay command.
29
30 2014-04-04  Alan Modra  <amodra@gmail.com>
31
32         * ldlang.c (lang_size_sections_1 <lang_input_section_enum>): Use
33         current "fill", not "output_section_statement->fill".
34
35 2014-03-31  Nick Clifton  <nickc@redhat.com>
36
37         PR ld/16744
38         * emultempl/elf32.em (_after_open): Create a .note.GNU-stack
39         section when performing a relocatable link with -z [no]execstack
40         specified.
41
42 2014-03-27  H.J. Lu  <hongjiu.lu@intel.com>
43
44         PR ld/16756
45         * ldmain.c (symbol_warning): New function.
46         (warning_callback): Use it.  Scan all input files for a reference
47         to SYMBOL.
48
49 2014-03-21  Christopher Faylor  <me.cygwin2013@cgf.cx>
50
51         * ld.texinfo: Document change in handling of --enable-auto-image-base.
52         * emultempl/pe.em (pe_auto_image_base): Set to default base.
53         (gld_${EMULATION_NAME}_list_options): Change usage message to reflect
54         optional --enable-auto-image-base argument.
55         (gld${EMULATION_NAME}_handle_option): Handle optional
56         --enable-auto-image-base argument.
57         (compute_dll_image_base): Eliminate constant.  Use pe_auto_image_base.
58
59 2014-03-19  Nick Clifton  <nickc@redhat.com>
60
61         * Makefile.am (default-manifest.o): Use WINDRES_FOR_TARGET.
62         * Makefile.in: Regenerate.
63         * emultempl/default-manifest.rc: Fix typo.
64         * scripttempl/pe.sc (R_RSRC): Fix default-manifest exclusion.
65         (.rsrc): Add SUBALIGN(4).  Remove SORT.
66         * scripttempl/pep.sc: Likewise.
67
68 2014-03-17  Christopher Faylor  <me.cygwin2014@cgf.cx>
69
70         * Makefile.am: Use host version of windres.
71         * Makefile.in: Regenerate.
72
73 2014-03-14  Romain Geissler  <romain.geissler@amadeus.com>
74             Alan Modra  <amodra@gmail.com>
75
76         * ldlang.h (full_name_provided): New input flag.
77         * ldlang.c (new_afile): Don't use lang_input_file_is_search_file_enum
78         for -l:namespec.  Instead use lang_input_file_is_l_enum with
79         full_name_provided flag.
80         * ldlfile.c (ldfile_open_file_search): Don't complete lib name if
81         full_name_provided flag is set.
82         * emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive):
83         Handle full_name_provided libraries.  Tidy EXTRA_SHLIB_EXTENSION
84         support.  Set DT_NEEDED for -l:namespec as namespec.
85         * emultempl/aix.em (ppc_after_open_output): Handle full_name_provided.
86         * emultempl/linux.em (gld${EMULATION_NAME}_open_dynamic_archive):
87         Don't handle full_name_provided libraries.
88         * emultempl/pe.em (gld${EMULATION_NAME}_open_dynamic_archive): Ditto.
89         * emultempl/pep.em (gld${EMULATION_NAME}_open_dynamic_archive): Ditto.
90         * emultempl/vms.em (gld${EMULATION_NAME}_open_dynamic_archive): Ditto.
91
92 2014-03-12  Alan Modra  <amodra@gmail.com>
93
94         * Makefile.in: Regenerate.
95
96 2014-03-05  Alan Modra  <amodra@gmail.com>
97
98         Update copyright years.
99
100 2014-03-04  Nick Clifton  <nickc@redhat.com>
101
102         * Makefile.am (ALL_EMUL_EXTRA_BINARIES): Remove default-manifest.
103         * Makefile.in: Regenerate.
104
105 2014-02-27  Yuri Gribov  <y.gribov@samsung.com>
106
107         * emultempl/armelf.em (OPTION_LONG_PLT): Define.
108         (PARSE_AND_LIST_LONGOPTS): Add long-plt.
109         (PARSE_AND_LIST_OPTIONS): Likewise.
110         (PARSE_AND_LIST_ARGS_CASES): Handle long-plt.
111         * ld.texinfo: Document --long-plt.
112
113 2014-02-27  Alan Modra  <amodra@gmail.com>
114
115         * emulparams/elf32ppcvxworks.sh: Source plt_unwind.sh and
116         use ppc32elf.em.
117         * emultempl/ppc32elf.em (ppc_after_open): Don't compile for
118         vxworks.
119         (LDEMUL_AFTER_OPEN): Don't set for vxworks.
120         (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Exclude
121         -secure-plt, -bss-plt and -sdata-got when vxworks.
122
123 2014-02-27  Nick Clifton  <nickc@redhat.com>
124
125         * configure.in (all_emul_extra_binaries): New variable.  Populated
126         by invoking configure.tgt.
127         (EMUL_EXTRA_BINARIES): New substitution.
128         * configure: Regenerate.
129         * configure.tgt (target_extra_binaries): New variable.  Set to
130         default-manifest.o for Cygwin and MinGW targets.
131         * Makefile.am (EMUL_EXTRA_BINARIES): New variable.  Initialised
132         by the configure script.
133         (ALL_EMUL_EXTRA_BINARIES): New variable.
134         (default-manifest.o): New rule to build the default manifest.
135         (ld_new_DEPENDENCIES): Add EMUL_EXTRA_BINARIES.
136         (install-data-local): Add EMUL_EXTRA_BINARIES.
137         * Makefile.in: Regenerate.
138         * ld.texinfo: Document default manifest support.
139         * emulparams/i386pe.sh (DEFAULT_MANIFEST): Define.
140         * emulparams/i386pep.sh (DEFAULT_MANIFEST): Define.
141         * emultempl/default-manifest.rc: New file.
142         * scripttempl/pe.sc (R_RSRC): Include DEFAULT_MANIFEST, if defined.
143         * scripttempl/pep.sc (R_RSRC): Likewise.
144
145 2014-02-26  Dan Mick  <dan.mick@inktank.com>
146
147         PR ld/16569
148         * ldcref.c (cref_sort_array): Compare unmangled names unless
149         demanglng has been requiested.
150         (output_one_cref): Output unmangled name unless demangling has
151         been requested.
152
153 2014-02-19  Igor Zamyatin  <igor.zamyatin@intel.com>
154             H.J. Lu  <hongjiu.lu@intel.com>
155
156         * emulparams/elf_x86_64.sh (TINY_READONLY_SECTION): New.
157
158 2014-02-19  Alan Modra  <amodra@gmail.com>
159
160         * emultempl/ppc64elf.em (params): Init new field.
161         (ppc_create_output_section_statements): Set params.save_restore_funcs
162         default.
163         (PARSE_AND_LIST_*): Add support for --save-restore-funcs and
164         --no-save-restore-funcs.
165
166 2014-02-17  Alan Modra  <amodra@gmail.com>
167
168         * emultemps/ppc64elf.em (params): New static struct replacing
169         various other static vars.  Adjust code throughout file.
170
171 2014-02-17  Alan Modra  <amodra@gmail.com>
172
173         * emultempl/ppc32elf.em (ppc_after_open_output): Really enable
174         ppc476 workaround for ld -r.
175
176 2014-02-12  Alan Modra  <amodra@gmail.com>
177
178         * emultempl/ppc32elf.em (pagesize): New static var.
179         (ppc_after_open_output): Set params.pagesize_p2 from pagesize.
180         (PARSE_AND_LIST_ARGS_CASES): Adjust to use pagesize.
181
182 2014-02-11  Andrew Pinski  <apinski@cavium.com>
183
184         * emulparams/aarch64linux32.sh (LIBPATH_SUFFIX): Change to ilp32.
185         (ELF_INTERPRETER_NAME): Define.
186         * emulparams/aarch64linux32b.sh (ELF_INTERPRETER_NAME): Define.
187
188 2014-02-10  Alan Modra  <amodra@gmail.com>
189
190         * po/ld.pot: Regenerate.
191
192 2014-02-03  Alan Modra  <amodra@gmail.com>
193
194         * emultempl/ppc32elf.em (no_tls_get_addr_opt, emit_stub_syms)
195         plt_style): Delete.  Adjust all refs to instead use..
196         (params): ..this.  New variable.
197         (ppc_after_open_output): New function.  Tweak params and pass to
198         ppc_elf_link_params.
199         (ppc_after_open): Adjust ppc_elf_select_plt_layout call.
200         (ppc_before_allocation): Adjust ppc_elf_tls_setup call.  Enable
201         relaxation for ppc476 workaround.
202         (PARSE_AND_LIST_*): Add --{no-,}ppc476-workaround support.
203         (LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Define.
204
205 2014-02-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
206
207         * ld/ld.texinfo: Change ALIGN_WITH_INPUT documentation.
208         * ld/ldlang.c (lang_size_sections_1): Add dotdelta
209         variable which reflects the VMA change due to alignment
210         requirements.  Use dotdelta do change the LMA if
211         ALIGN_WITH_INPUT is requested.
212
213 2014-02-01  Hans-Peter Nilsson  <hp@bitrange.com>
214
215         * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Fix typo in
216         call to bfd_set_section_vma exposed by recent bfd_set_section_vma
217         change.
218
219 2014-01-30  Sandra Loosemore  <sandra@codesourcery.com>
220
221         * Makefile.am (enios2elf.c, enios2linux.c): Update dependencies.
222         * Makefile.in: Regenerated.
223         * emulparams/nios2elf.sh (EXTRA_EM_FILE): Set.
224         * emulparams/nios2linux.sh (EXTRA_EM_FILE): Set.
225         * emultempl/nios2elf.em: New file.
226         * gen-doc.texi (NIOSII): Set.
227         * ld.texinfo (NIOSII): Set.
228
229 2014-01-28  Nick Clifton  <nickc@redhat.com>
230
231         * Makefile.am: Remove obsolete MSP430 emulations.
232         * configure.tgt: Likewise.
233         * emulparams/msp430all.sh: Likewise.
234         * Makefile.in: Regenerate.
235
236 2014-01-24  H.J. Lu  <hongjiu.lu@intel.com>
237
238         PR ld/16498
239         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Improve
240         orphaned TLS section handling.
241
242 2014-01-24  Alan Modra  <amodra@gmail.com>
243
244         * ldlang.c (lang_output_section_find_by_flags): Be careful to
245         test look->bfd_section->flags if available rather than
246         look->flags.  Separate SEC_THREAD_LOCAL handling from
247         SEC_READONLY loop, and rewrite.
248
249 2014-01-22  Alan Modra  <amodra@gmail.com>
250
251         * ldlang.c (asneeded_list_head, asneeded_list_tail): New vars.
252         (lang_init): Initialise them.
253         (lang_print_asneeded): New function.
254         (lang_process): Call lang_print_asneeded.
255         * ldlang.h (struct asneeded_minfo): New.
256         (asneeded_list_tail): Declare.
257         * ldmain.c (add_archive_element): Improve archive map heading.
258         * ldmisc.c (minfo): Stash --as-needed info.
259
260 2014-01-22  Alan Modra  <amodra@gmail.com>
261
262         * ld.h (struct map_symbol_def): Move to..
263         * ldlang.h: ..here.
264         * ldlang.c (print_assignment): Don't set expld.assign_name to dot.
265
266 2014-01-22  Alan Modra  <amodra@gmail.com>
267
268         * ld.texinfo (Output Section Discarding): Mention assigning to dot
269         as a way of keeping otherwise empty sections.
270         * ldexp.c (is_dot, is_value, is_sym_value, is_dot_ne_0,
271         is_dot_plus_0, is_align_conditional): New predicates.
272         (exp_fold_tree_1): Set SEC_KEEP when assigning to dot inside an
273         output section, except for some special cases.
274         * scripttempl/elfmicroblaze.sc: Use canonical form to align at
275         end of .heap and .stack.
276
277 2014-01-20  Marcus Shawcroft  <marcus.shawcroft@arm.com>
278
279         * emulparams/aarch64linuxb.sh (ELF_INTERPRETER_NAME): Define.
280
281 2014-01-20  Marcus Shawcroft  <marcus.shawcroft@arm.com>
282
283         * emulparams/aarch64linux.sh (ELF_INTERPRETER_NAME): Define.
284
285 2014-01-20  Alan Modra  <amodra@gmail.com>
286
287         * ldlang.h (struct lang_definedness_hash_entry): Add by_object and
288         by_script.  Make iteration a single bit field.
289         (lang_track_definedness, lang_symbol_definition_iteration): Delete.
290         (lang_symbol_defined): Declare.
291         * ldlang.c (lang_statement_iteration): Expand comment a little.
292         (lang_init <lang_definedness_table>): Make it bigger.
293         (lang_track_definedness, lang_symbol_definition): Delete.
294         (lang_definedness_newfunc): Update.
295         (lang_symbol_defined): New function.
296         (lang_update_definedness): Create entries here.  Do track whether
297         script definition of symbol is valid, even when also defined in
298         an object file.
299         * ldexp.c (fold_name <DEFINED>): Update.
300         (fold_name <NAME>): Allow self-assignment for absolute symbols
301         defined in a linker script.
302
303 2014-01-20  Guy Martin <gmsoft@tuxicoman.be>
304             Alan Modra  <amodra@gmail.com>
305
306         * ldlang.h (lang_output_section_get): Define.
307         * ldlang.c (lang_output_section_get): Likewise.
308         (init_os): Set the output_section userdata to the output
309         section statement.
310         * emultempl/hppaelf.em: Use lang_output_section_get instead of
311         lang_output_section_find where applicable.
312         * emultempl/aarch64elf.em: Likewise.
313         * emultempl/aix.em: Likewise.
314         * emultempl/armelf.em: Likewise.
315         * emultempl/m68hc1xelf.em: Likewise.
316         * emultempl/metagelf.em: Likewise.
317         * emultempl/mipself.em: Likewise.
318         * emultempl/ppc64elf.em: Likewise.
319         * emultempl/spuelf.em: Likewise.
320
321 2014-01-17  Alan Modra  <amodra@gmail.com>
322
323         * genscripts.sh (COMPILE_IN): Don't set if already set.
324         * emulparams/nds32elf.sh: Don't clear EMULATION_LIBPATH, set
325         COMPILE_IN=no.
326         * emulparams/nds32elf16m.sh: Likewise.
327         * emulparams/nds32elf_linux.sh: Likewise.
328         * emultempl/aix.em: Test COMPILE_IN value is "yes".
329         * emultempl/armcoff.em: Likewise.
330         * emultempl/elf32.em: Likewise.
331         * emultempl/generic.em: Likewise.
332         * emultempl/gld960.em: Likewise.
333         * emultempl/gld960c.em: Likewise.
334         * emultempl/linux.em: Likewise.
335         * emultempl/lnk960.em: Likewise.
336         * emultempl/m68kcoff.em: Likewise.
337         * emultempl/sunos.em: Likewise.
338         * emultempl/ticoff.em: Likewise.
339
340 2014-01-16  H.J. Lu  <hongjiu.lu@intel.com>
341
342         PR ld/16456
343         * genscripts.sh: Don't search directory with LIBPATH_SUFFIX_SKIP
344         suffix.
345         * emulparams/elf32_x86_64.sh (LIBPATH_SUFFIX_SKIP): Set to 64
346         for elf32_x86_64 emulation.
347         * emulparams/elf_i386.sh (LIBPATH_SUFFIX_SKIP): Set to 64
348         for elf_i386 emulation.
349
350 2014-01-16  Alan Modra  <amodra@gmail.com>
351
352         * ld.h (fat_section_userdata_type, get_userdata): Move to..
353         * ldlang.h (input_section_userdata_type, get_userdata): ..here.
354         * ldlang.c (init_map_userdata): Delete.  Fold into..
355         (sort_def_symbol): ..here.  Don't attach input section userdata
356         to output sections or global bfd sections.
357         (lang_map): Don't pre-allocate input section userdata.
358         (init_os): Don't allocate userdata for output sections.
359         (print_all_symbols): Update.
360
361 2014-01-15  H.J. Lu  <hongjiu.lu@intel.com>
362
363         * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
364         Silence uninitialized warning on ehdr_start_save with older
365         GCC.
366
367 2014-01-15  Alan Modra  <amodra@gmail.com>
368
369         * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Define
370         __ehdr_start before size_dynamic_sections and restore afterwards.
371
372 2014-01-10  Alan Modra  <amodra@gmail.com>
373
374         PR ld/14207
375         PR ld/16322
376         PR binutils/16323
377         * ldlang.c (lang_size_sections): Remove unneeded RELRO base
378         adjust.  Tidy comments.
379         * ld.texinfo (DATA_SEGMENT_RELRO_END): Correct description.
380
381 2014-01-10  Hans-Peter Nilsson  <hp@axis.com>
382
383         * emulparams/crislinux.sh (COMMONPAGESIZE): Define.
384
385 2014-01-08  H.J. Lu  <hongjiu.lu@intel.com>
386
387         PR ld/14207
388         PR ld/16322
389         PR binutils/16323
390         * ldlang.c (lang_size_sections): Properly align RELRO base.
391
392 2014-01-08  H.J. Lu  <hongjiu.lu@intel.com>
393
394         * ldver.c (ldversion): Update copyright year to 2014.
395
396 For older changes see ChangeLog-2013
397 \f
398 Copyright (C) 2014 Free Software Foundation, Inc.
399
400 Copying and distribution of this file, with or without modification,
401 are permitted in any medium without royalty provided the copyright
402 notice and this notice are preserved.
403
404 Local Variables:
405 mode: change-log
406 left-margin: 8
407 fill-column: 74
408 version-control: never
409 End: