[AC_MSG_ERROR([libuv not found])])
# libuv recvmmsg support
-AC_CHECK_DECLS([UV_UDP_RECVMMSG, UV_UDP_MMSG_FREE, UV_UDP_MMSG_CHUNK], [], [], [[#include <uv.h>]])
-AS_CASE([$host],
- [*-musl],[AC_DEFINE([HAVE_DECL_UV_UDP_RECVMMSG], [0], [Disable recvmmsg support on systems with MUSL glibc])])
+AC_CHECK_DECLS([UV_UDP_MMSG_FREE, UV_UDP_MMSG_CHUNK], [], [], [[#include <uv.h>]])
+AC_MSG_CHECKING([whether struct msghdr uses padding for alignment])
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <sys/socket.h>],
+ [const struct msghdr h = { .__pad1 = 0, .__pad2 = 0 };])],
+ [AC_MSG_RESULT([yes])
+ AC_DEFINE([HAVE_DECL_UV_UDP_RECVMMSG],
+ [0], [Disable recvmmsg support on systems with MUSL glibc])],
+ [AC_MSG_RESULT([no])
+ AC_CHECK_DECLS([UV_UDP_RECVMMSG], [], [], [[#include <uv.h>]])])
# [pairwise: --enable-doh --with-libnghttp2=auto, --enable-doh --with-libnghttp2=yes, --disable-doh]
AC_ARG_ENABLE([doh],