Commit | Line | Data |
---|---|---|
9e9e0820 L |
1 | 2010-12-31 Robert Millan <rmh@gnu.org> |
2 | Richard Sandiford <rdsandiford@googlemail.com> | |
3 | ||
4 | * configure.tgt: Recognize mips-freebsd and mips-kfreebsd-gnu. | |
5 | ||
6 | * emulparams/elf32btsmip_fbsd.sh: New file. | |
7 | * emulparams/elf32btsmipn32_fbsd.sh: Likewise. | |
8 | * emulparams/elf32ltsmip_fbsd.sh: Likewise. | |
9 | * emulparams/elf32ltsmipn32_fbsd.sh: Likewise. | |
10 | * emulparams/elf64btsmip_fbsd.sh: Likewise. | |
11 | * emulparams/elf64ltsmip_fbsd.sh: Likewise. | |
12 | ||
13 | * Makefile.am: Add build rules for `eelf32btsmip_fbsd.c', | |
14 | `eelf32btsmipn32_fbsd.c', `eelf32ltsmip_fbsd.c', | |
15 | `eelf32ltsmipn32_fbsd.c', `eelf64btsmip_fbsd.c' and | |
16 | `eelf64ltsmip_fbsd.c'. | |
17 | * Makefile.in: Regenerate. | |
18 | ||
19 | 2010-12-30 H.J. Lu <hongjiu.lu@intel.com> | |
20 | ||
21 | * emulparams/elf32_x86_64.sh: New. | |
22 | ||
23 | * configure.tgt (targ64_extra_emuls): Add elf32_x86_64 for | |
24 | i[3-7]86-*-linux-*. | |
25 | (targ_extra_libpath): Likewise. | |
26 | (targ_extra_emuls): Add elf32_x86_64 for x86_64-*-linux-*. | |
27 | (targ_extra_libpath): Likewise. | |
28 | ||
29 | * Makefile.am (ALL_64_EMULATION_SOURCES): Add eelf32_x86_64.c. | |
30 | (eelf32_x86_64.c): New. | |
31 | * Makefile.in: Regenerated. | |
32 | ||
33 | 2010-12-20 Alan Modra <amodra@gmail.com> | |
34 | ||
35 | PR ld/12327 | |
36 | * ld.texinfo (Expression Section): Describe treatment of numbers | |
37 | and absolute symbols. | |
38 | * ldemul.c (after_open_default): Look up __ld_compatibility. | |
39 | * ldexp.c (fold_name): Convert absolute symbols to numbers when | |
40 | inside output section definitions, or when __ld_compatibility >= 221. | |
41 | (exp_fold_tree_1): Convert numbers to absolute when not in output | |
42 | section definition and __ld_compatibility < 221. Don't always | |
43 | convert values outside an output section definition to absolute. | |
44 | * ldexp.h (uses_defined): Comment. | |
45 | * ldlang.c (ld_compatibility): New variable. | |
46 | * ldlang.h (ld_compatibility): Declare. | |
47 | * emultempl/aix.em, * emultempl/armcoff.em, * emultempl/beos.em, | |
48 | * emultempl/elf32.em, * emultempl/genelf.em, * emultempl/lnk960.em, | |
49 | * emultempl/m68kcoff.em, * emultempl/mmo.em, * emultempl/pe.em, | |
50 | * emultempl/pep.em, * emultempl/sunos.em, * emultempl/z80.em: Call | |
51 | after_open_default from after_open function. | |
52 | ||
53 | 2010-12-20 Alan Modra <amodra@gmail.com> | |
54 | ||
55 | PR ld/12001 | |
56 | Revert 2010-11-03 Nick Clifton | |
57 | * ldlang.c (ldlang_def_chain_list): Delete. | |
58 | (insert_defined, ldlang_add_def, lang_place_defineds): Delete. | |
59 | (lang_process): Don't call lang_place_defineds. | |
60 | (lang_add_assignment): Don't do anything special for --defsym. | |
61 | ||
62 | * ldexp.h (struct ldexp_control): Add uses_defined. | |
63 | (exp_fold_tree_no_dot): Declare. | |
64 | * ldexp.c (exp_fold_tree): Clear uses_defined. | |
65 | (exp_fold_tree_no_dot): Likewise. Make global. | |
66 | (fold_name <DEFINED>): Set uses_defined. | |
67 | (exp_fold_tree_1 <etree_assign>): Define symbol during first phase | |
68 | even when the value being assigned isn't valid. | |
69 | * ldlang.c (open_input_bfds): Process assignment statements. | |
70 | (lang_process): Bump lang_statement_iteration. | |
71 | (scan_for_self_assignment): Formatting. | |
72 | (print_assignment): Style. | |
73 | ||
74 | 2010-12-15 H.J. Lu <hongjiu.lu@intel.com> | |
75 | ||
76 | * Makefile.am (GENSCRIPTS): Add @enable_initfini_array@. | |
77 | ||
78 | * NEWS: Mention SORT_BY_INIT_PRIORITY. | |
79 | ||
80 | * configure.in: Add AC_CANONICAL_BUILD. | |
81 | Add --enable-initfini-array. | |
82 | ||
83 | * genscripts.sh (ENABLE_INITFINI_ARRAY): New. | |
84 | ||
85 | * ld.h (sort_type): Add by_init_priority. | |
86 | ||
87 | * ld.texinfo: Document SORT_BY_INIT_PRIORITY. | |
88 | ||
89 | * ldgram.y (SORT_BY_INIT_PRIORITY): New. | |
90 | (wildcard_spec): Handle SORT_BY_INIT_PRIORITY. | |
91 | ||
92 | * ldlang.c (get_init_priority): New. | |
93 | (compare_section): Use get_init_priority for by_init_priority. | |
94 | ||
95 | * ldlex.l (SORT_BY_INIT_PRIORITY): New. | |
96 | ||
97 | * scripttempl/elf.sc: Support ENABLE_INITFINI_ARRAY. | |
98 | ||
99 | * Makefile.in: Regenerated. | |
100 | * aclocal.m4: Regenerated. | |
101 | * config.in: Likewise. | |
102 | * configure: Likewise. | |
103 | ||
104 | 2010-12-13 Alan Modra <amodra@gmail.com> | |
105 | ||
106 | * ldlang.c (load_symbols): Correct last change. | |
107 | ||
108 | 2010-12-12 H.J. Lu <hongjiu.lu@intel.com> | |
109 | ||
110 | * ldlang.c (load_symbols): Optimize for add_archive_element. | |
111 | ||
112 | 2010-12-09 Mike Frysinger <vapier@gentoo.org> | |
113 | ||
114 | * .gitignore: New file. | |
115 | ||
116 | 2010-12-06 H.J. Lu <hongjiu.lu@intel.com> | |
117 | ||
118 | * lexsup.c (ld_options): Add -flto and -flto-partition= for | |
119 | GCC LTO option compatibility. | |
120 | ||
121 | 2010-12-06 H.J. Lu <hongjiu.lu@intel.com> | |
122 | ||
123 | PR ld/12288 | |
124 | * plugin.c (message): Don't add the trailing `\n' for | |
125 | LDPL_ERROR. | |
126 | ||
127 | 2010-12-06 H.J. Lu <hongjiu.lu@intel.com> | |
128 | ||
129 | PR ld/12288 | |
130 | * testplug.c: Remove the trailing `\n' from TV_MESSAGE. | |
131 | ||
132 | 2010-12-06 Dmitry Gorbachev <d.g.gorbachev@gmail.com> | |
133 | ||
134 | PR ld/12288 | |
135 | * plugin.c (message): Use putchar for the trailing `\n'. | |
136 | ||
137 | 2010-12-06 H.J. Lu <hongjiu.lu@intel.com> | |
138 | Dmitry Gorbachev <d.g.gorbachev@gmail.com> | |
139 | ||
140 | PR ld/12289 | |
141 | * ldmain.c (main): Don't call plugin_call_cleanup. | |
142 | ||
143 | * plugin.c (plugin_call_cleanup): Make it static. | |
144 | (message): Don't call plugin_call_cleanup. | |
145 | (plugin_load_plugins): Call xatexit with plugin_call_cleanup. | |
146 | ||
147 | 2010-12-05 H.J. Lu <hongjiu.lu@intel.com> | |
148 | ||
149 | PR ld/12289 | |
150 | * plugin.c (message): Call plugin_call_cleanup on fatal | |
151 | error. | |
152 | ||
153 | 2010-12-05 H.J. Lu <hongjiu.lu@intel.com> | |
154 | ||
155 | * plugin.c (message): Add a space after `:' in error message. | |
156 | ||
157 | 2010-12-05 H.J. Lu <hongjiu.lu@intel.com> | |
158 | ||
159 | * plugin.c (asymbol_from_plugin_symbol): Add the trailing `\n' | |
160 | to einfo. | |
161 | (get_symbols): Likewise. | |
162 | (plugin_notice): Likewise. | |
163 | (plugin_multiple_definition): Likewise. | |
164 | ||
165 | 2010-12-05 H.J. Lu <hongjiu.lu@intel.com> | |
166 | ||
167 | PR ld/12288 | |
168 | * plugin.c (message): Add the trailing `\n'. | |
169 | ||
170 | 2010-12-05 H.J. Lu <hongjiu.lu@intel.com> | |
171 | ||
172 | * ldfile.c (ldfile_open_file_search): Check maybe_archive instead | |
173 | of is_archive. | |
174 | * emultempl/aix.em: Likewise. | |
175 | * emultempl/elf32.em: Likewise. | |
176 | * emultempl/linux.em: Likewise. | |
177 | * emultempl/pe.em: Likewise. | |
178 | * emultempl/pep.em: Likewise. | |
179 | * emultempl/sunos.em: Likewise. | |
180 | * emultempl/vms.em: Likewise. | |
181 | ||
182 | * ldlang.c (new_afile): Set maybe_archive instead of is_archive.. | |
183 | ||
184 | * ldlang.h (lang_input_statement_struct): Replace is_archive | |
185 | with maybe_archive. | |
186 | ||
187 | 2010-12-05 H.J. Lu <hongjiu.lu@intel.com> | |
188 | ||
189 | PR ld/12277 | |
190 | * plugin.c (asymbol_from_plugin_symbol): Properly convert LTO | |
191 | plugin visibility to ELF visibility. | |
192 | (is_visible_from_outside): Re-indent. | |
193 | ||
194 | 2010-12-04 Alan Modra <amodra@gmail.com> | |
195 | ||
196 | * ldlang.c (lang_size_sections_1): Align lma using same alignment | |
197 | as for vma. | |
198 | ||
199 | 2010-12-03 H.J. Lu <hongjiu.lu@intel.com> | |
200 | ||
201 | * lexsup.c (ld_options): Fix a typo in comments. | |
202 | ||
203 | 2010-12-01 H.J. Lu <hongjiu.lu@intel.com> | |
204 | ||
205 | * plugin.h: Re-indent. | |
206 | ||
207 | 2010-11-30 Joel Sherrill <joel.sherrill@oarcorp.com> | |
208 | ||
209 | * configure.tgt: Add sparc64-rtems. | |
210 | ||
211 | 2010-11-26 Alan Modra <amodra@gmail.com> | |
212 | ||
213 | * po/ja.po: Update. | |
214 | ||
215 | 2010-11-25 Alan Modra <amodra@gmail.com> | |
216 | ||
217 | * po/bg.po: Update. | |
218 | * po/es.po: Update. | |
219 | * po/fi.po: Update. | |
220 | * po/ja.po: New. | |
221 | * po/zh_CN.po: Update. | |
222 | ||
223 | 2010-11-25 Jan Hubicka <hubicka@ucw.cz> | |
224 | ||
225 | * scripttempl/elf.sc: Group .text.exit, text.startup and .text.hot | |
226 | sections. | |
227 | ||
228 | 2010-11-23 Matthias Klose <doko@ubuntu.com> | |
229 | ||
230 | * configure.ac: For --enable-gold, handle value `default' instead of | |
231 | `both*'. Always install ld as ld.gold, install as ld if gold is | |
232 | the default. | |
233 | * configure: Regenerate. | |
234 | ||
235 | 2010-11-21 H.J. Lu <hongjiu.lu@intel.com> | |
236 | ||
237 | * ldfile.c: Re-indent plugin code. | |
238 | * ldlang.c: Likewise. | |
239 | * ldmain.c: Likewise. | |
240 | * plugin.c: Likewise. | |
241 | ||
242 | 2010-11-20 H.J. Lu <hongjiu.lu@intel.com> | |
243 | ||
244 | PR ld/12246 | |
245 | * plugin.c (asymbol_from_plugin_symbol): Set alignment of | |
246 | common symbol to 1 for For ELF targets. | |
247 | ||
248 | 2010-11-20 H.J. Lu <hongjiu.lu@intel.com> | |
249 | ||
250 | PR ld/12247 | |
251 | * lexsup.c (parse_args): Properly report loading plugin error. | |
252 | ||
253 | 2010-11-19 Dave Korn <dave.korn.cygwin@gmail.com> | |
254 | ||
255 | * plugin.c (is_visible_from_outside): New function. | |
256 | (get_symbols): Use it. | |
257 | ||
258 | 2010-11-16 Jie Zhang <jie.zhang@analog.com> | |
259 | ||
260 | * Makefile.am (eelf32bfinfd.c, eelf32bfin.c): Depend on bfin.em. | |
261 | * Makefile.in: Regenerated. | |
262 | * emulparams/bfin.sh (EXTRA_EM_FILE): Set. | |
263 | * emulparams/elf32bfinfd.sh (EXTRA_EM_FILE): Likewise. | |
264 | * emultempl/bfin.em: New. | |
265 | ||
266 | 2010-11-16 Yasuaki Taniguchi <taniguchi.yasua@jp.fujitsu.com> | |
267 | ||
268 | * emultempl/pe.em (_list_options): Correct typo. | |
269 | * emultempl/pep.em (_list_options): Likewise. | |
270 | ||
271 | 2010-11-08 Thomas Schwinge <thomas@schwinge.name> | |
272 | ||
273 | * configure.host: Add stanza for *-*-gnu*. | |
274 | ||
275 | 2010-11-05 Pierre Muller <muller@ics.u-strasbg.fr> | |
276 | ||
277 | * emultempl/spuelf.em (new_tmp_file): Fix wrong first parameter. | |
278 | ||
279 | 2010-11-05 Tristan Gingold <gingold@adacore.com> | |
280 | ||
281 | * po/ld.pot: Regenerate | |
282 | * po/POTFILES.in: Regenerate | |
283 | ||
284 | 2010-11-05 Tristan Gingold <gingold@adacore.com> | |
285 | ||
286 | * NEWS: Add marker for 2.21. | |
287 | ||
288 | 2010-11-05 Dave Korn <dave.korn.cygwin@gmail.com> | |
289 | ||
290 | * plugin.h (plugin_active_plugins_p): New prototype. | |
291 | (is_ir_dummy_bfd): Delete prototype. | |
292 | * plugin.c: Fix formatting issues. | |
293 | (is_ir_dummy_bfd): Make static. | |
294 | (plugin_active_plugins_p): New function. | |
295 | * ldfile.c (ldfile_try_open_bfd): Use it to save work if no plugins | |
296 | are loaded. Always close file descriptor after claim handler returns. | |
297 | * ldmain.c (add_archive_element): Likewise. | |
298 | ||
299 | 2010-11-05 Alan Modra <amodra@gmail.com> | |
300 | ||
301 | * ldlang.c (lang_add_section): Distinguish ELF treatment of NOLOAD. | |
302 | (map_input_to_output_sections): Likewise. | |
303 | (lang_size_sections_1): Likewise. | |
304 | (IGNORE_SECTION): Don't test SEC_NEVER_LOAD. | |
305 | (lang_check_section_addresses): Likewise. | |
306 | ||
307 | 2010-11-04 Kai Tietz <kai.tietz@onevision.com> | |
308 | ||
309 | * scripttempl/pe.sc (.debug_types): New. | |
310 | * scripttempl/pep.sc: Likewise. | |
311 | ||
312 | 2010-11-04 Alan Modra <amodra@gmail.com> | |
313 | ||
314 | * plugin.c (is_ir_dummy_bfd): Don't segfault on NULL abfd. | |
315 | ||
316 | 2010-11-03 Nick Clifton <nickc@redhat.com> | |
317 | ||
318 | PR ld/12001 | |
319 | * ldlang.c (ldlang_def_chain_list): New variable. Contains a list | |
320 | of symbols defined via the --defsym command line option and | |
321 | currently waiting assignment. | |
322 | (insert_defined): Add a defined symbol to the symbol table. | |
323 | (ldlang_add_def): Add a entry to the ldlang_def_chain_list. | |
324 | (lang_place_defineds): Walk ldlang_def_chain_list defining the | |
325 | symbols. | |
326 | (lang_process): Call lang_place_defineds. | |
327 | (lang_add_assignment): If the assignment has come from a --defsym | |
328 | command line option then call lang_add_def. | |
329 | ||
330 | 2010-11-03 Alan Modra <amodra@gmail.com> | |
331 | ||
332 | * Makefile.am (eelf64hppa.c): Correct dependencies. | |
333 | * Makefile.in: Regenerate. | |
334 | ||
335 | 2010-11-02 H.J. Lu <hongjiu.lu@intel.com> | |
336 | ||
337 | * scripttempl/armbpabi.sc: Include compressed DWARF debug | |
338 | sections. | |
339 | * scripttempl/avr.sc: Likewise. | |
340 | * scripttempl/elf32cr16.sc: Likewise. | |
341 | * scripttempl/elf32crx.sc: Likewise. | |
342 | * scripttempl/elf32msp430.sc: Likewise. | |
343 | * scripttempl/elf32msp430_3.sc: Likewise. | |
344 | * scripttempl/elf32sh-symbian.sc: Likewise. | |
345 | * scripttempl/elf64hppa.sc: Likewise. | |
346 | * scripttempl/elf_chaos.sc: Likewise. | |
347 | * scripttempl/elfd10v.sc: Likewise. | |
348 | * scripttempl/elfd30v.sc: Likewise. | |
349 | * scripttempl/elfi370.sc: Likewise. | |
350 | * scripttempl/elfm68hc11.sc: Likewise. | |
351 | * scripttempl/elfm68hc12.sc: Likewise. | |
352 | * scripttempl/elfxtensa.sc: Likewise. | |
353 | * scripttempl/ip2k.sc: Likewise. | |
354 | * scripttempl/iq2000.sc: Likewise. | |
355 | * scripttempl/mep.sc: Likewise. | |
356 | * scripttempl/mmo.sc: Likewise. | |
357 | * scripttempl/v850.sc: Likewise. | |
358 | * scripttempl/xstormy16.sc: Likewise. | |
359 | ||
360 | 2010-10-29 H.J. Lu <hongjiu.lu@intel.com> | |
361 | ||
362 | * ldfile.c (ldfile_try_open_bfd): Set BFD_DECOMPRESS after | |
363 | bfd_openr returns. | |
364 | * emultempl/elf32.em (gld${EMULATION_NAME}_try_needed): Likewise. | |
365 | ||
366 | * scripttempl/elf.sc: Include compressed DWARF debug sections. | |
367 | ||
368 | 2010-10-28 Alan Modra <amodra@gmail.com> | |
369 | ||
370 | * ldfile.c (find_scripts_dir): Don't look in absolute SCRIPTDIR. | |
371 | ||
372 | 2010-10-28 Matthias Klose <doko@ubuntu.com> | |
373 | ||
374 | * ld.texinfo: Add directory section for info document. | |
375 | * ldint.texinfo: Likewise. | |
376 | ||
377 | 2010-10-28 Alan Modra <amodra@gmail.com> | |
378 | ||
379 | * emultempl/ppc64elf.em (gld${EMULATION_NAME}_new_vers_pattern): For | |
380 | --no-undefined-version, don't report dot sym versions added by ld. | |
381 | ||
382 | 2010-10-28 Alan Modra <amodra@gmail.com> | |
383 | ||
384 | * ldlang.h (ldlang_add_undef): Add cmdline param. | |
385 | * ldlang.c (undef_from_cmdline): New var. | |
386 | (ldlang_add_undef): Add cmdline param. Set undef_from_cmdline. | |
387 | (lang_end): Really require -e or -u from command line on | |
388 | relocatable --gc-sections. | |
389 | * ldemul.c (after_parse_default): Adjust ldlang_add_undef call. | |
390 | * ldgram.y (extern_name_list_body): Likewise. | |
391 | * lexsup.c (parse_args): Likewise. | |
392 | * emultempl/aix.em (gld${EMULATION_NAME}_read_file): Likewise. | |
393 | ||
394 | 2010-10-25 Alan Modra <amodra@gmail.com> | |
395 | ||
396 | * plugin.c (plugin_get_ir_dummy_bfd): Set bfd_use_reserved_id. | |
397 | Formatting. | |
398 | ||
399 | 2010-10-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> | |
400 | ||
401 | * emulparams/elf32_sparc_sol2.sh (OUTPUT_FORMAT): Set to | |
402 | elf32-sparc-sol2. | |
403 | * emulparams/elf64_sparc_sol2.sh (OUTPUT_FORMAT): Set to | |
404 | elf64-sparc-sol2. | |
405 | ||
406 | 2010-10-22 Alan Modra <amodra@gmail.com> | |
407 | ||
408 | * ldwrite.c (build_link_order <lang_data_statement_enum>): Don't | |
409 | output when section has no contents. | |
410 | (build_link_order <lang_reloc_statement_enum>): Likewise. | |
411 | ||
412 | 2010-10-21 Joseph Myers <joseph@codesourcery.com> | |
413 | ||
414 | * emulparams/elf32_tic6x_le.sh (ATTRS_SECTIONS): Use | |
415 | .c6xabi.attributes, not __TI_build_attributes. | |
416 | ||
417 | 2010-10-20 Dave Korn <dave.korn.cygwin@gmail.com> | |
418 | ||
419 | * plugin.c (get_symbols): Check symbol type correctly. | |
420 | ||
421 | 2010-10-15 Dave Korn <dave.korn.cygwin@gmail.com> | |
422 | ||
423 | * configure.in: If <dlfcn.h> can't be found, try for <Windows.h> | |
424 | * configure: Regenerate. | |
425 | * config.in: Likewise. | |
426 | * plugin.c [!HAVE_DLFCN_H && HAVE_WINDOWS_H] (dlopen): Provide | |
427 | trival LoadLibrary-based replacement for Windows systems. | |
428 | [!HAVE_DLFCN_H && HAVE_WINDOWS_H] (dlsym): Likewise trivial | |
429 | replacement based on GetProcAddress. | |
430 | [!HAVE_DLFCN_H && HAVE_WINDOWS_H] (dlsym): Likewise FreeLibrary. | |
431 | * sysdep.h: Don't infer presence of <dlfcn.h> from ENABLE_PLUGINS | |
432 | anymore, use its own guard. | |
433 | ||
434 | 2010-10-15 Dave Korn <dave.korn.cygwin@gmail.com> | |
435 | ||
436 | * plugin.c (add_input_file): Take copy of input string. | |
437 | (add_input_library): Likewise. | |
438 | (set_extra_library_path): Likewise. | |
439 | ||
440 | 2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com> | |
441 | ||
442 | Apply LD plugin patch series (part 6/6). | |
443 | * ldlang.c (load_symbols): Handle bfd subsitution when calling the | |
444 | add_archive_element callback. | |
445 | * ldmain.c (add_archive_element)[ENABLE_PLUGINS]: Offer the archive | |
446 | member to the plugins and if claimed set "subsbfd" output parameter to | |
447 | point to the dummy IR-only BFD. | |
448 | ||
449 | 2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com> | |
450 | ||
451 | Apply LD plugin patch series (part 5/6). | |
452 | * plugin.c (asymbol_from_plugin_symbol): If the bfd is an ELF bfd, | |
453 | find the elf symbol data and set the visibility in the st_other field. | |
454 | ||
455 | 2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com> | |
456 | ||
457 | Apply LD plugin patch series (part 4/6). | |
458 | * ldlang.c (lang_process)[ENABLE_PLUGINS]: Move invocation of | |
459 | plugin_call_all_symbols_read to before setting of gc_sym_list, and | |
460 | open any new input files that may have been added during it. | |
461 | * ldmain.c (multiple_definition)[ENABLE_PLUGINS]: Call out to | |
462 | plugin_multiple_definition and let it have first say over what to do | |
463 | with the clashing definitions. | |
464 | * plugin.c (no_more_claiming): New boolean variable. | |
465 | (plugin_cached_allow_multiple_defs): Likewise. | |
466 | (add_input_file): Implement. | |
467 | (add_input_library): Likewise. | |
468 | (set_extra_library_path): Likewise. | |
469 | (plugin_call_claim_file): Don't do anything when no_more_claiming set. | |
470 | (plugin_call_all_symbols_read): Set it. Disable link info | |
471 | "allow_multiple_definition" flag, but cache its value. | |
472 | (plugin_multiple_definition): New function. | |
473 | * plugin.h (plugin_multiple_definition): Add prototype. | |
474 | * testplug.c (addfile_enum_t): New enumerated typedef. | |
475 | (add_file_t): New struct typedef. | |
476 | (addfiles_list): New variable. | |
477 | (addfiles_tail_chain_ptr): Likewise. | |
478 | (record_add_file): New function. | |
479 | (parse_option): Parse "add:", "lib:" and "dir:" options and call it. | |
480 | (onall_symbols_read): Iterate the list of new files, libs and dirs, | |
481 | adding them. | |
482 | ||
483 | 2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com> | |
484 | ||
485 | Apply LD plugin patch series (part 3/6). | |
486 | * ldmain.c (notice)[ENABLE_PLUGINS]: Call plugin_notice. | |
487 | * plugin.c (non_ironly_hash): Add new bfd hash table. | |
488 | (plugin_load_plugins): Exit early if no plugins to load. If plugins | |
489 | do load successfully, set notice_all flag in link info. | |
490 | (get_symbols): Implement. | |
491 | (plugin_load_plugins): Exit early if no plugins to load, else after | |
492 | loading plugins successfully enable notice_all mode. | |
493 | (init_non_ironly_hash): Lazily init non_ironly_hash table. | |
494 | (plugin_notice): Record symbols referenced from non-IR files in the | |
495 | non_ironly_hash. Suppress tracing, cref generation and nocrossrefs | |
496 | tracking for symbols from dummy IR bfds. | |
497 | * plugin.h: Fix formatting. | |
498 | (plugin_notice): Add prototype. | |
499 | * testplug.c (dumpresolutions): New global var. | |
500 | (parse_options): Accept "dumpresolutions". | |
501 | (onall_symbols_read): Get syms and dump resolutions if it was given. | |
502 | ||
503 | 2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com> | |
504 | ||
505 | Apply LD plugin patch series (part 2/6). | |
506 | * ldfile.c (ldfile_try_open_bfd)[ENABLE_PLUGINS]: Don't return early | |
507 | during compat checks if they pass, instead offer any successfully | |
508 | opened and accepted file to the plugin claim file hooks chain. Create | |
509 | a dummy bfd to accept symbols added by the plugin, if the plugin | |
510 | claims the file. | |
511 | * ldlang.c (lang_process)[ENABLE_PLUGINS]: Call plugin all symbols | |
512 | read hook chain before ldemul_after_open. | |
513 | * ldlang.h (struct lang_input_statement_struct): Add new single-bit | |
514 | 'claimed' flag. | |
515 | * plugin.c (IRONLY_SUFFIX): New macro for dummy bfd file suffix. | |
516 | (IRONLY_SUFFIX_LEN): Length of the above string. | |
517 | (plugin_get_ir_dummy_bfd): New function to create the dummy bfd used | |
518 | to store symbols for ir-only files. | |
519 | (is_ir_dummy_bfd): New function to check if a bfd is ir-only. | |
520 | (asymbol_from_plugin_symbol): New function converts symbol formats. | |
521 | (add_symbols): Call it to convert plugin syms to bfd syms and add | |
522 | them to the dummy bfd. | |
523 | * plugin.h: Add missing include guards. | |
524 | (plugin_get_ir_dummy_bfd): Add prototype. | |
525 | (is_ir_dummy_bfd): Likewise. | |
526 | * testplug.c (TV_MESSAGE): New helper macro. | |
527 | (struct claim_file): New struct. | |
528 | (claim_file_t): New typedef. | |
529 | (tag_names[]): Make static and const. | |
530 | (claimfiles_list): New variable. | |
531 | (claimfiles_tail_chain_ptr): Likewise. | |
532 | (last_claimfile): Likewise. | |
533 | (record_claim_file): Record a file to claim on a singly-linked list. | |
534 | (parse_symdefstr): Parse an ASCII representation of a symbol from a | |
535 | plugin option into the fields of a struct ld_plugin_symbol. | |
536 | (record_claimed_file_symbol): Use it to parse plugin option for | |
537 | adding a symbol. | |
538 | (parse_option): Parse claim file and add symbol options. | |
539 | (dump_tv_tag): Use TV_MESSAGE. | |
540 | (onload): Likewise. | |
541 | (onclaim_file): Make static. Use TV_MESSAGE. Scan list of files to | |
542 | claim and claim this file if required, adding any symbols specified. | |
543 | (onall_symbols_read): Make static and use TV_MESSAGE. | |
544 | (oncleanup): Likewise. | |
545 | ||
546 | 2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com> | |
547 | ||
548 | Apply LD plugin patch series (part 1/6). | |
549 | * configure.in: Add AC_CHECKs for file io and dlfcn headers and | |
550 | functions and AC_SEARCH for -ldl. | |
551 | (enable_plugins): New shell variable set if above tests find dlopen | |
552 | functionality. | |
553 | (ENABLE_PLUGINS): Add related automake conditional. | |
554 | * configure: Regenerate. | |
555 | * config.in: Likewise. | |
556 | * Makefile.am (PLUGIN_C): Declare plugin C source file, conditional | |
557 | on ENABLE_PLUGINS being defined. | |
558 | (PLUGIN_H): Likewise for header file. | |
559 | (PLUGIN_OBJECT): Likewise for object file. | |
560 | (PLUGIN_CFLAGS): Likewise -D flag required to compile plugin support. | |
561 | (AM_CPPFLAGS): Use PLUGIN_CFLAGS. | |
562 | (CFILES): Use PLUGIN_C. | |
563 | (HFILES): Use PLUGIN_H. | |
564 | (OFILES): Use PLUGIN_OBJECT. | |
565 | (ld_new_SOURCES): Use PLUGIN_C. | |
566 | (noinst_LTLIBRARIES)[ENABLE_PLUGINS]: Declare test plugin. | |
567 | (libldtestplug_la_SOURCES)[ENABLE_PLUGINS]: Add automake definition | |
568 | for test plugin. | |
569 | (libldtestplug_la_CFLAGS)[ENABLE_PLUGINS]: Likewise. | |
570 | (libldtestplug_la_LDFLAGS)[ENABLE_PLUGINS]: Likewise. | |
571 | * Makefile.in: Regenerate. | |
572 | * sysdep.h: Include stdarg.h, unistd.h and one of fcntl.h or | |
573 | sys/file.h where available. Include dlfcn.h when ENABLE_PLUGINS. | |
574 | (O_RDONLY): Supply default definition likewise to bfd's sysdep.h | |
575 | (O_WRONLY): Likewise. | |
576 | (O_RDWR): Likewise. | |
577 | (O_ACCMODE): Likewise. | |
578 | (O_BINARY): Likewise. | |
579 | (SEEK_SET): Likewise. | |
580 | (SEEK_CUR): Likewise. | |
581 | (SEEK_END): Likewise. | |
582 | * ldmisc.c (vfinfo): Make non-static. Add %p format char. | |
583 | * ldmisc.h (vfinfo): Declare extern prototype. | |
584 | * lexsup.c (enum option_values)[ENABLE_PLUGINS]: Add new entries for | |
585 | OPTION_PLUGIN and OPTION_PLUGIN_OPT. | |
586 | (ld_options[])[ENABLE_PLUGINS]: Add option data for the above two. | |
587 | (parse_args)[ENABLE_PLUGINS]: Handle them, and load all plugins once | |
588 | option parsing is complete. | |
589 | * ldmain.c (main)[ENABLE_PLUGINS]: Call plugin cleanup hooks just | |
590 | after lang_finish. | |
591 | * plugin.c: New source file. | |
592 | * plugin.h: Likewise new header. | |
593 | * testplug.c: New source file. | |
594 | ||
595 | 2010-10-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> | |
596 | ||
597 | * emultempl/solaris2.em (elf_solaris2_before_allocation): Renamed | |
598 | basever_syms to global_syms. | |
599 | Emit global_syms into .dynamic section for all executables and | |
600 | shared objects. | |
601 | (elf_solaris2_after_allocation): New function. | |
602 | (LDEMUL_AFTER_ALLOCATION): Use it. | |
603 | * emulparams/solaris2.sh: New file. | |
604 | * emulparams/elf32_sparc_sol2.sh: Use it. | |
605 | * emulparams/elf64_sparc_sol2.sh: Likewise. | |
606 | * emulparams/elf_i386_sol2.sh: Likewise. | |
607 | * emulparams/elf_x86_64_sol2.sh: Likewise. | |
608 | * Makefile.am (eelf32_sparc_sol2.c): Depend on | |
609 | $(srcdir)/emulparams/solaris2.sh. | |
610 | (eelf64_sparc_sol2.c): Likewise. | |
611 | (eelf_x86_64_sol2.c): Likewise. | |
612 | (eelf_i386_sol2.c): Likewise. | |
613 | * Makefile.in: Regenerate. | |
614 | ||
615 | 2010-10-06 Nick Clifton <nickc@redhat.com> | |
616 | ||
617 | * ld.texinfo: Update description of computation of VMA and LMA | |
618 | addresses for output sections. | |
619 | ||
620 | 2010-10-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> | |
621 | ||
622 | * Makefile.am (ALL_64_EMULATIONS): Fix typo in last commit. | |
623 | * Makefile.in: Regenerate. | |
624 | ||
625 | * Makefile.am (ALL_EMULATIONS): Rewrite in terms of ... | |
626 | (ALL_EMULATION_SOURCES): ... this new variable. | |
627 | (ALL_64_EMULATIONS): Rewrite in terms of ... | |
628 | (ALL_64_EMULATION_SOURCES): ... this new variable. | |
629 | (EXTRA_ld_new_SOURCES): Rewrite in terms of the _SOURCES | |
630 | variables. | |
631 | (eelf32microblaze.c): Fix indentation. | |
632 | * Makefile.in: Regenerate. | |
633 | ||
634 | 2010-10-04 Bernd Schmidt <bernds@codesourcery.com> | |
635 | ||
636 | * emultempl/xtensaelf.em (replace_insn_sec_with_prop_sec): Use | |
637 | _bfd_elf_single_rel_hdr. | |
638 | ||
639 | 2010-10-01 Alan Modra <amodra@gmail.com> | |
640 | ||
641 | PR ld/12066 | |
642 | * ldexp.c (fold_name): Treat absolute symbols as plain numbers. | |
643 | * ld.texinfo (Expression Section): Don't say absolute symbols | |
644 | are addresses. | |
645 | ||
646 | 2010-09-29 Alan Modra <amodra@gmail.com> | |
647 | ||
648 | * ldlang.c (lang_place_orphans): Zero vma when relocatable or non-load | |
649 | section for orphans handled here. | |
650 | ||
651 | 2010-09-27 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> | |
652 | ||
653 | * configure: Regenerate. | |
654 | ||
655 | 2010-09-23 Dave Korn <dave.korn.cygwin@gmail.com> | |
656 | ||
657 | * scripttempl/armcoff.sc: Revert 2010-09-22 change. | |
658 | ||
659 | 2010-09-23 Alan Modra <amodra@gmail.com> | |
660 | ||
661 | * ldlang.c (lang_add_section): Don't copy SEC_RELOC from input | |
662 | to output section on a final link. | |
663 | ||
664 | 2010-09-22 Kai Tietz <kai.tietz@onevision.com> | |
665 | ||
666 | * ldlang.c (lang_add_section): Allow for debugging | |
667 | section to be marked as noload but to keep content. | |
668 | (IGNORE_SECTION): Likewise. | |
669 | (lang_check_section_addresses): Likewise. | |
670 | * ldwrite.c (build_link_order): Likewise. | |
671 | ||
672 | * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Add | |
673 | idata to orphan set. | |
674 | * emultempl/pep.em: Likewise. | |
675 | * scripttempl/armcoff.sc: Separate idata | |
676 | and add __IAT_start__ and __IAT_end__ labels. | |
677 | * scripttempl/pe.sc: Likewise. | |
678 | * scripttempl/pep.sc: Likewise. | |
679 | ||
680 | 2010-09-20 David S. Miller <davem@davemloft.net> | |
681 | ||
682 | * emulparams/elf32_sparc.sh: Set NOP to 0x01000000 | |
683 | ||
684 | 2010-09-16 Alan Modra <amodra@gmail.com> | |
685 | ||
686 | * ld.texinfo (NOLOAD): Do not erroneously state that contents will | |
687 | appear in output file. | |
688 | * ldlang.c (lang_add_section): Clear SEC_HAS_CONTENTS on noload | |
689 | unless SEC_COFF_SHARED_LIBRARY. | |
690 | (map_input_to_output_sections): Don't set SEC_HAS_CONTENTS for noload | |
691 | output sections. | |
692 | (lang_size_sections_1): Don't test SEC_NEVER_LOAD when deciding | |
693 | to update dot in region. Ditto when setting SEC_ALLOC if dot | |
694 | advanced due to assignment. | |
695 | * ldwrite.c (build_link_order): Don't test SEC_NEVER_LOAD. | |
696 | ||
697 | 2010-09-15 Kai Tietz <kai.tietz@onevision.com> | |
698 | ||
699 | * scripttempl/pep.sc: Add .xdata segment and | |
700 | put into .pdata all segments beginning with .pdata. | |
701 | ||
702 | 2010-09-10 Alan Modra <amodra@gmail.com> | |
703 | ||
704 | PR ld/11931 | |
705 | * ldlang.h (lang_for_each_statement_worker): Declare. | |
706 | * ldlang.c (lang_for_each_statement_worker): Make global. Don't | |
707 | recurse into children of output_section_statement with constraint | |
708 | set to -1. | |
709 | (print_assignment): Handle NULL output_section->bfd_section. | |
710 | (lang_size_sections_1): Ignore output section statement address | |
711 | when constraint is -1. | |
712 | * emultempl/xtensaelf.em (lang_for_each_statement_worker): Delete. | |
713 | ||
714 | 2010-09-09 Tristan Gingold <gingold@adacore.com> | |
715 | ||
716 | * NEWS: Add a entry for alpha-vms. | |
717 | ||
718 | 2010-09-07 Andrew Burgess <aburgess@broadcom.com> | |
719 | ||
720 | * ldwrite.c (clone_section): Call bfd_copy_private_section_data on | |
721 | newly cloned section. | |
722 | ||
723 | 2010-09-02 Richard Henderson <rth@redhat.com> | |
724 | ||
725 | * configure.tgt (x86_64-*-mingw*): Add 32-bit pe emulations too. | |
726 | ||
727 | 2010-08-31 Nick Clifton <nickc@redhat.com> | |
728 | ||
729 | * ldlex.l (WILDCHAR): Add the caret and exclamation point | |
730 | characters, so that they can be used inside globs. | |
731 | ||
732 | 2010-08-31 Nick Clifton <nickc@redhat.com> | |
733 | ||
734 | * ld.texinfo (MEMORY): Clarify the behaviour of the ! character in | |
735 | a region's attributes. | |
736 | ||
737 | 2010-08-31 Alan Modra <amodra@gmail.com> | |
738 | ||
739 | * scripttempl/mmo.sc: Move assignment to "Main" inside .text | |
740 | output section statement. | |
741 | ||
742 | 2010-08-25 H.J. Lu <hongjiu.lu@intel.com> | |
743 | ||
744 | PR ld/11946 | |
745 | * emultempl/elf32.em (_before_allocation): Check audit entry | |
746 | only on ELF input. | |
747 | ||
748 | 2010-08-22 H.J. Lu <hongjiu.lu@intel.com> | |
749 | ||
750 | PR ld/11937 | |
751 | * emultempl/elf32.em (_after_open): Find one .eh_frame section | |
752 | for --eh-frame-hdr. | |
753 | ||
754 | 2010-08-22 H.J. Lu <hongjiu.lu@intel.com> | |
755 | ||
756 | PR ld/11937 | |
757 | * emultempl/elf32.em (_after_open): Find an ELF input for | |
758 | --build-id and --eh-frame-hdr. | |
759 | ||
760 | 2010-08-20 Maciej W. Rozycki <macro@codesourcery.com> | |
761 | ||
762 | * Makefile.am (eshlelf_fd.c): Correct the name of the tool | |
763 | directory. | |
764 | * Makefile.in: Regenerate. | |
765 | ||
766 | 2010-08-20 Nick Clifton <nickc@redhat.com> | |
767 | ||
768 | * emultempl/elf32.em (_after_open): Check for get_elf_backend_data | |
769 | returning NULL. | |
770 | ||
771 | 2010-08-19 Alan Modra <amodra@gmail.com> | |
772 | ||
773 | * NEWS: Mention change in linker script expression evaluation. | |
774 | ||
775 | 2010-08-19 Alan Modra <amodra@gmail.com> | |
776 | ||
777 | * ld.texinfo (Expression Section): Detail expression evaluation. | |
778 | (Builtin Functions <ADDR>): Correct. | |
779 | (Builtin Functions <LOADADDR>): Don't mention LOADADDR normally | |
780 | the same as ADDR. | |
781 | (Builtin Functions <SEGMENT_START>): Typo fix. | |
782 | * ldexp.c (new_number): New function. | |
783 | (make_abs, exp_get_abs_int): Cope with NULL expld.result.section. | |
784 | (fold_unary <'~', '!', '-'>): Don't make_abs. | |
785 | (fold_binary): Simplify result section logic. Return NULL section | |
786 | for logical ops. | |
787 | (fold_binary <SEGMENT_START>): Use new_rel_from_abs to set value to | |
788 | a consistent result. | |
789 | (fold_name <SIZEOF_HEADERS>): Return new_number, not new_abs. | |
790 | (fold_name <DEFINED, SIZEOF, ALIGNOF, LENGTH, CONSTANT>): Likewise. | |
791 | (fold_name <NAME>): No need to handle absolute symbols differently | |
792 | from relative ones. | |
793 | (fold_name <ORIGIN>): Don't return valid result when | |
794 | lang_first_phase_enum. Return new_rel_from_abs, not new_abs. | |
795 | (exp_fold_tree_1 <etree_value>): Return new_number, not new_rel. | |
796 | (exp_fold_tree_1): Ajust for NULL expld.result.section. When assigning | |
797 | a plain number to dot, assume the value is relative to expld.section. | |
798 | Make terms not in an output section, absolute. | |
799 | * ldlang.c (print_assignment): Fix style nit. | |
800 | (lang_size_sections_1): Cope with NULL expld.result.section. | |
801 | (lang_do_assignments_1): Likewise. | |
802 | ||
803 | 2010-08-12 Alan Modra <amodra@gmail.com> | |
804 | ||
805 | * ldexp.c (new_rel): Remove "str". Update all call sites. | |
806 | (exp_fold_tree_1): When assigning to dot, calculate nextdot | |
807 | using expld.result.section rather than expld.section. | |
808 | ||
809 | 2010-08-06 Alan Modra <amodra@gmail.com> | |
810 | ||
811 | PR ld/11887 | |
812 | * ldlang.c (lang_add_vers_depend): Don't leave version_needed | |
813 | uninitialised. | |
814 | ||
815 | 2010-07-28 Alan Modra <amodra@gmail.com> | |
816 | ||
817 | * ldexp.c (exp_print_tree): Print function-like binary nodes as | |
818 | functions rather than in-fix operators. Use fputs and fputc | |
819 | where appropriate. | |
820 | ||
821 | 2010-07-23 Naveen.H.S <naveen.S@kpitcummins.com> | |
822 | Ina Pandit <ina.pandit@kpitcummins.com> | |
823 | ||
824 | * configure.tgt: Match all v850 targets. | |
825 | ||
826 | 2010-07-20 Mike Frysinger <vapier@gentoo.org> | |
827 | ||
828 | * ld.texinfo (VERSION): Remove "int" from example script and add ";". | |
829 | Declare the default language as C. | |
830 | ||
831 | 2010-07-17 Alan Modra <amodra@gmail.com> | |
832 | ||
833 | * ldlang.c (lang_check_section_addresses): Catch overlap for | |
834 | sections that wrap around the address space. | |
835 | ||
836 | 2010-06-29 Nick Clifton <nickc@redhat.com> | |
837 | ||
838 | * scripttempl/xstormy16.sc (.gcc_except_table): Include sections | |
839 | with the .gcc_except_table. prefix. | |
840 | ||
841 | 2010-06-29 Alan Modra <amodra@gmail.com> | |
842 | ||
843 | * emulparams/maxqcoff.sh: Delete file. | |
844 | * scripttempl/maxqcoff.sc: Delete file. | |
845 | * Makefile.am: Remove references to maxq. | |
846 | * configure.tgt: Likewise. | |
847 | * Makefile.in: Regenerate. | |
848 | * configure: Regenerate. | |
849 | * po/POTFILES.in: Regenerate. | |
850 | ||
851 | 2010-06-27 Alan Modra <amodra@gmail.com> | |
852 | ||
853 | * pe-dll.c (fill_edata): Avoid set but unused warning. | |
854 | (pe_walk_relocs_of_symbol): Delete set but unused variables. | |
855 | (generate_reloc, pe_implied_import_dll): Likewise. | |
856 | * emultempl/aix.em (open_dynamic_archive): Likewise. | |
857 | * emultempl/xtensaelf.em (replace_insn_sec_with_prop_sec): Likewise. | |
858 | (xtensa_layout_wild): Likewise. | |
859 | (xtensa_colocate_output_literals_callback): Likewise. | |
860 | ||
861 | 2010-06-25 Alan Modra <amodra@gmail.com> | |
862 | ||
863 | * emultempl/ppc64elf.em (prelim_size_sections): New function. | |
864 | (ppc_before_allocation): Use it. Size sections before toc edit too. | |
865 | ||
866 | 2010-06-25 Alan Modra <amodra@gmail.com> | |
867 | ||
868 | * emultempl/elf32.em (find_exp_assignment): Handle etree_provided. | |
869 | ||
870 | 2010-06-20 Danny Smith <dannysmith@users.sourceforge.net> | |
871 | ||
872 | * emultempl/pe.em (gld_${EMULATION_NAME}_before_parse): Make | |
873 | auto-import and merge-rdata defaults same for i[3-7]86 and | |
874 | x86_64 mingw. | |
875 | ||
876 | 2010-06-15 Joseph Myers <joseph@codesourcery.com> | |
877 | ||
878 | * emulparams/elf32_tic6x_le.sh (ATTRS_SECTIONS): Define. | |
879 | ||
880 | 2010-06-09 Dave Korn <dave.korn.cygwin@gmail.com> | |
881 | ||
882 | PR ld/11603 | |
883 | * pe-dll.c (process_def_file_and_drectve): Reorder check for | |
884 | forwarded export name after check for ordinary export. | |
885 | ||
886 | 2010-06-08 Bernd Schmidt <bernds@codesourcery.com> | |
887 | ||
888 | * emulparams/elf32_tic6x_le.sh (OTHER_BSS_SECTIONS): New. | |
889 | ||
890 | 2010-06-08 Nick Clifton <nickc@redhat.com> | |
891 | ||
892 | * fdl.texi: Replace with v1.3 text. | |
893 | * ld.texinfo: Replace abbreviated 20th century year numbers with | |
894 | full versions. | |
895 | * ldint.texinfo: Likewise. | |
896 | Relicense under GFDL v1.3. Replace text of v1.1 FDL with an | |
897 | include of the fdl.texi file. | |
898 | ||
899 | 2010-06-01 Tristan Gingold <gingold@adacore.com> | |
900 | ||
901 | * scripttempl/alphavms.sc: Add comments. Move $LINK$ to the | |
902 | readonly output-section. Handle LIB$INITIALIZE and sections | |
903 | created by gcc. | |
904 | * emultempl/vms.em (vms_place_orphan): Add comments. | |
905 | ||
906 | 2010-05-28 Nick Clifton <nickc@redhat.com> | |
907 | ||
908 | * Makefile.am (eshlelf_fd.c): Fix typo in rule. | |
909 | * Makefile.in: Regenerate. | |
910 | ||
911 | 2010-05-26 H.J. Lu <hongjiu.lu@intel.com> | |
912 | ||
913 | PR ld/11628 | |
914 | * ldexp.c (fold_binary): Warn if value of SEGMENT_START isn't | |
915 | multiple of maximum page size. | |
916 | ||
917 | 2010-05-25 Nick Clifton <nickc@redhat.com> | |
918 | ||
919 | * Makefile.am: Fix typo. | |
920 | * Makefile.in: Regenerate. | |
921 | ||
922 | 2010-05-25 Daniel Jacobowitz <dan@codesourcery.com> | |
923 | Joseph Myers <joseph@codesourcery.com> | |
924 | Andrew Stubbs <ams@codesourcery.com> | |
925 | ||
926 | * Makefile.am (ALL_EMULATIONS): Add eshelf_fd.o and eshlelf_fd.o. | |
927 | (eshelf_fd.c, eshlelf_fd.c): New rules. | |
928 | * Makefile.in: Regenerate. | |
929 | * configure.tgt (sh-*-uclinux*): Add shelf_fd and shlelf_fd | |
930 | emulations. | |
931 | * emulparams/shelf_fd.sh: New file. | |
932 | * emulparams/shlelf_fd.sh: New file. | |
933 | * emulparams/shlelf_linux.sh: Update comment. | |
934 | ||
935 | 2010-05-25 Jay Krell <jay.krell@cornell.edu> | |
936 | ||
937 | PR ld/11621 | |
938 | * Makefile.am: Replace all occurences of .o with .@OBJEXT@ | |
939 | * Makefile.in: Regenerate. | |
940 | ||
941 | 2010-05-25 Kai Tietz <kai.tietz@onevision.com> | |
942 | ||
943 | * deffilep.y (opt_name): Allow leading dot. | |
944 | (dot_name): Likewise. | |
945 | (anylang_id): Likewise. | |
946 | * emultempl/pep.em (gld_${EMULATION_NAME}_before_parse): Enable by | |
947 | default auto_import. | |
948 | (gld${EMULATION_NAME}_handle_option): Warn about v1. | |
949 | (pep_find_data_imports): Remove superflous warnings about | |
950 | auto-import. | |
951 | (gld_${EMULATION_NAME}_get_script): Don't merge for auto-import | |
952 | and active pseudo-relocation-v2 rdata into data section. | |
953 | * emultempl/pe.em (default_merge_rdata): New shell variable. | |
954 | (MERGE_RDATA_V2): New macro. | |
955 | (gld_${EMULATION_NAME}_get_script): Adjust rule for auto-import | |
956 | selected script. | |
957 | ||
958 | 2010-05-15 Kai Tietz <kai.tietz@onevision.com> | |
959 | ||
960 | * emultempl/pe.em (is_underscoring): New helper function. | |
961 | (gld_${EMULATION_NAME}_before_parse): Replace code | |
962 | for pe(p)_leading_underscore detection by is_underscoring. | |
963 | (U): Likewise. | |
964 | (GET_INIT_SYMBOL_NAME): Likewise. | |
965 | (U_SIZE): Likewise. | |
966 | (set_pe_name): | |
967 | (set_entry_point): | |
968 | (gld_${EMULATION_NAME}_set_symbols): | |
969 | * emultempl/pep.em: Likewise. | |
970 | * pe-dll.c (pe_detail_list): Set default | |
971 | underscoring for x64 target. | |
972 | (pe_dll_id_target): Add initialization of | |
973 | pe(p)_leading_underscore. | |
974 | ||
975 | 2010-05-15 Dave Korn <dave.korn.cygwin@gmail.com> | |
976 | ||
977 | * pe-dll.c: Removed trailing whitespaces. | |
978 | ||
979 | 2010-05-14 Alan Modra <amodra@gmail.com> | |
980 | ||
981 | PR ld/11583 | |
982 | * ldexp.c (exp_fold_tree_1): If assignment source expression is | |
983 | invalid, make the destination symbol undefined. | |
984 | ||
985 | 2010-05-11 Kai Tietz <kai.tietz@onevision.com> | |
986 | ||
987 | * emultempl/pe.em (gld_${EMULATION_NAME}_before_parse): | |
988 | Initialize pe(p)_leading_underscore variable. | |
989 | (set_pe_name): Likewise. | |
990 | * emultempl/pep.em: Likewise. | |
991 | Additional change default to non-underscore for | |
992 | pep_leading_underscore equal to -1. | |
993 | ||
994 | 2010-05-07 Tristan Gingold <gingold@adacore.com> | |
995 | ||
996 | * Makefile.in: Regenerate with automake 1.11.1. | |
997 | * aclocal.m4: Ditto. | |
998 | ||
999 | 2010-05-05 Nick Clifton <nickc@redhat.com> | |
1000 | ||
1001 | * po/es.po: Updated Spanish translation. | |
1002 | ||
1003 | 2010-04-27 Kai Tietz <kai.tietz@onevision.com> | |
1004 | ||
1005 | * pe-dll.c (_nm_-symbols): Use always underscored variant | |
1006 | for symbols. | |
1007 | (__imp_-symbols): Likewise. | |
1008 | (___imp_-symbols): Likewise. | |
1009 | * NEWS: Mention ABI change for x64 PE-COFF. | |
1010 | ||
1011 | 2010-04-27 H.J. Lu <hongjiu.lu@intel.com> | |
1012 | ||
1013 | * Makefile.am (install-exec-local): Properly install ld as | |
1014 | default cross linker. | |
1015 | * Makefile.in: Regenerated. | |
1016 | ||
1017 | 2010-04-27 H.J. Lu <hongjiu.lu@intel.com> | |
1018 | Nick Clifton <nickc@redhat.com> | |
1019 | ||
1020 | * configure.in (install_as_default): Define and set to true | |
1021 | unless --enable-gold=both/gold has been specified. | |
1022 | * configure: Regenerate. | |
1023 | ||
1024 | * Makefile.am (transform): Use ld.bfd as the default name of | |
1025 | the linker. | |
1026 | (install-exec-local): Also install the executable as a binary | |
1027 | named 'ld' if install_as_default is true. | |
1028 | * Makefile.in: Regenerate. | |
1029 | ||
1030 | 2010-04-22 Nick Clifton <nickc@redhat.com> | |
1031 | ||
1032 | * po/ld.pot: Updated by the Translation project. | |
1033 | * po/vi.po: Updated Vietnamese translation. | |
1034 | * po/bg.po: Updated Bulgarian translation. | |
1035 | ||
1036 | 2010-04-15 Andrew Haley <aph@redhat.com> | |
1037 | ||
1038 | * emultempl/armelf.em (merge_exidx_entries): New variable. | |
1039 | (OPTION_NO_MERGE_EXIDX_ENTRIES): New definition. | |
1040 | ("no-merge-exidx-entries"): New option. | |
1041 | * ld.texinfo (merge-exidx-entries): Document this option. | |
1042 | ||
1043 | 2010-04-14 Tristan Gingold <gingold@adacore.com> | |
1044 | ||
1045 | * emulparams/alphavms.sh: New file. | |
1046 | * emultempl/vms.em: New file. | |
1047 | * scripttempl/alphavms.sc: New file. | |
1048 | * configure.tgt (alpha*-*-*vms*): Added. | |
1049 | * Makefile.am (ALL_EMULATIONS): Add ealphavms.o | |
1050 | (ealphavms.c): New target. | |
1051 | * Makefile.in: Regenerate. | |
1052 | ||
1053 | 2010-04-09 Nick Clifton <nickc@redhat.com> | |
1054 | ||
1055 | * ldlang.c (wild_sort): Remove unused variable section_name. | |
1056 | ||
1057 | 2010-04-07 Alan Modra <amodra@gmail.com> | |
1058 | ||
1059 | * configure: Regenerate. | |
1060 | ||
1061 | 2010-04-06 H.J. Lu <hongjiu.lu@intel.com> | |
1062 | ||
1063 | PR ld/11434 | |
1064 | * ld/testsuite/ld-x86-64/unique1.d: New. | |
1065 | * ld/testsuite/ld-x86-64/unique1.s: Likewise. | |
1066 | ||
1067 | * ld-x86-64/x86-64.exp: Run unique1. | |
1068 | ||
1069 | 2010-04-05 Kai Tietz <kai.tietz@onevision.com> | |
1070 | ||
1071 | * emultempl/pep.em (U): Macro modified. | |
1072 | (U_SIZE): New helper macro. | |
1073 | (GET_INIT_SYMBOL_NAME): Likewise. | |
1074 | (enum options): Add OPTION_NO_LEADING_UNDERSCORE | |
1075 | and OPTION_LEADING_UNDERSCORE enumerator-values. | |
1076 | (gld${EMULATION_NAME}_add_options): Add --(no-)leading-underscore | |
1077 | option. | |
1078 | (definfo): Add new member is_c_symbol. | |
1079 | (D): Add to macro underscore mode parameter. | |
1080 | (init): Add definition for is_c_symbol. | |
1081 | (gld_${EMULATION_NAME}_list_options): Display new options. | |
1082 | (set_pep_name): Adjust underscoring dependent fixed | |
1083 | symbol handling. | |
1084 | (gld_${EMULATION_NAME}_set_symbols): Likewise. | |
1085 | (saw_option): Likewise. | |
1086 | (gld_${EMULATION_NAME}_unrecognized_file): Likewise. | |
1087 | (set_entry_point): Initial initial_symbol_char dependent to | |
1088 | target's default and new option flag pep_leading_underscore. | |
1089 | * emultempl/pe.em (U): Macro modified. | |
1090 | (U_SIZE): New helper macro. | |
1091 | (GET_INIT_SYMBOL_NAME): Likewise. | |
1092 | (OPTION_LEADING_UNDERSCORE): Add new option define. | |
1093 | (OPTION_NO_LEADING_UNDERSCORE): Likewise. | |
1094 | (gld${EMULATION_NAME}_add_options): Add --(no-)leading-underscore | |
1095 | option. | |
1096 | (definfo): Add new member is_c_symbol. | |
1097 | (D): Add to macro underscore mode parameter. | |
1098 | (init): Add definition for is_c_symbol. | |
1099 | (gld_${EMULATION_NAME}_list_options): Display new options. | |
1100 | (set_pep_name): Adjust underscoring dependent fixed | |
1101 | symbol handling. | |
1102 | (gld_${EMULATION_NAME}_set_symbols): Likewise. | |
1103 | (saw_option): Likewise. | |
1104 | (gld_${EMULATION_NAME}_unrecognized_file): Likewise. | |
1105 | (set_entry_point): Initial initial_symbol_char dependent to | |
1106 | target's default and new option flag pep_leading_underscore. | |
1107 | * pe-dll.c (pe_leading_underscore): New flag variable. | |
1108 | (pe_detail_list): Remove const to allow modify of | |
1109 | member underscore. | |
1110 | (pe_dll_id_target): Initialize pe_details' underscore variable | |
1111 | dependent to target's default and flag pe_leading_underscore. | |
1112 | * pe-dll.h (pe_leading_underscore): Add extern declaration of | |
1113 | option flag. | |
1114 | * pep-dll.c (pe_leading_underscore): Add alias define for | |
1115 | pep_leading_underscore. | |
1116 | * pep-dll.h (pep_leading_underscore) Add extern declaration of | |
1117 | option flag. | |
1118 | * ld.texinfo: Add documentation for --(no-)leading-underscore | |
1119 | option. | |
1120 | ||
1121 | 2010-03-26 Alan Modra <amodra@gmail.com> | |
1122 | ||
1123 | PR ld/11426 | |
1124 | * configure.host (many linux targets <HOSTING_CRT0>): Remove edits. | |
1125 | (m68*-motorola-sysv <HOSTING_LIBS>): Use here doc, not echo. | |
1126 | ||
1127 | 2010-03-25 Joseph Myers <joseph@codesourcery.com> | |
1128 | ||
1129 | * Makefile.am (ALL_EMULATIONS): Add eelf32_tic6x_be.o and | |
1130 | eelf32_tic6x_le.o. | |
1131 | (eelf32_tic6x_be.c, eelf32_tic6x_le.c): New. | |
1132 | * NEWS: Add news entry for TI C6X support. | |
1133 | * configure.tgt (tic6x-*-*): New. | |
1134 | * emulparams/elf32_tic6x_be.sh, emulparams/elf32_tic6x_le.sh: New. | |
1135 | ||
1136 | 2010-03-23 Joseph Myers <joseph@codesourcery.com> | |
1137 | ||
1138 | * scripttempl/elf.sc (RODATA_NAME, SDATA_NAME, SBSS_NAME, | |
1139 | BSS_NAME): Define if not already defined. Use in place of some | |
1140 | hardcoded section names. | |
1141 | ||
1142 | 2010-03-18 H.J. Lu <hongjiu.lu@intel.com> | |
1143 | ||
1144 | * scripttempl/elf.sc (INIT_ARRAY): Re-indent. | |
1145 | ||
1146 | 2010-03-18 Aymeric Vincent <vincent@labri.fr> | |
1147 | ||
1148 | PR ld/11384 | |
1149 | * emultempl/sh64elf.em: Add missing EOF. | |
1150 | ||
1151 | 2010-03-18 Doug Semler <dougsemler@gmail.com> | |
1152 | ||
1153 | * pe-dll.c (make_one): Make text section readonly. | |
1154 | (make_one): Add *ABS* symbol @feat.00 with value 1 to tag | |
1155 | the jump stub on X86 as /SAFESEH compatible for | |
1156 | native toolchains. | |
1157 | ||
1158 | 2010-03-17 Alan Modra <amodra@gmail.com> | |
1159 | ||
1160 | * ldlang.c (lang_size_sections_1): Remove "s" param. Set "s" from | |
1161 | *prev instead. Update all callers. | |
1162 | ||
1163 | 2010-03-15 Daniel Jacobowitz <dan@codesourcery.com> | |
1164 | ||
1165 | * ldlang.c (lang_insert_orphan): Place loadable orphans in the same | |
1166 | region and phdrs as their placement section. | |
1167 | ||
1168 | 2010-03-15 Alan Modra <amodra@gmail.com> | |
1169 | ||
1170 | * emultempl/ppc64elf.em (move_input_section, sort_toc_sections): New. | |
1171 | (ppc_before_allocation): Call sort_toc_sections. | |
1172 | (no_toc_sort, OPTION_NO_TOC_SORT): New. | |
1173 | (PARSE_AND_LIST_PROLOGUE, PARSE_AND_LIST_LONGOPTS, | |
1174 | PARSE_AND_LIST_OPTIONS): Handle --no-toc-sort. | |
1175 | ||
1176 | 2010-03-14 Alan Modra <amodra@gmail.com> | |
1177 | ||
1178 | PR ld/11378 | |
1179 | * emultempl/ppc64elf.em (gld${EMULATION_NAME}_after_allocation): Call | |
1180 | ppc64_elf_check_init_fini and warn if .init/.fini use different TOCs. | |
1181 | ||
1182 | 2010-03-11 George Gensure <werkt0@gmail.com> | |
1183 | ||
1184 | PR ld/11367 | |
1185 | * ldcref.c (handle_asneeded_cref): Correct copying of refs. | |
1186 | ||
1187 | 2010-03-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> | |
1188 | ||
1189 | * Makefile.am (ALL_EMULATIONS): Add eelf32_sparc_sol2.o, | |
1190 | eelf_i386_sol2.o. | |
1191 | (ALL_64_EMULATIONS): Add eelf_x86_64_sol2.o, eelf64_sparc_sol2.o. | |
1192 | (eelf32_sparc_sol2.c): New rule. | |
1193 | (eelf64_sparc_sol2.c): Likewise. | |
1194 | (eelf_x86_64_sol2.c): Likewise. | |
1195 | (eelf_i386_sol2.c): Likewise. | |
1196 | * Makefile.in: Regenerate. | |
1197 | * configure.tgt (i[3-7]86-*-solaris2*): Change targ_emul to | |
1198 | elf_i386_sol2. | |
1199 | Add elf_i386_ldso, elf_x86_64_sol2 to targ_extra_emuls. | |
1200 | (x86_64-*-solaris2*): Change targ_emul to elf_x86_64_sol2. | |
1201 | Add elf_x86_64, elf_i386_sol2, elf_i386 to targ_extra_emuls. | |
1202 | (sparc-*-solaris2.[0-6]*): Change targ_emul to elf32_sparc_sol2. | |
1203 | Add target_extra_emuls. | |
1204 | (sparc-*-solaris2*): Change targ_emul to elf32_sparc_sol2. | |
1205 | Add elf32_sparc, elf64_sparc_sol2 to targ_extra_emuls. | |
1206 | (sparcv9-*-solaris2*): Change targ_emul to elf64_sparc_sol2. | |
1207 | Add elf64_sparc, elf32_sparc_sol2 to target_extra_emuls. | |
1208 | * emulparams/elf32_sparc_sol2.sh: New file. | |
1209 | * emulparams/elf64_sparc_sol2.sh: New file. | |
1210 | * emulparams/elf_i386_sol2.sh: New file. | |
1211 | * emulparams/elf_x86_64_sol2.sh: New file. | |
1212 | * emultempl/solaris2.em: New file. | |
1213 | ||
1214 | 2010-02-27 H.J. Lu <hongjiu.lu@intel.com> | |
1215 | ||
1216 | PR ld/11330 | |
1217 | * ld.texinfo: Replace explicitely with explicitly. | |
1218 | ||
1219 | 2010-02-27 Jie Zhang <jie@codesourcery.com> | |
1220 | ||
1221 | * scripttempl/armbpabi.sc: Don't combine .init_array.* or | |
1222 | .fini_array.* when do relocatable linking. | |
1223 | * scripttempl/elf.sc: Likewise. | |
1224 | * scripttempl/elf32sh-symbian.sc: Likewise. | |
1225 | * scripttempl/elf64hppa.sc: Likewise. | |
1226 | * scripttempl/elfxtensa.sc: Likewise. | |
1227 | ||
1228 | 2010-02-26 Alan Modra <amodra@gmail.com> | |
1229 | ||
1230 | * scripttempl/elf.sc (.fini_array): Place input .fini_array after | |
1231 | .fini_array.*. | |
1232 | * scripttempl/armbpabi.sc: Likewise. | |
1233 | * scripttempl/elf32sh-symbian.sc: Likewise. | |
1234 | * scripttempl/elf64hppa.sc: Likewise. | |
1235 | * scripttempl/elfxtensa.sc: Likewise. | |
1236 | ||
1237 | 2010-02-25 Alan Modra <amodra@gmail.com> | |
1238 | ||
1239 | PR ld/11304 | |
1240 | * ldlang.c (init_os): Remove isec param. Don't check for | |
1241 | bfd_section already set or call bfd_init_private_section_data | |
1242 | here. | |
1243 | (exp_init_os): Update init_os call. | |
1244 | (lang_add_section): Tidy. Really don't set SEC_LINK_ONCE | |
1245 | flags. Call bfd_init_private_section_data here. | |
1246 | (map_input_to_output_sections): Tidy. Update init_os calls. | |
1247 | Use os->sectype to select sec flags for lang_data_statement. | |
1248 | ||
1249 | 2010-02-23 Alan Modra <amodra@gmail.com> | |
1250 | ||
1251 | PR ld/11304 | |
1252 | * ldlang.c: Revert last patch. | |
1253 | ||
1254 | 2010-02-23 Nick Clifton <nickc@redhat.com> | |
1255 | ||
1256 | * po/bg.po: Updated Bulgarian translation. | |
1257 | ||
1258 | 2010-02-22 Alan Modra <amodra@gmail.com> | |
1259 | ||
1260 | PR ld/11304 | |
1261 | * ldlang.c (exp_init_os): Delete forward declaration. | |
1262 | (init_os): Don't check for bfd_section already created and don't | |
1263 | init addr_tree and load_base expressions here. | |
1264 | (map_input_to_output_sections): Only map input to output sections | |
1265 | and set constraints here, and as an exception, create output | |
1266 | sections which have their address set. Move all the other code to.. | |
1267 | (create_other_output_sections): ..here. New function. Handle init | |
1268 | of addr_tree and load_base here too. | |
1269 | (lang_process): Call create_other_output_sections. | |
1270 | ||
1271 | 2010-02-19 Alan Modra <amodra@gmail.com> | |
1272 | ||
1273 | * Makefile.am (eelf32_i960.c): Depend on ELF_GEN_DEPS, not ELF_DEPS. | |
1274 | * Makefile.in: Regenerate. | |
1275 | ||
1276 | 2010-02-19 Alan Modra <amodra@gmail.com> | |
1277 | ||
1278 | * ldlang.c (unique_section_p): Add os param. Allow group | |
1279 | sections to match /DISCARD/. Update all callers. | |
1280 | * emultempl/genelf.em (gld${EMULATION_NAME}_before_allocation): New. | |
1281 | (LDEMUL_BEFORE_ALLOCATION): Define. | |
1282 | ||
1283 | 2010-02-15 Nick Clifton <nickc@redhat.com> | |
1284 | ||
1285 | * po/vi.po: Updated Vietnamese translation. | |
1286 | ||
1287 | 2010-02-10 Richard Sandiford <r.sandiford@uk.ibm.com> | |
1288 | ||
1289 | * Makefile.am (CFILES): Add ldlex-wrapper.c. | |
1290 | (OFILES): Replace ldlex.c with ldlex-wrapper.c. | |
1291 | (ldlex.o): Replace with... | |
1292 | (ldlex-wrapper.o): ...this new rule. | |
1293 | (EXTRA_ld_new_SOURCES): Add ldlex.l. | |
1294 | (ld_new_SOURCES): Replace ldlex.l with ldlex-wrapper.c. | |
1295 | * Makefile.in: Regenerate. | |
1296 | * ldlex.l (sysdep.h): Don't include here. | |
1297 | * ldlex-wrapper.c: New file. | |
1298 | ||
1299 | 2010-02-09 Alan Modra <amodra@gmail.com> | |
1300 | ||
1301 | * emultempl/ppc64elf.em (ppc_before_allocation): Update for changed | |
1302 | function parameters. | |
1303 | ||
1304 | 2010-02-05 Nick Clifton <nickc@redhat.com> | |
1305 | ||
1306 | * configure.in (ALL_LIBGUAS): Add bg. | |
1307 | * configure: Regenerate. | |
1308 | * po/bg.po: New Bulgarian translation. | |
1309 | ||
1310 | 2010-02-05 Ryan Mansfield <rmansfield@qnx.com> | |
1311 | ||
1312 | * emultempl/armelf.em (PARSE_AND_LIST_OPTIONS): Fix help for | |
1313 | --target1-abs and --target1-rel options. | |
1314 | ||
1315 | 2010-02-03 Nick Clifton <nickc@redhat.com> | |
1316 | ||
1317 | * emultempl/alphaelf.em: Update value expected from elf_object_id. | |
1318 | * emultempl/hppaelf.em: Likewise. | |
1319 | * emultempl/mipself.em: Likewise. | |
1320 | * emultempl/ppc32elf.em: Likewise. | |
1321 | * emultempl/ppc64elf.em: Likewise. | |
1322 | ||
1323 | 2010-02-03 Alan Modra <amodra@gmail.com> | |
1324 | ||
1325 | * emultempl/ppc64elf.em (build_toc_list): Report errors from | |
1326 | ppc64_elf_next_toc_section. | |
1327 | (after_allocation): Update for changed function names and params. | |
1328 | Run second pass of multitoc partitioning. | |
1329 | ||
1330 | 2010-01-21 Jon Grant <jg@jguk.org> | |
1331 | Nick Clifton <nickc@redhat.com> | |
1332 | ||
1333 | PR 4437 | |
1334 | * ldfile.c: (ldfile_open_file): Do not stop link upon encountering | |
1335 | a missing file or library. Instead mark the entry as missing and | |
1336 | set the global flag to indicate that missing files were | |
1337 | encountered. | |
1338 | * ldlang.c (missing_files): New exported variable. | |
1339 | (load_symbols): Skip loading if the file is missing. | |
1340 | (open_input_bfds): Terminate link if any input files were | |
1341 | missing. | |
1342 | * ldlang.h (struct lang_input_statement_struct): Add missing_file | |
1343 | field. | |
1344 | Add export of missing_file variable. | |
1345 | ||
1346 | 2010-01-13 DJ Delorie <dj@redhat.com> | |
1347 | ||
1348 | * emultempl/elf32.em (_place_orphan): If an input section doesn't | |
1349 | match an existing output section, but an unused output section | |
1350 | statement does match, use it. | |
1351 | * emultempl/pe.em (_place_orphan): Likewise. | |
1352 | * emultempl/pep.em (_place_orphan): Likewise. | |
1353 | ||
1354 | 2010-01-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> | |
1355 | ||
1356 | * configure: Regenerate. | |
1357 | * Makefile.in: Regenerate. | |
1358 | ||
1359 | 2010-01-08 H.J. Lu <hongjiu.lu@intel.com> | |
1360 | ||
1361 | * ldver.c (ldversion): Change to "Copyright 2010". | |
1362 | ||
1363 | 2010-01-08 Alan Modra <amodra@gmail.com> | |
1364 | ||
1365 | PR 11107 | |
1366 | * emultempl/vxworks.em: Expand tr arguments to suit non-GNU tr. | |
1367 | ||
1368 | For older changes see ChangeLog-2009 | |
1369 | \f | |
752937aa NC |
1370 | Copyright (C) 2010 Free Software Foundation, Inc. |
1371 | ||
1372 | Copying and distribution of this file, with or without modification, | |
1373 | are permitted in any medium without royalty provided the copyright | |
1374 | notice and this notice are preserved. | |
1375 | ||
9e9e0820 L |
1376 | Local Variables: |
1377 | mode: change-log | |
1378 | left-margin: 8 | |
1379 | fill-column: 74 | |
1380 | version-control: never | |
1381 | End: |