Libtool versioning should in particular work for cross platform applications, 
and I have used it a lot for that purpose myself. But admittedly never with 
Windows, which is unfortunately behaving very differently when it comes to 
shared libraries compared to POSIX systems. So in some sense I am not surprised 
that there are issues... But I wonder if you have reported those issues to the 
libtool people to ensure they get fixed? What are the problems exactly? I don't 
have a Windows box at hand right now to try it out, unfortunately.

In any case: It seems unreasonable to loose important functionality on all 
platforms just for the sake of Windows. In the worst case, one could modify 
configure.ac in such a way that the lt_* variables are set to one set of values 
on Windows, and something else everywhere else.


Note that LIBUSB_API_VERSION is *not* an adequate substitute for this. Indeed, 
I fail to see how LIBUSBX_API_VERSION is useful at all for most purposes, 
including those you mention in its documentation: Namely to check whether it is 
safe to call a function... As it is a #define, it can only be used to verify 
that the libusb(x) headers one compiles against are recent. But it does not 
allow one to check that the libusb(x) version one *links* against is is recent 
(indeed, that it is at least as recent as the headers one compiled against). 
For that, there would have to be an API   libusbx_get_api_version() so that one 
can write code like

    if (LIBUSBX_API_VERSION > libusbx_get_api_version() )
        die( "libusbx shared library too old" );

But note that this is just a crude emulation of what the POSIX shared library 
versioning scheme automatically provides you with on Linux, Mac OS X and 
elsewhere... with the possible exception of Windows, but again: why cripple 
everybody else for the sake of Windows alone? It would not hurt to enable 
proper library versioning outside of Windows; no drawback for windows users 
would be incurred.



---
Reply to this email directly or view it on GitHub:
https://github.com/libusbx/libusbx/pull/122#issuecomment-21789861
------------------------------------------------------------------------------
Get your SQL database under version control now!
Version control is standard for application code, but databases havent 
caught up. So what steps can you take to put your SQL databases under 
version control? Why should you start doing it? Read more to find out.
http://pubads.g.doubleclick.net/gampad/clk?id=49501711&iu=/4140/ostg.clktrk
_______________________________________________
libusbx-devel mailing list
libusbx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libusbx-devel

Reply via email to