From a772e9d01a81dae132cb03107292b3ecc725e5af Mon Sep 17 00:00:00 2001 From: Richard Levitte Date: Wed, 9 Mar 2016 11:36:32 +0100 Subject: [PATCH] Touch the correct variables for the system; shlib_wrap.sh on Solaris If there is cause to think LD_LIBRARY_PATH_32 and LD_PRELOAD_32 are appropriate variables to touch, do so. Otherwise, touch the usual LD_LIBRARY_PATH and LD_PRELOAD. This covers for older installations that don't have a mix of 32-bit and 64-bit libs. Reviewed-by: Andy Polyakov --- util/shlib_wrap.sh | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/util/shlib_wrap.sh b/util/shlib_wrap.sh index 9b1dd66578..ce463f17e8 100755 --- a/util/shlib_wrap.sh +++ b/util/shlib_wrap.sh @@ -28,9 +28,13 @@ SunOS|IRIX*) preload_var=LD_PRELOAD_64 ;; *ELF\ 32*SPARC*|*ELF\ 32*80386*) - [ -n "$LD_LIBRARY_PATH_32" ] && rld_var=LD_LIBRARY_PATH_32 - LD_PRELOAD_32="$LIBCRYPTOSO $LIBSSLSO"; export LD_PRELOAD_32 - preload_var=LD_PRELOAD_32 + # We only need to change LD_PRELOAD_32 and LD_LIBRARY_PATH_32 + # on a multi-arch system. Otherwise, trust the fallbacks. + if [ -f /lib/64/ld.so.1 ]; then + [ -n "$LD_LIBRARY_PATH_32" ] && rld_var=LD_LIBRARY_PATH_32 + LD_PRELOAD_32="$LIBCRYPTOSO $LIBSSLSO"; export LD_PRELOAD_32 + preload_var=LD_PRELOAD_32 + fi ;; # Why are newly built .so's preloaded anyway? Because run-time # .so lookup path embedded into application takes precedence -- 2.34.1