summaryrefslogtreecommitdiff
path: root/configure.in
diff options
context:
space:
mode:
Diffstat (limited to 'configure.in')
-rw-r--r--configure.in12
1 files changed, 12 insertions, 0 deletions
diff --git a/configure.in b/configure.in
index b5ba86213f..c085853fde 100644
--- a/configure.in
+++ b/configure.in
@@ -556,11 +556,23 @@ AS_CASE(["$target_cpu-$target_os"], [[i[3-6]86*]], [
CFLAGS="$save_CFLAGS"
fi])
+AS_CASE(["$target_os"], [darwin*], [
+if libtool 2>&1 | grep no_warning_for_no_symbols > /dev/null; then
+ ac_cv_prog_ac_ct_RANLIB=:
+ ac_cv_prog_ac_ct_AR='libtool -static'
+ rb_cv_arflags='-no_warning_for_no_symbols -o'
+fi
+])
AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_CHECK_TOOL(AR, ar)
if test -z "$AR"; then
AC_CHECK_PROGS(AR, aal, ar)
fi
+AC_CACHE_CHECK([for $AR flags], [rb_cv_arflags], [
+ AS_IF([$AR rcD conftest.a > /dev/null 2>&1 && rm conftest.a],
+ [rb_cv_arflags=rcD], [rb_cv_arflags=rcu])
+])
+AC_SUBST(ARFLAGS, ["$rb_cv_arflags "])
AC_CHECK_TOOL(AS, as)
ASFLAGS=$ASFLAGS