[521] | 1 | Summary: An ELF prelinking utility |
---|
| 2 | Summary(ja): ELF prelink ユーティリティ |
---|
| 3 | Name: prelink |
---|
| 4 | Version: 0.4.2 |
---|
| 5 | Release: 1%{?_dist_release} |
---|
| 6 | License: GPLv2+ |
---|
| 7 | Group: System Environment/Base |
---|
| 8 | %define date 20090925 |
---|
| 9 | Source: ftp://people.redhat.com/jakub/prelink/prelink-%{date}.tar.bz2 |
---|
| 10 | Source2: prelink.conf |
---|
| 11 | Source3: prelink.cron |
---|
| 12 | Source4: prelink.sysconfig |
---|
| 13 | Buildroot: %{_tmppath}/%{name}-%{version}-root |
---|
| 14 | #BuildRequires: libelf-devel >= 0.7.0-5 |
---|
| 15 | BuildRequires: elfutils-libelf-devel-static |
---|
| 16 | #BuildRequires: libselinux-static |
---|
| 17 | Requires: glibc >= 2.2.4-18, coreutils, findutils |
---|
| 18 | Requires: util-linux, gawk, grep |
---|
| 19 | # For now |
---|
| 20 | ExclusiveArch: %{ix86} alpha sparc sparcv9 sparc64 s390 s390x x86_64 ppc ppc64 |
---|
| 21 | |
---|
| 22 | |
---|
| 23 | %description |
---|
| 24 | The prelink package contains a utility which modifies ELF shared libraries |
---|
| 25 | and executables, so that far fewer relocations need to be resolved at runtime |
---|
| 26 | and thus programs come up faster. |
---|
| 27 | |
---|
| 28 | |
---|
| 29 | %prep |
---|
| 30 | %setup -n prelink |
---|
| 31 | |
---|
| 32 | |
---|
| 33 | %build |
---|
| 34 | %configure --disable-shared |
---|
| 35 | make %{_smp_mflags} |
---|
| 36 | echo ====================TESTING========================= |
---|
| 37 | make -C testsuite check-harder |
---|
| 38 | make -C testsuite check-cycle |
---|
| 39 | echo ====================TESTING END===================== |
---|
| 40 | |
---|
| 41 | |
---|
| 42 | %install |
---|
| 43 | %{makeinstall} |
---|
| 44 | mkdir -p %{buildroot}%{_sysconfdir}/rpm |
---|
| 45 | cp -a %{SOURCE2} %{buildroot}%{_sysconfdir} |
---|
| 46 | mkdir -p %{buildroot}%{_sysconfdir}/{sysconfig,cron.daily,prelink.conf.d} |
---|
| 47 | cp -a %{SOURCE3} %{buildroot}%{_sysconfdir}/cron.daily/prelink |
---|
| 48 | cp -a %{SOURCE4} %{buildroot}%{_sysconfdir}/sysconfig/prelink |
---|
| 49 | chmod 755 %{buildroot}%{_sysconfdir}/cron.daily/prelink |
---|
| 50 | chmod 644 %{buildroot}%{_sysconfdir}/{sysconfig/prelink,prelink.conf} |
---|
| 51 | cat > %{buildroot}%{_sysconfdir}/rpm/macros.prelink <<"EOF" |
---|
| 52 | # rpm-4.1 verifies prelinked libraries using a prelink undo helper. |
---|
| 53 | # Note: The 2nd token is used as argv[0] and "library" is a |
---|
| 54 | # placeholder that will be deleted and replaced with the appropriate |
---|
| 55 | # library file path. |
---|
| 56 | %%__prelink_undo_cmd /usr/sbin/prelink prelink -y library |
---|
| 57 | EOF |
---|
| 58 | chmod 644 %{buildroot}%{_sysconfdir}/rpm/macros.prelink |
---|
| 59 | |
---|
| 60 | mkdir -p %{buildroot}/var/{lib/misc,log/prelink} |
---|
| 61 | touch %{buildroot}/var/lib/misc/prelink.full |
---|
| 62 | touch %{buildroot}/var/lib/misc/prelink.quick |
---|
| 63 | touch %{buildroot}/var/lib/misc/prelink.force |
---|
| 64 | touch %{buildroot}/var/log/prelink/prelink.log |
---|
| 65 | |
---|
| 66 | |
---|
| 67 | %post |
---|
| 68 | touch /var/lib/misc/prelink.force |
---|
| 69 | |
---|
| 70 | |
---|
| 71 | %clean |
---|
| 72 | rm -rf %{buildroot} |
---|
| 73 | |
---|
| 74 | |
---|
| 75 | %files |
---|
| 76 | %defattr(-,root,root) |
---|
| 77 | %doc doc/prelink.pdf |
---|
| 78 | %verify(not md5 size mtime) %config(noreplace) %{_sysconfdir}/prelink.conf |
---|
| 79 | %verify(not md5 size mtime) %config(noreplace) %{_sysconfdir}/sysconfig/prelink |
---|
| 80 | %{_sysconfdir}/rpm/macros.prelink |
---|
| 81 | %dir %attr(0755,root,root) %{_sysconfdir}/prelink.conf.d |
---|
| 82 | %{_sysconfdir}/cron.daily/prelink |
---|
| 83 | %{_prefix}/sbin/prelink |
---|
| 84 | %{_prefix}/bin/execstack |
---|
| 85 | %{_mandir}/man8/prelink.8* |
---|
| 86 | %{_mandir}/man8/execstack.8* |
---|
| 87 | %attr(0644,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /var/lib/misc/prelink.full |
---|
| 88 | %attr(0644,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /var/lib/misc/prelink.quick |
---|
| 89 | %attr(0644,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /var/lib/misc/prelink.force |
---|
| 90 | %dir /var/log/prelink |
---|
| 91 | %attr(0644,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /var/log/prelink/prelink.log |
---|
| 92 | |
---|
| 93 | |
---|
| 94 | %changelog |
---|
| 95 | * Fri Oct 23 2009 MATSUBAYASHI Kohji <shaolin@vinelinux.org> - 0.4.2-1 |
---|
| 96 | - synced with Fedora 0.4.2-3 |
---|
| 97 | |
---|
| 98 | * Fri Sep 25 2009 Jakub Jelinek <jakub@redhat.com> 0.4.2-3 |
---|
| 99 | - fix DW_OP_implicit_value handling |
---|
| 100 | |
---|
| 101 | * Sun Jul 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> 0.4.2-2 |
---|
| 102 | - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild |
---|
| 103 | |
---|
| 104 | * Thu Jul 9 2009 Jakub Jelinek <jakub@redhat.com> 0.4.2-1 |
---|
| 105 | - don't look for *_IRELATIVE relocations in .gnu.conflict section in binaries |
---|
| 106 | |
---|
| 107 | * Sun Jul 5 2009 Jakub Jelinek <jakub@redhat.com> 0.4.1-1 |
---|
| 108 | - add support for STT_GNU_IFUNC on i?86/x86_64 and R_{386,X86_64}_IRELATIVE |
---|
| 109 | - add support for DWARF3/DWARF4 features generated newly by recent |
---|
| 110 | gccs |
---|
| 111 | - temporarily link prelink against -lpthread to workaround -lselinux |
---|
| 112 | issue |
---|
| 113 | |
---|
| 114 | * Wed Mar 11 2009 Jakub Jelinek <jakub@redhat.com> 0.4.0-7 |
---|
| 115 | - fix prelinking on ppc64 |
---|
| 116 | |
---|
| 117 | * Tue Mar 10 2009 Jakub Jelinek <jakub@redhat.com> 0.4.0-6 |
---|
| 118 | - BuildRequire glibc-static |
---|
| 119 | - rebuilt with gcc 4.4 |
---|
| 120 | - sparc64 and ARM TLS support |
---|
| 121 | |
---|
| 122 | * Thu Feb 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.4.0-5 |
---|
| 123 | - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild |
---|
| 124 | |
---|
| 125 | * Fri Aug 29 2008 Tom "spot" Callaway <tcallawa@redhat.com> 0.4.0-4 |
---|
| 126 | - fix license tag |
---|
| 127 | |
---|
| 128 | * Tue Apr 8 2008 Jakub Jelinek <jakub@redhat.com> 0.4.0-3 |
---|
| 129 | - BuildRequire libselinux-static rather than libselinux-devel (#440749) |
---|
| 130 | |
---|
| 131 | * Tue Oct 9 2007 Jakub Jelinek <jakub@redhat.com> 0.4.0-1 |
---|
| 132 | - add support for -c /etc/prelink.conf.d/*.conf in prelink.conf (#244452) |
---|
| 133 | - remove no longer existent directories from default prelink.conf (#248694) |
---|
| 134 | - reenabled prelink C++ optimizations which have not triggered any longer |
---|
| 135 | since _ZT[IV]* moved into .data.rel.ro section from .data |
---|
| 136 | - fixed performance issues in C++ optimizations, especially on GCJ |
---|
| 137 | CNI programs (#314051) |
---|
| 138 | - other performance improvements, prelink -avmR after prelink -ua now |
---|
| 139 | takes roughly 3m4s real time instead of 20m27s before |
---|
| 140 | - don't run TEXTREL tests if SELinux is enforcing (#245928) |
---|
| 141 | |
---|
| 142 | * Fri Dec 1 2006 Jakub Jelinek <jakub@redhat.com> 0.3.10-1 |
---|
| 143 | - MIPS support (Richard Sandiford) |
---|
| 144 | - don't leave temporary files behind on prelink --verify failures (#199251) |
---|
| 145 | |
---|
| 146 | * Fri Oct 27 2006 Jakub Jelinek <jakub@redhat.com> 0.3.9-4 |
---|
| 147 | - fix adjusting of .debug_ranges if end of range is at the end of some |
---|
| 148 | section and there is padding before the following one |
---|
| 149 | |
---|
| 150 | * Mon Oct 23 2006 Jakub Jelinek <jakub@redhat.com> 0.3.9-3 |
---|
| 151 | - rebuilt |
---|
| 152 | |
---|
| 153 | * Fri Jul 28 2006 Alexandre Oliva <aoliva@redhat.com> 0.3.9-2 |
---|
| 154 | - avoid SEGFAULT when sorting cache entries (#197451) |
---|
| 155 | |
---|
| 156 | * Wed Jul 12 2006 Jakub Jelinek <jakub@redhat.com> 0.3.9-1 |
---|
| 157 | - DT_GNU_HASH support |
---|
| 158 | - handle N_BNSYM and N_ENSYM stabs (#198203) |
---|
| 159 | - handle upgrades from prelink with smaller maxpagesize to prelink |
---|
| 160 | with larger maxpagesize (#196941) |
---|
| 161 | |
---|
| 162 | * Wed Jun 21 2006 Jakub Jelinek <jakub@redhat.com> 0.3.8-1 |
---|
| 163 | - fix -q mode canonicalization fix, speed up filename canonicalization |
---|
| 164 | by caching canonicalization for directories (#145983, #188062) |
---|
| 165 | - remove bogus e_shoff assertion check (#194016) |
---|
| 166 | - move prelink log file to /var/log/prelink/prelink.log (#194473) |
---|
| 167 | - increase x86-64 maxpagesize to 2MB |
---|
| 168 | |
---|
| 169 | * Mon May 22 2006 Jakub Jelinek <jakub@redhat.com> 0.3.7-1 |
---|
| 170 | - in -q mode, recheck the canonicalized filename to avoid |
---|
| 171 | overwriting symlinks with regular files (#145983, #188062) |
---|
| 172 | - allow prelinking of binaries with .tbss section |
---|
| 173 | |
---|
| 174 | * Mon Feb 13 2006 Jakub Jelinek <jakub@redhat.com> 0.3.6-3 |
---|
| 175 | - rebuilt again, disable -Wl,-z,nocopyreloc tests on x86_64, |
---|
| 176 | nocopyreloc really doesn't work on this platform (#180552) |
---|
| 177 | |
---|
| 178 | * Wed Dec 12 2005 Jakub Jelinek <jakub@redhat.com> 0.3.6-2 |
---|
| 179 | - rebuilt with GCC 4.1 |
---|
| 180 | - link against newer glibc to fix MALLOC_PERTURB_ bug on 64-bit |
---|
| 181 | arches |
---|
| 182 | |
---|
| 183 | * Thu Sep 1 2005 Jakub Jelinek <jakub@redhat.com> 0.3.6-1 |
---|
| 184 | - remove kernel requires - installed kernel doesn't imply running |
---|
| 185 | kernel anyway and in FC5 kernels older than 2.4.20 can't be used |
---|
| 186 | anyway, as LinuxThreads are no longer included |
---|
| 187 | - don't relocate stabs N_{B,D,}SLINE (reported by Ashley Pittman) |
---|
| 188 | |
---|
| 189 | * Fri Jul 29 2005 Jakub Jelinek <jakub@redhat.com> 0.3.5-2 |
---|
| 190 | - on ppc32 handle -mbss-plt .got sections created with -msecure-plt |
---|
| 191 | capable binutils (#164615) |
---|
| 192 | |
---|
| 193 | * Fri Jun 10 2005 Jakub Jelinek <jakub@redhat.com> 0.3.5-1 |
---|
| 194 | - support for ppc32 -msecure-plt libraries and binaries |
---|
| 195 | - don't crash if d_tag is invalid (#155605) |
---|
| 196 | - rebuilt against robustified libelf (CAN-2005-1704) |
---|
| 197 | - fix handling of libraries and binaries given on command |
---|
| 198 | line without any / characters in the filename |
---|
| 199 | |
---|
| 200 | * Mon Mar 14 2005 Jakub Jelinek <jakub@redhat.com> 0.3.4-3 |
---|
| 201 | - fix relocation of .debug_loc (#150194) |
---|
| 202 | |
---|
| 203 | * Sat Mar 5 2005 Jakub Jelinek <jakub@redhat.com> 0.3.4-2 |
---|
| 204 | - rebuilt with GCC 4 |
---|
| 205 | |
---|
| 206 | * Mon Feb 7 2005 Jakub Jelinek <jakub@redhat.com> 0.3.4-1 |
---|
| 207 | - fix prelink -uo when linked against libselinux (#146637) |
---|
| 208 | and when the -o argument filename is on a different filesystem |
---|
| 209 | than the object that needs undoing |
---|
| 210 | |
---|
| 211 | * Tue Nov 23 2004 Jakub Jelinek <jakub@redhat.com> 0.3.3-1 |
---|
| 212 | - if layout code needs to re-prelink some library, make sure |
---|
| 213 | all libraries that depend on it are re-prelinked too (#140081) |
---|
| 214 | - add several more checks before deciding it is ok to prelink a binary |
---|
| 215 | (even if another bug like #140081 was in, these checks should hopefully |
---|
| 216 | catch it and refuse to (re-)prelink the binary) |
---|
| 217 | - added new PRELINK_NONRPM_CHECK_INTERVAL variable to %{_sysconfdir}/prelink, |
---|
| 218 | defaulting to 7 days. Prelink nightly job will not do anything |
---|
| 219 | if that interval has not elapsed since last prelinking and |
---|
| 220 | and the rpm database has not been modified since that prelinking. |
---|
| 221 | This is useful if you rely on rpm/up2date/yum/apt-rpm for library |
---|
| 222 | and binary updates. If you combine it with other means (installs |
---|
| 223 | from source, tarballs etc.), you probably want to |
---|
| 224 | set PRELINK_NONRPM_CHECK_INTERVAL=0. |
---|
| 225 | - update prelink man page (#126468) |
---|
| 226 | |
---|
| 227 | * Tue Oct 12 2004 Jakub Jelinek <jakub@redhat.com> 0.3.2-11 |
---|
| 228 | - update PT_PHDR program header if present when adding new program |
---|
| 229 | headers (#133734) |
---|
| 230 | |
---|
| 231 | * Sat Oct 2 2004 Jakub Jelinek <jakub@redhat.com> 0.3.2-10 |
---|
| 232 | - support for non-absolute blacklist glob patterns (e.g. -b *.la) |
---|
| 233 | - cache information about non-prelinkable files (non-ELF, statically linked, |
---|
| 234 | too small .dynamic, DT_TEXTREL with conflicts against it; #132056) |
---|
| 235 | - other speedups for prelink -aq |
---|
| 236 | - for --verify, make sure only read-only fd's are opened for the |
---|
| 237 | unprelinked temporary file, otherwise a kernel might ETXTBUSY on it |
---|
| 238 | (#133317) |
---|
| 239 | - change warning message if some object's dependencies can't be found |
---|
| 240 | - add buildrequires libselinux-devel and use %%{_tmppath} instead |
---|
| 241 | of /var/tmp in Buildroot (#132879) |
---|
| 242 | |
---|
| 243 | * Wed Sep 8 2004 Jakub Jelinek <jakub@redhat.com> 0.3.2-8 |
---|
| 244 | - handle overlapping .opd sections on ppc64 |
---|
| 245 | |
---|
| 246 | * Tue Sep 7 2004 Jakub Jelinek <jakub@redhat.com> 0.3.2-7 |
---|
| 247 | - fix warning messages if setting of security context fails |
---|
| 248 | |
---|
| 249 | * Wed Jul 7 2004 Jakub Jelinek <jakub@redhat.com> 0.3.2-6 |
---|
| 250 | - change sed separator in testsuite scripts from | to , if \| |
---|
| 251 | is present in regexps, as that invokes undefined behaviour |
---|
| 252 | which changed between GNU sed 4.0.9 and 4.1 |
---|
| 253 | |
---|
| 254 | * Wed Jul 7 2004 Jakub Jelinek <jakub@redhat.com> 0.3.2-5 |
---|
| 255 | - skip vDSO in ldd /sbin/init output when determining if /sbin/telinit -u |
---|
| 256 | should be run (#127350) |
---|
| 257 | |
---|
| 258 | * Tue Jun 15 2004 Elliot Lee <sopwith@redhat.com> |
---|
| 259 | - rebuilt |
---|
| 260 | |
---|
| 261 | * Thu May 20 2004 Jakub Jelinek <jakub@redhat.com> 0.3.2-3 |
---|
| 262 | - 4 SPARC 64-bit fixes |
---|
| 263 | - use $CC instead of gcc when checking for TLS support in tls*.sh |
---|
| 264 | |
---|
| 265 | * Thu May 20 2004 Jakub Jelinek <jakub@redhat.com> 0.3.2-2 |
---|
| 266 | - add 2 new TLS testcases (one that fails e.g. with glibc < 2.3.3-28 |
---|
| 267 | on IA-32) |
---|
| 268 | - SPARC TLS support |
---|
| 269 | |
---|
| 270 | * Wed May 5 2004 Jakub Jelinek <jakub@redhat.com> 0.3.2-1 |
---|
| 271 | - fix cxx.c:68: find_cxx_sym: Assertive `n < ndeps' failed problem |
---|
| 272 | on 32-bit architectures (#118522) |
---|
| 273 | - build prelink.cache into temporary file and atomically rename over |
---|
| 274 | (#121109) |
---|
| 275 | |
---|
| 276 | * Wed Mar 17 2004 Jakub Jelinek <jakub@redhat.com> 0.3.1-2 |
---|
| 277 | - unlink temporary files if renaming to the destination or setting of |
---|
| 278 | security context failed (#118251) |
---|
| 279 | - fix bi-architecture prelinking (#118226) |
---|
| 280 | - if prelink called from the cron script fails, note the exit status |
---|
| 281 | into /var/log/prelink.log |
---|
| 282 | |
---|
| 283 | * Thu Mar 4 2004 Jakub Jelinek <jakub@redhat.com> 0.3.1-1 |
---|
| 284 | - add prelink documentation (PDF format) |
---|
| 285 | - fix assertion failures on PPC (.sdynbss related, #115925) |
---|
| 286 | - fix prelink --help (#115202) |
---|
| 287 | - avoid free on uninitialized variable in one error path (#117332) |
---|
| 288 | - s/i386/%%{ix86}/ to make mharris happy |
---|
| 289 | |
---|
| 290 | * Mon Feb 16 2004 Jakub Jelinek <jakub@redhat.com> 0.3.0-21 |
---|
| 291 | - fix prelink abort in certain cases where a new PT_LOAD segment |
---|
| 292 | needs to be added (seen on AMD64) |
---|
| 293 | |
---|
| 294 | * Thu Jan 29 2004 Jakub Jelinek <jakub@redhat.com> 0.3.0-20 |
---|
| 295 | - clearify message about unlisted dependencies |
---|
| 296 | - don't do SELinux context copying if is_selinux_enabled () < 0 |
---|
| 297 | |
---|
| 298 | * Tue Jan 27 2004 Jakub Jelinek <jakub@redhat.com> 0.3.0-19 |
---|
| 299 | - refuse to prelink objects whose dependencies as reported by |
---|
| 300 | ldd don't include all dependencies transitively (this can |
---|
| 301 | happen when using RPATH and a shared library with the same |
---|
| 302 | SONAME exists both in that RPATH and either another RPATH |
---|
| 303 | or standard library directories) |
---|
| 304 | - add testcase for this |
---|
| 305 | - rework .dynsym/.symtab STT_SECTION translation, so that it works |
---|
| 306 | with binutils which put only sections not generated by the linker |
---|
| 307 | into .dynsym for shared libraries |
---|
| 308 | - fix make check, so that it is not confused by 2.6.x kernel |
---|
| 309 | VDSOs |
---|
| 310 | |
---|
| 311 | * Thu Jan 15 2004 Jakub Jelinek <jakub@redhat.com> 0.3.0-18 |
---|
| 312 | - allow R_*_JU?MP_SLOT relocs to point also into .got.plt |
---|
| 313 | sections on IA32/AMD64/ARM/s390/s390x/SH |
---|
| 314 | |
---|
| 315 | * Tue Dec 9 2003 Jakub Jelinek <jakub@redhat.com> 0.3.0-17 |
---|
| 316 | - set SELinux security context immediately before renaming, |
---|
| 317 | not before |
---|
| 318 | |
---|
| 319 | * Tue Nov 18 2003 Jakub Jelinek <jakub@redhat.com> 0.3.0-15 |
---|
| 320 | - blacklist support |
---|
| 321 | - use FTW_ACTIONRETVAL if available to avoid even stating of |
---|
| 322 | files in blacklisted directory trees |
---|
| 323 | - SELinux support |
---|
| 324 | |
---|
| 325 | * Tue Oct 28 2003 Jakub Jelinek <jakub@redhat.com> 0.3.0-13 |
---|
| 326 | - added execstack.8 manpage |
---|
| 327 | - changed order of columns in execstack --query output |
---|
| 328 | |
---|
| 329 | * Tue Oct 28 2003 Jakub Jelinek <jakub@redhat.com> 0.3.0-12 |
---|
| 330 | - added execstack tool |
---|
| 331 | - added -o option, to be used together with -u |
---|
| 332 | - free temp_filename in close_dso |
---|
| 333 | |
---|
| 334 | * Mon Oct 27 2003 Jakub Jelinek <jakub@redhat.com> 0.3.0-11 |
---|
| 335 | - fix adjustement of DT_VALRNGLO .. DT_VALRNGHI and |
---|
| 336 | DT_ADDRRNGLO .. DT_ADDRRNGHI dynamic tags when relocating shared |
---|
| 337 | libraries |
---|
| 338 | - never adjust p_vaddr/p_paddr/p_offset of PT_GNU_STACK segment |
---|
| 339 | - allow shell wildcards in %{_sysconfdir}/prelink.conf |
---|
| 340 | - fix REL->RELA conversion of shared libraries if .rel.dyn |
---|
| 341 | or .rel.plt are last sections in readonly PT_LOAD segment |
---|
| 342 | - force full reprelinking on prelink upgrades (well, first time |
---|
| 343 | the cron job is run after the upgrade) |
---|
| 344 | - require coreutils, findutils, util-linux, gawk and grep |
---|
| 345 | |
---|
| 346 | * Fri Oct 24 2003 Jakub Jelinek <jakub@redhat.com> 0.3.0-10 |
---|
| 347 | - avoid removing PT_GNU_STACK segment if decreasing first PT_LOAD segment's |
---|
| 348 | p_vaddr on IA-32 |
---|
| 349 | |
---|
| 350 | * Mon Oct 13 2003 Jakub Jelinek <jakub@redhat.com> 0.3.0-9 |
---|
| 351 | - avoid prelink crash if first dependency is to be prelinked because |
---|
| 352 | of address space overlaps |
---|
| 353 | |
---|
| 354 | * Thu Oct 9 2003 Jakub Jelinek <jakub@redhat.com> 0.3.0-8 |
---|
| 355 | - use /var/lib/misc/prelink.full instead of /var/run/prelink.full for last |
---|
| 356 | full prelink timestamp (#106721) |
---|
| 357 | - warn about UPX compressed binaries or libraries/binaries without section |
---|
| 358 | headers (neither can be prelinked obviously) |
---|
| 359 | |
---|
| 360 | * Mon Oct 6 2003 Jakub Jelinek <jakub@redhat.com> 0.3.0-7 |
---|
| 361 | - don't rely on malloc/calloc/realloc with size 0 returning a unique pointer |
---|
| 362 | - fix testsuite, so that it works even if installed glibc/libstdc++ |
---|
| 363 | is already prelinked |
---|
| 364 | |
---|
| 365 | * Wed Sep 17 2003 Jakub Jelinek <jakub@redhat.com> 0.3.0-6 |
---|
| 366 | - fix comment in %{_sysconfdir}/sysconfig/prelink (#106217) |
---|
| 367 | |
---|
| 368 | * Tue Sep 2 2003 Jakub Jelinek <jakub@redhat.com> 0.3.0-5 |
---|
| 369 | - fix prelink segfault on -z nocombreloc libraries (#103404) |
---|
| 370 | - run one make check round with -Wl,-z,nocombreloc to test handling |
---|
| 371 | of nocombreloc binaries and libraries |
---|
| 372 | |
---|
| 373 | * Fri Aug 15 2003 Jakub Jelinek <jakub@redhat.com> 0.3.0-4 |
---|
| 374 | - redirect prelink's stderr from the cron job to prelink.log (#102456) |
---|
| 375 | |
---|
| 376 | * Mon Aug 11 2003 Jakub Jelinek <jakub@redhat.com> 0.3.0-3 |
---|
| 377 | - fix DT_CHECKSUM computation - do STT_LOCAL symbol frobbing and .mdebug |
---|
| 378 | updates write_dso would do also before checksum computation (#89953) |
---|
| 379 | |
---|
| 380 | * Fri Aug 8 2003 Jakub Jelinek <jakub@redhat.com> 0.3.0-2 |
---|
| 381 | - avoid assertion failures when changing PROGBITS .bss back into |
---|
| 382 | NOBITS .bss (#101813) |
---|
| 383 | - add 2 new tests for it |
---|
| 384 | |
---|
| 385 | * Tue Aug 5 2003 Jakub Jelinek <jakub@redhat.com> 0.3.0-1 |
---|
| 386 | - run prelink from cron automatically, add %{_sysconfdir}/sysconfig/prelink |
---|
| 387 | to configure it |
---|
| 388 | - update manual page |
---|
| 389 | |
---|
| 390 | * Tue Jul 1 2003 Jakub Jelinek <jakub@redhat.com> 0.2.1-2 |
---|
| 391 | - fix a thinko in the library path checking code |
---|
| 392 | - change R_386_GLOB_DAT into R_386_32 in .gnu.conflict, similarly |
---|
| 393 | R_X86_64_GLOB_DAT and R_X86_64_64 |
---|
| 394 | - fix a bug in find_free_space which caused |
---|
| 395 | "section file offsets not monotonically increasing" errors on some |
---|
| 396 | IA-32 binaries |
---|
| 397 | - add --md5 and --sha options |
---|
| 398 | - use mmap during --verify if possible |
---|
| 399 | - add */lib64 directories to prelink.conf |
---|
| 400 | |
---|
| 401 | * Mon Jun 30 2003 Jakub Jelinek <jakub@redhat.com> 0.2.1-1 |
---|
| 402 | - make sure binaries prelinked for the second and later time without |
---|
| 403 | unprelinking in between verify correctly |
---|
| 404 | - make sure DT_CHECKSUM computation is the same for newly prelinked |
---|
| 405 | and second or later time prelinked libraries |
---|
| 406 | - dwarf2 abbrev hash bugfix |
---|
| 407 | - don't allow prelinking libraries outside directories specified |
---|
| 408 | in config file or on the command line |
---|
| 409 | - several new tests for reprelinking |
---|
| 410 | - pack non-alloced sections and section header table tightly after the |
---|
| 411 | last alloced section |
---|
| 412 | |
---|
| 413 | * Wed Jun 18 2003 Jakub Jelinek <jakub@redhat.com> 0.2.0-28 |
---|
| 414 | - finish and enable ppc64 |
---|
| 415 | - fix ppc BR{,N}TAKEN reloc handling |
---|
| 416 | - fix up sh_offset values of zero-sized or SHT_NOBITS section |
---|
| 417 | if ld messed them up |
---|
| 418 | - issue error about bogus library dependency chains instead of |
---|
| 419 | segfaulting (plus testcases for it) |
---|
| 420 | |
---|
| 421 | * Fri Jun 13 2003 Jakub Jelinek <jakub@redhat.com> 0.2.0-27 |
---|
| 422 | - add --quick mode |
---|
| 423 | - new test for --quick mode and also reprelinking of binary against |
---|
| 424 | upgraded shared library which needs more conflicts |
---|
| 425 | |
---|
| 426 | * Mon Jun 2 2003 Jakub Jelinek <jakub@redhat.com> 0.2.0-26 |
---|
| 427 | - don't segfault in C++ optimizations if a conflict from undefined |
---|
| 428 | to defined value is seen |
---|
| 429 | - some more ppc64 work |
---|
| 430 | |
---|
| 431 | * Fri May 30 2003 Jakub Jelinek <jakub@redhat.com> 0.2.0-25 |
---|
| 432 | - exec-shield support |
---|
| 433 | - with -R, don't randomize just base address from which all libs |
---|
| 434 | are layed out, but also slightly randomize order of libraries |
---|
| 435 | in the layout queue |
---|
| 436 | - add check-harder and check-cycle makefile goals in testsuite/, |
---|
| 437 | use it during rpm building |
---|
| 438 | |
---|
| 439 | * Fri May 23 2003 Jakub Jelinek <jakub@redhat.com> 0.2.0-24 |
---|
| 440 | - optimize out conflicts in G++ 3+ virtual tables if they are just |
---|
| 441 | because some method has been called from a binary and thus there |
---|
| 442 | is a .plt slot in the binary. This change not only kills lots of conflicts |
---|
| 443 | on some KDE programs, but also should speed up runtime (not just startup |
---|
| 444 | time), since the hop through .plt is bypassed |
---|
| 445 | - added new C++ test |
---|
| 446 | - fix a bug in ppc64 fixup .plt code |
---|
| 447 | |
---|
| 448 | * Thu May 22 2003 Jakub Jelinek <jakub@redhat.com> 0.2.0-23 |
---|
| 449 | - when updating dynamic tags for executable after section reshuffling, |
---|
| 450 | check section type as well, so that 0 sized sections don't get the |
---|
| 451 | tags attached instead of the proper ones |
---|
| 452 | - when an address space conflict is found between libraries for the same |
---|
| 453 | executable during layouting, check properly for all remaining conflicts |
---|
| 454 | as well |
---|
| 455 | |
---|
| 456 | * Thu May 15 2003 Jakub Jelinek <jakub@redhat.com> 0.2.0-22 |
---|
| 457 | - don't adjust DT_REL{,A} if it is 0 |
---|
| 458 | - allow prelinking of libraries with no dependencies |
---|
| 459 | - fix handling of libraries with no lazy relocs, no normal relocs or no |
---|
| 460 | relocs at all |
---|
| 461 | - some new tests |
---|
| 462 | - fix SH (Daniel Jacobowitz) |
---|
| 463 | |
---|
| 464 | * Mon May 5 2003 Jakub Jelinek <jakub@redhat.com> 0.2.0-21 |
---|
| 465 | - fix prelink on AMD64 |
---|
| 466 | - 2 new testcases |
---|
| 467 | - fix for debugging prelink_entry_dump/restore |
---|
| 468 | |
---|
| 469 | * Fri May 2 2003 Jakub Jelinek <jakub@redhat.com> 0.2.0-20 |
---|
| 470 | - ppc TLS |
---|
| 471 | - some ppc64 work |
---|
| 472 | - avoid using trampolines for nested functions |
---|
| 473 | - fix typo in prelink man page (#89247) |
---|
| 474 | |
---|
| 475 | * Tue Apr 15 2003 Jakub Jelinek <jakub@redhat.com> 0.2.0-19 |
---|
| 476 | - fix find_readonly_space bug which caused doxygen not to be prelinked |
---|
| 477 | |
---|
| 478 | * Mon Feb 17 2003 Jakub Jelinek <jakub@redhat.com> 0.2.0-18 |
---|
| 479 | - fix section indices in .symtab if non-alloced sections weren't |
---|
| 480 | originally monotonically increasing |
---|
| 481 | - s390, s390x and Alpha TLS support |
---|
| 482 | |
---|
| 483 | * Mon Feb 10 2003 Jakub Jelinek <jakub@redhat.com> 0.2.0-17 |
---|
| 484 | - never try to prelink or relocate stripped-to-file debuginfo |
---|
| 485 | |
---|
| 486 | * Tue Jan 21 2003 Jakub Jelinek <jakub@redhat.com> 0.2.0-16 |
---|
| 487 | - x86-64 TLS support |
---|
| 488 | - added one more tls testcase |
---|
| 489 | |
---|
| 490 | * Fri Dec 13 2002 Jakub Jelinek <jakub@redhat.com> 0.2.0-15 |
---|
| 491 | - hopefully finished IA-32 TLS support |
---|
| 492 | - require elfutils 0.72 for various data-swapping fixes |
---|
| 493 | |
---|
| 494 | * Wed Dec 11 2002 Jakub Jelinek <jakub@redhat.com> 0.2.0-14 |
---|
| 495 | - rebuilt against elfutils 0.69 to fix a make check failure on Alpha |
---|
| 496 | |
---|
| 497 | * Mon Dec 9 2002 Jakub Jelinek <jakub@redhat.com> 0.2.0-13 |
---|
| 498 | - use ELF_F_PERMISSIVE if defined |
---|
| 499 | - be permissive even when doing --reloc-only |
---|
| 500 | - fix up .plt section sh_entsize on Alpha |
---|
| 501 | |
---|
| 502 | * Wed Dec 4 2002 Jakub Jelinek <jakub@redhat.com> 0.2.0-12 |
---|
| 503 | - some more fixes for elfutils |
---|
| 504 | |
---|
| 505 | * Tue Dec 3 2002 Jakub Jelinek <jakub@redhat.com> 0.2.0-11 |
---|
| 506 | - make it work with elfutils instead of libelf 0.[78] |
---|
| 507 | - update to newer auto*/libtool |
---|
| 508 | - some more steps towards TLS support, at least --reloc-only should work |
---|
| 509 | |
---|
| 510 | * Thu Oct 3 2002 Jakub Jelinek <jakub@redhat.com> 0.2.0-10 |
---|
| 511 | - x86-64, s390x and testsuite fixes |
---|
| 512 | |
---|
| 513 | * Sun Sep 29 2002 Jakub Jelinek <jakub@redhat.com> 0.2.0-9 |
---|
| 514 | - enable on ppc and x86_64 |
---|
| 515 | - fix ppc far PLT slot prelink |
---|
| 516 | - support --undo on ppc |
---|
| 517 | - for bug-compatibility with some unnamed OS changed R_SPARC_RELATIVE |
---|
| 518 | --undo |
---|
| 519 | - tiny steps towards TLS support on IA-32, more will come |
---|
| 520 | |
---|
| 521 | * Tue Aug 27 2002 Jakub Jelinek <jakub@redhat.com> 0.2.0-8 |
---|
| 522 | - avoid putting garbage into executable's .gnu.liblist sh_link |
---|
| 523 | if we did not have to grow .dynstr |
---|
| 524 | - don't segfault on bogus sh_link and sh_info values (#72705) |
---|
| 525 | |
---|
| 526 | * Mon Aug 26 2002 Jakub Jelinek <jakub@redhat.com> 0.2.0-7 |
---|
| 527 | - when growing allocated shared lib sections (for REL->RELA |
---|
| 528 | conversion), make sure !PF_W and PF_W segments don't end up |
---|
| 529 | on the same page |
---|
| 530 | - when finding space for sections in an executable, make sure |
---|
| 531 | it is not included in between two reloc sections |
---|
| 532 | - for non-zero SHN_ABS symbols on 32-bit arches mask high |
---|
| 533 | 32-bits of st_value (libelf 0.8.x is strict here) |
---|
| 534 | |
---|
| 535 | * Fri Aug 23 2002 Jakub Jelinek <jakub@redhat.com> 0.2.0-6 |
---|
| 536 | - make it work with libelf 0.8.2 |
---|
| 537 | |
---|
| 538 | * Fri Jun 21 2002 Tim Powers <timp@redhat.com> |
---|
| 539 | - automated rebuild |
---|
| 540 | |
---|
| 541 | * Fri Jun 21 2002 Jakub Jelinek <jakub@redhat.com> 0.2.0-4 |
---|
| 542 | - add %{_sysconfdir}/rpm/macros.prelink |
---|
| 543 | |
---|
| 544 | * Mon Jun 17 2002 Jakub Jelinek <jakub@redhat.com> 0.2.0-1 |
---|
| 545 | - added --undo and --verify mode |
---|
| 546 | - new architectures s390, s390x, arm, sh |
---|
| 547 | - handle binaries/shared libraries with non-allocated sections |
---|
| 548 | without monotonically increasing sh_offsets |
---|
| 549 | - handle .sbss and .sdynbss |
---|
| 550 | - fixed a bug in 64-bit LE/BE read routines |
---|
| 551 | - removed .rel{,a}.dyn reloc conversion/sorting, it was duplicating |
---|
| 552 | ld's -z combreloc and complicated lots of things |
---|
| 553 | - fixed STB_LOCAL/STT_SECTION symbol adjusting |
---|
| 554 | - use mkstemp for temporary files, allow --verify for binaries/libs |
---|
| 555 | on read-only filesystems |
---|
| 556 | - added DWARF-2 .debug_ranges adjustement, special case GCC's |
---|
| 557 | "set base to 0 and make things absolute instead of relative" trick |
---|
| 558 | - allow arches to override default layout mechanism (for ppc) |
---|
| 559 | - added some new tests, test --undo and --verify modes in the testsuite |
---|
| 560 | - alpha: adjust what R_ALPHA_GLOB_DAT points to too |
---|
| 561 | - i386: apply _32 and _PC32 REL relocs, as apply_rel can be called |
---|
| 562 | for C++ optimizations before REL->RELA conversion |
---|
| 563 | - ppc: layout strategy to satisfy ppc lib location preferences |
---|
| 564 | - sparc64: handle R_SPARC_DISP64 |
---|
| 565 | - x86-64: adjust what R_X86_64_RELATIVE points to too |
---|
| 566 | - link prelink statically, esp. because of --verify mode |
---|
| 567 | - run make check during build process |
---|
| 568 | |
---|
| 569 | * Mon Oct 1 2001 Jakub Jelinek <jakub@redhat.com> 0.1.3-7 |
---|
| 570 | - fix layout code so that -R works |
---|
| 571 | - on IA-32, when there are no R_386_PC32 relocs and no R_386_32 relocs |
---|
| 572 | with non-zero addend (= memory content), don't convert REL->RELA, |
---|
| 573 | only switch R_386_32 relocs to R_386_GLOB_DAT |
---|
| 574 | - support creating a new PT_LOAD segment if necessary, if SHT_NOBITS |
---|
| 575 | sections are small, instead of adding new PT_LOAD segment just add file |
---|
| 576 | backing to those NOBITS sections |
---|
| 577 | - added testsuite |
---|
| 578 | - new supported architectures (Alpha including .mdebug section support, |
---|
| 579 | Sparc, Sparc 64-bit, X86_64 (the last one untested)), beginning of PPC |
---|
| 580 | support |
---|
| 581 | |
---|
| 582 | * Thu Sep 6 2001 Jakub Jelinek <jakub@redhat.com> 0.1.3-6 |
---|
| 583 | - make sure lib base is always ELF page size aligned |
---|
| 584 | |
---|
| 585 | * Wed Aug 29 2001 Jakub Jelinek <jakub@redhat.com> 0.1.3-5 |
---|
| 586 | - fix sorting of .rel*.dyn sections, so that all RELATIVE relocs really |
---|
| 587 | come first |
---|
| 588 | - when DT_RELCOUNT already exists and conversion REL->RELA is done, |
---|
| 589 | convert it into DT_RELACOUNT |
---|
| 590 | - set conflict lookupent and conflictent to 0 for undefineds |
---|
| 591 | - don't bother with DT_REL*COUNT for apps, they cannot have any RELATIVE |
---|
| 592 | relocs |
---|
| 593 | |
---|
| 594 | * Tue Aug 28 2001 Jakub Jelinek <jakub@redhat.com> 0.1.3-4 |
---|
| 595 | - brown paper bag time: when determining if conversion from REL to RELA |
---|
| 596 | is needed, check all non-PLT rel sections, including last. |
---|
| 597 | This caused prelinking to fail with -z combreloc compiled libraries. |
---|
| 598 | |
---|
| 599 | * Mon Aug 27 2001 Jakub Jelinek <jakub@redhat.com> 0.1.3-3 |
---|
| 600 | - don't use .gnu.reloc section, use .rel.dyn or .rela.dyn instead |
---|
| 601 | - put RELATIVE relocs first, not last, so that DT_REL{,A}COUNT |
---|
| 602 | works |
---|
| 603 | - put in updated glibc patch |
---|
| 604 | - no need for special binutils patch - all is done in the -z combreloc |
---|
| 605 | patchset |
---|
| 606 | |
---|
| 607 | * Tue Jul 24 2001 Jakub Jelinek <jakub@redhat.com> 0.1.3-2 |
---|
| 608 | - use the new DT_GNU_CONFLICT/DT_GNU_LIBLIST/SHT_GNU_LIBLIST constants |
---|
| 609 | - unlink *.#prelink# files if necessary |
---|
| 610 | |
---|
| 611 | * Wed Jul 18 2001 Jakub Jelinek <jakub@redhat.com> 0.1.3-1 |
---|
| 612 | - fix layout.c |
---|
| 613 | - create .gnu.prelink_undo section, --undo and --verify modes will use that |
---|
| 614 | - some more C++ specific optimizations |
---|
| 615 | |
---|
| 616 | * Fri Jul 13 2001 Jakub Jelinek <jakub@redhat.com> 0.1.2-1 |
---|
| 617 | - bail out early if ELF object does not have sh_offsets |
---|
| 618 | monotonically increasing |
---|
| 619 | - disallow prelinking if there are conflicts against read-only |
---|
| 620 | segments in shared libraries (ie. non-pic shared libraries |
---|
| 621 | - this is better than bailing out for all non-pic shared libraries) |
---|
| 622 | - add some C++ specific optimizations to reduce number of conflicts, |
---|
| 623 | more to come |
---|
| 624 | |
---|
| 625 | * Tue Jul 10 2001 Jakub Jelinek <jakub@redhat.com> 0.1.1-2 |
---|
| 626 | - fix incremental prelinking |
---|
| 627 | |
---|
| 628 | * Tue Jul 10 2001 Jakub Jelinek <jakub@redhat.com> 0.1.1-1 |
---|
| 629 | - relocate stabs and dwarf-2 debugging formats |
---|
| 630 | - support both --all and incremental prelinking |
---|
| 631 | - handle hardlinks |
---|
| 632 | - limit to libraries in %{_sysconfdir}/prelink.conf directories or |
---|
| 633 | directories from command line |
---|
| 634 | |
---|
| 635 | * Tue Jul 3 2001 Jakub Jelinek <jakub@redhat.com> 0.1.0-1 |
---|
| 636 | - new package |
---|