aboutsummaryrefslogtreecommitdiff
path: root/ld/ld.texinfo
AgeCommit message (Collapse)AuthorFilesLines
2004-04-01 * bfd/bfd-in.h (bfd_elf32_arm_process_before_allocation): Update.Paul Brook1-0/+6
* bfd/elf32-arm.h (struct elf32_elf_section_map): New. (struct _arm_elf_section_data): New. (elf32_arm_section_data): Define. (struct elf32_arm_link_hash_table): Add byteswap_code. (elf32_arm_link_hash_table_create): Initialize byteswap_code. (bfd_elf32_arm_process_before_allocation): Add byteswap_code. (elf32_arm_post_process_headers): Set EF_ARM_BE8. (elf32_arm_output_symbol_hook, elf32_arm_new_section_hook, elf32_arm_compare_mapping, elf32_arm_write_section): New functions. (bfd_elf32_new_section_hook, elf_backend_write_section, elf_backend_link_output_symbol_hook): Define. * ld/emultempl/armelf.em (byteswap_code): Add. (arm_elf_before_allocation): Pass extra parameter. (PARSE_AND_LIST_PROLOGUE): Add OPTION_BE8. (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add be8. (PARSE_AND_LIST_ARGS_CASES): Handle OPTION_BE8. * ld/emultempl/armelf_oabi.em: Pass extra parameter. * ld/ld.texinfo: Document --be8.
2004-03-18bfd/Alan Modra1-0/+12
* elf-bfd.h (struct elf_obj_tdata): Delete dt_soname field. Add dyn_lib_class field. Rearrange for better packing. (elf_dt_soname): Delete. (elf_dyn_lib_class): Define. * elf.c (bfd_elf_set_dt_needed_name): Update comment. (bfd_elf_set_dt_needed_soname): Delete. (bfd_elf_set_dyn_lib_class): New function. * elflink.h (add_dt_needed_tag): New function. Split out from.. (elf_link_add_object_symbols): ..here. Rename "name" to "soname". Use elf_dyn_lib_class to set dt_needed and add_needed. Move fallback initialization of soname. (elf_link_check_versioned_symbol): Test elf_dyn_lib_class instead of elf_dt_soname. * bfd-in.h (enum dynamic_lib_link_class): New. (bfd_elf_set_dt_needed_soname): Delete. (bfd_elf_set_dyn_lib_class): Declare. * bfd-in2.h: Regenerate. ld/ * ld.texinfo: Add --as-needed doco. * ldmain.c (as_needed): New global var. * ldmain.h (as_needed): Declare. * lexsup.c (option_values): Add OPTION_AS_NEEDED and OPTION_NO_AS_NEEDED. (ld_options): Likewise. (parse_args): Handle them. * ldlang.h (lang_input_statement_type): Add as_needed field. * ldlang.c (new_afile): Set p->as_needed. * emultempl/elf32.em (gld${EMULATION_NAME}_load_symbols): New function. (gld${EMULATION_NAME}_try_needed): Use bfd_elf_set_dyn_lib_class. (ld_${EMULATION_NAME}_emulation): Set LDEMUL_RECOGNIZED_FILE entry. * ldlang.c (open_input_bfds): Remove useless cast. (lang_do_assignments_1): Likewise. (lang_for_each_input_section): Delete.
2004-03-01* ld.texinfo (Options): Fix example for --wrap.Andreas Schwab1-2/+2
2004-02-20 * ldgram.y (exp): Add two operand ALIGN.Nathan Sidwell1-9/+17
* ldexp.c (fold_binary): Add ALIGN_K case. * ld.texinfo (ALIGN): Document two operand version. * ld-scripts/align.{s,t,exp}: New.
2004-01-20 * pe-dll.c (pe_create_import_fixup): Clear WP_TEXT flag.Danny Smith1-3/+10
* ld.texinfo (--omagic): Note that writable text section does not conform to published PE-COFF specs. (--enable-auto-import): Likewise.
2004-01-13* ldlang.c (lang_get_regions): Add extra parameter 'have_vma' which if true willNick Clifton1-5/+10
prevent the LMA region being used as a replacement for a default VMA region. (lang_leave_output_section_statement): Pass extra parameter. (lang_leave_overlay): Likewise. * ld.texinfo (Output Section LMA): Document that the LMA region can be set to the VMA region if no VMA has been set. * ldlang.h (struct lang_output_section_phdr_list): Create a typedef for this type. Minor formatting fixes.
2003-12-02Update docs to reflect fact the --undefined-symbols==ignore-all is no longerNick Clifton1-6/+3
the default for shared libraries and dynamic executables.
2003-11-06Fix 'the the' typoNick Clifton1-1/+1
2003-10-25 * ChangeLog-9197: Fix typos.Kazu Hirata1-1/+1
* NEWS: Likewise. * ld.texinfo: Likewise. * ldlang.c: Fix comment typos.
2003-10-11 * ld.texinfo (Builtin Functions) <DEFINED>: Say that only symbolsHans-Peter Nilsson1-1/+2
defined before the statement using DEFINED yield 1. * ldexp.c (fold_name) <case DEFINED>: In lang_first_phase_enum, call lang_track_definedness on symbol. In subsequent phases, use lang_symbol_definition_iteration and lang_statement_iteration to check whether the symbol was defined before the current statement. (exp_fold_tree) <case etree_assign et al>: Call lang_update_definedness before updating symbol type when setting symbol. * ldlang.c (lang_definedness_table): New variable. (lang_definedness_newfunc, lang_track_definedness) (lang_symbol_definition_iteration, lang_update_definedness): New functions. (lang_init): Initialize lang_definedness_table and lang_statement_iteration. (lang_finish): Destroy bfd_hash_table_free. (lang_size_sections): Increment lang_statement_iteration. (lang_do_assignments_1): New function with former lang_do_assignments contents. Change recursive calls to call this function. (lang_do_assignments): Evacuate contents. Increment lang_statement_iteration, then just call lang_do_assignments_1. * ldlang.h (struct lang_definedness_hash_entry) (lang_statement_iteration, lang_track_definedness) (lang_symbol_definition_iteration, lang_update_definedness): Declare.
2003-08-20Better handking for unresolved symbolsNick Clifton1-35/+81
2003-08-15Put the keywords for the -z option into a table.Nick Clifton1-23/+61
Add more text describing what the -z now option does.
2003-07-27 * ld.texinfo: Typo fixes. Document SUBALIGN.Alan Modra1-3/+15
* ldgram.y (opt_subalign): Add. * ldlex.l (SUBALIGN): Recognize. * ldlang.c (overlay_subalign): New var. (lang_enter_overlay): Add subalign param. (lang_enter_overlay_section): Pass overlay_subalign to lang_enter_output_section_statement. * ldlang.h (lang_enter_overlay): Update.
2003-06-25Correct spelling of "relocatable".Alan Modra1-2/+2
2003-05-30bfd/Jakub Jelinek1-0/+12
* elflink.h (elf_link_add_object_symbols): Use !info->executable instead of info->shared where appropriate. (bfd_elfNN_size_dynamic_sections, elf_link_output_extsym): Likewise. * elflink.c (_bfd_elf_create_got_section): Likewise. (_bfd_elf_link_create_dynamic_sections): Likewise. (_bfd_elf_link_assign_sym_version): Likewise. * elf32-i386.c (elf_i386_size_dynamic_sections): Create .interp section and DT_DEBUG dynamic tag even for position independent executables. * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise. * elf32-s390.c (elf_s390_size_dynamic_sections: Likewise. * elf64-ppc.c (ppc64_elf_size_dynamic_sections: Likewise. * elf64-s390.c (elf_s390_size_dynamic_sections: Likewise. * elf64-x86-64.c (elf64_x86_64_size_dynamic_sections: Likewise. * elfxx-ia64.c (elfNN_ia64_size_dynamic_sections: Likewise. * elf32-sparc.c (elf32_sparc_size_dynamic_sections: Likewise. * elf64-alpha.c (elf64_alpha_size_dynamic_sections: Likewise. * elf64-sparc.c (sparc64_elf_size_dynamic_sections: Likewise. include/ * bfdlink.h (struct bfd_link_info): Add pie and executable bits. ld/ * lexsup.c (OPTION_PIE): Define. (ld_options): Add -pie and --pic-executable options. (parse_args): Handle OPTION_PIE. * ldmain.c (main): Initialize link_info.pie and link_info.executable. * genscripts.sh: Generate PIE scripts. * ld.texinfo: Document -pie and --pic-executable options. * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): (gld${EMULATION_NAME}_place_orphan): Likewise. (gld${EMULATION_NAME}_get_script): Include PIE scripts. * scripttempl/elf.sc: In PIE scripts set . the same way as in shared scripts. * emulparams/elf_i386.sh (GENERATE_PIE_SCRIPT): Set to yes. * emulparams/elf64_ia64.sh (GENERATE_PIE_SCRIPT): Likewise. * emulparams/elf32ppc.sh (GENERATE_PIE_SCRIPT): Likewise. * emulparams/elf64ppc.sh (GENERATE_PIE_SCRIPT): Likewise. * emulparams/elf_x86_64.sh (GENERATE_PIE_SCRIPT): Likewise. * emulparams/elf_s390.sh (GENERATE_PIE_SCRIPT): Likewise. * emulparams/elf32_sparc.sh (GENERATE_PIE_SCRIPT): Likewise. * emulparams/elf64_sparc.sh (GENERATE_PIE_SCRIPT): Likewise. * emulparams/elf64alpha.sh (GENERATE_PIE_SCRIPT): Likewise. * emulparams/elf64_s390.sh (GENERATE_PIE_SCRIPT): Likewise. * emulparams/elf_i386.sh (GENERATE_PIE_SCRIPT): Likewise.
2003-04-15Replace occurrances of 'Hitachi' with 'Renesas'.Nick Clifton1-9/+9
2003-04-06Add notes about the target specific nature of i386 PE command line options.Nick Clifton1-0/+30
2003-04-01Add Xtensa portNick Clifton1-1/+76
2003-04-01* ld.texinfo (-Tbss, -Tdata, -Ttext): Document in terms ofAlexandre Oliva1-5/+2
--section-start.
2003-03-24Rename the all occurances of C54X to TIC54X.Nick Clifton1-1/+1
2003-03-03* ldfile.h (struct search_dirs): Added sysrooted field.Alexandre Oliva1-4/+7
* ldlang.h (struct lang_input_statement_struct): Likewise. * ldfile.c (ldfile_add_library_path): Mark sysrooted paths. (ldfile_open_file_search): Look for sysrooted filename starting with / in ld_sysroot instead of in the current directory. Clear sysrooted flag if it's found in the current directory. Set it from the search directory's sysrooted flag where it is found otherwise. * ldlang.c (ldlang_sysrooted_script): New static variable. (new_afile): Mark search_file_enums as sysrooted if ldlang_sysrooted_script. (load_symbols): Set ldlang_sysrooted_script according to the script's sysrooted field while processing it. * ld.texinfo: Document INPUT behavior in sysroot.
2003-02-21Apply Bob Wilson's linker documenation clean ups.Nick Clifton1-640/+341
2003-02-18 * ld.texinfo: Remove spaces between @samp and opening brace.Alan Modra1-3/+3
2003-02-17Fix the behaviour of --allow-shlib-undefined, so that it does what it claimsNick Clifton1-12/+22
to do. Add an inverse switch. Update the documentation.
2003-01-23Remove an extra "i" in --dll-search-prefix.Nick Clifton1-1/+1
Move a cross-80th-column-margin "an" to the next line.
2003-01-14(node WIN32): Some clarifications and formatting fixups.Nick Clifton1-8/+63
2003-01-06 * Makefile.am (eelf32iq10.c): Fix tab/whitespace mixup.Daniel Jacobowitz1-3/+7
* Makefile.am (ldmain.o): Add @TARGET_SYSTEM_ROOT_DEFINE@. (GENSCRIPTS): Add @use_sysroot@. * Makefile.in: Regenerated. * configure.host: Move setting of NATIVE_LIB_DIRS to... * configure.tgt: ... here. Use ${target} instead of ${host} for NATIVE_LIB_DIRS. * configure.in: Add --with-sysroot. * configure: Regenerated. * genscripts.sh: Accept use_sysroot option. Set new variables NATIVE and USE_LIBPATH. Prepend "=" to directory names if $use_sysroot. Don't search $tool_lib if $use_sysroot. * ldfile.c (ldfile_add_library_path): Handle leading '='. * ldmain.c (TARGET_SYSTEM_ROOT): Define if not defined. (ld_sysroot): New variable. (main): Initialize ld_sysroot. * ldmain.h (ld_sysroot): New extern. * emultempl/elf32.em: Use NATIVE and USE_LIBPATH instead of searching $EMULATION_LIBPATH. (gld${EMULATION_NAME}_add_sysroot): New function. (gld${EMULATION_NAME}_check_ld_so_conf): Use it. Honor ld_sysroot. (gld${EMULATION_NAME}_after_open): Likewise. Only search environment variables if $NATIVE. * ld.texinfo (Options): Mention "=" prefix in the description of -L. * NEWS: Mention --with-sysroot. * emulparams/elf32bmipn32-defs.sh: Set NATIVE and LIBPATH_SUFFIX instead of setting LIB_PATH. * emulparams/elf32ppc.sh: Likewise. * emulparams/elf64_s390.sh: Likewise. * emulparams/elf64_sparc.sh: Likewise. * emulparams/elf64ppc.sh: Likewise. * emulparams/elf_x86_64.sh: Likewise. * emulparams/elf64_aix.sh: Add "=" prefixes to LIB_PATH. * emulparams/elf64hppa.sh: Add "=" prefixes to LIB_PATH.
2002-12-30Add support for msp430.Nick Clifton1-0/+37
2002-12-30New win32 topics: 'symbol aliasing' and 'export dll symbols'.Nick Clifton1-13/+108
2002-12-19Clarify and extend the documentation in the Machine Dependent, WIN32 section.Nick Clifton1-32/+136
2002-12-18Add win32 machine depending section.Nick Clifton1-2/+117
2002-12-022002-12-01 H.J. Lu <hjl@gnu.org>H.J. Lu1-1/+1
* ld.texinfo: Remove the extra `;' in sample version script.
2002-11-272002-11-27 H.J. Lu <hjl@gnu.org>H.J. Lu1-2/+2
* ld.texinfo: Add the missing `;' to sample version scripts.
2002-11-14Add --enable-auto-import extension.Nick Clifton1-3/+19
2002-10-23Add new command line option "--no-omagic" which undoes the effects of -N.Nick Clifton1-2/+11
2002-08-13 * ld.texinfo (ALIGN): Remove power of 2 restriction.Alan Modra1-6/+1
2002-08-08Check symbols with undefine version.H.J. Lu1-0/+6
2002-07-15bfd/H.J. Lu1-1/+2
2002-07-14 H.J. Lu <hjl@gnu.org> * elflink.h (elf_link_assign_sym_version): Hide the default definition if there is a hidden versioned definition. ld/ 2002-07-14 H.J. Lu <hjl@gnu.org> * ld.texinfo: Document a .symver takes precedence over a version script.
2002-06-20Update bug reporting guidelinesNick Clifton1-15/+19
2002-05-22* pe-dll.c (autofilter_liblist): Add more system libs excluded by default.Christopher Faylor1-0/+8
(autofilter_objlist): Add crtbegin.o, crtend.o. * emultempl/pe.em (OPTION_EXCLUDE_LIBS): Add new define. (longopts): Add new option --exclude-libs. (gld_${EMULATION_NAME}_list_options): Give quick help about it. (gld_${EMULATION_NAME}_parse_args): Use it. * pe-dll.h (pe_dll_add_excludes): Add second param to prototype. * pe-dll.c (exclude_list_struct): Add field type to distinguish symbols from whole archives. (pe_dll_add_excludes): Set excludes->type. (auto_export): Add new variable libname and set to archive basename if abfd. Use it when filtering default and user-specified libarary excludes. Let string "ALL" mean all libs when filtering user-specified libs. * ld.texinfo: Document --exclude-libs.
2002-05-222002-05-21 H.J. Lu (hjl@gnu.org)H.J. Lu1-0/+9
* emultempl/elf32.em (gld${EMULATION_NAME}_parse_args): Handle "-z muldefs". (gld${EMULATION_NAME}_list_options): Add "-z muldefs". * ld.texinfo: Updated for --allow-multiple-definition and "-z muldefs". * ldmain.c (main): Initialize the allow_multiple_definition field to false. * lexsup.c (OPTION_ALLOW_MULTIPLE_DEFINITION): New. (ld_options): Add --allow-multiple-definition. (parse_args): Support OPTION_ALLOW_MULTIPLE_DEFINITION.
2002-04-08 * ld.texinfo (Format Commands <OUTPUT_FORMAT>): Typo fix.Alan Modra1-1/+1
2002-03-082002-03-07 Daniel Jacobowitz <drow@mvista.com>Daniel Jacobowitz1-2/+2
* ld.texinfo: Wrap @menu in @ifnottex, not @ifinfo.
2002-02-17 * ld.texinfo (Output Section Fill): Fix amateur texinfo.Alan Modra1-5/+5
(FILL): Likewise.
2002-02-15 * ld.texinfo (Output Section Fill): Describe fill expressions.Alan Modra1-4/+11
(FILL): Refer to the above.
2002-02-14 * ld.texinfo (VERSION scripts): Symbol names are globbing patterns.Alan Modra1-3/+6
* ldgram.y (lang_new_vers_regex): Rename to lang_new_vers_pattern; the pattern in question is not a regexp. * ldlang.c: Likewise. * ldlang.h: Likewise. * ldlex.l (V_IDENTIFIER): Allow '[', ']', '-', '!', and '^' also.
2002-02-12 * ldlex.l (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END): New tokens.Jakub Jelinek1-0/+39
* ldgram.y (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END): New tokens. (exp): Add DATA_SEGMENT_ALIGN (exp, exp) and DATA_SEGMENT_END (exp). * ldexp.c (exp_data_seg): New variable. (exp_print_token): Handle DATA_SEGMENT_ALIGN and DATA_SEGMENT_END. (fold_binary): Handle DATA_SEGMENT_ALIGN. (exp_fold_tree): Handle DATA_SEGMENT_END. Pass allocation_done when recursing instead of hardcoding lang_allocating_phase_enum. * ldexp.h (exp_data_seg): New. * ldlang.c (lang_size_sections_1): Renamed from lang_size_sections. (lang_size_sections): New. * ld.texinfo (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END): Document. * scripttempl/elf.sc: Use DATA_SEGMENT_ALIGN and DATA_SEGMENT_END if COMMONPAGESIZE is defined. * emulparams/elf_i386.sh (COMMONPAGESIZE): Set to 4K. * emulparams/elf32_sparc.sh (COMMONPAGESIZE): Set to 8K. * emulparams/elf64_sparc.sh (COMMONPAGESIZE): Set to 8K. * emulparams/elf64alpha.sh (COMMONPAGESIZE): Set to 8K. * emulparams/elf64_ia64.sh (COMMONPAGESIZE): Set to 16K for shared libraries only.
2002-02-102002-02-08 Chris Demetriou <cgd@broadcom.com>Chris Demetriou1-0/+6
* ld.texinfo (Options): Add back in -nostdlib documentation, which had been inadvertently removed.
2002-01-07Note that --emit-relocs is currently only implemented for ELF.Nick Clifton1-0/+2
2001-12-19 * ld.texinfo (VERSION): Fix markup.Andreas Jaeger1-1/+1