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