When I tried to configure mono 5.18.0.268 on 64-bit Solaris 11/x86 (x86_64-pc-solaris2.11) with gcc 4.8.2, it failed
like this:
$ ./autogen.sh
(...)
checking for PTHREAD_MUTEX_RECURSIVE... no
configure: error: Posix system lacks support for recursive mutexes
I changed the "D_XOPEN_SOURCE=500" to "D_XOPEN_SOURCE=600" in the configure.ac with no improvement
dnl *****************************
dnl *** Checks for libxnet ***
dnl *****************************
case "${host}" in
*solaris* )
AC_MSG_CHECKING(for Solaris XPG4 support)
if test -f /usr/lib/libxnet.so; then
CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=600 -std=c99"
CPPFLAGS="$CPPFLAGS -D__EXTENSIONS__"
CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE_EXTENDED=1"
LIBS="$LIBS -lxnet"
AC_MSG_RESULT(yes)
else
AC_MSG_RESULT(no)
fi
I downloaded the last mono tar to Solaris 11 I install the required packages:
When I tried to configure mono 5.18.0.268 on 64-bit Solaris 11/x86 (x86_64-pc-solaris2.11) with gcc 4.8.2, it failed like this:
$ ./autogen.sh
(...) checking for PTHREAD_MUTEX_RECURSIVE... no configure: error: Posix system lacks support for recursive mutexes
I changed the "D_XOPEN_SOURCE=500" to "D_XOPEN_SOURCE=600" in the configure.ac with no improvement
I am aware of the Bug 31999 - C99 and XPG5 don't match on Solaris 10+ https://bugzilla.xamarin.com/show_bug.cgi?id=31999
Acording to Oracle documentation, Solaris 11 supports thread mutex using Oracle Solaris Threads and POSIX pthreads API. Some functions are:
More details in: https://docs.oracle.com/cd/E53394_01/html/E54803/sthreads-96692.html
I run