From e930a7385b87d84d25d1882c11e441d43cde983b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Tue, 14 Dec 2010 15:22:25 +0000 Subject: [PATCH] Fix about the order of -rpath and -L in the ld-wrapper svn path=/nixpkgs/branches/stdenv-updates/; revision=25128 --- pkgs/build-support/gcc-wrapper/ld-wrapper.sh | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/pkgs/build-support/gcc-wrapper/ld-wrapper.sh b/pkgs/build-support/gcc-wrapper/ld-wrapper.sh index ec09e758daf1..74b6273848ed 100644 --- a/pkgs/build-support/gcc-wrapper/ld-wrapper.sh +++ b/pkgs/build-support/gcc-wrapper/ld-wrapper.sh @@ -122,11 +122,13 @@ if test "$NIX_DONT_SET_RPATH" != "1"; then # Second, for each directory in the library search path (-L...), # see if it contains a dynamic library used by a -l... flag. If # so, add the directory to the rpath. + # It's important to add the rpath in the order of -L..., so + # the link time chosen objects will be those of runtime linking. - for i in $libs; do - for j in $libPath; do - if test -f "$j/lib$i.so"; then - addToRPath $j + for i in $libPath; do + for j in $libs; do + if test -f "$i/lib$j.so"; then + addToRPath $i break fi done