+#ifdef SILC_DIST_SIM
+# SIM support checking
+# XXX These needs to be changed as more supported platforms appear.
+# XXX This probably needs to be made platform dependant check.
+#
+sim_support=false
+AC_MSG_CHECKING(for SIM support)
+AC_MSG_RESULT()
+AC_CHECK_HEADERS(dlfcn.h,
+ [
+ AC_CHECK_LIB(dl, dlopen,
+ [
+ AC_DEFINE([SILC_SIM], [], [HAVE_SIM])
+ AC_DEFINE([HAVE_DLOPEN], [], [HAVE_DLOPEN])
+ sim_support=true
+ LIBS="$LIBS -ldl"
+ ],
+ [
+ AC_CHECK_LIB(c, dlopen,
+ [
+ AC_DEFINE([SILC_SIM], [], [HAVE_SIM])
+ AC_DEFINE([HAVE_DLOPEN], [], [HAVE_DLOPEN])
+ sim_support=true
+ ])
+ ])
+ ])
+
+AM_CONDITIONAL(SILC_SIM, test x$sim_support = xtrue)
+if test x$sim_support = xtrue; then
+ AC_MSG_RESULT(Enabled SIM support.)
+ __SILC_HAVE_SIM="#define __SILC_HAVE_SIM 1"
+else
+ AC_MSG_RESULT(No SIM support found.)
+fi
+#endif SILC_DIST_SIM