diff options
author | David Edelsohn <dje.gcc@gmail.com> | 2020-05-23 21:41:45 +0000 |
---|---|---|
committer | David Edelsohn <dje.gcc@gmail.com> | 2020-05-23 21:59:02 +0000 |
commit | 731c4ce0e93065fb70db5faa2bd6c9c6bad56738 (patch) | |
tree | 30ee8c3aec27830439dd3cb670f4c8b7ef145f75 /libcpp | |
parent | a57aa11191617754c8d43b3eb6a2576e970a0668 (diff) | |
download | gcc-731c4ce0e93065fb70db5faa2bd6c9c6bad56738.zip gcc-731c4ce0e93065fb70db5faa2bd6c9c6bad56738.tar.gz gcc-731c4ce0e93065fb70db5faa2bd6c9c6bad56738.tar.bz2 |
libcpp, libdecnumber: configure and substitute AR
AIX supports "FAT" libraries containing 32 bit and 64 bit objects
(similar to Darwin), but commands for manipulating libraries do not
default to accept both 32 bit and 64 bit object files. While updating
the AIX configuration to support building and running GCC as a 64 bit
application, I have encountered some build libraries that hard code
AR=ar instead of testing the environment.
This patch adds AR_CHECK_TOOL(AR, ar) to configure.ac for the two
libraries and updates Makefile.in to accept the substitution.
2020-05-23 David Edelsohn <dje.gcc@gmail.com>
libcpp/ChangeLog:
* Makefile.in (AR): Substitute @AR@.
* configure.ac (CHECK_PROG AR): New.
* configure: Regenerate.
libdecnumber/ChangeLog:
* Makefile.in (AR): Substitute @AR@.
* configure.ac (CHECK_PROG AR): New.
* configure: Regenerate.
Diffstat (limited to 'libcpp')
-rw-r--r-- | libcpp/ChangeLog | 6 | ||||
-rw-r--r-- | libcpp/Makefile.in | 2 | ||||
-rwxr-xr-x | libcpp/configure | 93 | ||||
-rw-r--r-- | libcpp/configure.ac | 1 |
4 files changed, 101 insertions, 1 deletions
diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog index 62226039..4c2eee4 100644 --- a/libcpp/ChangeLog +++ b/libcpp/ChangeLog @@ -1,3 +1,9 @@ +2020-05-23 David Edelsohn <dje.gcc@gmail.com> + + * Makefile.in (AR): Substitute @AR@. + * configure.ac (CHECK_PROG AR): New. + * configure: Regenerate. + 2020-05-20 Nathan Sidwell <nathan@acm.org> * internal.h (typedef _cpp_file): Delete, unnecessary in C++. diff --git a/libcpp/Makefile.in b/libcpp/Makefile.in index ebbca07..5fbba9b 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 7f02d6b..6a967cf 100755 --- a/libcpp/configure +++ b/libcpp/configure @@ -658,6 +658,7 @@ ACLOCAL EGREP GREP CPP +AR RANLIB ac_ct_CXX CXXFLAGS @@ -4011,6 +4012,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 540efeb..1efa96f 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 |