#include "catalog/pg_collation_d.h"
#include "common/file_perm.h"
#include "common/file_utils.h"
+#include "common/logging.h"
#include "common/restricted_token.h"
#include "common/username.h"
-#include "fe_utils/logging.h"
#include "fe_utils/string_utils.h"
#include "getaddrinfo.h"
#include "getopt_long.h"
top_builddir = ../../..
include $(top_builddir)/src/Makefile.global
-LDFLAGS_INTERNAL += -L$(top_builddir)/src/fe_utils -lpgfeutils
-
OBJS = pg_archivecleanup.o $(WIN32RES)
all: pg_archivecleanup
-pg_archivecleanup: $(OBJS) | submake-libpgport submake-libpgfeutils
+pg_archivecleanup: $(OBJS) | submake-libpgport
$(CC) $(CFLAGS) $^ $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) -o $@$(X)
install: all installdirs
#include "pg_getopt.h"
-#include "fe_utils/logging.h"
+#include "common/logging.h"
#include "access/xlog_internal.h"
#include "access/xlog_internal.h"
#include "common/file_perm.h"
#include "common/file_utils.h"
+#include "common/logging.h"
#include "common/string.h"
-#include "fe_utils/logging.h"
#include "fe_utils/string_utils.h"
#include "getopt_long.h"
#include "libpq-fe.h"
#include <unistd.h>
#include "common/file_perm.h"
-#include "fe_utils/logging.h"
+#include "common/logging.h"
#include "libpq-fe.h"
#include "access/xlog_internal.h"
#include "getopt_long.h"
#include "access/xlog_internal.h"
#include "common/file_perm.h"
#include "common/fe_memutils.h"
-#include "fe_utils/logging.h"
+#include "common/logging.h"
#include "getopt_long.h"
#include "libpq-fe.h"
#include "libpq/pqsignal.h"
#include "libpq-fe.h"
#include "access/xlog_internal.h"
#include "common/file_utils.h"
-#include "fe_utils/logging.h"
+#include "common/logging.h"
/* fd and filename for currently open WAL file */
#include "access/xlog_internal.h"
#include "common/fe_memutils.h"
#include "common/file_perm.h"
+#include "common/logging.h"
#include "datatype/timestamp.h"
#include "fe_utils/connect.h"
-#include "fe_utils/logging.h"
#include "port/pg_bswap.h"
#include "pqexpbuffer.h"
top_builddir = ../../..
include $(top_builddir)/src/Makefile.global
-LDFLAGS_INTERNAL += -L$(top_builddir)/src/fe_utils -lpgfeutils
-
OBJS= pg_checksums.o $(WIN32RES)
all: pg_checksums
-pg_checksums: $(OBJS) | submake-libpgport submake-libpgfeutils
+pg_checksums: $(OBJS) | submake-libpgport
$(CC) $(CFLAGS) $^ $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) -o $@$(X)
install: all installdirs
#include "common/controldata_utils.h"
#include "common/file_perm.h"
#include "common/file_utils.h"
-#include "fe_utils/logging.h"
+#include "common/logging.h"
#include "getopt_long.h"
#include "pg_getopt.h"
#include "storage/bufpage.h"
top_builddir = ../../..
include $(top_builddir)/src/Makefile.global
-LDFLAGS_INTERNAL += -L$(top_builddir)/src/fe_utils -lpgfeutils
-
OBJS= pg_controldata.o $(WIN32RES)
all: pg_controldata
-pg_controldata: $(OBJS) | submake-libpgport submake-libpgfeutils
+pg_controldata: $(OBJS) | submake-libpgport
$(CC) $(CFLAGS) $^ $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) -o $@$(X)
install: all installdirs
#include "access/xlog_internal.h"
#include "catalog/pg_control.h"
#include "common/controldata_utils.h"
-#include "fe_utils/logging.h"
+#include "common/logging.h"
#include "pg_getopt.h"
#include "getopt_long.h"
top_builddir = ../../..
include $(top_builddir)/src/Makefile.global
-LDFLAGS_INTERNAL += -L$(top_builddir)/src/fe_utils -lpgfeutils
-
# On Windows, we need to link with libpq, just for use of pqexpbuffer;
# but let's not pull that in on platforms where we don't need it.
ifeq ($(PORTNAME), win32)
all: pg_ctl
-pg_ctl: $(OBJS) | submake-libpgport submake-libpgfeutils $(SUBMAKE_LIBPQ)
+pg_ctl: $(OBJS) | submake-libpgport $(SUBMAKE_LIBPQ)
$(CC) $(CFLAGS) $(OBJS) $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) -o $@$(X)
install: all installdirs
#include "catalog/pg_control.h"
#include "common/controldata_utils.h"
#include "common/file_perm.h"
-#include "fe_utils/logging.h"
+#include "common/logging.h"
#include "getopt_long.h"
#include "utils/pidfile.h"
#include <ctype.h>
#include "catalog/pg_class_d.h"
-#include "fe_utils/logging.h"
#include "fe_utils/string_utils.h"
#include "pg_backup_db.h"
#include "pg_backup_utils.h"
#include "dumputils.h"
-#include "fe_utils/logging.h"
#include "fe_utils/string_utils.h"
#include "libpq/libpq-fs.h"
#include "parallel.h"
#include "pg_backup_utils.h"
#include "common/file_utils.h"
-#include "fe_utils/logging.h"
+
/*--------
* Routines in the format interface
*/
#include "postgres_fe.h"
-#include "dumputils.h"
#include "fe_utils/connect.h"
-#include "fe_utils/logging.h"
#include "fe_utils/string_utils.h"
+
+#include "dumputils.h"
#include "parallel.h"
#include "pg_backup_archiver.h"
#include "pg_backup_db.h"
#ifndef PG_BACKUP_UTILS_H
#define PG_BACKUP_UTILS_H
-#include "fe_utils/logging.h"
+#include "common/logging.h"
typedef enum /* bits returned by set_dump_section */
{
#include "pg_backup_utils.h"
#include "pg_dump.h"
#include "fe_utils/connect.h"
-#include "fe_utils/logging.h"
#include "fe_utils/string_utils.h"
#include "pg_dump.h"
#include "catalog/pg_class_d.h"
-#include "fe_utils/logging.h"
/*
* Sort priority for database object types.
#include "dumputils.h"
#include "pg_backup.h"
#include "common/file_utils.h"
+#include "common/logging.h"
#include "fe_utils/connect.h"
-#include "fe_utils/logging.h"
#include "fe_utils/string_utils.h"
/* version string we expect back from pg_dump */
#include "parallel.h"
#include "pg_backup_utils.h"
-#include "fe_utils/logging.h"
-
static void usage(const char *progname);
top_builddir = ../../..
include $(top_builddir)/src/Makefile.global
-LDFLAGS_INTERNAL += -L$(top_builddir)/src/fe_utils -lpgfeutils
-
OBJS= pg_resetwal.o $(WIN32RES)
all: pg_resetwal
-pg_resetwal: $(OBJS) | submake-libpgport submake-libpgfeutils
+pg_resetwal: $(OBJS) | submake-libpgport
$(CC) $(CFLAGS) $^ $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) -o $@$(X)
install: all installdirs
#include "common/controldata_utils.h"
#include "common/fe_memutils.h"
#include "common/file_perm.h"
+#include "common/logging.h"
#include "common/restricted_token.h"
-#include "fe_utils/logging.h"
#include "storage/large_object.h"
#include "pg_getopt.h"
#include "getopt_long.h"
include $(top_builddir)/src/Makefile.global
override CPPFLAGS := -I$(libpq_srcdir) -DFRONTEND $(CPPFLAGS)
-LDFLAGS_INTERNAL += -L$(top_builddir)/src/fe_utils -lpgfeutils $(libpq_pgport)
+LDFLAGS_INTERNAL += $(libpq_pgport)
OBJS = pg_rewind.o parsexlog.o xlogreader.o datapagemap.o timeline.o \
fetch.o file_ops.o copy_fetch.o libpq_fetch.o filemap.o \
all: pg_rewind
-pg_rewind: $(OBJS) | submake-libpq submake-libpgport submake-libpgfeutils
+pg_rewind: $(OBJS) | submake-libpq submake-libpgport
$(CC) $(CFLAGS) $^ $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) -o $@$(X)
xlogreader.c: % : $(top_srcdir)/src/backend/access/transam/%
#include "datapagemap.h"
-#include "fe_utils/logging.h"
+#include "common/logging.h"
struct datapagemap_iterator
{
#include "storage/block.h"
#include "storage/relfilenode.h"
-#include "fe_utils/logging.h"
+#include "common/logging.h"
/* Configuration options */
extern char *datadir_target;
top_builddir = ../../..
include $(top_builddir)/src/Makefile.global
-LDFLAGS_INTERNAL += -L$(top_builddir)/src/fe_utils -lpgfeutils
-
OBJS = pg_test_fsync.o $(WIN32RES)
all: pg_test_fsync
-pg_test_fsync: $(OBJS) | submake-libpgport submake-libpgfeutils
+pg_test_fsync: $(OBJS) | submake-libpgport
$(CC) $(CFLAGS) $^ $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) -o $@$(X)
install: all installdirs
#include "getopt_long.h"
#include "access/xlogdefs.h"
-#include "fe_utils/logging.h"
+#include "common/logging.h"
/*
#include "pg_upgrade.h"
#include "catalog/pg_class_d.h"
#include "common/file_perm.h"
+#include "common/logging.h"
#include "common/restricted_token.h"
-#include "fe_utils/logging.h"
#include "fe_utils/string_utils.h"
#ifdef HAVE_LANGINFO_H
$(RMGRDESCOBJS) $(WIN32RES)
override CPPFLAGS := -DFRONTEND $(CPPFLAGS)
-LDFLAGS_INTERNAL += -L$(top_builddir)/src/fe_utils -lpgfeutils
RMGRDESCSOURCES = $(sort $(notdir $(wildcard $(top_srcdir)/src/backend/access/rmgrdesc/*desc.c)))
RMGRDESCOBJS = $(patsubst %.c,%.o,$(RMGRDESCSOURCES))
all: pg_waldump
-pg_waldump: $(OBJS) | submake-libpgport submake-libpgfeutils
+pg_waldump: $(OBJS) | submake-libpgport
$(CC) $(CFLAGS) $^ $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) -o $@$(X)
xlogreader.c: % : $(top_srcdir)/src/backend/access/transam/%
#include "access/xlog_internal.h"
#include "access/transam.h"
#include "common/fe_memutils.h"
-#include "fe_utils/logging.h"
+#include "common/logging.h"
#include "getopt_long.h"
#include "rmgrdesc.h"
#include "postgres_fe.h"
#include "common/int.h"
+#include "common/logging.h"
#include "fe_utils/conditional.h"
-#include "fe_utils/logging.h"
#include "getopt_long.h"
#include "libpq-fe.h"
#include "portability/instr_time.h"
#include "libpq-fe.h"
#include "pqexpbuffer.h"
-#include "fe_utils/logging.h"
+#include "common/logging.h"
+#include "fe_utils/print.h"
#include "fe_utils/string_utils.h"
#include "common.h"
#include "input.h"
#include "large_obj.h"
#include "mainloop.h"
-#include "fe_utils/print.h"
#include "psqlscanslash.h"
#include "settings.h"
#include "variables.h"
* src/bin/psql/common.c
*/
#include "postgres_fe.h"
-#include "common.h"
#include <ctype.h>
#include <limits.h>
#include <win32.h>
#endif
-#include "fe_utils/logging.h"
+#include "common/logging.h"
+#include "fe_utils/mbprint.h"
#include "fe_utils/string_utils.h"
#include "portability/instr_time.h"
-#include "settings.h"
#include "command.h"
+#include "common.h"
#include "copy.h"
#include "crosstabview.h"
-#include "fe_utils/mbprint.h"
+#include "settings.h"
static bool DescribeQuery(const char *query, double *elapsed_msec);
#include "prompt.h"
#include "stringutils.h"
-#include "fe_utils/logging.h"
+#include "common/logging.h"
/*
* parse_slash_copy
#include "psqlscanslash.h"
#include "settings.h"
-#include "fe_utils/logging.h"
+#include "common/logging.h"
/*
* Value/position from the resultset that goes into the horizontal or vertical
#include "catalog/pg_cast_d.h"
#include "catalog/pg_class_d.h"
#include "catalog/pg_default_acl_d.h"
-#include "fe_utils/logging.h"
+
+#include "common/logging.h"
+#include "fe_utils/mbprint.h"
+#include "fe_utils/print.h"
#include "fe_utils/string_utils.h"
#include "common.h"
#include "describe.h"
-#include "fe_utils/mbprint.h"
-#include "fe_utils/print.h"
#include "settings.h"
#include "variables.h"
#include <termios.h>
#endif
-#include "common.h"
+#include "common/logging.h"
#include "common/username.h"
+
+#include "common.h"
#include "help.h"
#include "input.h"
#include "settings.h"
#include "sql_help.h"
-#include "fe_utils/logging.h"
-
/*
* PLEASE:
* If you change something in this file, also make the same changes
#include "tab-complete.h"
#include "common.h"
-#include "fe_utils/logging.h"
+#include "common/logging.h"
#ifndef WIN32
#define PSQLHISTORY ".psql_history"
#include "settings.h"
#include "common.h"
-#include "fe_utils/logging.h"
+#include "common/logging.h"
static void print_lo_result(const char *fmt,...) pg_attribute_printf(1, 2);
#include "prompt.h"
#include "settings.h"
-#include "fe_utils/logging.h"
+#include "common/logging.h"
#include "mb/pg_wchar.h"
#include "postgres_fe.h"
#include "psqlscanslash.h"
+#include "common/logging.h"
#include "fe_utils/conditional.h"
-#include "fe_utils/logging.h"
#include "libpq-fe.h"
}
#include "getopt_long.h"
+#include "common/logging.h"
+#include "fe_utils/print.h"
+
#include "command.h"
#include "common.h"
#include "describe.h"
#include "help.h"
#include "input.h"
#include "mainloop.h"
-#include "fe_utils/logging.h"
-#include "fe_utils/print.h"
#include "settings.h"
#include "common.h"
#include "variables.h"
-#include "fe_utils/logging.h"
+#include "common/logging.h"
/*
#include "postgres_fe.h"
#include "common.h"
-#include "fe_utils/logging.h"
+#include "common/logging.h"
#include "fe_utils/simple_list.h"
#include "fe_utils/string_utils.h"
#include <unistd.h>
#include "common.h"
+#include "common/logging.h"
#include "fe_utils/connect.h"
-#include "fe_utils/logging.h"
#include "fe_utils/string_utils.h"
#include "postgres_fe.h"
#include "common.h"
-#include "fe_utils/logging.h"
+#include "common/logging.h"
#include "fe_utils/string_utils.h"
#include "postgres_fe.h"
#include "common.h"
-#include "fe_utils/logging.h"
+#include "common/logging.h"
#include "fe_utils/simple_list.h"
#include "fe_utils/string_utils.h"
#include "postgres_fe.h"
#include "common.h"
-#include "fe_utils/logging.h"
+#include "common/logging.h"
#include "fe_utils/string_utils.h"
#include "postgres_fe.h"
#include "common.h"
-#include "fe_utils/logging.h"
+#include "common/logging.h"
#include "fe_utils/string_utils.h"
#include "postgres_fe.h"
#include "common.h"
-#include "fe_utils/logging.h"
+#include "common/logging.h"
#define DEFAULT_CONNECT_TIMEOUT "3"
#include "postgres_fe.h"
#include "common.h"
-#include "fe_utils/logging.h"
+#include "common/logging.h"
#include "fe_utils/simple_list.h"
#include "fe_utils/string_utils.h"
#include "catalog/pg_class_d.h"
#include "common.h"
+#include "common/logging.h"
#include "fe_utils/connect.h"
-#include "fe_utils/logging.h"
#include "fe_utils/simple_list.h"
#include "fe_utils/string_utils.h"
endif
# A few files are currently only built for frontend, not server
-OBJS_FRONTEND = $(OBJS_COMMON) fe_memutils.o file_utils.o restricted_token.o
+# (Mkvcbuild.pm has a copy of this list, too)
+OBJS_FRONTEND = $(OBJS_COMMON) fe_memutils.o file_utils.o \
+ logging.o restricted_token.o
# foo.o, foo_shlib.o, and foo_srv.o are all built from foo.c
OBJS_SHLIB = $(OBJS_FRONTEND:%.o=%_shlib.o)
#include "common/controldata_utils.h"
#include "common/file_perm.h"
#ifdef FRONTEND
-#include "fe_utils/logging.h"
+#include "common/logging.h"
#endif
#include "port/pg_crc32c.h"
#include <unistd.h>
#include "common/file_utils.h"
-#include "fe_utils/logging.h"
+#include "common/logging.h"
/* Define PG_FLUSH_DATA_WORKS if we have an implementation for pg_flush_data */
/*-------------------------------------------------------------------------
* Logging framework for frontend programs
*
- * Copyright (c) 2018, PostgreSQL Global Development Group
+ * Copyright (c) 2018-2019, PostgreSQL Global Development Group
*
- * src/fe_utils/logging.c
+ * src/common/logging.c
*
*-------------------------------------------------------------------------
*/
#include <unistd.h>
-#include "fe_utils/logging.h"
-
-static const char *progname;
+#include "common/logging.h"
enum pg_log_level __pg_log_level;
+
+static const char *progname;
static int log_flags;
-void (*log_pre_callback)(void);
-void (*log_locus_callback)(const char **, uint64 *);
+
+static void (*log_pre_callback)(void);
+static void (*log_locus_callback)(const char **, uint64 *);
static const char *sgr_error = NULL;
static const char *sgr_warning = NULL;
Assert(fmt);
Assert(fmt[strlen(fmt) - 1] != '\n');
+ /*
+ * Flush stdout before output to stderr, to ensure sync even when stdout
+ * is buffered.
+ */
fflush(stdout);
+
if (log_pre_callback)
log_pre_callback();
vsnprintf(buf, required_len, fmt, ap);
/* strip one newline, for PQerrorMessage() */
- if (buf[required_len - 2] == '\n')
+ if (required_len >= 2 && buf[required_len - 2] == '\n')
buf[required_len - 2] = '\0';
fprintf(stderr, "%s\n", buf);
+
free(buf);
}
#ifndef FRONTEND
#define pg_log_warning(...) elog(WARNING, __VA_ARGS__)
#else
-#include "fe_utils/logging.h"
+#include "common/logging.h"
#endif
/*
#include "postgres_fe.h"
+#include "common/logging.h"
#include "common/restricted_token.h"
-#include "fe_utils/logging.h"
#ifdef WIN32
#ifndef FRONTEND
#define pg_log_warning(...) elog(WARNING, __VA_ARGS__)
#else
-#include "fe_utils/logging.h"
+#include "common/logging.h"
#endif
override CPPFLAGS := -DFRONTEND -I$(libpq_srcdir) $(CPPFLAGS)
-OBJS = logging.o mbprint.o print.o psqlscan.o simple_list.o string_utils.o conditional.o
+OBJS = mbprint.o print.o psqlscan.o simple_list.o string_utils.o conditional.o
all: libpgfeutils.a
*/
#include "postgres_fe.h"
-#include "fe_utils/logging.h"
+#include "common/logging.h"
#include "fe_utils/psqlscan.h"
#include "libpq-fe.h"
/*-------------------------------------------------------------------------
* Logging framework for frontend programs
*
- * Copyright (c) 2018, PostgreSQL Global Development Group
+ * Copyright (c) 2018-2019, PostgreSQL Global Development Group
*
- * src/include/fe_utils/logging.h
+ * src/include/common/logging.h
*
*-------------------------------------------------------------------------
*/
-#ifndef FE_UTILS_LOGGING_H
-#define FE_UTILS_LOGGING_H
+#ifndef COMMON_LOGGING_H
+#define COMMON_LOGGING_H
/*
* Log levels are informational only. They do not affect program flow.
if (unlikely(__pg_log_level <= PG_LOG_DEBUG)) pg_log_generic(PG_LOG_DEBUG, __VA_ARGS__); \
} while(0)
-#endif /* FE_UTILS_LOGGING_H */
+#endif /* COMMON_LOGGING_H */
'-DDLSUFFIX="$(DLSUFFIX)"' \
$(CPPFLAGS)
-LDFLAGS_INTERNAL += -L$(top_builddir)/src/fe_utils -lpgfeutils
-
# default encoding for regression tests
ENCODING = SQL_ASCII
errhint:1:c-format \
errcontext:1:c-format
-FRONTEND_COMMON_GETTEXT_FILES = $(top_srcdir)/src/fe_utils/logging.c
+FRONTEND_COMMON_GETTEXT_FILES = $(top_srcdir)/src/common/logging.c
FRONTEND_COMMON_GETTEXT_TRIGGERS = \
pg_log_fatal pg_log_error pg_log_warning pg_log_info pg_log_generic:2 pg_log_generic_v:2
include $(top_builddir)/src/Makefile.global
override CPPFLAGS := -I$(srcdir) -I$(libpq_srcdir) -I$(srcdir)/../regress $(CPPFLAGS)
-LDFLAGS_INTERNAL += -L$(top_builddir)/src/fe_utils -lpgfeutils
OBJS = specparse.o isolationtester.o $(WIN32RES)
pg_isolation_regress$(X): isolation_main.o pg_regress.o $(WIN32RES)
$(CC) $(CFLAGS) $^ $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) -o $@
-isolationtester$(X): $(OBJS) | submake-libpq submake-libpgport submake-libpgfeutils
+isolationtester$(X): $(OBJS) | submake-libpq submake-libpgport
$(CC) $(CFLAGS) $^ $(libpq_pgport) $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) -o $@
distprep: specparse.c specscanner.c
MAXCONNOPT += --max-connections=$(MAX_CONNECTIONS)
endif
-LDFLAGS_INTERNAL += -L$(top_builddir)/src/fe_utils -lpgfeutils
-
# stuff to pass into build of pg_regress
EXTRADEFS = '-DHOST_TUPLE="$(host_tuple)"' \
'-DSHELLPROG="$(SHELL)"' \
all: pg_regress$(X)
-pg_regress$(X): pg_regress.o pg_regress_main.o $(WIN32RES) | submake-libpgport submake-libpgfeutils
+pg_regress$(X): pg_regress.o pg_regress_main.o $(WIN32RES) | submake-libpgport
$(CC) $(CFLAGS) $^ $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) -o $@
# dependencies ensure that path changes propagate
#include "pg_regress.h"
+#include "common/logging.h"
#include "common/restricted_token.h"
#include "common/username.h"
-#include "fe_utils/logging.h"
#include "getopt_long.h"
#include "libpq/pqcomm.h" /* needed for UNIXSOCK_PATH() */
#include "pg_config_paths.h"
our @pgcommonfrontendfiles = (
@pgcommonallfiles, qw(fe_memutils.c file_utils.c
- restricted_token.c));
+ logging.c restricted_token.c));
our @pgcommonbkndfiles = @pgcommonallfiles;
our @pgfeutilsfiles = qw(
- conditional.c logging.c mbprint.c print.c psqlscan.l psqlscan.c simple_list.c string_utils.c);
+ conditional.c mbprint.c print.c psqlscan.l psqlscan.c simple_list.c string_utils.c);
$libpgport = $solution->AddProject('libpgport', 'lib', 'misc');
$libpgport->AddDefine('FRONTEND');
$pgregress_ecpg->AddDefine('HOST_TUPLE="i686-pc-win32vc"');
$pgregress_ecpg->AddLibrary('ws2_32.lib');
$pgregress_ecpg->AddDirResourceFile('src/interfaces/ecpg/test');
- $pgregress_ecpg->AddReference($libpgfeutils, $libpgcommon, $libpgport);
+ $pgregress_ecpg->AddReference($libpgcommon, $libpgport);
my $isolation_tester =
$solution->AddProject('isolationtester', 'exe', 'misc');
$pgregress_isolation->AddDefine('HOST_TUPLE="i686-pc-win32vc"');
$pgregress_isolation->AddLibrary('ws2_32.lib');
$pgregress_isolation->AddDirResourceFile('src/test/isolation');
- $pgregress_isolation->AddReference($libpgfeutils, $libpgcommon, $libpgport);
+ $pgregress_isolation->AddReference($libpgcommon, $libpgport);
# src/bin
my $D;
$pgregress->AddDefine('HOST_TUPLE="i686-pc-win32vc"');
$pgregress->AddLibrary('ws2_32.lib');
$pgregress->AddDirResourceFile('src/test/regress');
- $pgregress->AddReference($libpgfeutils, $libpgcommon, $libpgport);
+ $pgregress->AddReference($libpgcommon, $libpgport);
# fix up pg_waldump once it's been set up
# files symlinked on Unix are copied on windows