On 24/08/13(Sat) 12:01, Hans de Goede wrote:
> After adding your openbsd backend improvements patch, libusb
> no longer builds on released openbsd versions, see below,

Indeed these ioctls were added just after 5.3, so if you only plan
to test the backend on a released version you'll have to wait for
5.4 in November.

> Can you write a patch with some #ifdef-s in there to check for
> the openbsd version, so that it will build on openbsd 5.2 and
> higher?

I see little benefit of doing this.  Mainly because I see the 
libusbx as a dependency for other applications present in our
packages and ports system [0].  I'm not sure if you are familiar
with OpenBSD packaging policy, but in our case what matters is
that previous supported OpenBSD releases come with a package of
libusb and that we currently don't directly provide newer
packages for such releases.  The only things that we "backport"
are security fixes.

> We cannot ship this code as is, as we cannot expect openbsd
> users who want to use the latest libusb releases to be running
> the development branch of openbsd.

I'm not sure to understand what kind of OpenBSD users you are
talking about.

>From my point of view, non-developer users using OpenBSD stick
with released packages, they shouldn't have to compile anything.

If some users are doing some userland USB development on OpenBSD
releases (I would be really happy the hear about then btw!), I
would bet they are using the official packages because I see no
advantage in compiling their own non-widely tested, non-patched,
libusbx.  The reason why I asked for this diff to be integrated
is to reduce the diffs we have since mid-2012 [1]!

But assuming there are some people crazy enough to build their
own libusbx on OpenBSD for real use instead of using the official
packages, I would bet they are running -current.  OpenBSD doesn't
have a "development branch", instead we have a "trunk" which must
always be stable [1].  That's why we provide almost daily snapshots
suitable for almost any uses and generally people doing development
on OpenBSD run them.

So if you were worried about the people that might try the last
libusbx release on stable OpenBSD releases, I hope that my point
of view, as one of the USB developers in OpenBSD, helped you to
understand that there's almost certainly no such risk ;)

But if you want to be really paranoid, we can either add a note
in the ChangLog or a configure check for the new ioctls.

Martin


[0] http://www.openbsd.org/faq/faq15.html
[1] http://www.openbsd.org/cgi-bin/cvsweb/ports/devel/libusb1/patches/
[2] http://www.openbsd.org/papers/asiabsdcon2009-release_engineering/

> 
> Regards,
> 
> Hans
> 
> On 08/23/2013 03:36 PM, Xiaofan Chen wrote:
> >On Fri, Aug 23, 2013 at 9:32 PM, Xiaofan Chen <xiaof...@gmail.com> wrote:
> >>On Fri, Aug 23, 2013 at 9:02 PM, Xiaofan Chen <xiaof...@gmail.com> wrote:
> >>>On Thu, Aug 22, 2013 at 10:50 PM, Hans de Goede <hdego...@redhat.com> 
> >>>wrote:
> >>>>On 08/22/2013 03:30 AM, Xiaofan Chen wrote:
> >>>>>For OpenBSD and NetBSD, I can carry out some simple tests
> >>>>>over the weekend (basic building, stress test and xusb example
> >>>>>on a few devices).
> >>>>
> >>>>I was already hoping you would test these, thanks in advance!
> >>>>
> >>>>And I hope I did not break anything there ...
> >>>>
> >>>
> >>>It does seem to break OpenBSD build (ver 5.2 used here), will test
> >>>NetBSD later.
> >>
> >>>os/openbsd_usb.c: In function 'obsd_get_device_list':
> >>>os/openbsd_usb.c:148: error: storage size of 'dd' isn't known
> >>>os/openbsd_usb.c:207: error: 'USB_DEVICE_GET_DDESC' undeclared (first
> >>>use in this function)
> >>>os/openbsd_usb.c:207: error: (Each undeclared identifier is reported only 
> >>>once
> >>>os/openbsd_usb.c:207: error: for each function it appears in.)
> >>>os/openbsd_usb.c:148: warning: unused variable 'dd'
> >>>os/openbsd_usb.c: In function 'obsd_get_config_descriptor':
> >>>os/openbsd_usb.c:321: error: storage size of 'udf' isn't known
> >>>os/openbsd_usb.c:335: error: 'USB_DEVICE_GET_FDESC' undeclared (first
> >>>use in this function)
> >>>os/openbsd_usb.c:321: warning: unused variable 'udf'
> >>>os/openbsd_usb.c: In function '_cache_active_config_descriptor':
> >>>os/openbsd_usb.c:630: error: storage size of 'udc' isn't known
> >>>os/openbsd_usb.c:631: error: storage size of 'udf' isn't known
> >>>os/openbsd_usb.c:643: error: 'USB_DEVICE_GET_CDESC' undeclared (first
> >>>use in this function)
> >>>os/openbsd_usb.c:664: error: 'USB_DEVICE_GET_FDESC' undeclared (first
> >>>use in this function)
> >>>os/openbsd_usb.c:631: warning: unused variable 'udf'
> >>>os/openbsd_usb.c:630: warning: unused variable 'udc'
> >>>*** Error code 1 (ignored)
> >>
> >>As per OpenBSD changelog, USB_DEVICE_GET_DDESC,
> >>USB_DEVICE_GET_FDESC and USB_DEVICE_GET_FDESC
> >>are new IOCTLs added to OpenBSD-Current beyong the current
> >>stable 5.3 release.
> >
> >Ref: http://www.openbsd.org/plus.html
> >
> >>I am not so sure if we want to support Current only (seems
> >>to be too restrictive) or if we need to check the OS version
> >>to enable the new feature.
> >
> >

------------------------------------------------------------------------------
Introducing Performance Central, a new site from SourceForge and 
AppDynamics. Performance Central is your source for news, insights, 
analysis and resources for efficient Application Performance Management. 
Visit us today!
http://pubads.g.doubleclick.net/gampad/clk?id=48897511&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