 build/ltmain.sh | 32 +++++++++++++++++++++++++++-----
 1 file changed, 27 insertions(+), 5 deletions(-)

diff --git a/build/ltmain.sh b/build/ltmain.sh
index 5eca4ae..805b461 100644
--- a/build/ltmain.sh
+++ b/build/ltmain.sh
@@ -6944,7 +6944,7 @@ func_mode_link ()
 	dir=$func_resolve_sysroot_result
 	# We need an absolute path.
 	case $dir in
-	[\\/]* | [A-Za-z]:[\\/]*) ;;
+	=* | [\\/]* | [A-Za-z]:[\\/]*) ;;
 	*)
 	  absdir=`cd "$dir" && pwd`
 	  test -z "$absdir" && \
@@ -8137,7 +8137,7 @@ func_mode_link ()
 	    $ECHO "*** $linklib is not portable!"
 	  fi
 	  if test lib = "$linkmode" &&
-	     test yes = "$hardcode_into_libs"; then
+	     test "x$wrs_use_rpaths" = "xyes" && test "$hardcode_into_libs" = yes; then
 	    # Hardcode the library path.
 	    # Skip directories that are in the system default run-time
 	    # search path.
@@ -8404,7 +8404,7 @@ func_mode_link ()
 
 	if test lib = "$linkmode"; then
 	  if test -n "$dependency_libs" &&
-	     { test yes != "$hardcode_into_libs" ||
+              { test yes != "$hardcode_into_libs" || test "x$wrs_use_rpaths" != "xyes" ||
 	       test yes = "$build_old_libs" ||
 	       test yes = "$link_static"; }; then
 	    # Extract -R from dependency_libs
@@ -9025,7 +9025,8 @@ func_mode_link ()
 	  *) func_append finalize_rpath " $libdir" ;;
 	  esac
 	done
-	if test yes != "$hardcode_into_libs" || test yes = "$build_old_libs"; then
+        if test yes != "$hardcode_into_libs"  || test "x$wrs_use_rpaths" != "xyes" ||
+           test yes = "$build_old_libs"; then
 	  dependency_libs="$temp_xrpath $dependency_libs"
 	fi
       fi
@@ -9473,7 +9474,7 @@ EOF
 	case $archive_cmds in
 	  *\$LD\ *) wl= ;;
         esac
-	if test yes = "$hardcode_into_libs"; then
+	if test yes = "$hardcode_into_libs" && test "x$wrs_use_rpaths" = "xyes"; then
 	  # Hardcode the library paths
 	  hardcode_libdirs=
 	  dep_rpath=
@@ -10211,6 +10212,27 @@ EOF
       # Now hardcode the library paths
       rpath=
       hardcode_libdirs=
+
+      # short circuit putting rpaths in executables
+      #
+      if test "x$wrs_use_rpaths" != "xyes" ; then
+        flag=
+        for libdir in $compile_rpath; do
+          case $(echo $libdir | ${SED} 's,/[/]*,/,g') in
+            /usr/lib/* | /usr/lib32/* | /usr/lib64/* ) flag="$flag $libdir" ;;
+          esac
+        done
+        compile_rpath="$flag"
+
+        flag=
+        for libdir in $finalize_rpath; do
+          case $(echo $libdir | ${SED} 's,/[/]*,/,g') in
+            /usr/lib/* | /usr/lib32/* | /usr/lib64/* ) flag="$flag $libdir" ;;
+          esac
+        done
+        finalize_rpath="$flag"
+      fi
+
       for libdir in $compile_rpath $finalize_rpath; do
 	if test -n "$hardcode_libdir_flag_spec"; then
 	  if test -n "$hardcode_libdir_separator"; then
-- 
1.9.1

