Re: - Mailing list pgsql-hackers

From Bruce Momjian
Subject Re:
Date
Msg-id 200307231726.h6NHQgL00723@candle.pha.pa.us
Whole thread Raw
In response to ...  (Peter Eisentraut <peter_e@gmx.net>)
List pgsql-hackers
Peter Eisentraut wrote:
> A final note on the name of the configure option, --with-threads. First,
> it does not control an external package but an internal feature, so it
> should be --enable-.  Secondly, it does not use threads, only enable
> thread-safeness.  So --enable-thread-safe might be a better name.  Or if
> you want to be more precise, --enable-thread-safe-client.  The latter is
> what MySQL uses, in case anyone cares about that.

Here is an applied patch to implement the rename you suggested, to
--enable-thread-safeness.

--
  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: configure
===================================================================
RCS file: /cvsroot/pgsql-server/configure,v
retrieving revision 1.277
diff -c -c -r1.277 configure
*** configure    22 Jul 2003 16:39:54 -0000    1.277
--- configure    23 Jul 2003 17:08:27 -0000
***************
*** 855,861 ****
    --with-libraries=DIRS   look for additional libraries in DIRS
    --with-libs=DIRS        alternative spelling of --with-libraries
    --with-pgport=PORTNUM   change default port number 5432
!   --with-threads          allow libpq and ecpg to be thread-safe
    --with-tcl              build Tcl and Tk interfaces
    --without-tk            do not build Tk interfaces if Tcl is enabled
    --with-tclconfig=DIR    tclConfig.sh and tkConfig.sh are in DIR
--- 855,861 ----
    --with-libraries=DIRS   look for additional libraries in DIRS
    --with-libs=DIRS        alternative spelling of --with-libraries
    --with-pgport=PORTNUM   change default port number 5432
!   --enable-thread-safeness allow libpq and ecpg to be thread-safe
    --with-tcl              build Tcl and Tk interfaces
    --without-tk            do not build Tk interfaces if Tcl is enabled
    --with-tclconfig=DIR    tclConfig.sh and tkConfig.sh are in DIR
***************
*** 2811,2820 ****
  IFS=$ac_save_IFS

  #
! # Enable libpq to be thread-safe
  #
! echo "$as_me:$LINENO: checking allow threaded libpq" >&5
! echo $ECHO_N "checking allow threaded libpq... $ECHO_C" >&6



--- 2811,2820 ----
  IFS=$ac_save_IFS

  #
! # Enable libpq to be thread-safeness
  #
! echo "$as_me:$LINENO: checking allow thread-safe libpq and ecpg" >&5
! echo $ECHO_N "checking allow thread-safe libpq and ecpg... $ECHO_C" >&6



***************
*** 2846,2853 ****
  fi;


! echo "$as_me:$LINENO: result: $with_threads" >&5
! echo "${ECHO_T}$with_threads" >&6


  #
--- 2846,2853 ----
  fi;


! echo "$as_me:$LINENO: result: $enable_thread_safeness" >&5
! echo "${ECHO_T}$enable_thread_safeness" >&6


  #
***************
*** 12807,12813 ****
  # For each platform, we need to know about any special compile and link
  # libraries, and whether the normal C function names are thread-safe.
  #
! if test "$with_threads" = yes; then
  if test "${ac_cv_header_pthread_h+set}" = set; then
    echo "$as_me:$LINENO: checking for pthread.h" >&5
  echo $ECHO_N "checking for pthread.h... $ECHO_C" >&6
--- 12807,12813 ----
  # For each platform, we need to know about any special compile and link
  # libraries, and whether the normal C function names are thread-safe.
  #
! if test "$enable_thread_safeness" = yes; then
  if test "${ac_cv_header_pthread_h+set}" = set; then
    echo "$as_me:$LINENO: checking for pthread.h" >&5
  echo $ECHO_N "checking for pthread.h... $ECHO_C" >&6
