https://github.com/python/cpython/commit/d7be26a71e74818c4df60f31c879e52da2e1e94e
commit: d7be26a71e74818c4df60f31c879e52da2e1e94e
branch: main
author: Serhiy Storchaka <storch...@gmail.com>
committer: serhiy-storchaka <storch...@gmail.com>
date: 2025-04-23T14:08:30+03:00
summary:

gh-132734: Fix build on FreeBSD and old Linux (GH-132829)

files:
M Lib/test/test_socket.py
M Modules/socketmodule.c

diff --git a/Lib/test/test_socket.py b/Lib/test/test_socket.py
index ed45180a5f7d99..e88611ee3147ba 100644
--- a/Lib/test/test_socket.py
+++ b/Lib/test/test_socket.py
@@ -2647,14 +2647,13 @@ def testBluetoothConstants(self):
             socket.BT_POWER
             socket.BT_CHANNEL_POLICY
             socket.BT_CHANNEL_POLICY_BREDR_ONLY
-            socket.BT_PHY
-            socket.BT_PHY_BR_1M_1SLOT
-            socket.BT_MODE
-            socket.BT_MODE_BASIC
-            socket.BT_VOICE
-            socket.BT_VOICE_TRANSPARENT
-            socket.BT_VOICE_CVSD_16BIT
-            socket.BT_CODEC
+            if hasattr(socket, 'BT_PHY'):
+                socket.BT_PHY_BR_1M_1SLOT
+            if hasattr(socket, 'BT_MODE'):
+                socket.BT_MODE_BASIC
+            if hasattr(socket, 'BT_VOICE'):
+                socket.BT_VOICE_TRANSPARENT
+                socket.BT_VOICE_CVSD_16BIT
             socket.L2CAP_LM
             socket.L2CAP_LM_MASTER
             socket.L2CAP_LM_AUTH
diff --git a/Modules/socketmodule.c b/Modules/socketmodule.c
index 22b94e4b03a27c..a4176f907bf828 100644
--- a/Modules/socketmodule.c
+++ b/Modules/socketmodule.c
@@ -208,7 +208,7 @@ shutdown(how) -- shut down traffic in one or both 
directions\n\
 #  include <sys/ioctl.h>
 #endif
 
-#ifdef HAVE_BLUETOOTH_H
+#if defined(HAVE_BLUETOOTH_H) && !defined(__FreeBSD__)
 #  include <netbt/l2cap.h>
 #  include <netbt/rfcomm.h>
 #  include <netbt/hci.h>
@@ -8014,6 +8014,7 @@ socket_exec(PyObject *m)
 #endif
     ADD_INT_MACRO(m, BT_SNDMTU);
     ADD_INT_MACRO(m, BT_RCVMTU);
+#ifdef BT_PHY
     ADD_INT_MACRO(m, BT_PHY);
     ADD_INT_MACRO(m, BT_PHY_BR_1M_1SLOT);
     ADD_INT_MACRO(m, BT_PHY_BR_1M_3SLOT);
@@ -8030,15 +8031,24 @@ socket_exec(PyObject *m)
     ADD_INT_MACRO(m, BT_PHY_LE_2M_RX);
     ADD_INT_MACRO(m, BT_PHY_LE_CODED_TX);
     ADD_INT_MACRO(m, BT_PHY_LE_CODED_RX);
+#endif
+#ifdef BT_MODE
     ADD_INT_MACRO(m, BT_MODE);
     ADD_INT_MACRO(m, BT_MODE_BASIC);
     ADD_INT_MACRO(m, BT_MODE_ERTM);
     ADD_INT_MACRO(m, BT_MODE_STREAMING);
     ADD_INT_MACRO(m, BT_MODE_LE_FLOWCTL);
     ADD_INT_MACRO(m, BT_MODE_EXT_FLOWCTL);
+#endif
+#ifdef BT_PKT_STATUS
     ADD_INT_MACRO(m, BT_PKT_STATUS);
+#endif
+#ifdef BT_ISO_QOS
     ADD_INT_MACRO(m, BT_ISO_QOS);
+#endif
+#ifdef BT_CODEC
     ADD_INT_MACRO(m, BT_CODEC);
+#endif
 #endif /* HAVE_BLUETOOTH_BLUETOOTH_H */
 #endif /* USE_BLUETOOTH */
 

_______________________________________________
Python-checkins mailing list -- python-checkins@python.org
To unsubscribe send an email to python-checkins-le...@python.org
https://mail.python.org/mailman3/lists/python-checkins.python.org/
Member address: arch...@mail-archive.com

Reply via email to