Re: Module dependency on PostgeSQL version - Mailing list pgsql-hackers

From Joe Conway
Subject Re: Module dependency on PostgeSQL version
Date
Msg-id 40A1A7BD.3070508@joeconway.com
Whole thread Raw
In response to Re: Module dependency on PostgeSQL version  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
Tom Lane wrote:
> Thomas Hallgren <thhal@mailblocks.com> writes:
>>PGSQL_MAJOR_VER := 7
>>PGSQL_MINOR_VER := 5
>>PGSQL_PATCH_VER := devel
>>VERSION := $(PGSQL_MAJOR_VER).$(PGSQL_MINOR_VER).$(PGSQL_PATCH_VER)
> 
>>To be used in CPPFLAGS as: -DPGSQL_MAJOR_VER=$(PGSQL_MAJOR_VER) etc.
> 
> Wouldn't it be better to just put those #defines in to begin with,
> rather than requiring people to hack on their CPPFLAGS?  I don't offhand
> see much need for knowing the PG version at the Makefile level, but I
> do see the usefulness at the C-code level.
> 
> I think Joe Conway is already doing something like this for pl/r ...
> leastwise he's shown bits of #ifdef'd code in past email.  It would
> be interesting to see the details of his solution.

This is what I currently have:

#if (CATALOG_VERSION_NO <= 200211021)
#define PG_VERSION_73_COMPAT
#elif (CATALOG_VERSION_NO <= 200310211)
#define PG_VERSION_74_COMPAT
#else
#define PG_VERSION_75_COMPAT
#endif

Since CATALOG_VERSION_NO doesn't change between major releases, it seems 
to work pretty well.

Joe


pgsql-hackers by date:

Previous
From: pgsql@mohawksoft.com
Date:
Subject: Re: Configure redux.
Next
From: Tatsuo Ishii
Date:
Subject: Re: PostgreSQL pre-fork speedup