changeset 38230:9e564e158ab0

threadlib: Optimize out runtime test on Solaris >= 10. * m4/threadlib.m4 (gl_THREADLIB_BODY): Don't set PTHREAD_IN_USE_DETECTION_HARD if configuring on Solaris 10 or newer. Reported by Peter Felecan at <https://savannah.gnu.org/bugs/?32087>.
author Bruno Haible <bruno@clisp.org>
date Sat, 10 Dec 2016 14:04:42 +0100
parents 2b429a6692f9
children 4c55bca59a59
files ChangeLog m4/threadlib.m4
diffstat 2 files changed, 11 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Sat Dec 10 12:08:07 2016 +0100
+++ b/ChangeLog	Sat Dec 10 14:04:42 2016 +0100
@@ -1,3 +1,10 @@
+2016-12-10  Bruno Haible  <bruno@clisp.org>
+
+	threadlib: Optimize out runtime test on Solaris >= 10.
+	* m4/threadlib.m4 (gl_THREADLIB_BODY): Don't set
+	PTHREAD_IN_USE_DETECTION_HARD if configuring on Solaris 10 or newer.
+	Reported by Peter Felecan at <https://savannah.gnu.org/bugs/?32087>.
+
 2016-12-10  Bruno Haible  <bruno@clisp.org>
 
 	stdint: Update doc about Solaris 9.
--- a/m4/threadlib.m4	Sat Dec 10 12:08:07 2016 +0100
+++ b/m4/threadlib.m4	Sat Dec 10 14:04:42 2016 +0100
@@ -1,4 +1,4 @@
-# threadlib.m4 serial 11 (gettext-0.18.2)
+# threadlib.m4 serial 12
 dnl Copyright (C) 2005-2016 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -195,8 +195,10 @@
              # Therefore pthread_in_use() needs to actually try to create a
              # thread: pthread_create from libc will fail, whereas
              # pthread_create will actually create a thread.
+             # On Solaris 10 or newer, this test is no longer needed, because
+             # libc contains the fully functional pthread functions.
              case "$host_os" in
-               solaris* | hpux*)
+               solaris | solaris2.[1-9] | solaris2.[1-9].* | hpux*)
                  AC_DEFINE([PTHREAD_IN_USE_DETECTION_HARD], [1],
                    [Define if the pthread_in_use() detection is hard.])
              esac