* gnu/classpath/natSystemProperties.cc: Add additional check for
getpwuid_r on _POSIX_PTHREAD_SEMANTICS.
(SystemProperties::insertSystemProperties): Likewise.
* java/io/natFilePosix.cc (File::performList): Add
additional check for readdir_r on _POSIX_PTHREAD_SEMANTICS.
* java/util/natVMTimeZone.cc (VMTimeZone::getSystemTimeZoneId): Add
additional check for localtime_r on _POSIX_PTHREAD_SEMANTICS.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@115864
138bc75d-0d04-0410-961f-
82ee72b054a4
+2006-08-01 Andreas Tobler <a.tobler@schweiz.ch>
+
+ * gnu/classpath/natSystemProperties.cc: Add additional check for
+ getpwuid_r on _POSIX_PTHREAD_SEMANTICS.
+ (SystemProperties::insertSystemProperties): Likewise.
+ * java/io/natFilePosix.cc (File::performList): Add
+ additional check for readdir_r on _POSIX_PTHREAD_SEMANTICS.
+ * java/util/natVMTimeZone.cc (VMTimeZone::getSystemTimeZoneId): Add
+ additional check for localtime_r on _POSIX_PTHREAD_SEMANTICS.
+
2006-07-31 Thomas Fitzsimmons <fitzsim@redhat.com>
PR libgcj/28312
static const char *default_file_encoding = DEFAULT_FILE_ENCODING;
-#if HAVE_GETPWUID_R
+#if defined(HAVE_GETPWUID_R) && defined(_POSIX_PTHREAD_SEMANTICS)
/* Use overload resolution to find out the signature of getpwuid_r. */
/* This is Posix getpwuid_r. */
uid_t user_id = getuid ();
struct passwd *pwd_entry;
-#ifdef HAVE_GETPWUID_R
+#if defined(HAVE_GETPWUID_R) && defined(_POSIX_PTHREAD_SEMANTICS)
struct passwd pwd_r;
size_t len_r = 200;
char *buf_r = (char *) _Jv_AllocBytes (len_r);
// natFile.cc - Native part of File class for POSIX.
-/* Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation
+/* Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2006
+ Free Software Foundation
This file is part of libgcj.
java::util::ArrayList *list = new java::util::ArrayList ();
struct dirent *d;
-#ifdef HAVE_READDIR_R
+#if defined(HAVE_READDIR_R) && defined(_POSIX_PTHREAD_SEMANTICS)
int name_max = pathconf (buf, _PC_NAME_MAX);
char dbuf[sizeof (struct dirent) + name_max + 1];
while (readdir_r (dir, (struct dirent *) dbuf, &d) == 0 && d != NULL)
// natVMTimeZone.cc -- Native side of VMTimeZone class.
-/* Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004
+/* Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2006
Free Software Foundation
This file is part of libgcj.
java::util::VMTimeZone::getSystemTimeZoneId()
{
struct tm tim;
-#ifndef HAVE_LOCALTIME_R
+#if !defined(HAVE_LOCALTIME_R) || !defined(_POSIX_PTHREAD_SEMANTICS)
struct tm *lt_tim;
#endif
#ifdef HAVE_TM_ZONE
char *tzid;
time(¤t_time);
-#ifdef HAVE_LOCALTIME_R
+#if defined(HAVE_LOCALTIME_R) && defined(_POSIX_PTHREAD_SEMANTICS)
localtime_r(¤t_time, &tim);
#else
/* Fall back on non-thread safe localtime. */