summaryrefslogtreecommitdiffstats
path: root/trunk/ChangeLog.cross
diff options
context:
space:
mode:
Diffstat (limited to 'trunk/ChangeLog.cross')
-rw-r--r--trunk/ChangeLog.cross458
1 files changed, 458 insertions, 0 deletions
diff --git a/trunk/ChangeLog.cross b/trunk/ChangeLog.cross
new file mode 100644
index 0000000..6a4acf6
--- /dev/null
+++ b/trunk/ChangeLog.cross
@@ -0,0 +1,458 @@
+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
+