Re: how solve diff of API counstruct_md_array between

From: Joe Conway <mail(at)joeconway(dot)com>
To: Martijn van Oosterhout <kleptog(at)svana(dot)org>
Cc: Pavel Stehule <pavel(dot)stehule(at)hotmail(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: how solve diff of API counstruct_md_array between
Date: 2006-02-16 21:37:53
Message-ID: 43F4F0B1.6040507@joeconway.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers pgsql-patches

Martijn van Oosterhout wrote:
> On Thu, Feb 16, 2006 at 08:36:34PM +0100, Pavel Stehule wrote:
>>I use counstruct_md_array function in my Orafunc module. CVS version has
>>diff def now. I am findig way for simple solution of maintaince source code
>>for both version. I have PG_VERSION variable, but it's unusable. Is there
>>way for contrib's autors differentiate PostgreSQL versions? I don't want to
>>have two versions of source code.
>
> For my stuff I've generally use CATALOG_VERSION_NO. It's not very easy,
> but by looking through CVS you can find when the function was created
> and in your code use:
>
> #ifdef CATALOG_VERSION_NO > yyyymmddN
> /* New stuff */
> #else
> /* Old stuff */
> #endif

I do pretty much the same thing in PL/R. The good news is that
CATALOG_VERSION_NO doesn't change for each major release once it is
released. The following hasn't been updated since the 8.1 release, but
you could use it as a starting point:

#if (CATALOG_VERSION_NO <= 200211021)
#define PG_VERSION_73_COMPAT
#elif (CATALOG_VERSION_NO <= 200310211)
#define PG_VERSION_74_COMPAT
#elif (CATALOG_VERSION_NO <= 200411041)
#define PG_VERSION_80_COMPAT
#else
#define PG_VERSION_81_COMPAT
#endif

HTH,

Joe

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Bruce Momjian 2006-02-16 22:14:09 In Japan with Josh Berkus
Previous Message Andrew Dunstan 2006-02-16 20:28:21 time waiting on patch queue

Browse pgsql-patches by date

  From Date Subject
Next Message Peter Eisentraut 2006-02-16 23:25:35 Re: memset using long instead of int32
Previous Message Andrew Dunstan 2006-02-16 20:28:21 time waiting on patch queue