about summary refs log tree commit diff
path: root/sysdeps
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/mach/configure94
-rw-r--r--sysdeps/mach/configure.in32
2 files changed, 126 insertions, 0 deletions
diff --git a/sysdeps/mach/configure b/sysdeps/mach/configure
new file mode 100644
index 0000000000..83dc58365c
--- /dev/null
+++ b/sysdeps/mach/configure
@@ -0,0 +1,94 @@
+ 
+
+
+echo $ac_n "checking for task_t in mach/mach_types.h""... $ac_c" 1>&6
+echo "configure:6: checking for task_t in mach/mach_types.h" >&5
+if eval "test \"`echo '$''{'libc_cv_mach_task_t'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  cat > conftest.$ac_ext <<EOF
+#line 11 "configure"
+#include "confdefs.h"
+#include <mach/mach_types.h>
+int main() {
+extern task_t foo;
+; return 0; }
+EOF
+if { (eval echo configure:18: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+  rm -rf conftest*
+  libc_cv_mach_task_t=task_t
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  libc_cv_mach_task_t=task_port_t
+fi
+rm -f conftest*
+fi
+
+echo "$ac_t""$libc_cv_mach_task_t" 1>&6
+if test $libc_cv_mach_task_t != task_t; then
+  DEFINES="$DEFINES -Dtask_t=task_port_t"
+fi
+echo $ac_n "checking for thread_t in mach/mach_types.h""... $ac_c" 1>&6
+echo "configure:35: checking for thread_t in mach/mach_types.h" >&5
+if eval "test \"`echo '$''{'libc_cv_mach_thread_t'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  cat > conftest.$ac_ext <<EOF
+#line 40 "configure"
+#include "confdefs.h"
+#include <mach/mach_types.h>
+int main() {
+extern thread_t foo;
+; return 0; }
+EOF
+if { (eval echo configure:47: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+  rm -rf conftest*
+  libc_cv_mach_thread_t=thread_t
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  libc_cv_mach_thread_t=thread_port_t
+fi
+rm -f conftest*
+fi
+
+echo "$ac_t""$libc_cv_mach_thread_t" 1>&6
+if test $libc_cv_mach_thread_t != thread_t; then
+  DEFINES="$DEFINES -Dthread_t=thread_port_t"
+fi
+
+echo $ac_n "checking for creation_time in task_basic_info""... $ac_c" 1>&6
+echo "configure:65: checking for creation_time in task_basic_info" >&5
+if eval "test \"`echo '$''{'libc_cv_mach_task_creation_time'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  cat > conftest.$ac_ext <<EOF
+#line 70 "configure"
+#include "confdefs.h"
+#include <mach/task_info.h>
+int main() {
+
+extern struct task_basic_info *i;
+long s = i->creation_time.seconds;
+
+; return 0; }
+EOF
+if { (eval echo configure:80: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+  rm -rf conftest*
+  libc_cv_mach_task_creation_time=yes
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  libc_cv_mach_task_creation_time=no
+fi
+rm -f conftest*
+fi
+
+echo "$ac_t""$libc_cv_mach_task_creation_time" 1>&6
+if test $libc_cv_mach_task_creation_time = no; then
+  DEFINES="$DEFINES -DNO_CREATION_TIME=1"
+fi
diff --git a/sysdeps/mach/configure.in b/sysdeps/mach/configure.in
new file mode 100644
index 0000000000..2a76ead8ed
--- /dev/null
+++ b/sysdeps/mach/configure.in
@@ -0,0 +1,32 @@
+sinclude(./aclocal.m4)dnl Autoconf lossage.
+GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
+
+dnl
+dnl mach_TYPE_CHECK(foo_t, bar_t)
+dnl
+dnl Check if foo_t is defined by <mach/mach_types.h>.
+dnl If not, compile with -Dfoo_t=bar_t.
+dnl
+AC_DEFUN([mach_TYPE_CHECK], [dnl
+AC_CACHE_CHECK(for $1 in mach/mach_types.h, libc_cv_mach_$1,
+AC_TRY_COMPILE([#include <mach/mach_types.h>], [extern $1 foo;],
+libc_cv_mach_$1=$1, libc_cv_mach_$1=$2))
+if test [$]libc_cv_mach_$1 != $1; then
+  DEFINES="$DEFINES -D$1=$2"
+fi])
+
+dnl
+dnl OSF Mach has renamed these typedefs for some reason.
+dnl
+mach_TYPE_CHECK(task_t, task_port_t)
+mach_TYPE_CHECK(thread_t, thread_port_t)
+
+AC_CACHE_CHECK(for creation_time in task_basic_info,
+	       libc_cv_mach_task_creation_time, [dnl
+AC_TRY_COMPILE([#include <mach/task_info.h>], [
+extern struct task_basic_info *i;
+long s = i->creation_time.seconds;
+], libc_cv_mach_task_creation_time=yes, libc_cv_mach_task_creation_time=no)])
+if test $libc_cv_mach_task_creation_time = no; then
+  DEFINES="$DEFINES -DNO_CREATION_TIME=1"
+fi