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>
This commit is contained in:
Tom Lane 2016-08-16 12:49:30 -04:00
parent 9b002cc9fe
commit a7b5573d66
4 changed files with 8 additions and 18 deletions

View File

@ -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 \

View File

@ -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)
{

View File

@ -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

View File

@ -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);