Re: UPDATED UnixWare Threads Patch. - Mailing list pgsql-patches

From Bruce Momjian
Subject Re: UPDATED UnixWare Threads Patch.
Date
Msg-id 200308140000.h7E00Tl19801@candle.pha.pa.us
Whole thread Raw
In response to UPDATED UnixWare Threads Patch.  (Larry Rosenman <ler@lerctr.org>)
List pgsql-patches
I have applied just the optimizer change, attached and applied.  I will
deal with the thread issues shortly.

---------------------------------------------------------------------------

Larry Rosenman 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.
>
> 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@lerctr.org
> US Mail: 1905 Steamboat Springs Drive, Garland, TX 75044-6749

[ Attachment, skipping... ]

>
> ---------------------------(end of broadcast)---------------------------
> TIP 5: Have you checked our extensive FAQ?
>
>                http://www.postgresql.org/docs/faqs/FAQ.html

--
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073
Index: src/template/unixware
===================================================================
RCS file: /cvsroot/pgsql-server/src/template/unixware,v
retrieving revision 1.11
diff -c -c -r1.11 unixware
*** src/template/unixware    4 Sep 2002 22:54:18 -0000    1.11
--- src/template/unixware    13 Aug 2003 23:58:32 -0000
***************
*** 1,5 ****
  if test "$GCC" = yes; then
    CFLAGS=-O2
  else
!   CFLAGS='-O -K inline'
  fi
--- 1,8 ----
  if test "$GCC" = yes; then
    CFLAGS=-O2
  else
! # 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'
  fi

pgsql-patches by date:

Previous
From: Euler Taveira de Oliveira
Date:
Subject: Re: Translation to Brazilian Portuguese
Next
From: Bruce Momjian
Date:
Subject: Re: UPDATED UnixWare Threads Patch.