/* include/dps_config.h.  Generated by configure.  */
/* include/udm_config.h.in.  Generated automatically from configure.in by autoheader.  */
/* --- BEGIN 'top' portion of acconfig.h --- */

/* acconfig.h is here to make autoheader happy and smile. -kir */

#ifndef _DPS_CONFIG_H
#define _DPS_CONFIG_H

/* --- END 'top' portion of acconfig.h --- */

/* Define to empty if the keyword does not work.  */
/* #undef const */

/* Define to `int' if <sys/types.h> doesn't define.  */
/* #undef mode_t */

/* Define to `long' if <sys/types.h> doesn't define.  */
/* #undef off_t */

/* Define to `int' if <sys/types.h> doesn't define.  */
/* #undef pid_t */

/* Define as the return type of signal handlers (int or void).  */
#define RETSIGTYPE void

/* Define to `unsigned' if <sys/types.h> doesn't define.  */
/* #undef size_t */

/* Define if you have the ANSI C header files.  */
#define STDC_HEADERS 1

/* Define if your processor stores words with the most significant
   byte first (like Motorola and SPARC, unlike Intel and VAX).  */
/* #undef WORDS_BIGENDIAN */

/* Define if you have tm_gmtoff in struct tm */
#define HAVE_TM_GMTOFF 1

/* Define if you have POSIX type signal handling routines */
#define HAVE_POSIX_SIGNALS 1

/* Define if you have union semun in sys/sem.h */
#define HAVE_UNION_SEMUN 1

/* Define if you want to use syslog for logging indexer messages */
#define WITH_SYSLOG 1

/* Define if you want tracing for debugging */
/* #undef WITH_TRACE */

/* Define if you want full relevancy calculation */
/* #undef FULL_RELEVANCY */

/* Define if you want to use external parser */
#define WITH_PARSER 1

/* Define if you want to use GNU libidn */
/* #undef WITH_IDN */

/* Define if you want mp3 id3 tags support */
#define WITH_MP3 1

/* Define if you want to support file:// URL schema */
#define WITH_FILE 1

/* Define if you want to support http:// URL schema */
#define WITH_HTTP 1

/* Define if you want to support https:// URL schema */
#define WITH_HTTPS 1

/* Define if you want to support ftp:// URL schema */
#define WITH_FTP 1

/* Define if you want to support news:// URL schema */
#define WITH_NEWS 1

/* Define if you have expat and want to suport XML parsing */
/* #undef WITH_XML */

/* Define if you want to use MySQL */
#define HAVE_MYSQL 1

/* Define if you want to use PostgreSQL */
/* #undef HAVE_PGSQL */

/* Define if you want to use mSQL */
/* #undef HAVE_MSQL */

/* Define if you want to use iODBC */
/* #undef HAVE_IODBC */

/* Define if you want to use unixODBC */
/* #undef HAVE_UNIXODBC */

/* Define if you want to use IBM DB2 */
/* #undef HAVE_DB2 */

/* Define if you want to use Solid SQL Server */
/* #undef HAVE_SOLID */

/* Define if you want to use OpenLink ODBC (Virtuoso) */
/* #undef HAVE_VIRT */

/* Define if you want to use EasySoft ODBC */
/* #undef HAVE_EASYSOFT */

/* Define if you want to use SAPDB ODBC library */
/* #undef HAVE_SAPDB */

/* Define if you want to use Interbase SQL Server */
/* #undef HAVE_IBASE */

/* Define if you want to use CT-LIB SyBase SQL Server */
/* #undef HAVE_CTLIB */

/* Define if you want to use sqlite  */
/* #undef HAVE_SQLITE */

/* Define if you want to use Oracle 8 SQL Server */
/* #undef HAVE_ORACLE8 */

/* Define if you want to use Oracle 7 SQL Server */
/* #undef HAVE_ORACLE7 */

/* Define VERSION_ID */
#define DPS_VERSION_ID 426

/* Define DPS_DBTYPE */
#define DPS_DBTYPE "mysql"

/* Define if you havnt socklen_t type */
/* #undef socklen_t */

/* Define if you want DMALLOC */
/* #undef DMALLOC */

/* Define if you want Boehm's garbage collector support */
/* #undef BOEHMGC */

/* Define if you want internal memory debugger based on Electric Fence 2.2 */
/* #undef EFENCE */

/* Define if you want HTTP Content Encoding support */
#define HAVE_ZLIB 1

/* Define if you want readline support */
/* #undef HAVE_READLINE */

