Hi,

Quoting Andreas Ericsson <a...@op5.se>:

> Sure, but please add a LIBDBI_VERSION macro as well, or people
> will start tweaking them in themselves, which will cause headache
> for you if you want to add one later.
>
> #define LIBDBI_VERSION ((MAJOR * 10000) + (MINOR * 100) + (REVISION))
>
> should do it.
>

Don't worry about that, we've agreed before that this is an extremely  
useful addition. I'll take care of this on the weekend.

> I don't really give a damn where those numbers come from so long as
> it can be easily found out which LIBDBI_VERSION a particular piece of
> functionality or bugfix appeared in, and so long as it only ever
> increases.
>

This is also a documentation issue. The libdbi manual contains  
information about deprecated functions, but it doesn't explain when  
new functions were added. I guess it would be quite helpful to include  
this information. I'll put that on my todo list.

>> major = current - age
>> minor = age + 8
>> patch = revision
>>
>> until major is actually increased?
>>
>
> Umm. Won't major be higher now than it was before? Sorry, but I
> just can't wrap my head around what the various libtool macros
> are supposed to signify, and the explanations on
> http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html
> doesn't exactly help (why should age be reset to 0 but nothing else
> changed when interfaces are removed?).
>

If you remove an interface, programs linked against earlier releases  
will no longer load if they need one of the removed functions. Age=0  
simply indicates the fact that your library now doesn't meet the needs  
of any app linked against an earlier version, and the run-time linker  
can look for an older version of the library instead. OTOH if you add  
functions without changing anything else, older apps won't care - the  
extra functions don't hurt. Therefore Age>0, and the run-time linker  
will happily use the library.

regards,
Markus

-- 
Markus Hoenicka
markus.hoeni...@cats.de
(Spam-protected email: replace the quadrupeds with "mhoenicka")
http://www.mhoenicka.de



------------------------------------------------------------------------------
Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are
powering Web 2.0 with engaging, cross-platform capabilities. Quickly and
easily build your RIAs with Flex Builder, the Eclipse(TM)based development
software that enables intelligent coding and step-through debugging.
Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com
_______________________________________________
libdbi-devel mailing list
libdbi-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libdbi-devel

Reply via email to