Re: Exposing PG_VERSION_NUM in pg_config

Поиск
Список
Период
Сортировка
От Michael Paquier
Тема Re: Exposing PG_VERSION_NUM in pg_config
Дата
Msg-id CAB7nPqSUHA3=T+iQXV5bH5X5+pqFT_dVKJnoXakD+i7+num8CQ@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Exposing PG_VERSION_NUM in pg_config  (Peter Eisentraut <peter_e@gmx.net>)
Ответы Re: Exposing PG_VERSION_NUM in pg_config  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: Exposing PG_VERSION_NUM in pg_config  (Peter Eisentraut <peter_e@gmx.net>)
Список pgsql-hackers


On Tue, Mar 31, 2015 at 9:40 AM, Peter Eisentraut <peter_e@gmx.net> wrote:
On 3/30/15 6:29 PM, Michael Paquier wrote:
>
>
> On Tue, Mar 31, 2015 at 5:39 AM, Peter Eisentraut <peter_e@gmx.net
> <mailto:peter_e@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

В списке pgsql-hackers по дате отправления:

Предыдущее
От: Kyotaro HORIGUCHI
Дата:
Сообщение: GUC context information in the document.
Следующее
От: Jehan-Guillaume de Rorthais
Дата:
Сообщение: Re: Maximum number of WAL files in the pg_xlog directory