Commit bf06825e authored by Tom Lane's avatar Tom Lane

Win32 compile fixes for pgbench, pgcrypto, and tsearch.

Claudio Natoli
parent fc564686
/*
* $PostgreSQL: pgsql/contrib/pgbench/pgbench.c,v 1.32 2004/08/29 05:06:36 momjian Exp $
* $PostgreSQL: pgsql/contrib/pgbench/pgbench.c,v 1.33 2004/09/14 03:39:23 tgl Exp $
*
* pgbench: a simple TPC-B like benchmark program for PostgreSQL
* written by Tatsuo Ishii
......@@ -44,6 +44,10 @@
extern char *optarg;
extern int optind;
#ifdef WIN32
#undef select
#endif
/********************************************************************
* some configurable parameters */
......@@ -705,7 +709,7 @@ main(int argc, char **argv)
int nsocks; /* return from select(2) */
int maxsock; /* max socket number to be waited */
#ifndef __CYGWIN__
#if !(defined(__CYGWIN__) || defined(__MINGW32__))
struct rlimit rlim;
#endif
......@@ -755,7 +759,7 @@ main(int argc, char **argv)
fprintf(stderr, "invalid number of clients: %d\n", nclients);
exit(1);
}
#ifndef __CYGWIN__
#if !(defined(__CYGWIN__) || defined(__MINGW32__))
#ifdef RLIMIT_NOFILE /* most platform uses RLIMIT_NOFILE */
if (getrlimit(RLIMIT_NOFILE, &rlim) == -1)
{
......@@ -772,7 +776,7 @@ main(int argc, char **argv)
fprintf(stderr, "Use limit/ulimt to increase the limit before using pgbench.\n");
exit(1);
}
#endif /* #ifndef __CYGWIN__ */
#endif /* #if !(defined(__CYGWIN__) || defined(__MINGW32__)) */
break;
case 'C':
is_connect = 1;
......@@ -935,7 +939,7 @@ main(int argc, char **argv)
/* set random seed */
gettimeofday(&tv1, 0);
srand((uint) tv1.tv_usec);
srand((unsigned int) tv1.tv_usec);
/* get start up time */
gettimeofday(&tv1, 0);
......
#
# $PostgreSQL: pgsql/contrib/pgcrypto/Makefile,v 1.11 2004/08/20 20:13:06 momjian Exp $
# $PostgreSQL: pgsql/contrib/pgcrypto/Makefile,v 1.12 2004/09/14 03:39:48 tgl Exp $
#
# either 'builtin', 'mhash', 'openssl'
......@@ -82,6 +82,11 @@ include $(top_builddir)/src/Makefile.global
include $(top_srcdir)/contrib/contrib-global.mk
endif
# to make ws2_32.lib the last library (must occur after definition of PORTNAME)
ifeq ($(PORTNAME),win32)
SHLIB_LINK += -lwsock32 -lws2_32
endif
rijndael.o: rijndael.tbl
......
......@@ -33,6 +33,9 @@ typedef char *BITVECP;
#define GETBIT(x,i) ( (GETBYTE(x,i) >> ( (i) % BITBYTE )) & 0x01 )
#define abs(a) ((a) < (0) ? -(a) : (a))
#ifdef min
#undef min
#endif
#define min(a,b) ((a) < (b) ? (a) : (b))
#define HASHVAL(val) (((unsigned int)(val)) % SIGLENBIT)
#define HASH(sign, val) SETBIT((sign), HASHVAL(val))
......
......@@ -174,6 +174,9 @@ clean_NOT(ITEM * ptr, int4 *len)
return plaintree(clean_NOT_intree(root), len);
}
#ifdef V_UNKNOWN /* apparently Windows defines this :-( */
#undef V_UNKNOWN
#endif
#define V_UNKNOWN 0
#define V_TRUE 1
#define V_FALSE 2
......
......@@ -342,11 +342,11 @@ typedef struct
{
uint16 len;
char *word;
} WORD;
} WORD_T; /* WORD type defined on win32; we'll use WORD_T */
typedef struct
{
WORD *words;
WORD_T *words;
int4 lenwords;
int4 curwords;
} PRSTEXT;
......@@ -369,7 +369,7 @@ parsetext(PRSTEXT * prs, char *buf, int4 buflen)
if (prs->curwords == prs->lenwords)
{
prs->lenwords *= 2;
prs->words = (WORD *) repalloc((void *) prs->words, prs->lenwords * sizeof(WORD));
prs->words = (WORD_T *) repalloc((void *) prs->words, prs->lenwords * sizeof(WORD_T));
}
if (tokenlen > 0xffff)
{
......@@ -410,18 +410,18 @@ parsetext(PRSTEXT * prs, char *buf, int4 buflen)
static int
compareWORD(const void *a, const void *b)
{
if (((WORD *) a)->len == ((WORD *) b)->len)
if (((WORD_T *) a)->len == ((WORD_T *) b)->len)
return strncmp(
((WORD *) a)->word,
((WORD *) b)->word,
((WORD *) b)->len);
return (((WORD *) a)->len > ((WORD *) b)->len) ? 1 : -1;
((WORD_T *) a)->word,
((WORD_T *) b)->word,
((WORD_T *) b)->len);
return (((WORD_T *) a)->len > ((WORD_T *) b)->len) ? 1 : -1;
}
static int
uniqueWORD(WORD * a, int4 l)
uniqueWORD(WORD_T * a, int4 l)
{
WORD *ptr,
WORD_T *ptr,
*res;
if (l == 1)
......@@ -430,7 +430,7 @@ uniqueWORD(WORD * a, int4 l)
res = a;
ptr = a + 1;
qsort((void *) a, l, sizeof(WORD), compareWORD);
qsort((void *) a, l, sizeof(WORD_T), compareWORD);
while (ptr - a < l)
{
......@@ -500,7 +500,7 @@ txt2txtidx(PG_FUNCTION_ARGS)
prs.lenwords = 32;
prs.curwords = 0;
prs.words = (WORD *) palloc(sizeof(WORD) * prs.lenwords);
prs.words = (WORD_T *) palloc(sizeof(WORD_T) * prs.lenwords);
initmorph();
parsetext(&prs, VARDATA(in), VARSIZE(in) - VARHDRSZ);
......@@ -564,7 +564,7 @@ tsearch(PG_FUNCTION_ARGS)
errmsg("could not find txtidx_field")));
prs.lenwords = 32;
prs.curwords = 0;
prs.words = (WORD *) palloc(sizeof(WORD) * prs.lenwords);
prs.words = (WORD_T *) palloc(sizeof(WORD_T) * prs.lenwords);
initmorph();
/* find all words in indexable column */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment