gcc 4.9: Fix multi-out fixups

- $out/libexec/ now contains subdirectories that we want to patchelf too
- $out/libexec/ now contains some .so and a related .la file, which must
  not be passed to patchelf
This commit is contained in:
Tuomas Tynkkynen 2015-08-20 13:50:34 +03:00 committed by Vladimír Čunát
parent 8a460bf953
commit bd028b24bb

View file

@ -231,14 +231,14 @@ postInstall() {
rm -rf $out/bin/gccbug
# Take out the bootstrap-tools from the rpath, as it's not needed at all having $out
for i in "$out"/libexec/gcc/*/*/*; do
for i in $(find "$out"/libexec/gcc/*/*/* -type f -a \! -name '*.la'); do
PREV_RPATH=`patchelf --print-rpath "$i"`
NEW_RPATH=`echo "$PREV_RPATH" | sed 's,:[^:]*bootstrap-tools/lib,,g'`
patchelf --set-rpath "$NEW_RPATH" "$i" && echo OK
done
# For some reason the libs retain RPATH to $out
for i in "$lib"/lib/{libtsan.so.0.0.0,libasan.so.0.0.0}; do
for i in "$lib"/lib/{libtsan,libasan,libubsan}.so.*.*.*; do
PREV_RPATH=`patchelf --print-rpath "$i"`
NEW_RPATH=`echo "$PREV_RPATH" | sed "s,:${out}[^:]*,,g"`
patchelf --set-rpath "$NEW_RPATH" "$i" && echo OK