termux-packages/packages/strace/5.11fix.patch

67 lines
2.4 KiB
Diff
Raw Normal View History

2021-02-24 16:11:02 +01:00
#from https://github.com/strace/strace/compare/e5b5a73ac749534080641ac7119714a8ae2f57d3...cdfc8ebaeff56a0083042afab374fa1b45ba61db
diff --git a/configure.ac b/configure.ac
index bc85b4934..590a591b7 100644
--- a/configure.ac
+++ b/configure.ac
@@ -329,6 +329,13 @@ AC_CHECK_FUNCS(m4_normalize([
AC_CHECK_TYPES([sig_atomic_t, struct sigcontext],,, [#include <signal.h>])
+AC_CHECK_TYPES([struct sockaddr_storage],
+ [],
+ [mkdir -p src/linux/generic/linux
+ cp $srcdir/src/linux/generic/socket.h.in src/linux/generic/linux/socket.h
+ CPPFLAGS="-Isrc/linux/generic $CPPFLAGS"],
+ [#include <sys/socket.h>])
+
AC_CHECK_TYPES([struct mmsghdr],,, [#include <sys/socket.h>])
AC_CHECK_TYPES([__kernel_long_t, __kernel_ulong_t],,,
@@ -585,7 +592,7 @@ AC_CACHE_CHECK([whether <linux/signal.h> can be used along with <signal.h>],
if test "x$st_cv_linux_signal" = xno; then
mkdir -p src/linux/generic/linux
cp $srcdir/src/linux/generic/signal.h.in src/linux/generic/linux/signal.h
- CPPFLAGS="$CPPFLAGS -Ilinux/generic"
+ CPPFLAGS="-Isrc/linux/generic $CPPFLAGS"
fi
AC_CHECK_TYPES([struct __aio_sigset],,, [#include <linux/aio_abi.h>])
diff --git a/src/Makefile.am b/src/Makefile.am
index eec669778..efe6881c0 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -545,6 +545,7 @@ EXTRA_DIST = \
linux/generic/shuffle_scno.c \
linux/generic/signal.h.in \
linux/generic/signalent.h \
+ linux/generic/socket.h.in \
linux/generic/subcallent.h \
linux/generic/syscallent-common.h \
linux/generic/syscallent_base_nr.h \
@@ -1018,7 +1019,11 @@ CLEANFILES = $(ioctl_redefs_h) $(ioctlent_h) $(mpers_preproc_files) \
ioctl_iocdef.h ioctl_iocdef.i \
bpf_attr_check.c native_printer_decls.h native_printer_defs.h \
printers.h sen.h sys_func.h
-DISTCLEANFILES = gnu/stubs-32.h gnu/stubs-x32.h linux/generic/linux/signal.h
+DISTCLEANFILES = gnu/stubs-32.h \
+ gnu/stubs-x32.h \
+ linux/generic/linux/signal.h \
+ linux/generic/linux/socket.h \
+ #
include scno.am
diff --git a/src/linux/generic/socket.h.in b/src/linux/generic/socket.h.in
new file mode 100644
index 000000000..585771ee9
--- /dev/null
+++ b/src/linux/generic/socket.h.in
@@ -0,0 +1,7 @@
+#include_next <linux/socket.h>
+/*
+ * <sys/socket.h> expects <linux/socket.h> to define struct sockaddr_storage.
+ */
+#ifndef sockaddr_storage
+# define sockaddr_storage __kernel_sockaddr_storage
+#endif