summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2024-11-24 22:29:16 +0000
committerSam James <sam@gentoo.org>2024-11-24 22:29:16 +0000
commit08cc05caea45f6b7c53d95cc5d680055754ef7bb (patch)
tree1e20beba175140f47fca75d54725ba254f5abf63 /net-wireless
parentapp-misc/tracker-miners: build w/ -std=gnu17 (diff)
downloadgentoo-08cc05caea45f6b7c53d95cc5d680055754ef7bb.tar.gz
gentoo-08cc05caea45f6b7c53d95cc5d680055754ef7bb.tar.bz2
gentoo-08cc05caea45f6b7c53d95cc5d680055754ef7bb.zip
net-wireless/bluez: partly fix C23 compat
Noticed when looking at bug #944059. This issue was already fixed by the GCC change referenced in bug #943809 but I already did the work to backport these, so let's pull them in. The issue in bug #944059 is an issue in sys-libs/readline which needs to be addressed separately. Bug: https://bugs.gentoo.org/943809 Bug: https://bugs.gentoo.org/944059 Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'net-wireless')
-rw-r--r--net-wireless/bluez/bluez-5.79.ebuild3
-rw-r--r--net-wireless/bluez/files/bluez-5.79-c23.patch123
2 files changed, 126 insertions, 0 deletions
diff --git a/net-wireless/bluez/bluez-5.79.ebuild b/net-wireless/bluez/bluez-5.79.ebuild
index fbcd5d01a0d6..c5921065eaf1 100644
--- a/net-wireless/bluez/bluez-5.79.ebuild
+++ b/net-wireless/bluez/bluez-5.79.ebuild
@@ -73,6 +73,9 @@ PATCHES=(
# https://bugs.gentoo.org/928365
# https://github.com/bluez/bluez/issues/726
"${FILESDIR}"/${PN}-disable-test-vcp.patch
+
+ # bug #944059
+ "${FILESDIR}"/${P}-c23.patch
)
pkg_setup() {
diff --git a/net-wireless/bluez/files/bluez-5.79-c23.patch b/net-wireless/bluez/files/bluez-5.79-c23.patch
new file mode 100644
index 000000000000..af790901b3b7
--- /dev/null
+++ b/net-wireless/bluez/files/bluez-5.79-c23.patch
@@ -0,0 +1,123 @@
+https://bugs.gentoo.org/943809
+https://github.com/bluez/bluez/commit/da5b5b0ecb1ead38676768ef78d46449d404bdc0
+https://github.com/bluez/bluez/commit/4d60826865c760cc4e5718b6414746a394768110
+https://github.com/bluez/bluez/commit/6f3111eb680df9c13502aacd65554846a9e13a3f
+
+From da5b5b0ecb1ead38676768ef78d46449d404bdc0 Mon Sep 17 00:00:00 2001
+From: Rudi Heitbaum <rudi@heitbaum.com>
+Date: Wed, 20 Nov 2024 13:02:56 +0000
+Subject: [PATCH] shared/ad: fix -std=c23 build failure
+
+gcc-15 switched to -std=c23 by default:
+
+ https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=55e3bd376b2214e200fa76d12b67ff259b06c212
+
+As a result `bluez` fails the build as:
+
+ src/shared/ad.c:1090:24: error: incompatible types when returning type '_Bool' but 'const char *' was expected
+ 1090 | return false;
+ | ^~~~~
+---
+ src/shared/ad.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/shared/ad.c b/src/shared/ad.c
+index d08ce7af9b..dac381bbe6 100644
+--- a/src/shared/ad.c
++++ b/src/shared/ad.c
+@@ -1087,7 +1087,7 @@ bool bt_ad_add_name(struct bt_ad *ad, const char *name)
+ const char *bt_ad_get_name(struct bt_ad *ad)
+ {
+ if (!ad)
+- return false;
++ return NULL;
+
+ return ad->name;
+ }
+
+From 4d60826865c760cc4e5718b6414746a394768110 Mon Sep 17 00:00:00 2001
+From: Rudi Heitbaum <rudi@heitbaum.com>
+Date: Wed, 20 Nov 2024 13:03:29 +0000
+Subject: [PATCH] shared/shell: fix -std=c23 build failure
+
+gcc-15 switched to -std=c23 by default:
+
+ https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=55e3bd376b2214e200fa76d12b67ff259b06c212
+
+As a result `bluez` fails the build as:
+
+ src/shared/shell.c:365:24: error: incompatible types when returning type '_Bool' but 'struct input *' was expected
+ 365 | return false;
+ | ^~~~~
+---
+ src/shared/shell.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/shared/shell.c b/src/shared/shell.c
+index a8fa87696..aa6c16c8c 100644
+--- a/src/shared/shell.c
++++ b/src/shared/shell.c
+@@ -362,7 +362,7 @@ static struct input *input_new(int fd)
+
+ io = io_new(fd);
+ if (!io)
+- return false;
++ return NULL;
+
+ input = new0(struct input, 1);
+ input->io = io;
+From 6f3111eb680df9c13502aacd65554846a9e13a3f Mon Sep 17 00:00:00 2001
+From: Rudi Heitbaum <rudi@heitbaum.com>
+Date: Wed, 20 Nov 2024 13:03:55 +0000
+Subject: [PATCH] shared/gatt-helpers: fix -std=c23 build failure
+
+gcc-15 switched to -std=c23 by default:
+
+ https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=55e3bd376b2214e200fa76d12b67ff259b06c212
+
+As a result `bluez` fails the build as:
+
+ src/shared/gatt-helpers.c:1136:24: error: incompatible types when returning type '_Bool' but 'struct bt_gatt_request *' was expected
+ 1136 | return false;
+ | ^~~~~
+ src/shared/gatt-helpers.c:1250:24: error: incompatible types when returning type '_Bool' but 'struct bt_gatt_request *' was expected
+ 1250 | return false;
+ | ^~~~~
+ src/shared/gatt-helpers.c:1478:24: error: incompatible types when returning type '_Bool' but 'struct bt_gatt_request *' was expected
+ 1478 | return false;
+ | ^~~~~
+---
+ src/shared/gatt-helpers.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/src/shared/gatt-helpers.c b/src/shared/gatt-helpers.c
+index 50fcb269be..f1fa6300a1 100644
+--- a/src/shared/gatt-helpers.c
++++ b/src/shared/gatt-helpers.c
+@@ -1133,7 +1133,7 @@ struct bt_gatt_request *bt_gatt_discover_included_services(struct bt_att *att,
+ uint8_t pdu[6];
+
+ if (!att)
+- return false;
++ return NULL;
+
+ op = new0(struct bt_gatt_request, 1);
+ op->att = att;
+@@ -1247,7 +1247,7 @@ struct bt_gatt_request *bt_gatt_discover_characteristics(struct bt_att *att,
+ uint8_t pdu[6];
+
+ if (!att)
+- return false;
++ return NULL;
+
+ op = new0(struct bt_gatt_request, 1);
+ op->att = att;
+@@ -1475,7 +1475,7 @@ struct bt_gatt_request *bt_gatt_discover_descriptors(struct bt_att *att,
+ uint8_t pdu[4];
+
+ if (!att)
+- return false;
++ return NULL;
+
+ op = new0(struct bt_gatt_request, 1);
+ op->att = att;