*-*-cygwin*)
# Don't set THREADLIBS here. Cygwin doesn't have -lpthread.
;;
+changequote(<<,>>)
+ *-*-freebsd[1234]*)
+changequote([,])
+ # Before FreeBSD 5, it didn't have -lpthread (or any library which
+ # merely adds pthread_* functions) but it does have a -pthread switch
+ # which is required at link-time to select -lc_r *instead* of -lc.
+ THREADLIBS=-pthread
+ # Don't set THREADSPEC here as might be expected since -pthread is
+ # not processed when found within a spec file, it must come from
+ # the command line. For now, the user must provide the -pthread
+ # switch to link code compiled with gcj. In future, consider adding
+ # support for weak references to pthread_* functions ala gthr.h API.
+ THREADSPEC='%{!pthread: %eUnder this configuration, the user must provide -pthread when linking.}'
+ ;;
+ *-*-freebsd*)
+ # FreeBSD 5 implements a model much closer to other modern UNIX
+ # which support threads. However, it still does not support
+ # -lpthread.
+ THREADLIBS=-pthread
+ THREADSPEC=-lc_r
+ ;;
*)
THREADLIBS=-lpthread
THREADSPEC=-lpthread
fi
])
+ # FIXME: libjava source code expects to find a prototype for
+ # gethostbyaddr_r in netdb.h. The outer check ensures that
+ # HAVE_GETHOSTBYADDR_R will not be defined if the prototype fails
+ # to exist where expected. (The root issue: AC_CHECK_FUNCS assumes C
+ # linkage check is enough, yet C++ code requires proper prototypes.)
+ AC_EGREP_HEADER(gethostbyaddr_r, netdb.h, [
AC_CHECK_FUNCS(gethostbyaddr_r, [
AC_DEFINE(HAVE_GETHOSTBYADDR_R)
# There are two different kinds of gethostbyaddr_r.
# We look for the one that returns `int'.
# Hopefully this check is robust enough.
AC_EGREP_HEADER(int.*gethostbyaddr_r, netdb.h, [
- AC_DEFINE(GETHOSTBYADDR_R_RETURNS_INT)])])
+ AC_DEFINE(GETHOSTBYADDR_R_RETURNS_INT)])])])
AC_CHECK_FUNCS(gethostname, [
AC_DEFINE(HAVE_GETHOSTNAME)
gtk)
# Nothing, yet...
;;
+ no)
+ use_xlib_awt=
+ use_gtk_awt=
+ break
+ ;;
*)
echo "*** unrecognised argument \"${peer}\" for --enable-java-awt" 1>&2
exit 1