]> granicus.if.org Git - postgresql/blobdiff - src/include/config.h.in
Massive commit to run PGINDENT on all *.c and *.h files.
[postgresql] / src / include / config.h.in
index 3a7438a44797f6daad74448ff30b28eeedfc3e8d..2d2b599fd56a60faf2a9b307f19e3bb13877c644 100644 (file)
@@ -1,3 +1,5 @@
+
+
 /* the purpose of this file is to reduce the use of #ifdef's through
  * the code base by those porting the software, and to facilitate the
  * eventual use of autoconf to build the server 
  * The following is set using configure.  
  */
 
+/* Set to 1 if you have <netdb.h> */
+#undef HAVE_NETDB_H
+
+/* Set to 1 if you have <endian.h> */
+#undef HAVE_ENDIAN_H
+
+/* Set to 1 if you have <crypt.h> */
+#undef HAVE_CRYPT_H
+
 /* Set to 1 if you have <termios.h> */
-#define HAVE_TERMIOS_H 0
+#undef HAVE_TERMIOS_H
+
+/* Set to 1 if you have <float.h> */
+#undef HAVE_FLOAT_H
 
 /* Set to 1 if you have <limits.h> */
-#define HAVE_LIMITS_H 0
+#undef HAVE_LIMITS_H
 
 /* Set to 1 if  you have <values.h> */
-#define HAVE_VALUES_H 0
+#undef HAVE_VALUES_H
 
-/* Set to 1 if you have isinf() */
-#define HAVE_ISINF 0
+/* Set to 1 if  you have <sys/select.h> */
+#undef HAVE_SYS_SELECT_H
 
-/* Set to 1 if you have tzset() */
-#define HAVE_TZSET 0
+/* Set to 1 if you have <readline.h> */
+#undef HAVE_READLINE_H
 
-/* Set to 1 if you have cbrt() */
-#define HAVE_CBRT 0
+/* Set to 1 if you have <history.h> */
+#undef HAVE_HISTORY
 
-/*
- * Code below this point should not require changes
- */
+/* Set to 1 if you have <readline/history.h> */
+#undef HAVE_READLINE_HISTORY_H
 
-#if defined(HAVE_TERMIOS_H)
-#  define TERMIOS_H_LOCATION <termios.h>
-#else
-#  define TERMIOS_H_LOCATION <sys/termios.h>
-#endif
+/* Set to 1 if you have <dld.h> */
+#undef HAVE_DLD_H
 
-/* Temporary: Need to change source files from USE_VALUES_H to HAVE_VALUES_H */
-#if defined(HAVE_VALUES_H)
-#define USE_VALUES_H
-#endif
+/* Set to 1 if you have isinf() */
+#undef HAVE_ISINF
 
-/* Temporary: Need to change source files from USE_LIMITS_H to HAVE_LIMITS_H */
-#if defined(HAVE_LIMITS_H)
-#  define USE_LIMITS_H
-#endif 
+/* Set to 1 if you have tzset() */
+#undef HAVE_TZSET
 
-#if !defined(HAVE_ISINF)
-#  define NEED_ISINF
-#endif
+/* Set to 1 if you have int timezone */
+#undef HAVE_INT_TIMEZONE
 
-#if !defined(HAVE_CBRT)
-#  define NEED_CBRT
-#endif
+/* Set to 1 if you have cbrt() */
+#undef HAVE_CBRT
 
-#define HAVE_MEMMOVE
+/* Set to 1 if you have inet_aton() */
+#undef HAVE_INET_ATON
 
-#if defined(aix)
-#  define CLASS_CONFLICT 
-#  define DISABLE_XOPEN_NLS 
-#  define NEED_UNION_SEMUN 
-#  define NEED_SYS_SELECT_H
-#  define HAVE_ANSI_CPP
-#  define HAS_TEST_AND_SET
-   typedef unsigned int slock_t;
-#endif
+/* Set to 1 if you have fcvt() */
+#undef HAVE_FCVT
 
-#if defined(alpha)
-#  define USE_POSIX_TIME 
-#  define USE_POSIX_SIGNALS
-#  define DISABLE_XOPEN_NLS 
-#  define HAS_LONG_LONG
-#  define NEED_UNION_SEMUN 
-#  define HAS_TEST_AND_SET
-#  include <sys/mman.h>  /* for msemaphore */
-   typedef msemaphore slock_t;
-#endif
+/* Set to 1 if you have strerror() */
+#undef HAVE_STRERROR
 
-#if defined(BSD44_derived)
-#  define USE_POSIX_TIME
-#  define NEED_I386_TAS_ASM
-#  define HAS_TEST_AND_SET
-#  if defined(__mips__)
-#    undef HAS_TEST_AND_SET
-#  endif
-   typedef unsigned char slock_t;
-#endif
+/* Set to 1 if you have rint() */
+#undef HAVE_RINT 
 
