Message ID | 20160223101233.GH1766@serenity.lan |
---|---|
State | Not Applicable |
Headers | show |
https://gitweb.gentoo.org/repo/gentoo.git/tree/net-wireless/bluez/files/bluez-5.37-endian.patch On 23 February 2016 at 11:12, John Keeping <john@keeping.me.uk> wrote: > On Mon, Feb 22, 2016 at 03:05:39PM +0100, Thomas Petazzoni wrote: >> On Mon, 22 Feb 2016 08:30:22 +0100 (CET), Thomas Petazzoni wrote: >> >> > mips | bluez5_utils-5.37 | NOK | http://autobuild.buildroot.net/results/2bf4e5ea9b67b80ba38bfeaf71b747a92be09011/ >> >> tools/avinfo.c:193:24: error: unknown type name 'a2dp_ldac_t' >> static void print_ldac(a2dp_ldac_t *ldac) >> >> It's not MIPS specific, since the same build issue occurred on other >> architectures. >> >> Could someone have a look ? > > I think the problem affects all big endian systems and the necessary > patch to bluez5 is below, but I don't have a suitable toolchain or > system to test it. > > If someone is able to test the patch I will submit it upstream and roll > a proper patch for Buildroot. > > -- >8 -- > diff --git a/profiles/audio/a2dp-codecs.h b/profiles/audio/a2dp-codecs.h > index e9da0bf..4fb5c0c 100644 > --- a/profiles/audio/a2dp-codecs.h > +++ b/profiles/audio/a2dp-codecs.h > @@ -234,6 +234,11 @@ typedef struct { > uint8_t channel_mode:4; > } __attribute__ ((packed)) a2dp_aptx_t; > > +typedef struct { > + a2dp_vendor_codec_t info; > + uint8_t unknown[2]; > +} __attribute__ ((packed)) a2dp_ldac_t; > + > #else > #error "Unknown byte order" > #endif > _______________________________________________ > buildroot mailing list > buildroot@busybox.net > http://lists.busybox.net/mailman/listinfo/buildroot
On Tue, Feb 23, 2016 at 11:40:52AM +0100, Jeroen Roovers wrote: > https://gitweb.gentoo.org/repo/gentoo.git/tree/net-wireless/bluez/files/bluez-5.37-endian.patch That patch looks wrong: you can't just pull a2dp_aptx_t out of the little/big endian ifdefs since the order of the bit fields matters (a2dp_ldac_t could be pulled out but I think it's more consistent to duplicate the definition as the unknown fields may need to be different on big/little endian systems). > On 23 February 2016 at 11:12, John Keeping <john@keeping.me.uk> wrote: > > On Mon, Feb 22, 2016 at 03:05:39PM +0100, Thomas Petazzoni wrote: > >> On Mon, 22 Feb 2016 08:30:22 +0100 (CET), Thomas Petazzoni wrote: > >> > >> > mips | bluez5_utils-5.37 | NOK | http://autobuild.buildroot.net/results/2bf4e5ea9b67b80ba38bfeaf71b747a92be09011/ > >> > >> tools/avinfo.c:193:24: error: unknown type name 'a2dp_ldac_t' > >> static void print_ldac(a2dp_ldac_t *ldac) > >> > >> It's not MIPS specific, since the same build issue occurred on other > >> architectures. > >> > >> Could someone have a look ? > > > > I think the problem affects all big endian systems and the necessary > > patch to bluez5 is below, but I don't have a suitable toolchain or > > system to test it. > > > > If someone is able to test the patch I will submit it upstream and roll > > a proper patch for Buildroot. > > > > -- >8 -- > > diff --git a/profiles/audio/a2dp-codecs.h b/profiles/audio/a2dp-codecs.h > > index e9da0bf..4fb5c0c 100644 > > --- a/profiles/audio/a2dp-codecs.h > > +++ b/profiles/audio/a2dp-codecs.h > > @@ -234,6 +234,11 @@ typedef struct { > > uint8_t channel_mode:4; > > } __attribute__ ((packed)) a2dp_aptx_t; > > > > +typedef struct { > > + a2dp_vendor_codec_t info; > > + uint8_t unknown[2]; > > +} __attribute__ ((packed)) a2dp_ldac_t; > > + > > #else > > #error "Unknown byte order" > > #endif > > _______________________________________________ > > buildroot mailing list > > buildroot@busybox.net > > http://lists.busybox.net/mailman/listinfo/buildroot
Jeroen, John,
On Tue, 23 Feb 2016 11:40:52 +0100, Jeroen Roovers wrote:
> https://gitweb.gentoo.org/repo/gentoo.git/tree/net-wireless/bluez/files/bluez-5.37-endian.patch
Sounds good! Care to submit a patch for Buildroot that adds this patch,
with a proper description and SoB ?
Could you also look if the patch has been merged upstream? If it has
been merged, using the upstream patch is better. If it hasn't been
merged upstream, then submitting it would be good.
Thanks a lot!
Thomas
diff --git a/profiles/audio/a2dp-codecs.h b/profiles/audio/a2dp-codecs.h index e9da0bf..4fb5c0c 100644 --- a/profiles/audio/a2dp-codecs.h +++ b/profiles/audio/a2dp-codecs.h @@ -234,6 +234,11 @@ typedef struct { uint8_t channel_mode:4; } __attribute__ ((packed)) a2dp_aptx_t; +typedef struct { + a2dp_vendor_codec_t info; + uint8_t unknown[2]; +} __attribute__ ((packed)) a2dp_ldac_t; + #else #error "Unknown byte order" #endif