summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXavier de Gaye <xdegaye@users.sourceforge.net>2016-12-21 17:29:59 +0100
committerXavier de Gaye <xdegaye@users.sourceforge.net>2016-12-21 17:29:59 +0100
commit40e320b31e51a8994725ae330884fdbfc043f357 (patch)
tree37c43c0b1a4dc2fc7426d156881d05e3b54f94d6
parent708784255e42f0946ab36d2a55e4c4ae99b086ec (diff)
downloadcpython-git-40e320b31e51a8994725ae330884fdbfc043f357.tar.gz
Issue #28538: On Darwin net/if.h requires that sys/socket.h be included beforehand.
-rwxr-xr-xconfigure16
-rw-r--r--configure.ac16
2 files changed, 28 insertions, 4 deletions
diff --git a/configure b/configure
index a997376b6b..a05009a1da 100755
--- a/configure
+++ b/configure
@@ -12645,13 +12645,25 @@ fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext conftest.$ac_ext
-# On Android API level 24 if_nameindex() is available, but the if_nameindex
-# structure is not defined.
+# On Android API level 24 with android-ndk-r13, if_nameindex() is available,
+# but the if_nameindex structure is not defined.
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for if_nameindex" >&5
$as_echo_n "checking for if_nameindex... " >&6; }
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
+#include <stdio.h>
+#ifdef STDC_HEADERS
+# include <stdlib.h>
+# include <stddef.h>
+#else
+# ifdef HAVE_STDLIB_H
+# include <stdlib.h>
+# endif
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+# include <sys/socket.h>
+#endif
#ifdef HAVE_NET_IF_H
# include <net/if.h>
#endif
diff --git a/configure.ac b/configure.ac
index 61fad0098c..8099e27c77 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3736,10 +3736,22 @@ AC_LINK_IFELSE([AC_LANG_PROGRAM([[
AC_MSG_RESULT(no)
])
-# On Android API level 24 if_nameindex() is available, but the if_nameindex
-# structure is not defined.
+# On Android API level 24 with android-ndk-r13, if_nameindex() is available,
+# but the if_nameindex structure is not defined.
AC_MSG_CHECKING(for if_nameindex)
AC_LINK_IFELSE([AC_LANG_PROGRAM([[
+#include <stdio.h>
+#ifdef STDC_HEADERS
+# include <stdlib.h>
+# include <stddef.h>
+#else
+# ifdef HAVE_STDLIB_H
+# include <stdlib.h>
+# endif
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+# include <sys/socket.h>
+#endif
#ifdef HAVE_NET_IF_H
# include <net/if.h>
#endif