-#if defined(bsdi)
-#  if defined(i386)
-#    define NEED_I386_TAS_ASM
-#  endif
-#  if defined(sparc)
-#    define NEED_SPARC_TAS_ASM
-#  endif
-#  if defined(PRE_BSDI_2_1)
-#    define NEED_UNION_SEMUN 
-#  endif
-#  define USE_POSIX_TIME
-#  define HAS_TEST_AND_SET
-   typedef unsigned char slock_t;
-#endif
+/* Set to 1 if you have memmove() */
+#undef HAVE_MEMMOVE
 
+/* Set to 1 if you have sigsetjmp() */
+#undef HAVE_SIGSETJMP
 
-#if defined(dgux)
-#  define LINUX_ELF
-#  define NEED_UNION_SEMUN 
-#  define USE_POSIX_SIGNALS
-#endif
+/* Set to 1 if you have kill() */
+#undef HAVE_KILL
 
-#if defined(hpux)
-#  define JMP_BUF
-#  define USE_POSIX_TIME
-#  define NEED_RINT
-#  define NEED_UNION_SEMUN 
-#  define HAS_TEST_AND_SET
-   typedef struct { int sem[4]; } slock_t;
-#endif
+/* Set to 1 if you have vfork() */
+#undef HAVE_VFORK
 
-#if defined(i386_solaris) 
-#  define USE_POSIX_TIME 
-#  define USE_POSIX_SIGNALS
-#  define NEED_RUSAGE 
-#  define NO_EMPTY_STMTS
-#  define NEED_UNION_SEMUN 
-#  define SYSV_DIRENT
-#  define HAS_TEST_AND_SET
-   typedef unsigned char slock_t;
-#endif
+/* Set to 1 if you have sysconf() */
+#undef HAVE_SYSCONF
 
-#if defined(irix5)
-#  define USE_POSIX_TIME 
-#  define USE_POSIX_SIGNALS
-#  define NO_EMPTY_STMTS
-#  define NO_VFORK
-#  define SYSV_DIRENT
-#  define HAS_TEST_AND_SET
-#  include <abi_mutex.h>
-   typedef abilock_t slock_t;
-#endif
+/* Set to 1 if you have getrusage() */
+#undef HAVE_GETRUSAGE
 
-#if defined(linux)
-/* __USE_POSIX, __USE_BSD, and __USE_BSD_SIGNAL used to be defined either
-   here or with -D compile options, but __ macros should be set and used by C
-   library macros, not Postgres code.  __USE_POSIX is set by features.h,
-   __USE_BSD is set by bsd/signal.h, and __USE_BSD_SIGNAL appears not to
-   be used.
-*/
-#  define JMP_BUF
-#  define USE_POSIX_TIME
-#  define NEED_I386_TAS_ASM
-#  define HAS_TEST_AND_SET
-   typedef unsigned char slock_t;
-#endif
+/* Set to 1 if you have waitpid() */
+#undef HAVE_WAITPID
 
-#if defined(nextstep)
-# include <sys/ioctl.h>
-# if defined(__STRICT_ANSI__)
-#  define isascii(c)  ((unsigned)(c)<=0177)
-# endif
-  extern char* strdup (const char* string);
-# ifndef _POSIX_SOURCE
-  typedef unsigned short mode_t;
-  typedef int sigset_t;
-#  define SIG_BLOCK    00
-#  define SIG_UNBLOCK  01
-#  define SIG_SETMASK  02
-#  define NO_SIGACTION
-#  define NO_SETSID
-#  define NO_SIGPROCMASK
-#  define NEED_SIG_JMP
-# endif
-
-# define JMP_BUF
-# define NO_WAITPID
-  typedef struct mutex slock_t;
-#endif
+/* Set to 1 if you have setsid() */
+#undef HAVE_SETSID
 
-#if defined(sequent) 
-#  define NEED_UNION_SEMUN 
-#endif
+/* Set to 1 if you have sigprocmask() */
+#undef HAVE_SIGPROCMASK
 
-#if defined(sparc_solaris)
-#  define USE_POSIX_TIME 
-#  define USE_POSIX_SIGNALS
-#  define NEED_RUSAGE 
-#  define NO_EMPTY_STMTS
-#  define USE_POSIX_TIME
-#  define NEED_UNION_SEMUN 
-#  define SYSV_DIRENT
-#  define HAS_TEST_AND_SET
-typedef unsigned char slock_t;
-#endif
+/* Set to 1 if you have strdup() */
+#undef HAVE_STRDUP
 
