blob: f13da91f390043ccbe28e033bd8f52609c942b93 [file] [log] [blame]
build/ltmain.sh | 32 +++++++++++++++++++++++++++-----
1 file changed, 27 insertions(+), 5 deletions(-)
Index: httpd-2.4.29/build/ltmain.sh
===================================================================
--- httpd-2.4.29.orig/build/ltmain.sh
+++ httpd-2.4.29/build/ltmain.sh
@@ -6969,7 +6969,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" && \
@@ -8167,7 +8167,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.
@@ -8434,7 +8434,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
@@ -9086,7 +9086,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
@@ -9534,7 +9535,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=
@@ -10272,6 +10273,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