diff options
Diffstat (limited to 'trunk/ChangeLog.cross')
-rw-r--r-- | trunk/ChangeLog.cross | 477 |
1 files changed, 477 insertions, 0 deletions
diff --git a/trunk/ChangeLog.cross b/trunk/ChangeLog.cross new file mode 100644 index 0000000..3424127 --- /dev/null +++ b/trunk/ChangeLog.cross @@ -0,0 +1,477 @@ +2010-06-18 Mark Hatle <mark.hatle@windriver.com> + + * Sync src/dso-readonly.c and ... + * Integrate patch from + + 2010-05-06 Andrew Stubbs <ams@codesourcery.com> + + * src/dso.c (adjust_dso): Support MIPS debug sections. + * src/prelink.h (SHT_MIPS_DWARF): New define. + +2009-06-15 Mark Hatle <mark.hatle@windriver.com> + * Merge to upstream r184 + * Resync dso-readonly.c from dso.c + * Cleanup ChangeLog.cross + +2009-06-15 Mark Hatle <mark.hatle@windriver.com> + + * Integrate prelinker/cross-prelinking patches + + 2009-09-01 Maciej W. Rozycki <macro@codesourcery.com> + + Issue #5273 + * src/arch-mips.c (mips_prelink_reloc): Resolve + R_MIPS_TLS_DTPMOD32 and R_MIPS_TLS_DTPMOD64 relocations in + executables. + + 2009-04-27 Maciej W. Rozycki <macro@codesourcery.com> + + Issue #5165 + * src/ld-libs.c (load_ld_so_conf): Fix a buffer overrun. Don't + record empty paths. + + 2009-04-23 Maciej W. Rozycki <macro@codesourcery.com> + + Issue #5165 + * src/ld-lookup.c (rtld_elf_hash): Handle an initial NULL + character correctly. Reformat for consistency with + rtld_elf_gnu_hash() + + 2009-04-23 Maciej W. Rozycki <macro@codesourcery.com> + + Issue #5165 + * src/ld-do-lookup.h (FCT): Remove the hash argument and + calculate the value within the function. Call + do_lookup_get_first() and do_lookup_get_next() to iterate over + symbols. + * src/prelink.h (dynamic_info_is_set): Convert macro to a + function. Return 1 for success rather than the bit set. + * src/ld-libs.h (ldlibs_link_map): Add l_gnu_hash, l_maskword64, + l_nmaskwords, l_shift and l_maskwords members. + * src/ld-libs.c (create_ldlibs_link_map): Handle the GNU hash. + * src/ld-lookup.c (rtld_elf_gnu_hash): New function. + (rtld_elf_any_hash): Likewise. + (rtld_elf_hash): Move above "ld-do-lookup.h" inclusions. + (do_lookup_get_first, do_lookup_get_next): New functions. + (rtld_lookup_symbol): Remove hash calculation. + (rtld_lookup_symbol_versioned): Likewise. + + 2009-04-23 Maciej W. Rozycki <macro@codesourcery.com> + + Issue #5165 + * src/execle_open.c (execve_open): Add missing pid + initialisation. + +2010-06-15 Mark Hatle <mark.hatle@windriver.com> + * Merge to upstream r174 + * src/arch-mips.c, src/conflict.c, src/cxx.c, src/main.c, src/verify.c: + fix items missed in the merge + * Resync dso-readonly.c from dso.c + +2010-06-14 Mark Hatle <mark.hatle@windriver.com> + + * Integrate prelinker/cross-prelinking patches + + 2009-08-06 Joseph Myers <joseph@codesourcery.com> + + * src/dwarf2.c (dwarf2_write_le64, dwarf2_write_be64): Shift by 56 + not 58 for MSB. + + 2009-03-19 Joseph Myers <joseph@codesourcery.com> + + Issue #4626 + * src/cache.c, src/dso-readonly.c, src/dso.c, src/execstack.c, + src/gather.c, src/layout.c, src/mapfile.c, src/verify.c: fsync + file descriptors before closing them. + + 2008-09-23 Joseph Myers <joseph@codesourcery.com> + + * src/arch-arm.c (arm_prelink_conflict_rela): Correct + R_ARM_TLS_TPOFF32 handling. + + 2008-09-18 Joseph Myers <joseph@codesourcery.com> + + * src/ld-libs.c (reloc_type_class, determine_tlsoffsets): Handle + SPARC. + * src/arch-sparc64.c (sparc64_prelink_rela, + sparc64_prelink_conflict_rela, sparc64_undo_prelink_rela, + sparc64_reloc_class): Handle TLS relocations. + (PL_ARCH(sparc64)): Update mmap_base and mmap_end for + TASK_UNMAPPED_BASE change to 0xfffff80100000000. + + 2008-10-02 Maciej W. Rozycki <macro@codesourcery.com> + + * src/arch-mips.c (mips_prelink_reloc): Do not complain about + TLS_DTPMOD32 or TLS_DTPMOD64 relocations found in executables. + + 2008-09-03 Maciej W. Rozycki <macro@codesourcery.com> + + * src/prelink.h (Elf64_Byte): New definition. + (R_MIPS_TLS_DTPMOD64): New macro. + (R_MIPS_TLS_DTPREL64): Likewise. + (R_MIPS_TLS_TPREL64): Likewise. + (RSS_UNDEF): Likewise. + (PL_ARCH): Use plarch_##F as the name of the struct in all + variants. + * src/reloc-info.c: New file. + * src/reloc-info.h: Likewise. + * src/arch-mips.c (mips_buf_read_addr): New function. + (mips_buf_write_addr): Likewise. + (mips_arch_adjust): Replace calls to buf_read_une32() and + buf_write_ne32() with ones to mips_buf_read_addr() and + mips_buf_write_addr() respectively. + (mips_read_addend): Rename to... + (mips_read_32bit_addend): ... this. + (mips_write_addend): Rename to... + (mips_write_32bit_addend): ... this. + (mips_read_64bit_addend): New function. + (mips_write_64bit_addend): Likewise. + (mips_adjust_reloc): Handle 64-bit REL relocations. Use + reloc_r_sym() and reloc_r_type() in place of GELF_R_SYM() and + GELF_R_TYPE() respectively. + (mips_prelink_64bit_reloc): New function. + (mips_prelink_reloc): Handle 64-bit REL and GLOB_DAT relocations. + Handle TLS_DTPMOD64, TLS_DTPREL64 and TLS_TPREL64 relocations. + Use reloc_r_sym() and reloc_r_type(). + (mips_prelink_rel): Handle 64-bit REL relocations. Use + reloc_r_sym(), reloc_r_type() and reloc_r_info_ext() (replacing + GELF_R_INFO()). + (mips_prelink_conflict_reloc): Handle 64-bit REL relocations. + Handle TLS_DTPMOD64, TLS_DTPREL64 and TLS_TPREL64 relocations. + Use reloc_r_sym(), reloc_r_type() and reloc_r_info_ext(). + (mips_arch_prelink_conflict): Use mips_buf_read_addr(). Use + reloc_r_info_ext(). + (mips_apply_conflict_rela): Handle 64-bit REL relocations. Use + reloc_r_type(). Use mips_buf_read_addr() and + mips_buf_write_addr(). + (mips_apply_reloc): Handle 64-bit REL relocations. Use + reloc_r_sym() and reloc_r_type(). + (mips_rel_to_rela): Handle 64-bit REL relocations. Handle + TLS_DTPMOD64, TLS_DTPREL64 and TLS_TPREL64 relocations. Use + reloc_r_sym() and reloc_r_type(). + (mips_rela_to_rel): Handle 64-bit REL and GLOB_DAT relocations. + Handle TLS_DTPMOD64, TLS_DTPREL64 and TLS_TPREL64 relocations. + Use reloc_r_sym() and reloc_r_type(). + (mips_need_rel_to_rela): Use data obtained with gelfx_getshdr() to + determine the size of a relocation entry. Use gelfx_getrel() to + retrieve them. Handle 64-bit REL relocations. Handle + TLS_DTPMOD64, TLS_DTPREL64 and TLS_TPREL64 relocations. Use + reloc_r_sym() and reloc_r_type() instead of ELF32_R_SYM() and + ELF32_R_TYPE() respectively. + (mips_reloc_class): Handle TLS_DTPMOD64, TLS_DTPREL64 and + TLS_TPREL64 relocations. + (mips_arch_prelink): Use mips_buf_read_addr() and + mips_buf_write_addr(). + (mips_arch_undo_prelink): Likewise. + (mips_undo_prelink_rel): Handle 64-bit GLOB_DAT relocations. Use + reloc_r_sym(), reloc_r_type() and reloc_r_info_ext(). + (mips64): New PL_ARCH. + * src/prelink.c (prelink_prepare): Handle SHT_MIPS_OPTIONS. + * src/conflict.c (conflict_rela_cmp_dso): New variable. + (conflict_rela_cmp): Use conflict_rela_cmp_dso and reloc_r_sym(). + (get_relocated_mem): Use reloc_r_type(). + (prelink_add_copy_rel): Use reloc_r_sym() and reloc_r_type(). + (prelink_build_conflicts): Use reloc_r_sym(), reloc_r_type() and + reloc_r_info(). Pass dso to conflict_rela_cmp() through + conflict_rela_cmp_dso. + (prelink_find_copy_rela): Use reloc_r_type(). + * src/cxx.c (remove_redundant_cxx_conflicts): Use reloc_r_sym(), + reloc_r_type() and reloc_r_info(). + * src/ld-libs.c (do_rel_section): Use reloc_r_sym() and + reloc_r_type(). + * src/Makefile.am (common_SOURCES): Add reloc-info.c and + reloc-info.h. + (prelink_rtld_SOURCES): Likewise. + * src/Makefile.in: Regenerate. + * configure.in: Check for the Elf64_Byte type. Require autoconf + 2.50. + * configure: Regenerate. + + 2008-09-03 Maciej W. Rozycki <macro@codesourcery.com> + + * src/arch-mips.c (mips_undo_prelink_rel): Fix formatting. + + 2008-09-03 Maciej W. Rozycki <macro@codesourcery.com> + + * src/arch-mips.c (mips_init_local_got_iterator): Use ELF_T_ADDR + to determine the width of GOT entries. + (mips_init_global_got_iterator): Likewise. + + 2008-09-03 Maciej W. Rozycki <macro@codesourcery.com> + + * src/data.c (buf_read_une##nn): Fix the width of the data + transfer used. + + 2008-03-06 Daniel Jacobowitz <dan@codesourcery.com> + + * src/ld-do-lookup.h: Check for STO_MIPS_PLT on MIPS. + * src/ld-libs.c (reloc_type_class): Handle copy and PLT relocs. + * src/prelink.h (R_MIPS_TLS_DTPMOD32, R_MIPS_TLS_DTPREL32) + (R_MIPS_TLS_TPREL32, R_MIPS_GLOB_DAT): Remove duplicate definitions. + (R_MIPS_COPY, R_MIPS_JUMP_SLOT, STO_MIPS_PLT, DT_MIPS_PLTGOT) + (DT_MIPS_PLTNO, DT_MIPS_RWPLT): Define. + (DSO): Add info_DT_MIPS_PLTGOT. + * src/arch-mips.c (mips_prelink_reloc): Handle R_MIPS_JUMP_SLOT and + R_MIPS_COPY. + (mips_prelink_conflict_reloc): Handle R_MIPS_COPY. + (mips_apply_conflict_rela): Handle R_MIPS_JUMP_SLOT. + (mips_apply_reloc): Handle R_MIPS_JUMP_SLOT and R_MIPS_COPY. + (mips_rel_to_rela, mips_rela_to_rel): Handle R_MIPS_COPY. + (mips_need_rel_to_rela): Handle R_MIPS_COPY and R_MIPS_JUMP_SLOT. + Correct error message. + (mips_reloc_class): Handle R_MIPS_COPY and R_MIPS_JUMP_SLOT. Use + RTYPE_CLASS_VALID by default. + (mips_arch_prelink): Save .plt in gotplt[1]. + (mips_arch_undo_prelink): Clear gotplt[1]. + (mips_undo_prelink_rel): Undo R_MIPS_JUMP_SLOT relocations. + (PL_ARCH): Set R_COPY and R_JMP_SLOT. + * src/dso.c (read_dynamic): Save DT_MIPS_PLTGOT. + * src/dso-readonly.c (read_dynamic): ditto + + 2007-07-09 Daniel Jacobowitz <dan@codesourcery.com> + + Issue #1816 + * src/wrap-file.c (chroot_canon): Delete. + (sysroot_file_name): Use canon_filename. + (unsysroot_file_name): Make global. + (wrap_canonicalize_file_name): Delete. + * src/ld-libs.c (load_dsos): Use prelink_canonicalize. + * src/canonicalize.c (canon_filename): Make global. Add chroot, + allow_last_link, allow_missing arguments. Handle links inside + a chroot. Handle canonicalizing the current directory. Remove + debugging output. + (prelink_canonicalize): Update. Use unsysroot_file_name. + * src/prelink.h (wrap_canonicalize_file_name): Delete prototype. + + 2007-03-02 Sandra Loosemore <sandra@codesourcery.com> + + * doc/prelink.8: Copy edit. Add entry for --root option. Update + list of unsupported systems. + + 2007-02-16 Daniel Jacobowitz <dan@codesourcery.com> + + * src/prelink.h (sysroot_file_name): Declare. + * src/ld-libs.c (load_dsos): Take host_paths argument. Do not attempt + to canonicalize host filenames within the sysroot. Always set + canon_filename. + (process_one_dso): Update call to load_dsos. Do not redo call to + wrap_canonicalize_file_name. + + 2006-11-30 Mark Shinwell <shinwell@codesourcery.com> + + * configure.in: Recognize --with-pkgversion and ---with-bugurl. + * src/Makefile.am: Pass package version and bug URL through + AM_CFLAGS, together with the new EXECSTACK_PROG. + * src/main.c: Use PKGVERSION and REPORT_BUGS_TO. + * src/execstack.c: Likewise. Also use EXECSTACK_PROG. + + Mark Hatle <mark.hatle@windriver.com> + * src/ld-libs.c: Use PRELINK_RTLD_PROG, PKGVERSION and REPORT_BUGS_TO + * src/execstack.c: Use EXECSTACK_PROG in (argp_doc) + + 2006-11-30 Mark Shinwell <shinwell@codesourcery.com> + + * wrap-file.c (wrap_stat_body): New. + (wrap_lstat64, wrap_stat64): Use wrap_stat_body. + + 2006-11-28 Mark Shinwell <shinwell@codesourcery.com> + + * src/layout.c (layout_libs): Add assertion to check for buffer + overflow. + * src/ld-libs.c (find_lib_in_path): Add "machine" argument. + Skip libraries whose ELF machine type field does not match + that argument. + (find_lib_by_soname): Add "machine" argument. Pass it to + find_lib_in_path. + (load_dsos): Determine machine type of input DSO. Pass it + to find_lib_by_soname. + + 2006-11-28 Mark Shinwell <shinwell@codesourcery.com> + + * src/gather.c (maybe_pie): New. + (gather_func): Use it. + + 2006-11-28 Mark Shinwell <shinwell@codesourcery.com> + + * src/canonicalize.c: Add prelink.h include directive. + Use wrap_readlink and wrap_lstat64. + * src/prelink.h: Declare wrap_readlink. + * src/wrap-file.c (wrap_readlink): New. + + 2006-10-13 Daniel Jacobowitz <dan@codesourcery.com> + + * src/execle_open.c (execve_open): Add an error message if execve + fails. + + 2006-10-03 Richard Sandiford <richard@codesourcery.com> + + * configure.in (AC_CANONICAL_HOST): Remove in favour of... + (AC_CANONICAL_SYSTEM): ...this new directive. + (AC_ARG_PROGRAM): New directive. + * src/Makefile.am (AM_CFLAGS): Define PRELINK_PROG, PRELINK_RTLD_PROG + and EXEEXT. + (execstack_LDADD): Add -liberty. + * src/execstack.c (program_path, prelink_path): New variables. + (execstack_make_rdwr): Initialize prelink_path if it has not + been set yet. Use make_relative_prefix, PRELINK_PROG and EXEEXT + to get the full pathname of the prelink executable. Pass this path + to execl() as the name of executable file. + (main): Initialize program_path. + * src/main.c (argp_program_version, argp_doc): Use PRELINK_PROG as + the program name. + (main): Handle empty --rtld= arguments first. Always use + make_relative_prefix to work out the path of the defalt rtld + executable. Also use PRELINK_RTLD and EXEEXT for this purpose. + +2010-06-14 Mark Hatle <mark.hatle@windriver.com> + * configure.in: Add option to disable selinux + * src/Makefile.am: Stop static linking + +2007-08-08 Mark Hatle <mark.hatle@windriver.com> + + * src/arch-mips.c: add /lib32/ld.so.1 as an alternative 32-bit linker + * src/ld-libs.c: add a check for MIPS n32, and adjust ld_dirs as + necessary + +2007-10-11 Richard Sandiford <richard@codesourcery.com> + + * src/space.c (find_readonly_space): If a new PT_LOAD header is needed, + first try removing a PT_NULL header. + +2006-12-04 Mark Hatle <mark.hatle@windriver.com> + + * Merge code from: + + Richard Sandiford <richard@codesourcery.com> + * src/ld-libs.c (reloc_type_class): Handle EM_MIPS. + (do_mips_global_relocs): New function. + (handle_relocs_in_entry): Call it. + (determine_tlsoffsets): Handle EM_MIPS. + + Richard Sandiford <richard@codesourcery.com> + + * src/ld-libs.c (do_reloc): New function, split out from + do_rel_section. Take the symbol and relocation type as arguments. + (do_rel_section): Call it. + (handle_relocs_in_entry): New function. + (handle_relocs): Call it. + +2006-12-04 Mark Hatle <mark.hatle@windriver.com> + + * src/elf.h: Update to the latest version of elf.h for MIPS prelink + +2006-12-01 Mark Hatle <mark.hatle@windriver.com> + + * merge to 20061201 (r151) + * src/arch-arm.c: remove read_une32, write_ne32, buf_write_ne32, + buf_read_une32 + * src/dso-readonly.c: sync to changes in src/dso.c + +2006-08-18 Mark Hatle <mark.hatle@windriver.com> + + * arch-arm.c: remove prelink_conflict_rela + * arch-arm.c: Add big-endian arm support, based on arch-sh.c + +2006-08-17 Mark Hatle <mark.hatle@windriver.com> + + * data.c, dso.c, prelink.h: when using elfutils/libelf, we need + to byte swap only if the type is ELF_T_BYTE. + * dso-readonly.c: add get_data prototype change for byteswapping + * ld-libs.c: add get_data prototype change for byteswapping + +2006-08-10 Mark Hatle <mark.hatle@windriver.com> + + * testsuite/Makefile.in: Allow testsuite to run using cross prelink. + Disable the run-time tests, but keep all basic + prelink testing. + * testsuite/ccx1.sh, testsuite/cycle1.sh, testsuite/cycle2.sh + testsuite/deps1.sh, testsuite/deps2.sh, testuite/functions.sh + testuite/layout1.sh, testuite/layout2.sh, testsuite/movelibs.sh + testsuite/quick1.sh, testsuite/quick2.sh, testsuite/quick3.sh + testsuite/reloc1.sh, testsuite/reloc2.sh, testsuite/reloc3.sh + testsuite/reloc4.sh, testsuite/reloc5.sh, testsuite/reloc6.sh + testsuite/reloc7.sh, testsuite/reloc8.sh, testsuite/reloc9.sh + testsuite/reloc10.sh, testsuite/reloc11.sh, testsuite/shuffle1.sh + testsuite/shuffle2.c, testsuite/shuffle2.sh, testsuite/shuffle3.sh + testsuite/shuffle4.sh, testsuite/shuffle5.sh, testsuite/shuffle6.sh + testsuite/shuffle7.sh, testsuite/shuffle8.sh, testsuite/tls1.sh + testsuite/tls2.sh, testsuite/tls3.sh, testsuite/tls4.sh + testsuite/tls5.sh, testsuite/tls6.sh, testsuite/tls7.sh + testsuite/undo1.sh: ditto + +2006-08-09 Mark Hatle <mark.hatle@windriver.com> + + * execstack.c: add WR versioning + * ld-libs.c: add argp option processing and WR versioning + * main.c: add WR versioning + +2006-08-09 Mark Hatle <mark.hatle@windriver.com> + + * ld-libs.c: Add --root argument to prelink-rtld + +2006-08-09 Mark Hatle <mark.hatle@windriver.com> + + * cross-prelink code merged and upreved + original code from: + MontaVista Software, Inc. + CodeSourcery, LLC. + * Makefile.am: add prelink-rtld, libiberty + * dso-readonly.c: new file based on dso.c + * gather.c: use cross-rtld + * get.c: use cross-rtld + * ld-do-lookup.h: Add ld-do-lookup.h from glibc + * ld-libs.c: add cross-rtld functionality + * ld-libs.h: ditto + * ld-lookup.c: ditto + * ld-lookup64.c: ditto + * main.c: Add rtld option + * prelink.h: add extern rtld variable + +2006-08-09 CodeSourcery, LLC. + + * main.c: if we modified /sbin/init, re-run init + +2006-08-08 CodeSourcery, LLC. + + * arch-arm.c: add ARM EABI support, dynamic_linker_alt + * src/dso.c: STT_ARM_TFUNC support + * src/get.c: ld-linux.so.3 to the list of ldso names + +2006-08-08 CodeSourcery, LLC. + + * gather.c: add new dynamic_linker_alt + * prelink.h: ditto + +2006-08-08 MontaVista Software, Inc. + + * main.c: Add relative sysroot support + +2006-08-08 Montavista Software, Inc. + + * Makefile.am: Add function wrapper support for sysroots + * main.c: add --root option + * cache.c, doit.c, dso.c, execstack.c, gather.c, get.c, + prelink.h, undoall.c, verify.c: Add functional wrappers for sysroot + * wrap-file.c: add function wrapper definitions + +2006-07-28 Alexandre Oliva <aoliva@redhat.com> + + * src/cache.c: Avoid SEGFAULT when sorting cache entries (#197451) + +2006-07-21 MontaVista Software, Inc. + + * prelink.c: add PRELINK_TIMESTAMP support + +2006-07-21 MontaVista Software, Inc. + + * dso.c: Don't adjust reloc for debug info + +2006-06-30 Mark Hatle <mark.hatle@windriver.com> + + * src/elf.h: Make available the elf.h file from glibc 2.3.6 + +2006-06-10 MontaVista Software, Inc. + + * arch-sh.c: Fix R_SH_RELATIVE endian swap problem, + change max page size + |