[PATCH] binuitils: Check if AR is usable for LTO build

Alan Modra amodra@gmail.com
Mon Jan 11 21:20:10 GMT 2021


On Mon, Jan 11, 2021 at 11:53:15AM -0800, H.J. Lu via Binutils wrote:
> Check if AR is usable for LTO build with --enable-pgo-build=lto:
> 
> checking for -plugin option... ar: no operation specified
> Failed: ar --plugin /usr/gcc-11.0.0-x32/libexec/gcc/x86_64-pc-linux-gnu/11.0.0/liblto_plugin.so rc
> no
> configure: error: AR with --plugin and rc is required for LTO build
> 
> instead of build failure later.
> 
> 	PR binutils/26766
> 	* configure.ac:
> 	* configure: Regenerated.

See pr27173 too.  The problem isn't a matter of finding an "ar" that
supports --plugin, we have versions of GNU ar (2.30 to 2.32?) that
accept --plugin but then don't parse the "rc" or other command
options.  I don't think this patch will help.

> ---
>  configure    | 4 ++++
>  configure.ac | 4 ++++
>  2 files changed, 8 insertions(+)
> 
> diff --git a/configure b/configure
> index c44184f72ff..84285addafe 100755
> --- a/configure
> +++ b/configure
> @@ -10240,6 +10240,10 @@ if test -n "$PLUGIN_OPTION"; then
>    if $RANLIB --help 2>&1 | grep -q "\--plugin"; then
>      RANLIB_PLUGIN_OPTION="$PLUGIN_OPTION"
>    fi
> +else
> +  if test "$enable_pgo_build" != "no"; then
> +    as_fn_error $? "AR with --plugin and rc is required for LTO build" "$LINENO" 5
> +  fi
>  fi
>  
>  
> diff --git a/configure.ac b/configure.ac
> index 9dd51c36e5a..d39019d7093 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -3452,6 +3452,10 @@ if test -n "$PLUGIN_OPTION"; then
>    if $RANLIB --help 2>&1 | grep -q "\--plugin"; then
>      RANLIB_PLUGIN_OPTION="$PLUGIN_OPTION"
>    fi
> +else
> +  if test "$enable_pgo_build" != "no"; then
> +    AC_MSG_ERROR([AR with --plugin and rc is required for LTO build])
> +  fi
>  fi
>  AC_SUBST(AR_PLUGIN_OPTION)
>  AC_SUBST(RANLIB_PLUGIN_OPTION)
> -- 
> 2.29.2

-- 
Alan Modra
Australia Development Lab, IBM


More information about the Gcc-patches mailing list