Hi,

I wonder if somebody could clarify some versioning info for me, or point me at 
the bits of the docs which I've skimmed over too quickly?

I'm building v2.0.0 using the --enable-namespaceversioning flag for 
./configure, which gives me e.g.

    Imath_2_0_0::SingMatrixExc::~SingMatrixExc()

This will of course mean that I cannot drop in a future v2.0.1 library since 
the Imath_2_0_0 symbols will no longer exist, although the library will 
presumably still share the .so.20 soname. I suspect I'm using the wrong method 
of making a unique namespace, as I in fact want a namespace which retains patch 
compatibility, e.g. maybe Imath_2_0.

So my questions are:

    * Am I right in saying that, without versioned namespaces, patches are 
always binary compatible and minor versions always incompatible?
    * Is there a patch-compatible namespacing method already provided (and if 
so, what is it)?
    * What's the soname version number based on?

Many thanks,

Ollie

_______________________________________________
Openexr-devel mailing list
Openexr-devel@nongnu.org
https://lists.nongnu.org/mailman/listinfo/openexr-devel

Reply via email to