/* Define if you want Chinese support */
/* #undef HAVE_CHARSET_chinese */

/* Define if you want Japanese support */
/* #undef HAVE_CHARSET_japanese */

/* Define if you want Korean euc-kr support */
/* #undef HAVE_CHARSET_euc_kr */

/* Define if you want gujarati support */
/* #undef HAVE_CHARSET_gujarati */

/* Define if you want tscii support */
/* #undef HAVE_CHARSET_tscii */

/* Define if you want ChaSen support */
/* #undef CHASEN */

/* Define if you want MeCab support */
/* #undef MECAB */

/* The number of bytes in a char*.  */
#define SIZEOF_CHARP 4

/* The number of bytes in a int.  */
#define SIZEOF_INT 4

/* The number of bytes in a long.  */
#define SIZEOF_LONG 4

/* The number of bytes in a long long.  */
#define SIZEOF_LONG_LONG 8

/* The number of bytes in a short.  */
#define SIZEOF_SHORT 2

/* Define if you have the bzero function.  */
#define HAVE_BZERO 1

/* Define if you have the hstrerror function.  */
#define HAVE_HSTRERROR 1

/* Define if you have timegm function */
#define HAVE_TIMEGM 1

/* Define if you have the mergesort function.  */
#define HAVE_MERGESORT 1

/* Define if you have the heapsort function.  */
#define HAVE_HEAPSORT 1

/* Define if you have the putenv function.  */
#define HAVE_PUTENV 1

/* Define if you have the regcomp function.  */
#define HAVE_REGCOMP 1

/* Define if you have the setenv function.  */
#define HAVE_SETENV 1

/* Define if you have the setproctitle function.  */
#define HAVE_SETPROCTITLE 1

/* Define if you have the snprintf function.  */
#define HAVE_SNPRINTF 1

/* Define if you have the socket function.  */
#define HAVE_SOCKET 1

/* Define if you have the strcasecmp function.  */
#define HAVE_STRCASECMP 1

/* Define if you have the strcasestr function.  */
#define HAVE_STRCASESTR 1

/* Define if you have the strdup function.  */
#define HAVE_STRDUP 1

/* Define if you have the strncasecmp function.  */
#define HAVE_STRNCASECMP 1

/* Define if you have the strndup function.  */
/* #undef HAVE_STRNDUP */

/* Define if you have the strnlen function.  */
/* #undef HAVE_STRNLEN */

/* Define if you have the strstr function.  */
#define HAVE_STRSTR 1

/* Define if you have the strtok_r function.  */
#define HAVE_STRTOK_R 1

/* Define if you have the unsetenv function.  */
#define HAVE_UNSETENV 1

/* Define if you have the vsnprintf function.  */
#define HAVE_VSNPRINTF 1

/* Define if you have the getaddrinfo function. */
#define HAVE_GETADDRINFO 1

/* Define if you have strerror_r function. */
#define HAVE_STRERROR_R 1

/* Define to use the three-argument variant of gethostbyname_r */
/* #undef HAVE_GETHOSTBYNAME_R_3 */

/* Define to use the five-argument variant of gethostbyname_r */
/* #undef HAVE_GETHOSTBYNAME_R_5 */

/* Define to use the six-argument variant of gethostbyname_r */
/* #undef HAVE_GETHOSTBYNAME_R_6 */

/* Define if you have the pthread_setconcurrency function. */
#define HAVE_PTHREAD_SETCONCURRENCY_PROTO 1

/* Define if you have the thr_setconcurrency function. */
/* #undef HAVE_THR_SETCONCURRENCY_PROTO */

/* Define if you have the <arpa/inet.h> header file.  */
#define HAVE_ARPA_INET_H 1

/* Define if you have the <arpa/nameser.h> header file.  */
#define HAVE_ARPA_NAMESER_H 1

/* Define if you have the <fcntl.h> header file.  */
#define HAVE_FCNTL_H 1

/* Define if you have the <getopt.h> header file.  */
/* #undef HAVE_GETOPT_H */

/* Define if you have the <libutil.h> header file.  */
#define HAVE_LIBUTIL_H 1

/* Define if you have the <netdb.h> header file.  */
#define HAVE_NETDB_H 1

/* Define if you have the <netinet/in.h> header file.  */
#define HAVE_NETINET_IN_H 1

/* Define if you have the <netinet/in_systm.h> header file.  */
#define HAVE_NETINET_IN_SYSTM_H 1

/* Define if you have the <netinet/ip.h> header file.  */
#define HAVE_NETINET_IP_H 1