***************
*** 12949,12955 ****
  # One trick here is that if we don't call AC_CHECK_FUNCS, the
  # functions are marked "not found", which is perfect.
  #
! if test "$with_threads" = yes -a "$NEED_REENTRANT_FUNC_NAMES" = yes ; then
  _CFLAGS="$CFLAGS"
  _LIB="$LIBS"
  CFLAGS="$CFLAGS $TREAD_CFLAGS"
--- 12949,12955 ----
  # One trick here is that if we don't call AC_CHECK_FUNCS, the
  # functions are marked "not found", which is perfect.
  #
! if test "$enable_thread_safeness" = yes -a "$NEED_REENTRANT_FUNC_NAMES" = yes ; then
  _CFLAGS="$CFLAGS"
  _LIB="$LIBS"
  CFLAGS="$CFLAGS $TREAD_CFLAGS"
***************
*** 17807,17813 ****
  s,@GCC@,$GCC,;t t
  s,@autodepend@,$autodepend,;t t
  s,@INCLUDES@,$INCLUDES,;t t
! s,@with_threads@,$with_threads,;t t
  s,@with_tcl@,$with_tcl,;t t
  s,@with_tk@,$with_tk,;t t
  s,@with_perl@,$with_perl,;t t
--- 17807,17813 ----
  s,@GCC@,$GCC,;t t
  s,@autodepend@,$autodepend,;t t
  s,@INCLUDES@,$INCLUDES,;t t
! s,@enable_thread_safeness@,$enable_thread_safeness,;t t
  s,@with_tcl@,$with_tcl,;t t
  s,@with_tk@,$with_tk,;t t
  s,@with_perl@,$with_perl,;t t
Index: configure.in
===================================================================
RCS file: /cvsroot/pgsql-server/configure.in,v
retrieving revision 1.268
diff -c -c -r1.268 configure.in
*** configure.in    22 Jul 2003 16:39:55 -0000    1.268
--- configure.in    23 Jul 2003 17:08:31 -0000
***************
*** 320,333 ****
  IFS=$ac_save_IFS

  #
! # Enable libpq to be thread-safe
  #
! AC_MSG_CHECKING([allow threaded libpq])
! PGAC_ARG_BOOL(with, threads, no, [  --with-threads          allow libpq and ecpg to be thread-safe],
!               [AC_DEFINE([USE_THREADS], 1, [Define to 1 to build libpq and ecpg to be thread-safe.
(--with-threads)])])

! AC_MSG_RESULT([$with_threads])
! AC_SUBST(with_threads)

  #
  # Tcl/Tk
--- 320,333 ----
  IFS=$ac_save_IFS

  #
! # Enable libpq to be thread-safeness
  #
! AC_MSG_CHECKING([allow thread-safe libpq and ecpg])
! PGAC_ARG_BOOL(with, threads, no, [  --enable-thread-safeness allow libpq and ecpg to be thread-safe],
!               [AC_DEFINE([USE_THREADS], 1, [Define to 1 to build libpq and ecpg to be thread-safe.
(--enable-thread-safeness)])])

! AC_MSG_RESULT([$enable_thread_safeness])
! AC_SUBST(enable_thread_safeness)

  #
  # Tcl/Tk
***************
*** 965,971 ****
  # For each platform, we need to know about any special compile and link
  # libraries, and whether the normal C function names are thread-safe.
  #
! if test "$with_threads" = yes; then
  AC_CHECK_HEADER(pthread.h, [], [AC_MSG_ERROR([pthread.h not found, required for --with-threads])])

  if test "$SUPPORTS_THREADS" != yes; then
--- 965,971 ----
  # For each platform, we need to know about any special compile and link
  # libraries, and whether the normal C function names are thread-safe.
  #
! if test "$enable_thread_safeness" = yes; then
  AC_CHECK_HEADER(pthread.h, [], [AC_MSG_ERROR([pthread.h not found, required for --with-threads])])

  if test "$SUPPORTS_THREADS" != yes; then
