From a7b5573d665c8a37fad9bc69f44c5b4e8760a73b Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Tue, 16 Aug 2016 12:49:30 -0400 Subject: [PATCH] Remove separate version numbering for ecpg preprocessor. Once upon a time, it made sense for the ecpg preprocessor to have its own version number, because it used a manually-maintained grammar that wasn't always in sync with the core grammar. But those days are thankfully long gone, leaving only a maintenance nuisance behind. Let's use the PG v10 version numbering changeover as an excuse to get rid of the ecpg version number and just have ecpg identify itself by PG_VERSION. From the user's standpoint, ecpg will go from "4.12" in the 9.6 branch to "10" in the 10 branch, so there's no failure of monotonicity. Discussion: <1471332659.4410.67.camel@postgresql.org> --- src/interfaces/ecpg/preproc/Makefile | 9 ++------- src/interfaces/ecpg/preproc/ecpg.c | 10 +++++----- src/tools/RELEASE_CHANGES | 4 +--- src/tools/msvc/Mkvcbuild.pm | 3 --- 4 files changed, 8 insertions(+), 18 deletions(-) diff --git a/src/interfaces/ecpg/preproc/Makefile b/src/interfaces/ecpg/preproc/Makefile index 7dd4b2ffdb..b5dbdd6150 100644 --- a/src/interfaces/ecpg/preproc/Makefile +++ b/src/interfaces/ecpg/preproc/Makefile @@ -15,16 +15,11 @@ subdir = src/interfaces/ecpg/preproc top_builddir = ../../../.. include $(top_builddir)/src/Makefile.global -MAJOR_VERSION= 4 -MINOR_VERSION= 13 -PATCHLEVEL=0 - override CPPFLAGS := -I../include -I$(top_srcdir)/src/interfaces/ecpg/include \ - -I. -I$(srcdir) -DMAJOR_VERSION=$(MAJOR_VERSION) \ - -DMINOR_VERSION=$(MINOR_VERSION) -DPATCHLEVEL=$(PATCHLEVEL) \ + -I. -I$(srcdir) -DECPG_COMPILE \ $(CPPFLAGS) -override CFLAGS += $(PTHREAD_CFLAGS) -DECPG_COMPILE +override CFLAGS += $(PTHREAD_CFLAGS) OBJS= preproc.o pgc.o type.o ecpg.o output.o parser.o \ keywords.o c_keywords.o ecpg_keywords.o ../ecpglib/typename.o descriptor.o variable.o \ diff --git a/src/interfaces/ecpg/preproc/ecpg.c b/src/interfaces/ecpg/preproc/ecpg.c index c7fd034bc1..3ce9d04bcc 100644 --- a/src/interfaces/ecpg/preproc/ecpg.c +++ b/src/interfaces/ecpg/preproc/ecpg.c @@ -150,8 +150,7 @@ main(int argc, char *const argv[]) switch (c) { case ECPG_GETOPT_LONG_VERSION: - printf("ecpg (PostgreSQL %s) %d.%d.%d\n", PG_VERSION, - MAJOR_VERSION, MINOR_VERSION, PATCHLEVEL); + printf("ecpg %s\n", PG_VERSION); exit(0); case ECPG_GETOPT_LONG_HELP: help(progname); @@ -264,8 +263,9 @@ main(int argc, char *const argv[]) if (verbose) { - fprintf(stderr, _("%s, the PostgreSQL embedded C preprocessor, version %d.%d.%d\n"), - progname, MAJOR_VERSION, MINOR_VERSION, PATCHLEVEL); + fprintf(stderr, + _("%s, the PostgreSQL embedded C preprocessor, version %s\n"), + progname, PG_VERSION); fprintf(stderr, _("EXEC SQL INCLUDE ... search starts here:\n")); for (ip = include_paths; ip != NULL; ip = ip->next) fprintf(stderr, " %s\n", ip->path); @@ -440,7 +440,7 @@ main(int argc, char *const argv[]) if (regression_mode) fprintf(yyout, "/* Processed by ecpg (regression mode) */\n"); else - fprintf(yyout, "/* Processed by ecpg (%d.%d.%d) */\n", MAJOR_VERSION, MINOR_VERSION, PATCHLEVEL); + fprintf(yyout, "/* Processed by ecpg (%s) */\n", PG_VERSION); if (header_mode == false) { diff --git a/src/tools/RELEASE_CHANGES b/src/tools/RELEASE_CHANGES index ad49220592..e6e294b07e 100644 --- a/src/tools/RELEASE_CHANGES +++ b/src/tools/RELEASE_CHANGES @@ -80,13 +80,11 @@ Starting a New Development Cycle * Add version tag to src/tools/git_changelog * Bump minor library versions, major if appropriate (see below) - o Look for SO_MINOR_VERSION and MINOR_VERSION macros in + o Look for SO_MINOR_VERSION macros in src/interfaces/ecpg/compatlib/Makefile src/interfaces/ecpg/ecpglib/Makefile src/interfaces/ecpg/pgtypeslib/Makefile - src/interfaces/ecpg/preproc/Makefile src/interfaces/libpq/Makefile - src/tools/msvc/Mkvcbuild.pm Creating Back-Branch Release Notes diff --git a/src/tools/msvc/Mkvcbuild.pm b/src/tools/msvc/Mkvcbuild.pm index 16180f68ed..da4d9847fc 100644 --- a/src/tools/msvc/Mkvcbuild.pm +++ b/src/tools/msvc/Mkvcbuild.pm @@ -269,9 +269,6 @@ sub mkvcbuild $ecpg->AddIncludeDir('src/interfaces/libpq'); $ecpg->AddPrefixInclude('src/interfaces/ecpg/preproc'); $ecpg->AddFiles('src/interfaces/ecpg/preproc', 'pgc.l', 'preproc.y'); - $ecpg->AddDefine('MAJOR_VERSION=4'); - $ecpg->AddDefine('MINOR_VERSION=13'); - $ecpg->AddDefine('PATCHLEVEL=0'); $ecpg->AddDefine('ECPG_COMPILE'); $ecpg->AddReference($libpgcommon, $libpgport);