/* Define if you have the <netinet/tcp.h> header file.  */
#define HAVE_NETINET_TCP_H 1

/* Define if you have the <resolv.h> header file.  */
#define HAVE_RESOLV_H 1

/* Define if you have the <select.h> header file.  */
/* #undef HAVE_SELECT_H */

/* Define if you have the <sys/ioctl.h> header file.  */
#define HAVE_SYS_IOCTL_H 1

/* Define if you have the <sys/mman.h> header file.  */
#define HAVE_SYS_MMAN_H 1

/* Define if you have the <sys/shm.h> header file.  */
/* #undef HAVE_SYS_SHM_H */

/* Define if you have the <sys/msg.h> header file. */
#define HAVE_SYS_MSG_H 1

/* Define if you have the <sys/sem.h> header file. */
#define HAVE_SYS_SEM_H 1

#ifndef HAVE_SYS_SEM_H
/* Define if you have the <semaphore.h> header file. */
#define HAVE_SEMAPHORE_H 1
#endif

/* Define if you have the <sys/ipc.h> header file.  */
#define HAVE_SYS_IPC_H 1

/* Define if you have the <sys/param.h> header file.  */
#define HAVE_SYS_PARAM_H 1

/* Define if you have the <sys/select.h> header file.  */
#define HAVE_SYS_SELECT_H 1

/* Define if you have the <sys/socket.h> header file.  */
#define HAVE_SYS_SOCKET_H 1

/* Define if you have the <sys/time.h> header file.  */
#define HAVE_SYS_TIME_H 1

/* Define if you have the <sys/times.h> header file.  */
#define HAVE_SYS_TIMES_H 1

/* Define if you have the <sys/wait.h> header file.  */
#define HAVE_SYS_WAIT_H 1

/* Define if you have the <sys/sysctl.h> header file. */
#define HAVE_SYS_SYSCTL_H 1

/* Define if you have the <syslog.h> header file.  */
#define HAVE_SYSLOG_H 1

/* Define if you have the <unistd.h> header file.  */
#define HAVE_UNISTD_H 1

/* Define if you have the nsl library (-lnsl).  */
/* #undef HAVE_LIBNSL */

/* Define if you have the socket library (-lsocket).  */
/* #undef HAVE_LIBSOCKET */

/* Define if you have the bind library (-lbind) */
/* #undef HAVE_LIBBIND */

/* Define if you have the dns library (-ldns) */
/* #undef HAVE_LIBDNS */

/* Name of package */
#define PACKAGE "dpsearch"

/* Version number of package */
#define VERSION "4.26"

/* syslog facility */
/* #undef LOG_FACILITY */

/* libparanoia usage */
/* #undef WITH_PARANOIA */

/* Number of bits in a file offset, on hosts where this is settable. */
/* #undef _FILE_OFFSET_BITS */

/* Define to enable large file support on some Linuxes, Red Hat 8.0, for example (e.g. glibc 2.2). */
/* #undef _LARGEFILE_SOURCE */

/* Define for large files, on AIX-style hosts. */
/* #undef _LARGE_FILES */


/* --- BEGIN 'bottom' portion from acconfig.h --- */

/* ODBC Library */
#if (HAVE_IODBC|| HAVE_UNIXODBC||HAVE_SOLID||HAVE_VIRT||HAVE_EASYSOFT||HAVE_SAPDB||HAVE_DB2)
#define HAVE_ODBC 1
#endif

/* Backend */
#if (HAVE_ODBC||HAVE_MYSQL||HAVE_PGSQL||HAVE_MSQL||HAVE_IBASE||HAVE_ORACLE8||HAVE_ORACLE7||HAVE_CTLIB||HAVE_SQLITE)
#define HAVE_SQL 1
#endif

#ifdef HAVE_PTHREAD
#include <pthread.h>
#endif

#include <sys/types.h>



/* Unix/Windows specific stuff */

#ifdef WIN32

#include <windows.h>
#define HAVE_WINDOWS_H
#define HAVE_IO_H
#define HAVE_DIRECT_H
#define HAVE_PROCESS_H
#define HAVE_WINSOCK_H
#define __INDLIB__		__declspec(dllexport) /* export functions for DLL  */
#define DPSSLASH		'\\'
#define DPSSLASHSTR		"\\"
#define DPSSLEEP(x)		_sleep(x*1000)
#define DPS_IWRITE		S_IWRITE
#define DPS_BINARY		O_BINARY
#define dps_closesocket(x)		closesocket(x)

