# DP: Comment out constant exposed on the API which are not implemented on
# DP: GNU/Hurd. They would not work at runtime anyway.

Index: b/Modules/socketmodule.c
===================================================================
--- a/Modules/socketmodule.c
+++ b/Modules/socketmodule.c
@@ -6485,9 +6485,11 @@ PyInit__socket(void)
 #ifdef  SO_OOBINLINE
     PyModule_AddIntMacro(m, SO_OOBINLINE);
 #endif
+#ifndef __GNU__
 #ifdef  SO_REUSEPORT
     PyModule_AddIntMacro(m, SO_REUSEPORT);
 #endif
+#endif
 #ifdef  SO_SNDBUF
     PyModule_AddIntMacro(m, SO_SNDBUF);
 #endif
Index: b/Modules/posixmodule.c
===================================================================
--- a/Modules/posixmodule.c
+++ b/Modules/posixmodule.c
@@ -12511,12 +12511,14 @@ all_ins(PyObject *m)
 #ifdef O_LARGEFILE
     if (PyModule_AddIntMacro(m, O_LARGEFILE)) return -1;
 #endif
+#ifndef __GNU__
 #ifdef O_SHLOCK
     if (PyModule_AddIntMacro(m, O_SHLOCK)) return -1;
 #endif
 #ifdef O_EXLOCK
     if (PyModule_AddIntMacro(m, O_EXLOCK)) return -1;
 #endif
+#endif
 #ifdef O_EXEC
     if (PyModule_AddIntMacro(m, O_EXEC)) return -1;
 #endif
