diff --git a/config/opal_setup_wrappers.m4 b/config/opal_setup_wrappers.m4 index 6a3be1fc80b..2d5ac93227f 100644 --- a/config/opal_setup_wrappers.m4 +++ b/config/opal_setup_wrappers.m4 @@ -133,7 +133,7 @@ AC_DEFUN([OPAL_SETUP_WRAPPER_INIT],[ AC_MSG_CHECKING([if want wrapper compiler runpath support]) AC_ARG_ENABLE([wrapper-runpath], - [AS_HELP_STRING([--enable-wrapper-runpath], + [AS_HELP_STRING([--enable--wrapper-runpath], [enable runpath in the wrapper compilers if linker supports it (default: enabled, unless wrapper-rpath is disabled).])]) AS_IF([test "$enable_wrapper_runpath" != "no"], [enable_wrapper_runpath=yes]) AC_MSG_RESULT([$enable_wrapper_runpath]) @@ -227,12 +227,41 @@ AC_DEFUN([OPAL_SETUP_RUNPATH],[ AC_MSG_RESULT([yes (-Wl,--enable-new-dtags)])], [AC_MSG_RESULT([no])]) AC_LANG_POP([C])]) - m4_ifdef([project_ompi],[ - OPAL_LIBTOOL_CONFIG([wl],[wl_fc],[--tag=FC],[]) +m4_ifdef([project_ompi],[ + # Output goes into globally-visible $rpath_args. Run this in a + # sub-process so that we don't pollute the current process + # environment. + rpath_script=conftest.$$.sh + rpath_outfile=conftest.$$.out + rm -f $rpath_script $rpath_outfile + cat > $rpath_script < $rpath_outfile + +chmod +x $rpath_outfile +. ./$rpath_outfile +rm -f $rpath_outfile + +wl="\`eval echo \$wl\`" +echo \$wl + +# Done +exit 0 +EOF + chmod +x $rpath_script + wl_fc=`./$rpath_script` + rm -f $rpath_script - LDFLAGS="$LDFLAGS_save ${wl_fc}--enable-new-dtags" - AC_LANG_PUSH([Fortran]) - AC_LINK_IFELSE([AC_LANG_SOURCE([[program test + LDFLAGS="$LDFLAGS_save ${wl_fc}--enable-new-dtags" + AC_LANG_PUSH([Fortran]) + AC_LINK_IFELSE([AC_LANG_SOURCE([[program test end program]])], [runpath_fc_args="${wl_fc}--enable-new-dtags"], [runpath_fc_args=""])