From 134ec13cdc933b5342c3d5fd8ca2ef5663af0df8 Mon Sep 17 00:00:00 2001 From: Mike McGreevy Date: Thu, 15 May 2008 16:08:23 -0500 Subject: [svn-r15012] Purpose: New configure option Description: The configure option --disable-sharedlib-rpath will disable embedding of the '-Wl,-rpath' information into executables when shared libraries are produced. Tested: kagiso --- configure | 83 ++++++++++++++++++++++++++++++++---------------- configure.in | 25 +++++++++++++++ release_docs/RELEASE.txt | 9 ++++-- 3 files changed, 88 insertions(+), 29 deletions(-) diff --git a/configure b/configure index 673a8ac..c836ebc 100755 --- a/configure +++ b/configure @@ -1,5 +1,5 @@ #! /bin/sh -# From configure.in Id: configure.in 15003 2008-05-15 05:12:00Z acheng . +# From configure.in Id: configure.in 15007 2008-05-15 16:42:03Z mcgreevy . # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.61 for HDF5 1.9.6. # @@ -1580,6 +1580,8 @@ Optional Features: --enable-fast-install[=PKGS] optimize for fast installation [default=yes] --disable-libtool-lock avoid locking (might break parallel builds) + --disable-sharedlib-rpath + Disable use of the '=Wl,-rpath' linker option --enable-production Determines how to run the compiler. --enable-linux-lfs Enable support for large (64-bit) files on Linux. [default=check] @@ -7913,13 +7915,13 @@ if test "${lt_cv_nm_interface+set}" = set; then else lt_cv_nm_interface="BSD nm" echo "int some_variable = 0;" > conftest.$ac_ext - (eval echo "\"\$as_me:7916: $ac_compile\"" >&5) + (eval echo "\"\$as_me:7918: $ac_compile\"" >&5) (eval "$ac_compile" 2>conftest.err) cat conftest.err >&5 - (eval echo "\"\$as_me:7919: $NM \\\"conftest.$ac_objext\\\"\"" >&5) + (eval echo "\"\$as_me:7921: $NM \\\"conftest.$ac_objext\\\"\"" >&5) (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) cat conftest.err >&5 - (eval echo "\"\$as_me:7922: output\"" >&5) + (eval echo "\"\$as_me:7924: output\"" >&5) cat conftest.out >&5 if $GREP 'External.*some_variable' conftest.out > /dev/null; then lt_cv_nm_interface="MS dumpbin" @@ -9027,7 +9029,7 @@ ia64-*-hpux*) ;; *-*-irix6*) # Find out which ABI we are using. - echo '#line 9030 "configure"' > conftest.$ac_ext + echo '#line 9032 "configure"' > conftest.$ac_ext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>&5 ac_status=$? @@ -11595,11 +11597,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:11598: $lt_compile\"" >&5) + (eval echo "\"\$as_me:11600: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:11602: \$? = $ac_status" >&5 + echo "$as_me:11604: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -11919,11 +11921,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:11922: $lt_compile\"" >&5) + (eval echo "\"\$as_me:11924: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:11926: \$? = $ac_status" >&5 + echo "$as_me:11928: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -12024,11 +12026,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:12027: $lt_compile\"" >&5) + (eval echo "\"\$as_me:12029: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:12031: \$? = $ac_status" >&5 + echo "$as_me:12033: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -12079,11 +12081,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:12082: $lt_compile\"" >&5) + (eval echo "\"\$as_me:12084: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:12086: \$? = $ac_status" >&5 + echo "$as_me:12088: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -14907,7 +14909,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 14910 "configure" +#line 14912 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -15007,7 +15009,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 15010 "configure" +#line 15012 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -17026,11 +17028,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:17029: $lt_compile\"" >&5) + (eval echo "\"\$as_me:17031: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:17033: \$? = $ac_status" >&5 + echo "$as_me:17035: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -17125,11 +17127,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:17128: $lt_compile\"" >&5) + (eval echo "\"\$as_me:17130: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:17132: \$? = $ac_status" >&5 + echo "$as_me:17134: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -17177,11 +17179,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:17180: $lt_compile\"" >&5) + (eval echo "\"\$as_me:17182: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:17184: \$? = $ac_status" >&5 + echo "$as_me:17186: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -18707,11 +18709,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:18710: $lt_compile\"" >&5) + (eval echo "\"\$as_me:18712: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:18714: \$? = $ac_status" >&5 + echo "$as_me:18716: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -18806,11 +18808,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:18809: $lt_compile\"" >&5) + (eval echo "\"\$as_me:18811: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:18813: \$? = $ac_status" >&5 + echo "$as_me:18815: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -18858,11 +18860,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:18861: $lt_compile\"" >&5) + (eval echo "\"\$as_me:18863: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:18865: \$? = $ac_status" >&5 + echo "$as_me:18867: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -20848,6 +20850,33 @@ case "$INSTALL" in ;; esac +{ echo "$as_me:$LINENO: checking if -Wl,-rpath should be used to link shared libs in nondefault directories" >&5 +echo $ECHO_N "checking if -Wl,-rpath should be used to link shared libs in nondefault directories... $ECHO_C" >&6; } +# Check whether --enable-sharedlib-rpath was given. +if test "${enable_sharedlib_rpath+set}" = set; then + enableval=$enable_sharedlib_rpath; RPATH=$enableval +fi + + +case "X-$RPATH" in + X-no) + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } + hardcode_libdir_flag_spec='' + ;; + X-|X-yes) + { echo "$as_me:$LINENO: result: yes" >&5 +echo "${ECHO_T}yes" >&6; } + ;; + *) + { echo "$as_me:$LINENO: result: error" >&5 +echo "${ECHO_T}error" >&6; } + { { echo "$as_me:$LINENO: error: \'$enableval\' is not a valid rpath type" >&5 +echo "$as_me: error: \'$enableval\' is not a valid rpath type" >&2;} + { (exit 1); exit 1; }; } + ;; +esac + { echo "$as_me:$LINENO: checking make" >&5 echo $ECHO_N "checking make... $ECHO_C" >&6; } diff --git a/configure.in b/configure.in index 2e5035d..19b3c4b 100644 --- a/configure.in +++ b/configure.in @@ -949,6 +949,31 @@ case "$INSTALL" in ;; esac +dnl ---------------------------------------------------------------------- +dnl Some users have reported problems with libtool's use of '-Wl,-rpath' to +dnl link shared libraries in nondefulat directories. Allow users to +dnl disable embedding the rpath information in the executables and to +dnl instead solely rely on the information in LD_LIBRARY_PATH. +AC_MSG_CHECKING([if -Wl,-rpath should be used to link shared libs in nondefault directories]) +AC_ARG_ENABLE([sharedlib-rpath], + [AC_HELP_STRING([--disable-sharedlib-rpath], + [Disable use of the '=Wl,-rpath' linker option])], + [RPATH=$enableval]) + +case "X-$RPATH" in + X-no) + AC_MSG_RESULT([no]) + hardcode_libdir_flag_spec='' + ;; + X-|X-yes) + AC_MSG_RESULT([yes]) + ;; + *) + AC_MSG_RESULT([error]) + AC_MSG_ERROR([\'$enableval\' is not a valid rpath type]) + ;; +esac + AC_MSG_CHECKING([make]) dnl ---------------------------------------------------------------------- diff --git a/release_docs/RELEASE.txt b/release_docs/RELEASE.txt index c214f62..ff8e0c3 100644 --- a/release_docs/RELEASE.txt +++ b/release_docs/RELEASE.txt @@ -44,8 +44,13 @@ New Features Libtool 2.2.2 (MAM - 2008/05/05) - There is a new build command, 'make check-perform', which will - run the tests in the perform directory. This is an optional step - afer 'make check' in the build process. (MAM - 2008/05/12) + run the tests in the perform directory. This is an optional step + afer 'make check' in the build process. (MAM - 2008/05/12) + + - The new configure option "--disable-sharedlib-rpath" disables + embedding the '-Wl,-rpath' information into executables when + shared libraries are produced, and instead solely relies on the + information in LD_LIBRARY_PATH. (MAM - 2008/05/15) Library: -------- -- cgit v0.12