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