diff options
author | Thomas Tuegel <ttuegel@mailbox.org> | 2017-03-29 07:35:21 -0500 |
---|---|---|
committer | Thomas Tuegel <ttuegel@mailbox.org> | 2017-03-29 07:35:21 -0500 |
commit | 096c72e255d30cffaf4f62eec94a7c29f72db6dc (patch) | |
tree | 822c57c8a5070f9dd30c7c278c2357a145345f8f /pkgs/applications/networking/dropbox | |
parent | c076b9326ffa66ef125d64cefe3ba68dac3d8399 (diff) | |
download | nixlib-096c72e255d30cffaf4f62eec94a7c29f72db6dc.tar nixlib-096c72e255d30cffaf4f62eec94a7c29f72db6dc.tar.gz nixlib-096c72e255d30cffaf4f62eec94a7c29f72db6dc.tar.bz2 nixlib-096c72e255d30cffaf4f62eec94a7c29f72db6dc.tar.lz nixlib-096c72e255d30cffaf4f62eec94a7c29f72db6dc.tar.xz nixlib-096c72e255d30cffaf4f62eec94a7c29f72db6dc.tar.zst nixlib-096c72e255d30cffaf4f62eec94a7c29f72db6dc.zip |
dropbox: set INTERP for some DYN objects
Diffstat (limited to 'pkgs/applications/networking/dropbox')
-rw-r--r-- | pkgs/applications/networking/dropbox/default.nix | 16 |
1 files changed, 4 insertions, 12 deletions
diff --git a/pkgs/applications/networking/dropbox/default.nix b/pkgs/applications/networking/dropbox/default.nix index c262d9014430..6b6c31d9db6f 100644 --- a/pkgs/applications/networking/dropbox/default.nix +++ b/pkgs/applications/networking/dropbox/default.nix @@ -107,23 +107,15 @@ in stdenv.mkDerivation { getType='s/ *Type: *\([A-Z]*\) (.*/\1/' find "$out/${appdir}" -type f -a -perm -0100 -print | while read obj; do dynamic=$(readelf -S "$obj" 2>/dev/null | grep "DYNAMIC" || true) - if [[ -n "$dynamic" ]]; then - type=$(readelf -h "$obj" 2>/dev/null | grep 'Type:' | sed -e "$getType") - - if [[ "$type" == "EXEC" ]]; then + if readelf -l "$obj" 2>/dev/null | grep "INTERP" >/dev/null; then echo "patching interpreter path in $type $obj" patchelf --set-interpreter "$INTERP" "$obj" + fi - echo "patching RPATH in $type $obj" - oldRPATH=$(patchelf --print-rpath "$obj") - patchelf --set-rpath "''${oldRPATH:+$oldRPATH:}$RPATH" "$obj" - - echo "shrinking RPATH in $type $obj" - patchelf --shrink-rpath "$obj" - - elif [[ "$type" == "DYN" ]]; then + type=$(readelf -h "$obj" 2>/dev/null | grep 'Type:' | sed -e "$getType") + if [ "$type" == "EXEC" ] || [ "$type" == "DYN" ]; then echo "patching RPATH in $type $obj" oldRPATH=$(patchelf --print-rpath "$obj") |