summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--m4/slibtool.m455
1 files changed, 53 insertions, 2 deletions
diff --git a/m4/slibtool.m4 b/m4/slibtool.m4
index 43dea09..121e00a 100644
--- a/m4/slibtool.m4
+++ b/m4/slibtool.m4
@@ -41,6 +41,7 @@ slibtool_enable_dlopen_default='yes'
slibtool_enable_win32_dll_default='yes'
slibtool_enable_fast_install_default='yes'
slibtool_pic_mode_default='default'
+slibtool_sysroot_default=
])
@@ -90,8 +91,32 @@ slibtool_arg_enable()
slibtool_arg_with()
{
- enableval="${withval}"
- slibtool_arg_enable
+ case "${slbt_var}" in
+ 'slibtool_sysroot')
+ case "${withval}" in
+ 'yes')
+ slbt_eval_expr="${slbt_var}='yes'"
+ eval $slbt_eval_expr
+ ;;
+
+ 'no')
+ slbt_eval_expr="${slbt_var}='no'"
+ eval $slbt_eval_expr
+ ;;
+
+ *)
+ slbt_eval_expr="${slbt_var}=${withval}"
+ eval $slbt_eval_expr
+ ;;
+ esac
+
+ ;;
+
+ *)
+ enableval="${withval}"
+ slibtool_arg_enable
+ ;;
+ esac
}
])
@@ -151,6 +176,30 @@ slibtool_set_flavor()
;;
esac
+ case "_${slibtool_sysroot}" in
+ '_')
+ ;;
+
+ '_yes'|'_no')
+ slibtool_err_arg=[$with_sysroot]
+ slibtool_err_msg='slibtool: the command-line --sysroot argument is always respected.'
+ AC_MSG_RESULT([slibtool: --with-sysroot=$slibtool_err_arg])
+ AC_MSG_ERROR([$slibtool_err_msg])
+ ;;
+
+ _/*)
+ SLIBTOOL_SYSROOT="--sysroot=${slibtool_sysroot}"
+ SLIBTOOL="${SLIBTOOL} \$(SLIBTOOL_SYSROOT)"
+ ;;
+
+ *)
+ slibtool_err_arg=[$with_sysroot]
+ slibtool_err_msg='slibtool: relative sysroot paths are not supported.'
+ AC_MSG_RESULT([slibtool: --with-sysroot=$slibtool_err_arg])
+ AC_MSG_ERROR([$slibtool_err_msg])
+ ;;
+ esac
+
# drop-in replacement
enable_shared=${slibtool_enable_shared}
enable_static=${slibtool_enable_static}
@@ -310,6 +359,7 @@ _SLIBTOOL_ARG_ENABLE([dlopen],[allow -dlopen and -dlpreopen],[slibtool_enable_dl
_SLIBTOOL_ARG_ENABLE([win32-dll],[natively support win32 dll's],[slibtool_enable_win32_dll])
_SLIBTOOL_ARG_ENABLE([fast-install],[optimize for fast installation],[slibtool_enable_fast_install])
_SLIBTOOL_ARG_WITH([pic],[override defaults for pic object usage],[slibtool_pic_mode])
+_SLIBTOOL_ARG_WITH([sysroot],[absolute path to the target's sysroot],[slibtool_sysroot])
# slibtool: set flavor
@@ -319,6 +369,7 @@ LIBTOOL='$(SLIBTOOL)'
AC_SUBST([LIBTOOL])
AC_SUBST([SLIBTOOL])
+AC_SUBST([SLIBTOOL_SYSROOT])
m4_define([SLIBTOOL_INIT])
])