Age | Commit message (Collapse) | Author |
|
Get rid of the dso-readonly.c by adding the conditional to dso.c.
2010-07-22 Mark Hatle <mark.hatle@windriver.com>
* src/dso.c: Add DSO_READONLY conditionals
* src/dso-readonly.c: remove
* src/Makefile.am: switch RTLD dep to dso.c, pass DSO_READONLY
* configure.in: Add AM_PROG_CC_C_O
|
|
Conflicts:
trunk/src/dso.c
|
|
Hi all,
Prelink currently fails to relocate the debug info in MIPS libraries
because they use a custom section type.
Here is an example section from PPC:
[29] .debug_frame PROGBITS 00000000 0021b0 00002c 00
0 0 4
The type is "PROGBITS", which is what prelink likes, so it works correctly.
Now, here is an example from an equivalent MIPS binary:
[28] .debug_frame MIPS_DWARF 00000000 000ee8 00002c 00
0 0 4
Here the type is "MIPS_DWARF", a type not handled by prelink.
Please accept the attached patch to fix this.
Thanks
Andrew
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.
|
|
Conflicts:
trunk/src/dso.c
trunk/testsuite/reloc8.sh
trunk/testsuite/reloc9.sh
|
|
Conflicts:
trunk/doc/prelink.8
trunk/src/Makefile.am
trunk/src/arch-arm.c
trunk/src/arch-mips.c
trunk/src/arch-sparc64.c
trunk/src/conflict.c
trunk/src/cxx.c
trunk/src/prelink.h
trunk/src/space.c
trunk/testsuite/cxx1.sh
trunk/testsuite/shuffle2.c
|
|
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.
Mark Hatle <mark.hatle@windriver.com>
* src/dso-readonly.c: sync with changes above
|
|
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.
Conflicts:
trunk/ChangeLog.csl
|
|
Conflicts:
src/data.c
trunk/src/dso.c
trunk/src/prelink.h
trunk/testsuite/reloc5.c
trunk/testsuite/shuffle2.c
Updated versioning in:
trunk/src/execstack.c
trunk/src/ld-libs.c
trunk/src/main.c
* 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
|
|
* src/undo.c (prelink_undo): If undo_output and .gnu.prelink_undo
section is not present, don't reopen_dso, just return 0.
* src/main.c (main): If dso isn't writable with undo_output,
copy_fd_to_file dso->fd.
* src/dso.c (copy_fd_to_file): New function.
(update_dso): Use it.
git-svn-id: http://sourceware.org/svn/prelink@185 94c539fb-cf18-0410-b60f-edeeb537fa16
|
|
* src/execstack.c (send_file): New dummy function.
* src/verify.c (send_file): No longer static. Don't loop forever
if write or read return 0.
* src/undo.c (prelink_undo): If undo_output is -, use /tmp/undo
instead of - as temp file prefix.
* src/dso.c (set_security_context): Drop unused dso argument, add
ignore_errors argument. If it is non-zero, don't error if
setfilecon failed.
(update_dso): If orig_name is non-NULL, don't error if fchown or
fchmod fails. If rename fails or name1 is - and orig_name is
non-NULL, copy the temporary file to name1 (or to stdout if
name1 is -) instead of failing.
git-svn-id: http://sourceware.org/svn/prelink@182 94c539fb-cf18-0410-b60f-edeeb537fa16
|
|
* src/Makefile.in: Regenerated.
* src/data.c (reopen_dso): Initialize data variable to avoid
warnings.
git-svn-id: http://sourceware.org/svn/prelink@171 94c539fb-cf18-0410-b60f-edeeb537fa16
|
|
(DT_MIPS_TIME_STAMP): Likewise.
(DT_MIPS_ICHECKSUM): Likewise.
(DT_MIPS_IVERSION): Likewise.
(DT_MIPS_FLAGS): Likewise.
(DT_MIPS_BASE_ADDRESS): Likewise.
(DT_MIPS_CONFLICT): Likewise.
(DT_MIPS_LIBLIST): Likewise.
(DT_MIPS_LOCAL_GOTNO): Likewise.
(DT_MIPS_CONFLICTNO): Likewise.
(DT_MIPS_LIBLISTNO): Likewise.
(DT_MIPS_SYMTABNO): Likewise.
(DT_MIPS_UNREFEXTNO): Likewise.
(DT_MIPS_GOTSYM): Likewise.
(DT_MIPS_HIPAGENO): Likewise.
(DT_MIPS_RLD_MAP): Likewise.
(R_MIPS_TLS_DTPMOD): Likewise.
(R_MIPS_TLS_DTPREL): Likewise.
(R_MIPS_TLS_TPREL): Likewise.
(R_MIPS_GLOB_DAT): Likewise.
(DSO): Add info_DT_MIPS_LOCAL_GOTNO, info_DT_MIPS_GOTSYM,
and info_DT_MIPS_SYMTABNO.
* src/dso.c (read_dynamic): Initialize the new DSO fields.
(adjust_symbol_p): Handle stub values on MIPS.
* src/prelink.c (prelink_prepare): Handle SHT_DYNAMIC and
SHT_MIPS_REGINFO on MIPS.
git-svn-id: http://sourceware.org/svn/prelink@145 94c539fb-cf18-0410-b60f-edeeb537fa16
|
|
* src/dso.c (adjust_dso): Use it, if defined.
git-svn-id: http://sourceware.org/svn/prelink@139 94c539fb-cf18-0410-b60f-edeeb537fa16
|
|
* src/dso.c (adjust_symbol_p): New function, extracted from...
(adjust_symtab): ...here.
git-svn-id: http://sourceware.org/svn/prelink@138 94c539fb-cf18-0410-b60f-edeeb537fa16
|
|
git-svn-id: http://sourceware.org/svn/prelink@134 94c539fb-cf18-0410-b60f-edeeb537fa16
|