Move logging.h and logging.c from src/fe_utils/ to src/common/.

The original placement of this module in src/fe_utils/ is ill-considered,
because several src/common/ modules have dependencies on it, meaning that
libpgcommon and libpgfeutils now have mutual dependencies.  That makes it
pointless to have distinct libraries at all.  The intended design is that
libpgcommon is lower-level than libpgfeutils, so only dependencies from
the latter to the former are acceptable.

We already have the precedent that fe_memutils and a couple of other
modules in src/common/ are frontend-only, so it's not stretching anything
out of whack to treat logging.c as a frontend-only module in src/common/.
To the extent that such modules help provide a common frontend/backend
environment for the rest of common/ to use, it's a reasonable design.
(logging.c does not yet provide an ereport() emulation, but one can
dream.)

Hence, move these files over, and revert basically all of the build-system
changes made by commit cc8d41511.  There are no places that need to grow
new dependencies on libpgcommon, further reinforcing the idea that this
is the right solution.

Discussion: https://postgr.es/m/a912ffff-f6e4-778a-c86a-cf5c47a12933@2ndquadrant.com
This commit is contained in:
Tom Lane 2019-05-14 14:19:49 -04:00
parent b71dad22ce
commit fc9a62af3f
71 changed files with 102 additions and 115 deletions

View File

@ -65,9 +65,9 @@
#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"

View File

@ -7,13 +7,11 @@ subdir = src/bin/pg_archivecleanup
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

View File

@ -17,7 +17,7 @@
#include "pg_getopt.h"
#include "fe_utils/logging.h"
#include "common/logging.h"
#include "access/xlog_internal.h"

View File

@ -29,8 +29,8 @@
#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"

View File

@ -20,7 +20,7 @@
#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"

View File

@ -25,7 +25,7 @@
#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"

View File

@ -27,7 +27,7 @@
#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 */

View File

@ -24,9 +24,9 @@
#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"

View File

@ -15,13 +15,11 @@ subdir = src/bin/pg_checksums
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

View File

@ -23,7 +23,7 @@
#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"

View File

@ -15,13 +15,11 @@ subdir = src/bin/pg_controldata
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

View File

@ -25,7 +25,7 @@
#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"

View File

@ -16,8 +16,6 @@ subdir = src/bin/pg_ctl
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)
@ -30,7 +28,7 @@ OBJS= pg_ctl.o $(WIN32RES)
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

View File

@ -26,7 +26,7 @@
#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"

View File

@ -22,7 +22,6 @@
#include <ctype.h>
#include "catalog/pg_class_d.h"
#include "fe_utils/logging.h"
#include "fe_utils/string_utils.h"

View File

@ -35,7 +35,6 @@
#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"

View File

@ -29,7 +29,7 @@
#include "parallel.h"
#include "pg_backup_utils.h"
#include "common/file_utils.h"
#include "fe_utils/logging.h"
/*--------
* Routines in the format interface

View File

@ -11,10 +11,10 @@
*/
#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"

View File

