diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog
index af10d38061554c408e20630ce2c7a21487050441..0b151aa0b35408ccc1c1c695b65021cc6ad75c07 100644
--- a/libgomp/ChangeLog
+++ b/libgomp/ChangeLog
@@ -1,3 +1,11 @@
+2006-01-20  Steve Ellcey  <sje@cup.hp.com>
+
+	PR libgomp/25877
+	* team.c: Add include of alloca.h.
+	* configure.ac: Add check for alloca.h.
+	* configure: Regenerate.
+	* config.h.in: Regenerate.
+
 2006-01-17  Jakub Jelinek  <jakub@redhat.com>
 
 	PR fortran/25219
diff --git a/libgomp/config.h.in b/libgomp/config.h.in
index a24e14867c74bebec6c215c35865d8c3185423c2..9d2fa77b6e7d1e532cd051a71947620af72462e2 100644
--- a/libgomp/config.h.in
+++ b/libgomp/config.h.in
@@ -1,5 +1,8 @@
 /* config.h.in.  Generated from configure.ac by autoheader.  */
 
+/* Define to 1 if you have the <alloca.h> header file. */
+#undef HAVE_ALLOCA_H
+
 /* Define to 1 if the target supports __attribute__((alias(...))). */
 #undef HAVE_ATTRIBUTE_ALIAS
 
diff --git a/libgomp/configure b/libgomp/configure
index 4824adc51e999c71162618fa5e91e0b963601f1d..83ded9e9a3a17425060bc02156b061d300fdefb2 100755
--- a/libgomp/configure
+++ b/libgomp/configure
@@ -5317,7 +5317,8 @@ done
 
 
 
-for ac_header in unistd.h semaphore.h sys/time.h
+
+for ac_header in alloca.h unistd.h semaphore.h sys/time.h
 do
 as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
 if eval "test \"\${$as_ac_Header+set}\" = set"; then
diff --git a/libgomp/configure.ac b/libgomp/configure.ac
index 854514a27f42349f972304d236dba7b7ccf06b97..90e115bdaf96388620c44861e31280544db14596 100644
--- a/libgomp/configure.ac
+++ b/libgomp/configure.ac
@@ -136,7 +136,7 @@ AC_SUBST(libtool_VERSION)
 # Check header files.
 AC_STDC_HEADERS
 AC_HEADER_TIME
-AC_CHECK_HEADERS(unistd.h semaphore.h sys/time.h)
+AC_CHECK_HEADERS(alloca.h unistd.h semaphore.h sys/time.h)
 AC_CHECK_HEADER([pthread.h],[],
   [AC_MSG_ERROR([Pthreads are required to build libgomp])])
 
diff --git a/libgomp/team.c b/libgomp/team.c
index 1d8efb688afcf15e56b9754c6ba08b2a736915f3..c99413502d5d0d65cf031f5ab9d7ce2b8125cfe5 100644
--- a/libgomp/team.c
+++ b/libgomp/team.c
@@ -32,6 +32,10 @@
 #include <stdlib.h>
 #include <string.h>
 
+#ifdef HAVE_ALLOCA_H
+# include <alloca.h>
+#endif
+
 
 /* This array manages threads spawned from the top level, which will
    return to the idle loop once the current PARALLEL construct ends.  */