summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeroen Roovers <jer@gentoo.org>2016-02-12 09:49:55 +0100
committerJeroen Roovers <jer@gentoo.org>2016-02-12 09:50:17 +0100
commit30bdbd6c5ddc734020e35260ac1fb0848d769488 (patch)
tree4f062fb8bdb2f1f200f7a205920b43acc9fb4c39
parentdev-db/lmdb: QA: copyright 2015 -> 2016 (diff)
downloadgentoo-30bdbd6c5ddc734020e35260ac1fb0848d769488.tar.gz
gentoo-30bdbd6c5ddc734020e35260ac1fb0848d769488.tar.bz2
gentoo-30bdbd6c5ddc734020e35260ac1fb0848d769488.zip
net-wireless/bluez: Fix endian compile error (bug #574092).
Package-Manager: portage-2.2.27
-rw-r--r--net-wireless/bluez/bluez-5.37.ebuild3
-rw-r--r--net-wireless/bluez/files/bluez-5.37-endian.patch51
2 files changed, 54 insertions, 0 deletions
diff --git a/net-wireless/bluez/bluez-5.37.ebuild b/net-wireless/bluez/bluez-5.37.ebuild
index fd9b88a8ea46..e3704f8ea2c4 100644
--- a/net-wireless/bluez/bluez-5.37.ebuild
+++ b/net-wireless/bluez/bluez-5.37.ebuild
@@ -92,6 +92,9 @@ src_prepare() {
# ???
epatch "${FILESDIR}"/0004-agent-Assert-possible-infinite-loop.patch
+ # bug 574092
+ epatch "${FILESDIR}"/${PN}-5.37-endian.patch
+
if use cups; then
sed -i \
-e "s:cupsdir = \$(libdir)/cups:cupsdir = $(cups-config --serverbin):" \
diff --git a/net-wireless/bluez/files/bluez-5.37-endian.patch b/net-wireless/bluez/files/bluez-5.37-endian.patch
new file mode 100644
index 000000000000..1ffa3507d8b7
--- /dev/null
+++ b/net-wireless/bluez/files/bluez-5.37-endian.patch
@@ -0,0 +1,51 @@
+--- a/profiles/audio/a2dp-codecs.h
++++ b/profiles/audio/a2dp-codecs.h
+@@ -149,6 +149,17 @@
+ uint16_t codec_id;
+ } __attribute__ ((packed)) a2dp_vendor_codec_t;
+
++typedef struct {
++ a2dp_vendor_codec_t info;
++ uint8_t channel_mode:4;
++ uint8_t frequency:4;
++} __attribute__ ((packed)) a2dp_aptx_t;
++
++typedef struct {
++ a2dp_vendor_codec_t info;
++ uint8_t unknown[2];
++} __attribute__ ((packed)) a2dp_ldac_t;
++
+ #if __BYTE_ORDER == __LITTLE_ENDIAN
+
+ typedef struct {
+@@ -183,17 +194,6 @@
+ uint8_t bitrate3;
+ } __attribute__ ((packed)) a2dp_aac_t;
+
+-typedef struct {
+- a2dp_vendor_codec_t info;
+- uint8_t channel_mode:4;
+- uint8_t frequency:4;
+-} __attribute__ ((packed)) a2dp_aptx_t;
+-
+-typedef struct {
+- a2dp_vendor_codec_t info;
+- uint8_t unknown[2];
+-} __attribute__ ((packed)) a2dp_ldac_t;
+-
+ #elif __BYTE_ORDER == __BIG_ENDIAN
+
+ typedef struct {
+@@ -228,12 +228,6 @@
+ uint8_t bitrate3;
+ } __attribute__ ((packed)) a2dp_aac_t;
+
+-typedef struct {
+- a2dp_vendor_codec_t info;
+- uint8_t frequency:4;
+- uint8_t channel_mode:4;
+-} __attribute__ ((packed)) a2dp_aptx_t;
+-
+ #else
+ #error "Unknown byte order"
+ #endif