From: | Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us> |
---|---|
To: | Larry Rosenman <ler(at)lerctr(dot)org> |
Cc: | pgsql-patches(at)postgresql(dot)org |
Subject: | Re: UPDATED UnixWare Threads Patch. |
Date: | 2003-08-09 01:07:27 |
Message-ID: | 200308090107.h7917Rc09346@candle.pha.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers pgsql-patches |
I am going to tackle this one now. I am going to have to add the
configure tests suggested, so each platform doesn't need to know if it
has a Posix _r function or not. I will add the port-specific parts you
mention below. You can test CVS once I am done.
---------------------------------------------------------------------------
Larry Rosenman wrote:
>
>
> --On Friday, August 08, 2003 18:56:45 -0500 Larry Rosenman <ler(at)lerctr(dot)org>
> wrote:
>
> >
> >
> > 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.
> Grr. I'm an idiot, the following is a CORRECTED version, basically
> s/#elsif/#elif/
>
> 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 9 Aug 2003 00:47:00 -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);
> +#elif 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 9 Aug 2003 00:47:00 -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, skipping... ]
>
> ---------------------------(end of broadcast)---------------------------
> TIP 4: Don't 'kill -9' the postmaster
--
Bruce Momjian | http://candle.pha.pa.us
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073
From | Date | Subject | |
---|---|---|---|
Next Message | Andrew Dunstan | 2003-08-09 01:58:06 | Re: WITH HOLD and pooled connections |
Previous Message | Larry Rosenman | 2003-08-09 00:49:12 | Re: UPDATED UnixWare Threads Patch. |
From | Date | Subject | |
---|---|---|---|
Next Message | Bruce Momjian | 2003-08-09 01:22:05 | Re: psql \d should use pg_get_viewdef (oid, true) |
Previous Message | Larry Rosenman | 2003-08-09 00:49:12 | Re: UPDATED UnixWare Threads Patch. |