aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/mach/configure
diff options
context:
space:
mode:
authorFlavio Cruz <flaviocruz@gmail.com>2024-07-11 23:37:35 +0100
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2024-07-16 09:21:52 +0200
commit2dcc908538054377d19571d77a026b9f26d3fd0f (patch)
treea58952877447a5b37804f44f46e4db91e19c9ce1 /sysdeps/mach/configure
parenta11e15ea0ab1ee8a1947b6be52beca53693f0991 (diff)
downloadglibc-2dcc908538054377d19571d77a026b9f26d3fd0f.zip
glibc-2dcc908538054377d19571d77a026b9f26d3fd0f.tar.gz
glibc-2dcc908538054377d19571d77a026b9f26d3fd0f.tar.bz2
Add pthread_getname_np and pthread_setname_np for Hurd
We use thread_get_name and thread_set_name to get and set the thread name, so nothing is stored in the thread structure since these functions are supposed to be called sparingly. One notable difference with Linux is that the thread name is up to 32 chars, whereas Linux's is 16. Also added a mach_RPC_CHECK to check for the existing of gnumach RPCs.
Diffstat (limited to 'sysdeps/mach/configure')
-rw-r--r--sysdeps/mach/configure76
1 files changed, 70 insertions, 6 deletions
diff --git a/sysdeps/mach/configure b/sysdeps/mach/configure
index 5779efd..cd21b26 100644
--- a/sysdeps/mach/configure
+++ b/sysdeps/mach/configure
@@ -293,6 +293,9 @@ if test "x$mach_interface_list" = x; then
as_fn_error $? "what manner of Mach is this?" "$LINENO" 5
fi
+
+
+
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for egrep -e" >&5
printf %s "checking for egrep -e... " >&6; }
if test ${ac_cv_path_EGREP_TRADITIONAL+y}
@@ -429,7 +432,7 @@ printf "%s\n" "$ac_cv_path_EGREP_TRADITIONAL" >&6; }
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for host_page_size in mach_host.defs" >&5
printf %s "checking for host_page_size in mach_host.defs... " >&6; }
-if test ${libc_cv_mach_host_page_size+y}
+if test ${libc_cv_mach_rpc_host_page_size+y}
then :
printf %s "(cached) " >&6
else case e in #(
@@ -441,22 +444,83 @@ _ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
$EGREP_TRADITIONAL "host_page_size" >/dev/null 2>&1
then :
- libc_cv_mach_host_page_size=yes
+ libc_cv_mach_rpc_host_page_size=yes
else case e in #(
- e) libc_cv_mach_host_page_size=no ;;
+ e) libc_cv_mach_rpc_host_page_size=no ;;
esac
fi
rm -rf conftest*
;;
esac
fi
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_mach_host_page_size" >&5
-printf "%s\n" "$libc_cv_mach_host_page_size" >&6; }
-if test $libc_cv_mach_host_page_size = yes; then
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_mach_rpc_host_page_size" >&5
+printf "%s\n" "$libc_cv_mach_rpc_host_page_size" >&6; }
+if test $libc_cv_mach_rpc_host_page_size = yes; then
printf "%s\n" "#define HAVE_HOST_PAGE_SIZE 1" >>confdefs.h
fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for thread_set_name in gnumach.defs" >&5
+printf %s "checking for thread_set_name in gnumach.defs... " >&6; }
+if test ${libc_cv_mach_rpc_thread_set_name+y}
+then :
+ printf %s "(cached) " >&6
+else case e in #(
+ e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <mach/gnumach.defs>
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP_TRADITIONAL "thread_set_name" >/dev/null 2>&1
+then :
+ libc_cv_mach_rpc_thread_set_name=yes
+else case e in #(
+ e) libc_cv_mach_rpc_thread_set_name=no ;;
+esac
+fi
+rm -rf conftest*
+ ;;
+esac
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_mach_rpc_thread_set_name" >&5
+printf "%s\n" "$libc_cv_mach_rpc_thread_set_name" >&6; }
+if test $libc_cv_mach_rpc_thread_set_name = yes; then
+ printf "%s\n" "#define HAVE_MACH_THREAD_SET_NAME 1" >>confdefs.h
+
+fi
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for thread_get_name in gnumach.defs" >&5
+printf %s "checking for thread_get_name in gnumach.defs... " >&6; }
+if test ${libc_cv_mach_rpc_thread_get_name+y}
+then :
+ printf %s "(cached) " >&6
+else case e in #(
+ e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <mach/gnumach.defs>
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP_TRADITIONAL "thread_get_name" >/dev/null 2>&1
+then :
+ libc_cv_mach_rpc_thread_get_name=yes
+else case e in #(
+ e) libc_cv_mach_rpc_thread_get_name=no ;;
+esac
+fi
+rm -rf conftest*
+ ;;
+esac
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_mach_rpc_thread_get_name" >&5
+printf "%s\n" "$libc_cv_mach_rpc_thread_get_name" >&6; }
+if test $libc_cv_mach_rpc_thread_get_name = yes; then
+ printf "%s\n" "#define HAVE_MACH_THREAD_GET_NAME 1" >>confdefs.h
+
+fi
+
+
ac_fn_c_check_header_preproc "$LINENO" "mach/machine/ndr_def.h" "ac_cv_header_mach_machine_ndr_def_h"
if test "x$ac_cv_header_mach_machine_ndr_def_h" = xyes
then :