From: Sergei Trofimovich <siarh...@google.com> On system with 'ar' and '${CHOST}-ar' the latter is preferred. as it might not match default 'ar'.
Bug is initially reported downstream as https://bugs.gentoo.org/718004. libcpp/ChangeLog: PR libcpp/94657 * Makefile.in: use @AR@ placeholder * configure.ac: use AC_CHECK_TOOL to find 'ar' * configure: regenerate --- libcpp/ChangeLog | 7 ++++ libcpp/Makefile.in | 2 +- libcpp/configure | 94 +++++++++++++++++++++++++++++++++++++++++++++ libcpp/configure.ac | 1 + 4 files changed, 103 insertions(+), 1 deletion(-) diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog index 307cf3add94..77145768a3d 100644 --- a/libcpp/ChangeLog +++ b/libcpp/ChangeLog @@ -1,3 +1,10 @@ +2020-04-22 Sergei Trofimovich <siarh...@google.com> + + PR preprocessor/94657: use $AR, not 'ar' + * Makefile.in: use @AR@ placeholder + * configure.ac: use AC_CHECK_TOOL to find 'ar' + * configure: regenerate + 2020-02-14 Jakub Jelinek <ja...@redhat.com> Partially implement P1042R1: __VA_OPT__ wording clarifications diff --git a/libcpp/Makefile.in b/libcpp/Makefile.in index 8f8c8f65eb3..af7a0c6f73e 100644 --- a/libcpp/Makefile.in +++ b/libcpp/Makefile.in @@ -25,7 +25,7 @@ srcdir = @srcdir@ top_builddir = . VPATH = @srcdir@ INSTALL = @INSTALL@ -AR = ar +AR = @AR@ ARFLAGS = cru ACLOCAL = @ACLOCAL@ AUTOCONF = @AUTOCONF@ diff --git a/libcpp/configure b/libcpp/configure index 11da199083b..a6dcf5dcb61 100755 --- a/libcpp/configure +++ b/libcpp/configure @@ -657,6 +657,7 @@ ACLOCAL EGREP GREP CPP +AR RANLIB ac_ct_CXX CXXFLAGS @@ -1039,6 +1040,7 @@ do | -silent | --silent | --silen | --sile | --sil) silent=yes ;; + -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) ac_prev=sbindir ;; -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ @@ -4008,6 +4010,98 @@ else RANLIB="$ac_cv_prog_RANLIB" fi +if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args. +set dummy ${ac_tool_prefix}ar; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_AR+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$AR"; then + ac_cv_prog_AR="$AR" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_AR="${ac_tool_prefix}ar" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +AR=$ac_cv_prog_AR +if test -n "$AR"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5 +$as_echo "$AR" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_AR"; then + ac_ct_AR=$AR + # Extract the first word of "ar", so it can be a program name with args. +set dummy ar; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_AR+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_AR"; then + ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_AR="ar" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_AR=$ac_cv_prog_ac_ct_AR +if test -n "$ac_ct_AR"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5 +$as_echo "$ac_ct_AR" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_AR" = x; then + AR="" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + AR=$ac_ct_AR + fi +else + AR="$ac_cv_prog_AR" +fi + ac_ext=c diff --git a/libcpp/configure.ac b/libcpp/configure.ac index 1779562a3a7..9ccfb02aa13 100644 --- a/libcpp/configure.ac +++ b/libcpp/configure.ac @@ -12,6 +12,7 @@ AC_PROG_INSTALL AC_PROG_CC AC_PROG_CXX AC_PROG_RANLIB +AC_CHECK_TOOL(AR, ar) AC_USE_SYSTEM_EXTENSIONS AC_SYS_LARGEFILE -- 2.26.2