| ## -*- Autoconf -*- |
| # Copyright (C) 2011-2018 Free Software Foundation, Inc. |
| # |
| # This file is free software; the Free Software Foundation |
| # gives unlimited permission to copy and/or distribute it, |
| # with or without modifications, as long as this notice is preserved. |
| |
| # AM_PROG_AR([ACT-IF-FAIL]) |
| # ------------------------- |
| # Try to determine the archiver interface, and trigger the ar-lib wrapper |
| # if it is needed. If the detection of archiver interface fails, run |
| # ACT-IF-FAIL (default is to abort configure with a proper error message). |
| AC_DEFUN([AM_PROG_AR], |
| [AC_BEFORE([$0], [LT_INIT])dnl |
| AC_BEFORE([$0], [AC_PROG_LIBTOOL])dnl |
| AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl |
| AC_REQUIRE_AUX_FILE([ar-lib])dnl |
| AC_CHECK_TOOLS([AR], [ar lib "link -lib"], [false]) |
| : ${AR=ar} |
| |
| AC_CACHE_CHECK([the archiver ($AR) interface], [am_cv_ar_interface], |
| [AC_LANG_PUSH([C]) |
| am_cv_ar_interface=ar |
| AC_COMPILE_IFELSE([AC_LANG_SOURCE([[int some_variable = 0;]])], |
| [am_ar_try='$AR cru libconftest.a conftest.$ac_objext >&AS_MESSAGE_LOG_FD' |
| AC_TRY_EVAL([am_ar_try]) |
| if test "$ac_status" -eq 0; then |
| am_cv_ar_interface=ar |
| else |
| am_ar_try='$AR -NOLOGO -OUT:conftest.lib conftest.$ac_objext >&AS_MESSAGE_LOG_FD' |
| AC_TRY_EVAL([am_ar_try]) |
| if test "$ac_status" -eq 0; then |
| am_cv_ar_interface=lib |
| else |
| am_cv_ar_interface=unknown |
| fi |
| fi |
| rm -f conftest.lib libconftest.a |
| ]) |
| AC_LANG_POP([C])]) |
| |
| case $am_cv_ar_interface in |
| ar) |
| ;; |
| lib) |
| # Microsoft lib, so override with the ar-lib wrapper script. |
| # FIXME: It is wrong to rewrite AR. |
| # But if we don't then we get into trouble of one sort or another. |
| # A longer-term fix would be to have automake use am__AR in this case, |
| # and then we could set am__AR="$am_aux_dir/ar-lib \$(AR)" or something |
| # similar. |
| AR="$am_aux_dir/ar-lib $AR" |
| ;; |
| unknown) |
| m4_default([$1], |
| [AC_MSG_ERROR([could not determine $AR interface])]) |
| ;; |
| esac |
| AC_SUBST([AR])dnl |
| ]) |