summary refs log tree commit diff
diff options
context:
space:
mode:
authorOrivej Desh <orivej@gmx.fr>2017-08-09 09:02:55 +0000
committerRobin Gloster <mail@glob.in>2017-08-09 18:17:46 +0200
commit771f28bac804dfb6ebf99122bfe4e5393d9c278d (patch)
tree2eed9164b6acc1168939585d65dc057451f47740
parent25c12d0abf7209f3b7f8a1d102d2426127ca32f2 (diff)
downloadnixpkgs-771f28bac804dfb6ebf99122bfe4e5393d9c278d.tar
nixpkgs-771f28bac804dfb6ebf99122bfe4e5393d9c278d.tar.gz
nixpkgs-771f28bac804dfb6ebf99122bfe4e5393d9c278d.tar.bz2
nixpkgs-771f28bac804dfb6ebf99122bfe4e5393d9c278d.tar.lz
nixpkgs-771f28bac804dfb6ebf99122bfe4e5393d9c278d.tar.xz
nixpkgs-771f28bac804dfb6ebf99122bfe4e5393d9c278d.tar.zst
nixpkgs-771f28bac804dfb6ebf99122bfe4e5393d9c278d.zip
cc-wrapper: Fix support for qtbase-setup-hook
Revert https://github.com/NixOS/nixpkgs/pull/27657#issuecomment-318161946
due to https://github.com/NixOS/nixpkgs/pull/28021#issuecomment-321045542
-rw-r--r--pkgs/build-support/cc-wrapper/ld-wrapper.sh13
1 files changed, 8 insertions, 5 deletions
diff --git a/pkgs/build-support/cc-wrapper/ld-wrapper.sh b/pkgs/build-support/cc-wrapper/ld-wrapper.sh
index 8db64a38e38..d0a1d5a0ddb 100644
--- a/pkgs/build-support/cc-wrapper/ld-wrapper.sh
+++ b/pkgs/build-support/cc-wrapper/ld-wrapper.sh
@@ -132,11 +132,14 @@ if [ "$NIX_@infixSalt@_DONT_SET_RPATH" != 1 ]; then
         for path in "$dir"/*; do
             file="${path##*/}"
             if [ "${libs[$file]:-}" ]; then
-                libs["$file"]=
-                if [ -z "${rpaths[$dir]:-}" ]; then
-                    rpaths["$dir"]=1
-                    extraAfter+=(-rpath "$dir")
-                fi
+                # This library may have been provided by a previous directory,
+                # but if that library file is inside an output of the current
+                # derivation, it can be deleted after this compilation and
+                # should be found in a later directory, so we add all
+                # directories that contain any of the libraries to rpath.
+                rpaths["$dir"]=1
+                extraAfter+=(-rpath "$dir")
+                break
             fi
         done
     done