Eelco Dolstra
656349fd15
* Removed some duplicate code (and work around an apparent g++ code
...
generation bug).
2008-05-28 13:19:46 +00:00
Eelco Dolstra
dd00c21227
* A test for setting the rpath on a library.
2008-05-28 12:29:23 +00:00
Eelco Dolstra
36f96d03db
* When reordering the section headers, the e_shstrndx field in the ELF
...
header should be updated as well.
2008-05-28 11:53:16 +00:00
Eelco Dolstra
1f713dd568
* Add the DT_RUNPATH (or DT_RPATH) entry to the top of the .dynamic
...
section, otherwise "readelf" barfs for unknown reasons.
2008-05-28 11:31:54 +00:00
Eelco Dolstra
15ba1450c3
* A first attempt at --set-rpath support for libraries. This is very
...
useful for the NVIDIA libGL.so, since setting an RPATH on libGL.so
to include its dependencies (like libXext and libGLcore) makes it
unnecessary to set an RPATH on the executables that use it. This is
especially important for executables that use RUNPATH (like Wine)
since there the paths in RUNPATH are ignored when resolving the
dependencies of dependencies (i.e. RUNPATH is scoped).
2008-05-28 09:19:49 +00:00
Eelco Dolstra
704c22c6a8
* Support DT_RUNPATH (in fact, prefer DT_RUNPATH over DT_RPATH unless
...
--force-rpath is set).
2008-05-27 16:23:21 +00:00
Eelco Dolstra
53f7311089
* Sort the program headers. This makes "strip" contain less about
...
the resulting executables (but unfortunately doesn't fix
NIXPKGS-85).
2008-05-27 14:05:53 +00:00
Eelco Dolstra
8f036ab190
* Typos.
2008-05-27 13:24:24 +00:00
Eelco Dolstra
b105af71c2
* patchelf: fix compilation on GCC 4.3.0.
2008-05-21 09:37:24 +00:00
Eelco Dolstra
26f47987c5
* Fix the tests on FreeBSD. On FreeBSD, the RPATH is scoped: adding a
...
directory to the RPATH of an executable doesn't cause it to be used
for resolving dependencies of libraries, only the dependencies of
the executable itself. So don't rely on that. A better fix would
be to support --set-rpath on libraries, but that's a lot harder.
2008-05-09 15:46:54 +00:00
Eelco Dolstra
d5cc557d2d
* Compilation fixes for FreeBSD 4.
2008-05-09 15:44:48 +00:00
Eelco Dolstra
de1f009cde
* Remove debug lines.
2007-12-07 11:32:47 +00:00
Eelco Dolstra
34835b2162
* Various 64-bit fixes. Computation of the first page to use was
...
incorrect if the ELF image maps everything above 2^32 (which seems
to be the case for IA-64, which has the code starting at
0x4000000000000000).
* IA-64 support. Not tested since I don't have an IA-64 machine, but
readelf doesn't complain about the resulting executable.
2007-12-07 11:29:08 +00:00
Eelco Dolstra
5dcc6ef25b
* Bump the version number to 0.4.
2007-05-24 17:47:57 +00:00
Eelco Dolstra
48d19886dd
* Updated the release history.
2007-05-24 15:39:32 +00:00
Eelco Dolstra
598afdb490
* The Group field is required.
2007-03-21 23:30:48 +00:00
Eelco Dolstra
2ebc5c6c13
* An RPM spec file for PatchELF.
2007-03-21 12:49:59 +00:00
Eelco Dolstra
9369fb5954
* Dummy commit.
2007-03-19 13:39:27 +00:00
Eelco Dolstra
efa2a7ee24
* When sorting the sections, make sure that we maintain the sh_link
...
and sh_info fields. Tricky.
2007-02-01 00:25:29 +00:00
Eelco Dolstra
5cc8d9c439
* Keep the section headers sorted by offset. If we don't, we won't
...
correctly find the sections to be moved and some might be
overwritten.
2007-02-01 00:03:46 +00:00
Eelco Dolstra
8ed63404b2
* Support big endian binaries (such as on powerpc-linux).
2007-01-31 18:20:48 +00:00
Eelco Dolstra
0fa0755a9f
2007-01-31 15:38:18 +00:00
Eelco Dolstra
94f38d26bc
* .rel.plt is called .rela.plt on x86_64-linux.
2007-01-31 15:08:42 +00:00
Eelco Dolstra
56cae84500
* Instantiate the right template depending on whether the file is 32
...
or 64 bits. (This is done at runtime, so patchelf can patch 32
*and* 64-bit executables on both 32 and 64-bit platforms).
2007-01-31 14:48:19 +00:00
Eelco Dolstra
f6a628b812
* Templatise the ElfFile class to take the Elf32_* types as
...
arguments. The idea is that we can just pass the Elf64_* types to
get a 64-bit version of the class.
2007-01-31 14:24:03 +00:00
Eelco Dolstra
a9fb3f9fbd
* Put the ELF operations in a class.
2007-01-31 13:50:07 +00:00
Eelco Dolstra
1c0e33852e
* Print error messages on stderr.
2007-01-31 12:13:13 +00:00
Eelco Dolstra
b1fe47bbca
* --shrink-rpath doesn't take an argument.
2007-01-18 18:53:49 +00:00
Eelco Dolstra
dcc2a1f003
* Bump the version number.
2007-01-15 12:42:21 +00:00
Eelco Dolstra
7ec0e80c1d
* DOH!
2007-01-15 12:24:22 +00:00
Eelco Dolstra
6e68740e37
* Mark as stable.
2007-01-15 12:22:03 +00:00
Eelco Dolstra
dfdf305efe
* Release notes.
2007-01-15 12:09:27 +00:00
Eelco Dolstra
fc5cb4be7a
* Hack: if we can't find .rel.dyn, use .rel.got. No idea if this
...
makes sense.
2006-03-03 21:57:07 +00:00
Eelco Dolstra
020c2393cf
* Bump the revision number to 0.2.
2005-10-11 13:23:40 +00:00
Eelco Dolstra
c246daeeea
* --interpreter' ->
--set-interpreter'.
2005-10-11 13:05:08 +00:00
Eelco Dolstra
07b8f23706
* Add a README and a license.
2005-10-11 13:03:30 +00:00
Eelco Dolstra
37cd5c8d04
* A `--debug' flag.
2005-10-04 13:11:16 +00:00
Eelco Dolstra
a36b2c6144
* Fix computation of the new start page.
2005-10-03 18:25:15 +00:00
Eelco Dolstra
b60d8d3ef2
* Add a test for programs that crash when .dynstr etc. are moved.
2005-10-03 18:22:32 +00:00
Eelco Dolstra
df7806f982
* Use a bigger maximum size.
2005-10-02 20:57:56 +00:00
Eelco Dolstra
dd77b20708
* Handle the case where no RPATH is present, so the .dynamic table has
...
to be increased.
2005-10-01 01:05:50 +00:00
Eelco Dolstra
2369d8b2de
* Handle `--set-rpath' for the growing case.
2005-09-30 23:59:40 +00:00
Eelco Dolstra
58ec67927f
* `patchelf --set-rpath': short case.
2005-09-30 23:04:25 +00:00
Eelco Dolstra
c951319559
* Refactoring continued: `--shrink-rpath' works again.
2005-09-30 21:59:38 +00:00
Eelco Dolstra
ddf3b787d7
* Clear out trailing and padding space.
2005-09-30 21:29:27 +00:00
Eelco Dolstra
d5afac8e03
* Revert.
2005-09-30 21:28:34 +00:00
Eelco Dolstra
460e117720
* Refactoring continued: `--set-interpreter' works again.
2005-09-30 21:22:27 +00:00
Eelco Dolstra
ab3d0a012c
* Start of refactoring to support growing the RPATH.
2005-09-30 18:10:19 +00:00
Eelco Dolstra
1587dc98e2
* Doh!
2005-09-30 15:44:47 +00:00
Eelco Dolstra
774bdc0d5e
* Also try a interpreter with a long name.
2005-09-30 15:43:10 +00:00