On 15-02-17 09:35, Tom Hacohen wrote:
> On 16/02/15 21:38, Boris Faure wrote:
> > Hi fellow developers,
> >
> > I want to add to an api in the efl. It is not important to know what it
> > is about but I want to use it in terminology.  It should be included in
> > efl-1.14 if everything goes according to my plan.  In terminology, I've
> > got the following:
> > #if (EFL_VERSION_MAJOR > 1) || (EFL_VERSION_MINOR >= 14)
> >    [code that uses that new api]
> > #endif
> > I modified my efl source code with that new api and installed it.  But
> > the current efl version is 1.13.99 since we're in dev mode.  My '#if' in
> > terminology does not apply here.  I can not test for 1.13.99 using
> > EFL_VERSION* because EFL_VERSION_MICRO is not defined.
> >
> > What is the correct way to handle that situation?
> > Having EFL_VERSION_MINOR >= 13 is not acceptable as I am sure I will
> > forget to change it.
> >
> > Greetings,
> 
> First of all, it needs to be &&, not || :P

Please, read it again :)
Yes, it only works because there wasn't any 0.14.

> Second of all, even that is not a good solution because you can't be 
> sure the API will really be included as is in .14 and you can 
> accidentally release it before .14 and then we'll change the API or 
> something. You probably need to have a manual review anyway.
> 
> Best is probably have a centralised place where you define a macro for 
> the new feature (terminology_private.h or whatever) which also has a 
> #warning or something to make sure you revisit it. Even if you check for 
>  >= 1.13.99 it won't help, as you might have an older version from git 
> to work against.
> 
> Another thing you could do, but is not really safe, is rely on VREV, 
> which is a sequential number since the beginning of the current branch 
> (similar to svn rev), but it's unsafe because you can have the same 
> number in a different branch (let's say 1.13 stable).

No perfect solution :(

-- 
Boris Faure
Pointer Arithmetician

Attachment: signature.asc
Description: Digital signature

------------------------------------------------------------------------------
Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
from Actuate! Instantly Supercharge Your Business Reports and Dashboards
with Interactivity, Sharing, Native Excel Exports, App Integration & more
Get technology previously reserved for billion-dollar corporations, FREE
http://pubads.g.doubleclick.net/gampad/clk?id=190641631&iu=/4140/ostg.clktrk
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to