Commit a7b5573d authored by Tom Lane's avatar Tom Lane

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>
parent 9b002cc9
...@@ -15,16 +15,11 @@ subdir = src/interfaces/ecpg/preproc ...@@ -15,16 +15,11 @@ subdir = src/interfaces/ecpg/preproc
top_builddir = ../../../.. top_builddir = ../../../..
include $(top_builddir)/src/Makefile.global 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 \ override CPPFLAGS := -I../include -I$(top_srcdir)/src/interfaces/ecpg/include \
-I. -I$(srcdir) -DMAJOR_VERSION=$(MAJOR_VERSION) \ -I. -I$(srcdir) -DECPG_COMPILE \
-DMINOR_VERSION=$(MINOR_VERSION) -DPATCHLEVEL=$(PATCHLEVEL) \
$(CPPFLAGS) $(CPPFLAGS)
override CFLAGS += $(PTHREAD_CFLAGS) -DECPG_COMPILE override CFLAGS += $(PTHREAD_CFLAGS)
OBJS= preproc.o pgc.o type.o ecpg.o output.o parser.o \ 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 \ keywords.o c_keywords.o ecpg_keywords.o ../ecpglib/typename.o descriptor.o variable.o \
......
...@@ -150,8 +150,7 @@ main(int argc, char *const argv[]) ...@@ -150,8 +150,7 @@ main(int argc, char *const argv[])
switch (c) switch (c)
{ {
case ECPG_GETOPT_LONG_VERSION: case ECPG_GETOPT_LONG_VERSION:
printf("ecpg (PostgreSQL %s) %d.%d.%d\n", PG_VERSION, printf("ecpg %s\n", PG_VERSION);
MAJOR_VERSION, MINOR_VERSION, PATCHLEVEL);
exit(0); exit(0);
case ECPG_GETOPT_LONG_HELP: case ECPG_GETOPT_LONG_HELP:
help(progname); help(progname);
...@@ -264,8 +263,9 @@ main(int argc, char *const argv[]) ...@@ -264,8 +263,9 @@ main(int argc, char *const argv[])
if (verbose) if (verbose)
{ {
fprintf(stderr, _("%s, the PostgreSQL embedded C preprocessor, version %d.%d.%d\n"), fprintf(stderr,
progname, MAJOR_VERSION, MINOR_VERSION, PATCHLEVEL); _("%s, the PostgreSQL embedded C preprocessor, version %s\n"),
progname, PG_VERSION);
fprintf(stderr, _("EXEC SQL INCLUDE ... search starts here:\n")); fprintf(stderr, _("EXEC SQL INCLUDE ... search starts here:\n"));
for (ip = include_paths; ip != NULL; ip = ip->next) for (ip = include_paths; ip != NULL; ip = ip->next)
fprintf(stderr, " %s\n", ip->path); fprintf(stderr, " %s\n", ip->path);
...@@ -440,7 +440,7 @@ main(int argc, char *const argv[]) ...@@ -440,7 +440,7 @@ main(int argc, char *const argv[])
if (regression_mode) if (regression_mode)
fprintf(yyout, "/* Processed by ecpg (regression mode) */\n"); fprintf(yyout, "/* Processed by ecpg (regression mode) */\n");
else 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) if (header_mode == false)
{ {
......
...@@ -80,13 +80,11 @@ Starting a New Development Cycle ...@@ -80,13 +80,11 @@ Starting a New Development Cycle
* Add version tag to src/tools/git_changelog * Add version tag to src/tools/git_changelog
* Bump minor library versions, major if appropriate (see below) * 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/compatlib/Makefile
src/interfaces/ecpg/ecpglib/Makefile src/interfaces/ecpg/ecpglib/Makefile
src/interfaces/ecpg/pgtypeslib/Makefile src/interfaces/ecpg/pgtypeslib/Makefile
src/interfaces/ecpg/preproc/Makefile
src/interfaces/libpq/Makefile src/interfaces/libpq/Makefile
src/tools/msvc/Mkvcbuild.pm
Creating Back-Branch Release Notes Creating Back-Branch Release Notes
......
...@@ -269,9 +269,6 @@ sub mkvcbuild ...@@ -269,9 +269,6 @@ sub mkvcbuild
$ecpg->AddIncludeDir('src/interfaces/libpq'); $ecpg->AddIncludeDir('src/interfaces/libpq');
$ecpg->AddPrefixInclude('src/interfaces/ecpg/preproc'); $ecpg->AddPrefixInclude('src/interfaces/ecpg/preproc');
$ecpg->AddFiles('src/interfaces/ecpg/preproc', 'pgc.l', 'preproc.y'); $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->AddDefine('ECPG_COMPILE');
$ecpg->AddReference($libpgcommon, $libpgport); $ecpg->AddReference($libpgcommon, $libpgport);
......
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