UPDATED UnixWare Threads Patch.

From: Larry Rosenman <ler(at)lerctr(dot)org>
To: pgsql-patches(at)postgresql(dot)org
Subject: UPDATED UnixWare Threads Patch.
Date: 2003-08-08 23:56:45
Message-ID: 19890000.1060387005@lerlaptop.lerctr.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers pgsql-patches

Here is the updated UnixWare threads patch. I need some help to set the
HAVE_POSIX_GETPWUID_R define from configure, but this will suffice for now.

This also includes my recommendation for the Compiler Bug issue.

Please Apply, and if one of the configure guru's can help here, I'd be most
appreciative.

LER

Index: src/port/thread.c
===================================================================
RCS file: /projects/cvsroot/pgsql-server/src/port/thread.c,v
retrieving revision 1.2
diff -u -r1.2 thread.c
--- src/port/thread.c 8 Aug 2003 03:09:56 -0000 1.2
+++ src/port/thread.c 8 Aug 2003 23:53:35 -0000
@@ -40,13 +40,18 @@
pqGetpwuid(uid_t uid, struct passwd * resultbuf, char *buffer,
size_t buflen, struct passwd ** result)
{
-#if defined(USE_THREADS) && defined(HAVE_GETPWUID_R)
+#if defined(USE_THREADS) && defined(HAVE_GETPWUID_R) &&
!defined(HAVE_POSIX_GETPWUID_R)

/*
* broken (well early POSIX draft) getpwuid_r() which returns 'struct
* passwd *'
*/
*result = getpwuid_r(uid, resultbuf, buffer, buflen);
+#elsif defined(USE_THREADS) && defined(HAVE_GETPWUID_R) &&
defined(HAVE_POSIX_GETPWUID_R)
+ /*
+ * SUSv2/POSIX getpwuid_r
+ */
+ return getpwuid_r(uid, resultbuf, buffer, buflen, result);
#else
/* no getpwuid_r() available, just use getpwuid() */
*result = getpwuid(uid);
Index: src/template/unixware
===================================================================
RCS file: /projects/cvsroot/pgsql-server/src/template/unixware,v
retrieving revision 1.11
diff -u -r1.11 unixware
--- src/template/unixware 4 Sep 2002 22:54:18 -0000 1.11
+++ src/template/unixware 8 Aug 2003 23:53:35 -0000
@@ -1,5 +1,13 @@
+SUPPORTS_THREADS=yes
if test "$GCC" = yes; then
- CFLAGS=-O2
+ CFLAGS="-O2 -DHAVE_POSIX_GETPWUID_R"
+ THREAD_CFLAGS="-pthread -D_REENTRANT"
+ NEED_REENTRANT_FUNC_NAMES=yes
else
- CFLAGS='-O -K inline'
+# the -Kno_host is temporary for a bug in the compiler. See -hackers
+# discussion on 7-8/Aug/2003.
+# when the 7.1.3UP3 or later compiler is out, we can do a version check.
+ CFLAGS='-O -Kinline,no_host -DHAVE_POSIX_GETPWUID_R'
+ THREAD_CFLAGS="-D_REENTRANT -K pthread -DHAVE_POSIX_GETPWUID_R"
+ NEED_REENTRANT_FUNC_NAMES=yes
fi

--
Larry Rosenman http://www.lerctr.org/~ler
Phone: +1 972-414-9812 E-Mail: ler(at)lerctr(dot)org
US Mail: 1905 Steamboat Springs Drive, Garland, TX 75044-6749

Attachment Content-Type Size
pg.patch.2003-08-08 application/octet-stream 1.9 KB

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Manfred Koizar 2003-08-09 00:27:45 Re: Correlation in cost_index()
Previous Message Sean Chittenden 2003-08-08 23:53:48 Re: Correlation in cost_index()

Browse pgsql-patches by date

  From Date Subject
Next Message Larry Rosenman 2003-08-09 00:49:12 Re: UPDATED UnixWare Threads Patch.
Previous Message Joe Conway 2003-08-08 22:45:32 Re: [HACKERS] IS OF