On Tue, Mar 31, 2015 at 9:40 AM, Peter Eisentraut <pete...@gmx.net> wrote:

> On 3/30/15 6:29 PM, Michael Paquier wrote:
> >
> >
> > On Tue, Mar 31, 2015 at 5:39 AM, Peter Eisentraut <pete...@gmx.net
> > <mailto:pete...@gmx.net>> wrote:
> >
> >     On 3/25/15 1:32 AM, Michael Paquier wrote:
> >     > Well, I have no other cases than ones of the type mentioned
> upthread,
> >     > and honestly I am fine as long as we do not apply maths to a
> version
> >     > string. So attached is a patch that adds VERSION_NUM in
> >     > Makefile.global.
> >
> >     How would you make use of this in an extension makefile?
> >
> >
> > One use case is regression test list filtering depending on backend
> version.
>
> I'm interested in the exact syntax you'd use, to compare it to the
> currently used techniques.
>

With the presence of VERSION_NUM directly in pg_config, the following
expression:
VERSION_NUM=$(shell $(PG_CONFIG) --version-num)

With its presence in Makefile.global, that's close to what you can do with
pg_config.h already:
VERSION_NUM := $(shell cat `$(PG_CONFIG) --libdir`/pgxs/src/Makefile.global
\
    | perl -ne 'print $$1 and exit if /VERSION_NUM =\s+(\d+)/')
But that looks a little bit magic..

Another advantage of putting this information in pg_config is for
environments that do not have PGXS installed, for example MSVC.
-- 
Michael

Reply via email to