-#if defined(sunos4)
-#  define USE_POSIX_TIME
-#  undef HAVE_MEMMOVE
-#endif
+/* Set to 1 if you have libreadline.a */
+#undef HAVE_LIBREADLINE
 
-#if defined(svr4) 
-#  define USE_POSIX_TIME 
-#  define USE_POSIX_SIGNALS
-#  define NEED_RUSAGE 
-#  define NO_EMPTY_STMTS
-#  define NEED_UNION_SEMUN 
-#  define SYSV_DIRENT
-#endif
+/* Set to 1 if you have libhistory.a */
+#undef HAVE_LIBHISTORY
 
-#if defined(win32)
-#  define JMP_BUF
-#  define NEED_SIG_JMP
-#  define NO_UNISTD_H
-#  define USES_WINSOCK 
-#  define NOFILE       100
-#  define NEED_UNION_SEMUN
-#  ifndef MAXPATHLEN
-#  define MAXPATHLEN    250
-#  endif
-#endif /* WIN32 */
-
-#if defined(ultrix4)
-#  define USE_POSIX_TIME
-#  define NEED_UNION_SEMUN 
-#  define NEED_STRDUP
-#endif
+/* Set to 1 if you have union semun */
+#undef HAVE_UNION_SEMUN
 
-/* This patch changes the behavior of aclcheck for groups. Currently an user
- * can access a table only if he has the required permission for ALL the groups
- * defined for that table. With my patch he can access a table if he has the
- * permission for ONE of the groups, which seems to me a more useful thing.
- * 
- * Used in: src/backend/tcop/aclchk.c
- * Submitted by: Massimo Dal Zotto <dz@cs.unitn.it>
+/* Set to 1 if you want to USE_LOCALE */
+#undef USE_LOCALE
+
+/* Set to 1 if you want to Disable ASSERT CHECKING */
+#undef NO_ASSERT_CHECKING
+
+/*
+ * Code below this point should not require changes
  */
-#define        ACLGROUP_PATCH
 
+#include "os.h"
 
 /*
  * The following is used as the arg list for signal handlers.  Any ports
@@ -256,21 +141,16 @@ typedef unsigned char slock_t;
 /* 
  * DEF_PGPORT is the TCP port number on which the Postmaster listens by
  * default.  This can be overriden by command options, environment variables,
- * and the postconfig hook.
+ * and the postconfig hook. (set by build script)
  */ 
 
-#define DEF_PGPORT "5432"
-
-/* turn this on if you prefer European style dates instead of American
- * style dates
- */
-/* #define EUROPEAN_DATES  */
+#undef DEF_PGPORT 
 
 /*
  * If you do not plan to use Host based authentication,
- * comment out the following line
+ * comment out the following line (set by build script)
  */
-#define HBA
+#undef HBA
 
 /*
  * On architectures for which we have not implemented spinlocks (or
@@ -392,14 +272,41 @@ typedef unsigned char slock_t;
 /* #define OLD_REWRITE        */
 /* #define NOTYET             */
 
+/* Genetic Query Optimization (GEQO):
+ * 
+ * The GEQO module in PostgreSQL is intended for the solution of the
+ * query optimization problem by means of a Genetic Algorithm (GA).
+ * It allows the handling of large JOIN queries through non-exhaustive
+ * search.
+ * For further information see README.GEQO <utesch@aut.tu-freiberg.de>.
+ */
+#define GEQO /* backend/optimizer/path/allpaths.c */
 
-/* Undocumented "features"? */
-#define FASTBUILD /* access/nbtree/nbtsort.c */
-
-
-
+/*
+ * Define this if you want psql to _always_ ask for a username and a password
+ * for password authentication.
+ */
+/* #define PSQL_ALWAYS_GET_PASSWORDS */
 
+/*
+ * Use btree bulkload code: 
+ * this code is moderately slow (~10% slower) compared to the regular
+ * btree (insertion) build code on sorted or well-clustered data.  on
+ * random data, however, the insertion build code is unusable -- the
+ * difference on a 60MB heap is a factor of 15 because the random
+ * probes into the btree thrash the buffer pool.
+ *
+ * Great thanks to Paul M. Aoki (aoki@CS.Berkeley.EDU)
+ */
+#define FASTBUILD /* access/nbtree/nbtsort.c */
 
+/* 
+ * BTREE_VERSION_1: we must guarantee that all tuples in A LEVEL
+ * are unique, not in ALL INDEX. So, we can use bti_itup->t_tid                
+ * as unique identifier for a given index tuple (logical position
+ * within a level) and take off bti_oid & bti_dummy (8 bytes total)
+ * from btree items.
+ */
+#define BTREE_VERSION_1
 
 #endif /* CONFIG_H */
-