***************
*** 991,997 ****
  # One trick here is that if we don't call AC_CHECK_FUNCS, the
  # functions are marked "not found", which is perfect.
  #
! if test "$with_threads" = yes -a "$NEED_REENTRANT_FUNC_NAMES" = yes ; then
  _CFLAGS="$CFLAGS"
  _LIB="$LIBS"
  CFLAGS="$CFLAGS $TREAD_CFLAGS"
--- 991,997 ----
  # One trick here is that if we don't call AC_CHECK_FUNCS, the
  # functions are marked "not found", which is perfect.
  #
! if test "$enable_thread_safeness" = yes -a "$NEED_REENTRANT_FUNC_NAMES" = yes ; then
  _CFLAGS="$CFLAGS"
  _LIB="$LIBS"
  CFLAGS="$CFLAGS $TREAD_CFLAGS"
Index: doc/src/sgml/ecpg.sgml
===================================================================
RCS file: /cvsroot/pgsql-server/doc/src/sgml/ecpg.sgml,v
retrieving revision 1.44
diff -c -c -r1.44 ecpg.sgml
*** doc/src/sgml/ecpg.sgml    15 Jun 2003 04:07:58 -0000    1.44
--- doc/src/sgml/ecpg.sgml    23 Jul 2003 17:08:34 -0000
***************
*** 751,757 ****

    <para>
     <application>ecpg</application> is thread-safe if it is compiled using
!    the <literal>--with-threads</> <filename>configure</filename>
     command-line option.  (You might need to use other threading
     command-line options to compile your client code.)
    </para>
--- 751,757 ----

    <para>
     <application>ecpg</application> is thread-safe if it is compiled using
!    the <literal>--enable-thread-safeness</> <filename>configure</filename>
     command-line option.  (You might need to use other threading
     command-line options to compile your client code.)
    </para>
Index: doc/src/sgml/installation.sgml
===================================================================
RCS file: /cvsroot/pgsql-server/doc/src/sgml/installation.sgml,v
retrieving revision 1.135
diff -c -c -r1.135 installation.sgml
*** doc/src/sgml/installation.sgml    15 Jun 2003 04:07:58 -0000    1.135
--- doc/src/sgml/installation.sgml    23 Jul 2003 17:08:37 -0000
***************
*** 915,921 ****
        </varlistentry>

        <varlistentry>
!        <term><option>--with-threads</option></term>
         <listitem>
          <para>
       Allow separate libpq and ecpg threads to safely control their
--- 915,921 ----
        </varlistentry>

        <varlistentry>
!        <term><option>--enable-thread-safeness</option></term>
         <listitem>
          <para>
       Allow separate libpq and ecpg threads to safely control their
Index: doc/src/sgml/libpq.sgml
===================================================================
RCS file: /cvsroot/pgsql-server/doc/src/sgml/libpq.sgml,v
retrieving revision 1.127
diff -c -c -r1.127 libpq.sgml
*** doc/src/sgml/libpq.sgml    27 Jun 2003 19:08:37 -0000    1.127
--- doc/src/sgml/libpq.sgml    23 Jul 2003 17:08:44 -0000
***************
*** 3268,3276 ****

  <para>
  <application>libpq</application> is thread-safe if the library is
! compiled using <filename>configure</filename>'s <literal>--with-threads</>
! command-line option.  (In addition, you might need to
! use other threading command-line options to compile your client code.)
  </para>

  <para>
--- 3268,3277 ----

  <para>
  <application>libpq</application> is thread-safe if the library is
! compiled using <filename>configure</filename>'s
! <literal>--enable-thread-safeness</> command-line option.
! (In addition, you might need to use other threading command-line
! options to compile your client code.)
  </para>

  <para>

pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: cvs problem
Next
From: greg@turnstep.com
Date:
Subject: Re: DBD::Pg, schema support