@ -15,7 +15,7 @@
#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 */
{

View File

@ -63,7 +63,6 @@
#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"

View File

@ -20,7 +20,6 @@
#include "pg_dump.h"
#include "catalog/pg_class_d.h"
#include "fe_utils/logging.h"
/*
* Sort priority for database object types.

View File

@ -23,8 +23,8 @@
#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 */

View File

@ -51,8 +51,6 @@
#include "parallel.h"
#include "pg_backup_utils.h"
#include "fe_utils/logging.h"
static void usage(const char *progname);

View File

@ -15,13 +15,11 @@ subdir = src/bin/pg_resetwal
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

View File

@ -52,8 +52,8 @@
#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"

View File

@ -16,7 +16,7 @@ top_builddir = ../../..
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 \
@ -26,7 +26,7 @@ EXTRA_CLEAN = xlogreader.c
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/%

View File

@ -14,7 +14,7 @@
#include "datapagemap.h"
#include "fe_utils/logging.h"
#include "common/logging.h"
struct datapagemap_iterator
{

View File

@ -17,7 +17,7 @@
#include "storage/block.h"
#include "storage/relfilenode.h"
#include "fe_utils/logging.h"
#include "common/logging.h"
/* Configuration options */
extern char *datadir_target;

View File

@ -7,13 +7,11 @@ subdir = src/bin/pg_test_fsync
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

View File

@ -14,7 +14,7 @@
#include "getopt_long.h"
#include "access/xlogdefs.h"
#include "fe_utils/logging.h"
#include "common/logging.h"
/*

View File

@ -40,8 +40,8 @@
#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

View File

@ -11,7 +11,6 @@ OBJS = pg_waldump.o compat.o xlogreader.o rmgrdesc.o \
$(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))
@ -19,7 +18,7 @@ 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/%

View File

@ -21,7 +21,7 @@
#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"

View File

@ -33,8 +33,8 @@
#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"

View File

@ -28,7 +28,8 @@
#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"
@ -39,7 +40,6 @@
#include "input.h"
#include "large_obj.h"
#include "mainloop.h"
#include "fe_utils/print.h"
#include "psqlscanslash.h"
#include "settings.h"
#include "variables.h"

View File

@ -6,7 +6,6 @@
* src/bin/psql/common.c
*/
#include "postgres_fe.h"
#include "common.h"
#include <ctype.h>
#include <limits.h>
@ -19,15 +18,16 @@
#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);

View File

@ -24,7 +24,7 @@
#include "prompt.h"
#include "stringutils.h"
#include "fe_utils/logging.h"
#include "common/logging.h"
/*
* parse_slash_copy

View File

@ -13,7 +13,7 @@
#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

View File

@ -18,13 +18,14 @@
#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"

View File

@ -21,15 +21,15 @@
#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

View File

@ -18,7 +18,7 @@
#include "tab-complete.h"
#include "common.h"
#include "fe_utils/logging.h"
#include "common/logging.h"
#ifndef WIN32
#define PSQLHISTORY ".psql_history"

View File

@ -11,7 +11,7 @@
#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);

View File

@ -14,7 +14,7 @@
#include "prompt.h"
#include "settings.h"
#include "fe_utils/logging.h"
#include "common/logging.h"
#include "mb/pg_wchar.h"

View File

@ -19,8 +19,8 @@
#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"
}

View File

@ -16,14 +16,15 @@
#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"

View File

@ -10,7 +10,7 @@
#include "common.h"
#include "variables.h"
#include "fe_utils/logging.h"
#include "common/logging.h"
/*

View File

@ -11,7 +11,7 @@
#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"

View File

@ -18,8 +18,8 @@
#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"

View File

@ -12,7 +12,7 @@
#include "postgres_fe.h"
#include "common.h"
#include "fe_utils/logging.h"
#include "common/logging.h"
#include "fe_utils/string_utils.h"

View File

@ -12,7 +12,7 @@
#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"

View File

@ -12,7 +12,7 @@
#include "postgres_fe.h"
#include "common.h"
#include "fe_utils/logging.h"
#include "common/logging.h"
#include "fe_utils/string_utils.h"

View File

@ -12,7 +12,7 @@
#include "postgres_fe.h"
#include "common.h"
#include "fe_utils/logging.h"
#include "common/logging.h"
#include "fe_utils/string_utils.h"

View File

@ -11,7 +11,7 @@
#include "postgres_fe.h"
#include "common.h"
#include "fe_utils/logging.h"
#include "common/logging.h"
#define DEFAULT_CONNECT_TIMEOUT "3"

View File

@ -11,7 +11,7 @@
#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"

View File

@ -19,8 +19,8 @@
#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"

View File

@ -59,7 +59,9 @@ OBJS_COMMON += sha2.o
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)

View File

@ -29,7 +29,7 @@
#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"

View File

@ -20,7 +20,7 @@
#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 */

View File

@ -1,9 +1,9 @@
/*-------------------------------------------------------------------------
* 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
*
*-------------------------------------------------------------------------
*/
@ -11,14 +11,15 @@
#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;
@ -146,7 +147,12 @@ pg_log_generic_v(enum pg_log_level level, const char * pg_restrict fmt, va_list
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();
@ -220,9 +226,10 @@ pg_log_generic_v(enum pg_log_level level, const char * pg_restrict fmt, va_list
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);
}

View File

@ -23,7 +23,7 @@
#ifndef FRONTEND
#define pg_log_warning(...) elog(WARNING, __VA_ARGS__)
#else
#include "fe_utils/logging.h"
#include "common/logging.h"
#endif
/*

View File

@ -20,8 +20,8 @@
#include "postgres_fe.h"
#include "common/logging.h"
#include "common/restricted_token.h"
#include "fe_utils/logging.h"
#ifdef WIN32

View File

@ -23,7 +23,7 @@
#ifndef FRONTEND
#define pg_log_warning(...) elog(WARNING, __VA_ARGS__)
#else
#include "fe_utils/logging.h"
#include "common/logging.h"
#endif

View File

@ -19,7 +19,7 @@ include $(top_builddir)/src/Makefile.global
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

View File

@ -34,7 +34,7 @@
*/
#include "postgres_fe.h"
#include "fe_utils/logging.h"
#include "common/logging.h"
#include "fe_utils/psqlscan.h"
#include "libpq-fe.h"

View File

@ -1,14 +1,14 @@
/*-------------------------------------------------------------------------
* 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.
@ -92,4 +92,4 @@ void pg_log_generic_v(enum pg_log_level level, const char * pg_restrict fmt, va_
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 */

View File

@ -15,8 +15,6 @@ override CPPFLAGS := \
'-DDLSUFFIX="$(DLSUFFIX)"' \
$(CPPFLAGS)
LDFLAGS_INTERNAL += -L$(top_builddir)/src/fe_utils -lpgfeutils
# default encoding for regression tests
ENCODING = SQL_ASCII

View File

@ -67,7 +67,7 @@ BACKEND_COMMON_GETTEXT_FLAGS = \
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

View File

@ -10,7 +10,6 @@ top_builddir = ../../..
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)
@ -32,7 +31,7 @@ pg_regress.o: | submake-regress
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

View File

@ -23,8 +23,6 @@ ifdef MAX_CONNECTIONS
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)"' \
@ -38,7 +36,7 @@ EXTRADEFS = '-DHOST_TUPLE="$(host_tuple)"' \
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

View File

@ -31,9 +31,9 @@
#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"

View File

@ -136,12 +136,12 @@ sub mkvcbuild
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');
@ -321,7 +321,7 @@ sub mkvcbuild
$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');
@ -347,7 +347,7 @@ sub mkvcbuild
$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;
@ -826,7 +826,7 @@ sub mkvcbuild
$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