#define snprintf	_snprintf
#define vsnprintf	_vsnprintf
#define lseek		_lseek
#define open		_open
#define popen		_popen
#define pclose	    	_pclose
#define read		_read
#define write		_write
#define strdup		_strdup

typedef __int32 dpshash32_t;
typedef unsigned __int64 dpshash64_t;
typedef unsigned __int64 uint8;
typedef unsigned __int32 uint4;
typedef unsigned __int16 uint2;
typedef __int32 int4;
#define SDPALIGN __int64

#ifdef __cplusplus
  #define __C_LINK "C"
#else
  #define __C_LINK
#endif

#define __DPSCALL __cdecl

#else

#define __C_LINK
#define __DPSCALL

#define DPSSLASH		'/'
#define DPSSLASHSTR		"/"
#define DPSSLEEP(x)		sleep(x)
#define dps_closesocket(x)		close(x)
#define DPS_IWRITE		0644
#define DPS_BINARY		0

#if SIZEOF_SHORT == 2
typedef unsigned short uint2;
#elif SIZEOF_INT == 2
typedef unsigned int uint2;
#else
typedef unsigned int uint2;
#endif

#if SIZEOF_SHORT == 4
typedef short dpshash32_t;
typedef unsigned short uint4;
typedef short int4;
#elif SIZEOF_INT == 4
typedef int dpshash32_t;
typedef unsigned int uint4;
typedef int int4;
#else
typedef long dpshash32_t;
typedef unsigned long uint4;
typedef long int4;
#endif

#if SIZEOF_INT == 8
typedef unsigned int dpshash64_t;
typedef unsigned int uint8;
#elif SIZEOF_LONG == 8
typedef unsigned long dpshash64_t;
typedef unsigned long uint8;
#else
typedef unsigned long long dpshash64_t;
typedef unsigned long long uint8;
#endif

#if (SIZEOF_CHARP == SIZEOF_INT)
#define SDPALIGN int
#elif (SIZEOF_CHARP == SIZEOF_LONG)
#define SDPALIGN long
#elif (SIZEOF_CHARP == SIZEOF_SHORT)
#define SDPALIGN short
#else
#define SDPALIGN long long
#endif


#endif

typedef int4 urlid_t;
typedef uint4 dpscrc32_t;
typedef uint2 dpsunicode_t;

#ifndef _GNU_SOURCE
#define _GNU_SOURCE
#endif
#ifndef __USE_GNU
#define __USE_GNU
#endif

/* For strtok_r() */
#ifndef _REENTRANT
#define _REENTRANT
#endif


#ifndef dps_max
#define dps_max(a,b) (((a) > (b)) ? (a) : (b))
#endif
#ifndef dps_min
#define dps_min(a,b) (((a) < (b)) ? (a) : (b))
#endif



#ifdef EFENCE

#include "dps_efence.h"

#elif defined(BOEHMGC)

#define GC_DEBUG
#include "gc.h"
#define malloc(n) GC_MALLOC(n)
#define calloc(m,n) GC_MALLOC((m)*(n))
#define free(p) GC_FREE(p)
#define realloc(p,n) GC_REALLOC((p),(n))

#define DpsMalloc(n) GC_MALLOC(n)
#define DpsCalloc(m,n) GC_MALLOC((m)*(n))
#define DpsFree(p) GC_FREE(p)
#define DpsRealloc(p,n) GC_REALLOC((p),(n))

#define CHECK_LEAKS() GC_gcollect()
#define DpsStrdup(x)     _DpsStrdup(x)
extern char * _DpsStrdup(const char *str);

#else

void *DpsRealloc(void *p, size_t size);

#define DpsFree free
#define DpsMalloc malloc
#define DpsCalloc calloc
#define DpsValloc valloc
#define DpsStrdup strdup
#ifdef HAVE_STRNDUP
#define DpsStrndup strndup
#endif

#endif /* EFENCE */


#define DpsSort qsort

#ifdef HAVE_MERGESORT
#define DpsPreSort mergesort
#elif defined(HAVE_HEAPSORT)
#define DpsPreSort heapsort
#else
#define DpsPreSort qsort
#endif


#ifdef WITH_PARANOIA
extern void *DpsViolationEnter(void);
extern void DpsViolationExit(void *);
#endif



#ifdef DMALLOC
#include <dmalloc.h>
#endif





#endif /* _DPS_CONFIG_H */
/* --- END 'bottom' portion from acconfig.h --- */
