cross-toolchain-base-devs team mailing list archive
-
cross-toolchain-base-devs team
-
Mailing list archive
-
Message #00001
Bug#798409: linux-libc-dev-armhf-cross: arm-specific linux/i2c-dev.h is missing critical declarations
Control: reassign -1 libi2c-dev
On Tue, 08 Sep 2015 14:30:50 -0700 Dima Kogan <dima@xxxxxxxxxxxxxxx> wrote:
> Package: linux-libc-dev-armhf-cross
> Version: 4.1.6-1cross1
> Severity: important
>
> Hi. I'm trying to cross-build a simple userspace application that uses
> the i2c bus. This does
>
> #include <linux/i2c-dev.h>
>
> When building natively, this works fine. The #include pulls in
>
> /usr/include/linux/i2c-dev.h
>
> There's a diversion involved, and it looks like this:
>
> $ dpkg -S /usr/include/linux/i2c-dev.h
>
> diversion by libi2c-dev from: /usr/include/linux/i2c-dev.h
> diversion by libi2c-dev to: /usr/include/linux/i2c-dev.h.kernel
> linux-libc-dev:amd64, libi2c-dev, linux-libc-dev:armhf: /usr/include/linux/i2c-dev.h
>
> linux-libc-dev-armhf-cross puts a copy of this header into a different
> directory, thus bypassing the diversion. Thus cross-building the
> application instead #includes
>
> /usr/arm-linux-gnueabihf/include/linux/i2c-dev.h
>
> This file is missing critical chunks, which the diversion took care of.
> So with the -cross business you can't cross build i2c applications. Is
> it required to ship the arm-specific i2c-dev.h file at all? It is
> identical to the non-arm-specific diverted one.
Those definitions are in <linux/i2c.h>, and have been since Linux 2.4.0
-test5pre5. I think the diversion should be removed from
libi2c-dev and this application should include both <linux/i2c.h> and
<linux/i2c-dev.h>.
Ben.
--
Ben Hutchings
Knowledge is power. France is bacon.
Attachment:
signature.asc
Description: This is a digitally signed message part