[Pkg-running-devel] Bug#810415: Bug#810415: Bug#810415: garmin-plugin: please switch to libusb 1.0

Olaf Meeuwissen paddy-hack at member.fsf.org
Sat Feb 13 10:33:04 UTC 2016

Hi Christian,

Christian PERRIER writes:

> Quoting Aurelien Jarno (aurel32 at debian.org):
>> Package: garmin-plugin
>> Version: 0.3.23-1
>> Severity: wishlist
>> Dear Maintainer,
>> garmin-plugin has a build-depends on libusb-dev. A few years ago upstream
>> has released a new major version libusb 1.0 with a different API which
>> aims to fix design deficiencies with USB 2.0 and 3.0 in mind.
>> The old libusb 0.1 package is not supported upstream anymore and should
>> be considered deprecated.
>> If garmin-plugin supports the new libusb 1.0 library, please consider
>> switching the build-depends from libusb-dev to libusb-1.0-0-dev. If not
>> please inform upstream that porting the software to the new API is
>> recommended.
> Here also, a simple attempt to rebuild bychanging the build dependency
> also failed, which was more or less expected....

I cloned Debian's git packaging repository for garmin-plugin and had a
look at what it might take to get things fixed.  Thing is, I cannot find
any code dependency on libusb.  That is, there is no code that calls any
USB API.  Unless code is pulled in during the build, the only thing that
"requires" libusb is the check at configure time.

The README documents a rather cumbersome build procedure that involves
compiling garmintools as well.  I can imagine that that needs libusb.
Maybe that inspired the documented "need" for a libusb dependency?

As the debian/rules file simply builds below src/ without any of the
hoopla from the README, I thought you can just drop the libusb check
from the configure script and be done with it.

Tried that and quickly found out that the garmin.h header file from
garmin-forerunner-tools includes usb.h.  The only other package that
depends on garmin-forerunner-tools is libgarmin-dev.  Checked that
package's source and, unsurprisingly, their is zero mention of usb.
Moreover, it does not need garmin.h.

That means that splitting the USB stuff out of garmin.h would make it
possible to drop the libusb dependency on garmin-plugin.

However, that's more work than I'm willing to put in (now).

Hope this helps anyway,
Olaf Meeuwissen, LPIC-2            FSF Associate Member since 2004-01-27
 GnuPG key: F84A2DD9/B3C0 2F47 EA19 64F4 9F13  F43E B8A4 A88A F84A 2DD9
 Support Free Software                        https://my.fsf.org/donate
 Join the Free Software Foundation              https://my.fsf.org/join

More information about the Pkg-running-devel mailing list