re PR libgomp/28008 (build failure due to PTHREAD_STACK_MIN not being declared)
authorRichard Henderson <rth@redhat.com>
Wed, 14 Jun 2006 15:20:01 +0000 (08:20 -0700)
committerRichard Henderson <rth@gcc.gnu.org>
Wed, 14 Jun 2006 15:20:01 +0000 (08:20 -0700)
PR libgomp/28008
        * env.c (initialize_env): Avoid using PTHREAD_STACK_MIN when
        undefined.  Use GOMP_STACKSIZE not OMP_STACKSIZE for environment.

From-SVN: r114643

libgomp/ChangeLog
libgomp/env.c

index 4069e2dbb6d59d703b4d85bce8ce551aa7dc2ea5..fc12d41bd72d6b0283570e490316417a2647e260 100644 (file)
@@ -1,3 +1,9 @@
+2006-06-14  Richard Henderson  <rth@redhat.com>
+
+       PR libgomp/28008
+       * env.c (initialize_env): Avoid using PTHREAD_STACK_MIN when
+       undefined.  Use GOMP_STACKSIZE not OMP_STACKSIZE for environment.
+
 2006-06-09  Richard Henderson  <rth@redhat.com>
 
        * env.c (gomp_nthreads_var): Change to unsigned long.
index d42e68e6a3c05aff2ead889fd42a2d03370ff9e3..c86ebc6d8559c2b27066624c255c5faa90ca8f93 100644 (file)
@@ -166,21 +166,27 @@ initialize_env (void)
   pthread_attr_init (&gomp_thread_attr);
   pthread_attr_setdetachstate (&gomp_thread_attr, PTHREAD_CREATE_DETACHED);
 
-  if (parse_unsigned_long ("OMP_STACKSIZE", &stacksize))
+  if (parse_unsigned_long ("GOMP_STACKSIZE", &stacksize))
     {
+      int err;
+
       stacksize *= 1024;
-      if (stacksize < PTHREAD_STACK_MIN)
-       gomp_error ("Stack size less than minimum of %luk",
-                   PTHREAD_STACK_MIN / 1024ul
-                   + (PTHREAD_STACK_MIN % 1024 != 0));
-      else
+      err = pthread_attr_setstacksize (&gomp_thread_attr, stacksize);
+
+#ifdef PTHREAD_STACK_MIN
+      if (err == EINVAL)
        {
-         int err = pthread_attr_setstacksize (&gomp_thread_attr, stacksize);
-         if (err == EINVAL)
+         if (stacksize < PTHREAD_STACK_MIN)
+           gomp_error ("Stack size less than minimum of %luk",
+                       PTHREAD_STACK_MIN / 1024ul
+                       + (PTHREAD_STACK_MIN % 1024 != 0));
+         else
            gomp_error ("Stack size larger than system limit");
-         else if (err != 0)
-           gomp_error ("Stack size change failed: %s", strerror (err));
        }
+      else
+#endif
+      if (err != 0)
+       gomp_error ("Stack size change failed: %s", strerror (err));
     }
 }