diff options
author | 2005-11-20 07:34:16 +0000 | |
---|---|---|
committer | 2005-11-20 07:34:16 +0000 | |
commit | a389ae7297f30c51af2f6597d0ad0fcdeebd8943 (patch) | |
tree | b42397c463663df24c57cbd40571ed1ad3da2129 /dev-util/strace/files | |
parent | patch against configure.ac (diff) | |
download | gentoo-2-a389ae7297f30c51af2f6597d0ad0fcdeebd8943.tar.gz gentoo-2-a389ae7297f30c51af2f6597d0ad0fcdeebd8943.tar.bz2 gentoo-2-a389ae7297f30c51af2f6597d0ad0fcdeebd8943.zip |
Update libaio patch to work with both old and new versions #103427.
(Portage version: 2.0.53_rc7)
Diffstat (limited to 'dev-util/strace/files')
-rw-r--r-- | dev-util/strace/files/strace-4.5.12-libaio.patch | 65 |
1 files changed, 57 insertions, 8 deletions
diff --git a/dev-util/strace/files/strace-4.5.12-libaio.patch b/dev-util/strace/files/strace-4.5.12-libaio.patch index bc4ab335f799..0f02dcaa48a8 100644 --- a/dev-util/strace/files/strace-4.5.12-libaio.patch +++ b/dev-util/strace/files/strace-4.5.12-libaio.patch @@ -1,20 +1,69 @@ ---- desc.c -+++ desc.c -@@ -767,7 +767,7 @@ struct tcb *tcp; +Make libaio support a proper option and update the checks to support +both new and old versions of libaio. + +http://bugs.gentoo.org/103427 + +--- strace/configure.ac ++++ strace/configure.ac +@@ -170,6 +170,26 @@ + struct stat.st_rdev]) + AC_STAT64 + ++AC_ARG_ENABLE(libaio, ++ AC_HELP_STRING([--enable-libaio],[enable support for libaio @<:@default=auto@:>@]), ++ [enable_libaio=$enableval], ++ [enable_libaio=auto] ++) ++if test "x$enable_libaio" != "xno" ; then ++ AC_CHECK_HEADER([libaio.h],[have_libaio=yes],[have_libaio=no]) ++ if test "x$enable_libaio$have_libaio" = "xyesno" ; then ++ AC_MSG_ERROR(Could not detect libaio.h) ++ elif test "x$have_libaio" = "xyes" ; then ++ AC_DEFINE(HAVE_LIBAIO_H, 1, [System has libaio.h]) ++ AC_CHECK_MEMBERS([ ++ struct iocb.data, ++ struct iocb.aio_data, ++ struct iocb.key, ++ struct iocb.aio_key], ++ [], [], [#include <libaio.h>]) ++ fi ++fi ++ + AC_TYPE_SIGNAL + AC_TYPE_UID_T + AC_TYPE_MODE_T +@@ -192,7 +212,7 @@ + fi + + AC_CHECK_FUNCS(sigaction strerror strsignal pread sys_siglist _sys_siglist getdents mctl prctl sendmsg inet_ntop if_indextoname) +-AC_CHECK_HEADERS([sys/reg.h sys/filio.h sys/acl.h sys/asynch.h sys/door.h stropts.h sys/conf.h sys/stream.h sys/tihdr.h sys/tiuser.h sys/sysconfig.h ioctls.h sys/ioctl.h sys/ptrace.h termio.h linux/ptrace.h asm/reg.h sys/uio.h sys/aio.h poll.h sys/poll.h sys/vfs.h asm/sysmips.h linux/utsname.h sys/nscsys.h mqueue.h sys/epoll.h libaio.h], [], []) ++AC_CHECK_HEADERS([sys/reg.h sys/filio.h sys/acl.h sys/asynch.h sys/door.h stropts.h sys/conf.h sys/stream.h sys/tihdr.h sys/tiuser.h sys/sysconfig.h ioctls.h sys/ioctl.h sys/ptrace.h termio.h linux/ptrace.h asm/reg.h sys/uio.h poll.h sys/poll.h sys/vfs.h asm/sysmips.h linux/utsname.h sys/nscsys.h mqueue.h sys/epoll.h], [], []) + AC_CHECK_HEADERS([linux/icmp.h linux/in6.h linux/netlink.h linux/if_packet.h], + [], [], [#include <linux/socket.h>]) + AC_CHECK_HEADERS([asm/sigcontext.h], [], [], [#include <signal.h>]) +--- strace/desc.c ++++ strace/desc.c +@@ -767,7 +767,11 @@ continue; } tprintf("{%p, %u, %hu, %hu, %d}", -- iocb.data, iocb.key, -+ iocb.aio_data, iocb.aio_key, ++#ifdef HAVE_STRUCT_IOCB_AIO_DATA ++ iocb.aio_data, iocb.key_data, ++#else + iocb.data, iocb.key, ++#endif iocb.aio_lio_opcode, iocb.aio_reqprio, iocb.aio_fildes); } -@@ -793,7 +793,7 @@ struct tcb *tcp; +@@ -793,7 +797,11 @@ #ifdef HAVE_LIBAIO_H if (umove(tcp, tcp->u_arg[1], &iocb) == 0) { tprintf("{%p, %u, %hu, %hu, %d}, ", -- iocb.data, iocb.key, -+ iocb.aio_data, iocb.aio_key, ++#ifdef HAVE_STRUCT_IOCB_AIO_DATA ++ iocb.aio_data, iocb.key_data, ++#else + iocb.data, iocb.key, ++#endif iocb.aio_lio_opcode, iocb.aio_reqprio, iocb.aio_fildes); } else |