diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2002-05-05 00:03:29 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2002-05-05 00:03:29 +0000 |
commit | 72a3902a664c7fbceb2034e28e444b28f96fa717 (patch) | |
tree | ff42e4494af6ea1c1cdf524f3feb5fc670217f0c /configure.in | |
parent | 91fc10fdacfcbadc123fd9d8ee16a4568f8c636b (diff) | |
download | postgresql-72a3902a664c7fbceb2034e28e444b28f96fa717.tar.gz |
Create an internal semaphore API that is not tied to SysV semaphores.
As proof of concept, provide an alternate implementation based on POSIX
semaphores. Also push the SysV shared-memory implementation into a
separate file so that it can be replaced conveniently.
Diffstat (limited to 'configure.in')
-rw-r--r-- | configure.in | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/configure.in b/configure.in index e0b4ca4fc6..342bf851e7 100644 --- a/configure.in +++ b/configure.in @@ -1,5 +1,5 @@ dnl Process this file with autoconf to produce a configure script. -dnl $Header: /cvsroot/pgsql/configure.in,v 1.183 2002/04/26 19:47:35 tgl Exp $ +dnl $Header: /cvsroot/pgsql/configure.in,v 1.184 2002/05/05 00:03:28 tgl Exp $ dnl Developers, please strive to achieve this order: dnl @@ -1168,6 +1168,26 @@ AC_CHECK_TYPES([sig_atomic_t], [], [], [#include <signal.h>]) PGAC_FUNC_POSIX_SIGNALS +# Select semaphore implementation type. +if test x"$USE_NAMED_POSIX_SEMAPHORES" = x"1" ; then + AC_DEFINE(USE_NAMED_POSIX_SEMAPHORES, 1, [Define to select named POSIX semaphores]) + SEMA_IMPLEMENTATION="src/backend/port/posix_sema.c" +else + if test x"$USE_UNNAMED_POSIX_SEMAPHORES" = x"1" ; then + AC_DEFINE(USE_UNNAMED_POSIX_SEMAPHORES, 1, [Define to select unnamed POSIX semaphores]) + SEMA_IMPLEMENTATION="src/backend/port/posix_sema.c" + else + AC_DEFINE(USE_SYSV_SEMAPHORES, 1, [Define to select SysV-style semaphores]) + SEMA_IMPLEMENTATION="src/backend/port/sysv_sema.c" + fi +fi + + +# Select shared-memory implementation type. +AC_DEFINE(USE_SYSV_SHARED_MEMORY, 1, [Define to select SysV-style shared memory]) +SHMEM_IMPLEMENTATION="src/backend/port/sysv_shmem.c" + + if test "$enable_nls" = yes ; then PGAC_CHECK_GETTEXT fi @@ -1222,6 +1242,8 @@ AC_CONFIG_FILES([GNUmakefile src/Makefile.global]) AC_CONFIG_LINKS([ src/backend/port/dynloader.c:src/backend/port/dynloader/${template}.c + src/backend/port/pg_sema.c:${SEMA_IMPLEMENTATION} + src/backend/port/pg_shmem.c:${SHMEM_IMPLEMENTATION} src/include/dynloader.h:src/backend/port/dynloader/${template}.h src/include/pg_config_os.h:src/include/port/${template}.h src/Makefile.port:src/makefiles/Makefile.${template} |