summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2008-06-29 14:28:35 +0000
committerMike Frysinger <vapier@gentoo.org>2008-06-29 14:28:35 +0000
commite7c9e6c417592e931ebcb7d3404a7587341675ab (patch)
tree49d4f160e9e733550c10d4e06712969a96f7178d
parentquoting (diff)
downloadhistorical-e7c9e6c417592e931ebcb7d3404a7587341675ab.tar.gz
historical-e7c9e6c417592e931ebcb7d3404a7587341675ab.tar.bz2
historical-e7c9e6c417592e931ebcb7d3404a7587341675ab.zip
Fix building on sparc with patches from Fedora #229229.
Package-Manager: portage-2.2_rc1/cvs/Linux 2.6.25 x86_64
-rw-r--r--dev-util/strace/ChangeLog7
-rw-r--r--dev-util/strace/Manifest16
-rw-r--r--dev-util/strace/files/strace-4.5.16-sparc-fix.patch154
-rw-r--r--dev-util/strace/files/strace-4.5.16-sparc-socketipc.patch189
-rw-r--r--dev-util/strace/strace-4.5.16-r1.ebuild3
5 files changed, 365 insertions, 4 deletions
diff --git a/dev-util/strace/ChangeLog b/dev-util/strace/ChangeLog
index 8a8d3e84edd0..75c8f965b078 100644
--- a/dev-util/strace/ChangeLog
+++ b/dev-util/strace/ChangeLog
@@ -1,6 +1,11 @@
# ChangeLog for dev-util/strace
# Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-util/strace/ChangeLog,v 1.118 2008/04/09 17:08:25 armin76 Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-util/strace/ChangeLog,v 1.119 2008/06/29 14:28:35 vapier Exp $
+
+ 29 Jun 2008; Mike Frysinger <vapier@gentoo.org>
+ +files/strace-4.5.16-sparc-fix.patch,
+ +files/strace-4.5.16-sparc-socketipc.patch, strace-4.5.16-r1.ebuild:
+ Fix building on sparc with patches from Fedora #229229.
09 Apr 2008; Raúl Porcel <armin76@gentoo.org> strace-4.5.16-r1.ebuild:
alpha/ia64/x86 stable
diff --git a/dev-util/strace/Manifest b/dev-util/strace/Manifest
index 8354a8b1373b..ca5f7eaae67a 100644
--- a/dev-util/strace/Manifest
+++ b/dev-util/strace/Manifest
@@ -1,3 +1,6 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA1
+
AUX strace-4.5.11-alpha-stat64.patch 1418 RMD160 a136a80eac15bca87fe6b2d39d65949fc2249d0a SHA1 09bfdf92442b9ac694b98c3c8710af9947f49521 SHA256 33ce8bf0b266c2741607907460686a82e23df0ac79fdb7fe5b4436d119b101de
AUX strace-4.5.11-fbsd.patch 4767 RMD160 aa04c24f5dc8dd6baee0286e1901f31aee54f10a SHA1 9f97462ca68cf73cbf21c78a702c1d47525d73b5 SHA256 15e78c360ab72210b2e168d50e80b88e0188c149364545c9ff3f06d6b3b6f1fb
AUX strace-4.5.12-libaio.patch 1552 RMD160 d4084416ed298ae07ea672569d04a22feb2f9188 SHA1 eec055eacba686d98bd36556be28eca96596b995 SHA256 6ea8fe265b9161ca708aa3b5fd31eee4584b9c7fcf829dcd8624a965fb048a78
@@ -11,6 +14,8 @@ AUX strace-4.5.15-sh-SYS_ipc_subcall.patch 479 RMD160 ffc4c527752a39bdbdbbcf6cc6
AUX strace-4.5.16-getdents-infinite-loop.patch 532 RMD160 c11ee44dfe3ffec644a274d9a6987edee5f68307 SHA1 cd7b9ed62c45a9fd10681daec1b2ad5467d28ea6 SHA256 de23eaf0b19f84187576135066365abee2fda81eb78d94ca49afd4a5fb0f8e93
AUX strace-4.5.16-mips-syscallent.patch 1228 RMD160 5c394a686b7056c73a067f7bad5a3b364d46eb00 SHA1 3b7966c47c07670d675a9f7dd6021d300cd5e50a SHA256 759ab03adf5ff56260255733e863a9211634d8476f68ce679f70928215258c3f
AUX strace-4.5.16-sh-updates.patch 12817 RMD160 e017dac383315c3d7d86f7644900d9598388bd9e SHA1 366669000fe348c77154bf609dc31b22718b056c SHA256 e9af8c2432472d90a4773cf021e13bdfc35cdc73d524dbb32fec967c55cc82bc
+AUX strace-4.5.16-sparc-fix.patch 7060 RMD160 25b696d52cda491616e89319b767f0445cb434f5 SHA1 4200a8ed53be1d11d75995b27472180b8ee79827 SHA256 025e2e9f0cd5c04109a586002700707bfdfb6c2f349c9a20ed803602d6120da9
+AUX strace-4.5.16-sparc-socketipc.patch 7361 RMD160 dc4e777eb0f8587fe92aaa1437f99ad38dee30f6 SHA1 83dd4967b28707500c4ac7f13f522aa453af6d4f SHA256 06cddf176f7688c969bff7d93a167f2d2ff3dd6dfa02ae694d50f01a99be6ea3
AUX strace-4.5.16-sparc-times.patch 1479 RMD160 0c860369811d7edaad43dab266048d93f678c6f2 SHA1 6ebef31b30059c72686875b18bc95f21a75fccd3 SHA256 d61a7bef36b1be338cc53012856c934014ed6d9fa0f1fce1c4dc94b8fad5be0a
AUX strace-4.5.16-sparc-updates.patch 1598 RMD160 1995fc8709bef1e957565f109dd5d04eb0d1e7d6 SHA1 48e837785a9c7a90f89603335a93ceb8b0f5f8ad SHA256 3f5dc7985b2f16988d4251421404abc7acb0ecb3d5741a39670a5964468bc2e0
AUX strace-4.5.8-ia64.patch 2271 RMD160 8a26565e9286deb508a2b1626b41e9856d81c385 SHA1 848a4f32b9b6f75fdebfae4de0e907221022354b SHA256 7882ae9504c1ff1446d7b0df3a27642a8703b3065adf2df1e66b83dd9a13b0f3
@@ -26,7 +31,14 @@ EBUILD strace-4.5.12.ebuild 2129 RMD160 ce141933138f18d0f56ad8ea657a5f0786179cb9
EBUILD strace-4.5.14.ebuild 1910 RMD160 8cec166a25f56914f84bbe180dd195c3ba0fef0c SHA1 e7ca46a4b293dee555d71bec7acaa718df8508df SHA256 da5f32472343bc93c1c5c24e817b2cf72aff24529d7b81acd67d7a09de0ff07c
EBUILD strace-4.5.15-r1.ebuild 1336 RMD160 cdb0df3e5695dfb7532a81c77d332166c88146dd SHA1 40e9981025ac9964f033376629474246e3e38d74 SHA256 b4d93851e6fdaa864431908907fbebe58f0cfbd21a2949fb4bcbeab837ed04db
EBUILD strace-4.5.15.ebuild 1262 RMD160 f28806295cb2dff5d04b1ba9f42b50d416910249 SHA1 c23a18b1dbfe626df941dc551db3e3c5a58065bd SHA256 62fbd7ed76ed62cddaddeb861994097efb59ffea981cb25fdc6677e57b60c19d
-EBUILD strace-4.5.16-r1.ebuild 1349 RMD160 768fff8dd642ef7ddbec594b484b40b9e015babf SHA1 002494de4b802dba39f13bb916b86aac53497d40 SHA256 5ff593625ab8fb29e723039cd902a83aa3d6a6de90912827d9ba60a0de4848a6
+EBUILD strace-4.5.16-r1.ebuild 1419 RMD160 e650fe0acc8357677909dd7972249d19205972fa SHA1 271481a10bf75f74621951ac324f29eed8389252 SHA256 b6716290dae252588cd9d4b8938a75d2a6939020ad2b576a3d78b5f2a0914b79
EBUILD strace-4.5.16.ebuild 1264 RMD160 e64f0710996197ffd03d4c72f65626c3e4c4e458 SHA1 46597baa608d477db0b6cdc687bd1f380b6af0e5 SHA256 3af3b03cead17f854e7a6f41867e18c897ba498ac6e5a94e86a253b475851533
-MISC ChangeLog 14324 RMD160 53ab9decec8a377a1ff7ccfe9a5c1cbb065911fc SHA1 6b1b921f8f2bdf9960c3d23ddf34305819c9492a SHA256 8007bfa53ef0bddb68dfb3fb08da048a97956a45199799642f5da67fb0df9fb4
+MISC ChangeLog 14543 RMD160 714cb015e0487e19940360b0a7371fd40678bbee SHA1 fb12904ad5684bab8a2399e0cbe308af6e847d8b SHA256 d1b8ef04e1d2b3fa0b7b547333ad5275775d2cf0fea4fa1dde456ff36fb14819
MISC metadata.xml 164 RMD160 f43cbec30b7074319087c9acffdb9354b17b0db3 SHA1 9c213f5803676c56439df3716be07d6692588856 SHA256 f5f2891f2a4791cd31350bb2bb572131ad7235cd0eeb124c9912c187ac10ce92
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2.0.9 (GNU/Linux)
+
+iEYEARECAAYFAkhnnBgACgkQ67wieSYcaxeU6ACgzW9u5pVnU+lnBrWb1/xex7ju
+x0IAnRHbhjaSB5oops9dLEw/aLX+vrsg
+=Euy0
+-----END PGP SIGNATURE-----
diff --git a/dev-util/strace/files/strace-4.5.16-sparc-fix.patch b/dev-util/strace/files/strace-4.5.16-sparc-fix.patch
new file mode 100644
index 000000000000..ed00bd7ecc08
--- /dev/null
+++ b/dev-util/strace/files/strace-4.5.16-sparc-fix.patch
@@ -0,0 +1,154 @@
+ripped from fedora and hacked a bit
+
+http://bugs.gentoo.org/229229
+
+diff -up strace-4.5.16/linux/sparc/syscallent.h.BAD strace-4.5.16/linux/sparc/syscallent.h
+--- strace-4.5.16/linux/sparc/syscallent.h.BAD 2008-03-26 10:09:47.000000000 -0500
++++ strace-4.5.16/linux/sparc/syscallent.h 2008-03-26 11:43:34.000000000 -0500
+@@ -23,7 +23,7 @@
+ { 2, 0, sys_capset, "capset" }, /* 22 */
+ { 1, 0, sys_setuid, "setuid" }, /* 23 */
+ { 0, 0, sys_getuid, "getuid" }, /* 24 */
+- { 1, 0, sys_time, "time" }, /* 25 */
++ { 1, 0, printargs, "vmsplice" }, /* 25 */
+ { 5, 0, sys_ptrace, "ptrace" }, /* 26 */
+ { 1, 0, sys_alarm, "alarm" }, /* 27 */
+ { 2, TS, sys_sigaltstack,"sigaltstack" }, /* 28 */
+@@ -65,8 +65,8 @@
+ { 0, 0, sys_getpagesize,"getpagesize" }, /* 64 */
+ { 3, 0, sys_msync, "msync" }, /* 65 */
+ { 0, TP, sys_vfork, "vfork" }, /* 66 */
+- { 5, TD, sys_pread, "pread" }, /* 67 */
+- { 5, TD, sys_pwrite, "pwrite" }, /* 68 */
++ { 5, TD, sys_pread, "pread64" }, /* 67 */
++ { 5, TD, sys_pwrite, "pwrite64" }, /* 68 */
+ { 0, 0, sys_geteuid, "geteuid32" }, /* 69 */
+ { 0, 0, sys_getegid, "getegid32" }, /* 70 */
+ { 6, 0, sys_mmap, "mmap" }, /* 71 */
+@@ -149,12 +149,12 @@
+ { 5, 0, printargs, "pciconfig_read" }, /* 148 */
+ { 5, 0, printargs, "pciconfig_write" }, /* 149 */
+ { 3, TN, sys_getsockname,"getsockname" }, /* 150 */
+- { 4, TN, sys_getmsg, "getmsg" }, /* 151 */
+- { 4, TN, sys_putmsg, "putmsg" }, /* 152 */
++ { 0, TD, printargs, "inotify_init" }, /* 151 */
++ { 3, TD, sys_inotify_add_watch, "inotify_add_watch" },/* 152 */
+ { 3, TD, sys_poll, "poll" }, /* 153 */
+ { 4, TD, sys_getdents64, "getdents64" }, /* 154 */
+ { 3, TD, sys_fcntl, "fcntl64" }, /* 155 */
+- { 4, 0, printargs, "getdirentries" }, /* 156 */
++ { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" },/* 156 */
+ { 2, TF, sys_statfs, "statfs" }, /* 157 */
+ { 2, TD, sys_fstatfs, "fstatfs" }, /* 158 */
+ { 1, TF, sys_umount, "oldumount" }, /* 159 */
+@@ -194,13 +194,13 @@
+ { 1, 0, sys_epoll_create,"epoll_create" }, /* 193 */
+ { 4, TD, sys_epoll_ctl, "epoll_ctl" }, /* 194 */
+ { 4, TD, sys_epoll_wait, "epoll_wait" }, /* 195 */
+- { 2, 0, sys_ulimit, "ulimit" }, /* 196 */
++ { 3, 0, printargs, "ioprio_set"}, /* 196 */
+ { 0, 0, sys_getppid, "getppid" }, /* 197 */
+ { 3, TS, sys_sigaction, "sigaction" }, /* 198 */
+ { 5, 0, printargs, "sgetmask" }, /* 199 */
+ { 5, 0, printargs, "ssetmask" }, /* 200 */
+ { 3, TS, sys_sigsuspend, "sigsuspend" }, /* 201 */
+- { 2, TF, sys_lstat, "lstat" }, /* 202 */
++ { 2, TF, sys_oldlstat, "oldlstat" }, /* 202 */
+ { 1, TF, sys_uselib, "uselib" }, /* 203 */
+ { 3, TD, sys_readdir, "readdir" }, /* 204 */
+ { 4, TD, sys_readahead, "readahead" }, /* 205 */
+@@ -216,7 +216,7 @@
+ { 5, 0, sys_ipc, "ipc" }, /* 215 */
+ { 1, TS, sys_sigreturn, "sigreturn" }, /* 216 */
+ { 5, TP, sys_clone, "clone" }, /* 217 */
+- { 3, 0, sys_modify_ldt, "modify_ldt" }, /* 218 */
++ { 2, 0, printargs, "ioprio_get" }, /* 218 */
+ { 1, 0, sys_adjtimex, "adjtimex" }, /* 219 */
+ { 3, TS, sys_sigprocmask,"sigprocmask" }, /* 220 */
+ { 2, 0, sys_create_module,"create_module" }, /* 221 */
+@@ -228,9 +228,9 @@
+ { 5, 0, sys_afs_syscall,"afs_syscall" }, /* 227 */
+ { 1, 0, sys_setfsuid, "setfsuid" }, /* 228 */
+ { 1, 0, sys_setfsgid, "setfsgid" }, /* 229 */
+- { 5, TD, sys_select, "select" }, /* 230 */
++ { 5, TD, sys_select, "_newselect" }, /* 230 */
+ { 1, 0, sys_time, "time" }, /* 231 */
+- { 2, TF, sys_stat, "stat" }, /* 232 */
++ { 6, TD, printargs, "splice" }, /* 232 */
+ { 1, 0, sys_stime, "stime" }, /* 233 */
+ { 3, TF, sys_statfs64, "statfs64" }, /* 234 */
+ { 3, TD, sys_fstatfs64, "fstatfs64" }, /* 235 */
+@@ -253,7 +253,7 @@
+ { 1, 0, sys_getsid, "getsid" }, /* 252 */
+ { 1, TD, sys_fdatasync, "fdatasync" }, /* 253 */
+ { 3, 0, printargs, "nfsservctl" }, /* 254 */
+- { 5, 0, printargs, "aplib" }, /* 255 */
++ { 4, TD, printargs, "sync_file_range" }, /* 255 */
+ { 2, 0, sys_clock_settime,"clock_settime" }, /* 256 */
+ { 2, 0, sys_clock_gettime,"clock_gettime" }, /* 257 */
+ { 2, 0, sys_clock_getres,"clock_getres" }, /* 258 */
+@@ -300,18 +300,18 @@
+ { 1, TP, sys_unshare, "unshare" }, /* 299 */
+ { 2, 0, printargs, "set_robust_list" }, /* 300 */
+ { 3, 0, printargs, "get_robust_list" }, /* 301 */
+- { 5, 0, printargs, "SYS_302" }, /* 302 */
+- { 5, 0, printargs, "SYS_303" }, /* 303 */
+- { 5, 0, printargs, "SYS_304" }, /* 304 */
+- { 5, 0, printargs, "SYS_305" }, /* 305 */
+- { 5, 0, printargs, "SYS_306" }, /* 306 */
+- { 6, 0, sys_move_pages, "move_pages" }, /* 307 */
+- { 3, 0, sys_getcpu, "getcpu" }, /* 308 */
+- { 5, TD, sys_epoll_pwait,"epoll_pwait" }, /* 309 */
+- { 5, 0, printargs, "SYS_310" }, /* 310 */
+- { 3, TD|TS, sys_signalfd, "signalfd"}, /* 311 */
+- { 4, TD, sys_timerfd, "timerfd" }, /* 312 */
+- { 1, TD, sys_eventfd, "eventfd" }, /* 313 */
++ { 4, 0, printargs, "migrate_pages" }, /* 302 */
++ { 6, 0, sys_mbind, "mbind" }, /* 303 */
++ { 5, 0, sys_get_mempolicy, "get_mempolicy" }, /* 304 */
++ { 3, 0, sys_set_mempolicy, "set_mempolicy" }, /* 305 */
++ { 5, 0, printargs, "kexec_load" }, /* 306 */
++ { 6, 0, sys_move_pages, "move_pages" }, /* 307 */
++ { 3, 0, sys_getcpu, "getcpu" }, /* 308 */
++ { 5, TD, sys_epoll_pwait, "epoll_pwait" },/* 309 */
++ { 4, TD|TF, sys_utimensat, "utimensat"}, /* 310 */
++ { 3, TD|TS, sys_signalfd, "signalfd"}, /* 311 */
++ { 4, TD, sys_timerfd, "timerfd" }, /* 312 */
++ { 1, TD, sys_eventfd, "eventfd" }, /* 313 */
+ { 5, 0, printargs, "SYS_314" }, /* 314 */
+ { 5, 0, printargs, "SYS_315" }, /* 315 */
+ { 5, 0, printargs, "SYS_316" }, /* 316 */
+diff -up strace-4.5.16/linux/sparc/syscall.h.BAD strace-4.5.16/linux/sparc/syscall.h
+--- strace-4.5.16/linux/sparc/syscall.h.BAD 2008-03-26 12:00:19.000000000 -0500
++++ strace-4.5.16/linux/sparc/syscall.h 2008-03-26 12:00:07.000000000 -0500
+@@ -203,6 +203,9 @@ int sys_fstatfs64(), sys_clock_settime()
+ int sys_clock_getres(), sys_clock_nanosleep();
+ int sys_timer_create(), sys_timer_settime(), sys_timer_gettime();
+
++int sys_inotify_add_watch(), sys_inotify_rm_watch(), sys_oldlstat();
++int sys_mbind(), sys_get_mempolicy(), sys_set_mempolicy();
++int sys_utimensat();
+ int sys_io_setup(), sys_io_destroy(), sys_io_submit(), sys_io_cancel(), sys_io_getevents();
+ int sys_mq_open(), sys_mq_unlink(), sys_mq_timedsend(), sys_mq_timedreceive(), sys_mq_notify(), sys_mq_getsetattr();
+ int sys_waitid();
+diff -up strace-4.5.16/defs.h.BAD strace-4.5.16/defs.h
+--- strace-4.5.16/defs.h.BAD 2008-03-26 11:49:08.000000000 -0500
++++ strace-4.5.16/defs.h 2008-03-26 11:49:30.000000000 -0500
+@@ -192,8 +192,7 @@ extern int ptrace();
+ #define DEFAULT_PERSONALITY 0
+
+ #ifdef LINUXSPARC
+-#include <linux/a.out.h>
+-#include <asm/psr.h>
++#include <asm/a.out.h>
+ #define PERSONALITY0_WORDSIZE 4
+ #define PERSONALITY1_WORDSIZE 4
+ #undef SUPPORTED_PERSONALITIES
+@@ -201,6 +200,7 @@ extern int ptrace();
+ #define SUPPORTED_PERSONALITIES 3
+ #define PERSONALITY2_WORDSIZE 8
+ #else
++#include <asm/psr.h>
+ #define SUPPORTED_PERSONALITIES 2
+ #endif /* SPARC64 */
+ #endif /* LINUXSPARC */
diff --git a/dev-util/strace/files/strace-4.5.16-sparc-socketipc.patch b/dev-util/strace/files/strace-4.5.16-sparc-socketipc.patch
new file mode 100644
index 000000000000..d27aebf8b527
--- /dev/null
+++ b/dev-util/strace/files/strace-4.5.16-sparc-socketipc.patch
@@ -0,0 +1,189 @@
+ripped from fedora and hacked a bit
+
+http://bugs.gentoo.org/229229
+
+diff -up strace-4.5.16/linux/sparc/syscallent.h.BAD strace-4.5.16/linux/sparc/syscallent.h
+--- strace-4.5.16/linux/sparc/syscallent.h.BAD 2008-05-15 16:06:36.000000000 -0500
++++ strace-4.5.16/linux/sparc/syscallent.h 2008-05-15 18:21:01.000000000 -0500
+@@ -351,3 +351,57 @@
+ { 5, 0, printargs, "SYS_350" }, /* 350 */
+ { 5, 0, printargs, "SYS_351" }, /* 351 */
+ { 5, 0, printargs, "SYS_352" }, /* 352 */
++#if SYS_socket_subcall != 353
++ #error fix me
++#endif
++ { 8, 0, printargs, "socket_subcall" }, /* 353 */
++ { 3, TN, sys_socket, "socket" }, /* 354 */
++ { 3, TN, sys_bind, "bind" }, /* 355 */
++ { 3, TN, sys_connect, "connect" }, /* 356 */
++ { 2, TN, sys_listen, "listen" }, /* 357 */
++ { 3, TN, sys_accept, "accept" }, /* 358 */
++ { 3, TN, sys_getsockname, "getsockname" }, /* 359 */
++ { 3, TN, sys_getpeername, "getpeername" }, /* 360 */
++ { 4, TN, sys_socketpair, "socketpair" }, /* 361 */
++ { 4, TN, sys_send, "send" }, /* 362 */
++ { 4, TN, sys_recv, "recv" }, /* 363 */
++ { 6, TN, sys_sendto, "sendto" }, /* 364 */
++ { 6, TN, sys_recvfrom, "recvfrom" }, /* 365 */
++ { 2, TN, sys_shutdown, "shutdown" }, /* 366 */
++ { 5, TN, sys_setsockopt, "setsockopt" }, /* 367 */
++ { 5, TN, sys_getsockopt, "getsockopt" }, /* 368 */
++ { 5, TN, sys_sendmsg, "sendmsg" }, /* 369 */
++ { 5, TN, sys_recvmsg, "recvmsg" }, /* 370 */
++#if SYS_ipc_subcall != 371
++ #error fix me
++#endif
++ { 4, 0, printargs, "ipc_subcall" }, /* 371 */
++ { 4, TI, printargs, "semop" }, /* 372 */
++ { 4, TI, sys_semget, "semget" }, /* 373 */
++ { 4, TI, sys_semctl, "semctl" }, /* 374 */
++ { 5, TI, sys_semtimedop, "semtimedop" }, /* 375 */
++ { 4, 0, printargs, "ipc_subcall" }, /* 376 */
++ { 4, 0, printargs, "ipc_subcall" }, /* 377 */
++ { 4, 0, printargs, "ipc_subcall" }, /* 378 */
++ { 4, 0, printargs, "ipc_subcall" }, /* 379 */
++ { 4, 0, printargs, "ipc_subcall" }, /* 380 */
++ { 4, 0, printargs, "ipc_subcall" }, /* 381 */
++ { 4, TI, sys_msgsnd, "msgsnd" }, /* 382 */
++ { 4, TI, sys_msgrcv, "msgrcv" }, /* 383 */
++ { 4, TI, sys_msgget, "msgget" }, /* 384 */
++ { 4, TI, sys_msgctl, "msgctl" }, /* 385 */
++ { 4, 0, printargs, "ipc_subcall" }, /* 386 */
++ { 4, 0, printargs, "ipc_subcall" }, /* 387 */
++ { 4, 0, printargs, "ipc_subcall" }, /* 388 */
++ { 4, 0, printargs, "ipc_subcall" }, /* 389 */
++ { 4, 0, printargs, "ipc_subcall" }, /* 390 */
++ { 4, 0, printargs, "ipc_subcall" }, /* 391 */
++ { 4, TI, sys_shmat, "shmat" }, /* 392 */
++ { 4, TI, sys_shmdt, "shmdt" }, /* 393 */
++ { 4, TI, sys_shmget, "shmget" }, /* 394 */
++ { 4, TI, sys_shmctl, "shmctl" }, /* 395 */
++ { 5, 0, printargs, "SYS_343" }, /* 396 */
++ { 5, 0, printargs, "SYS_344" }, /* 397 */
++ { 5, 0, printargs, "SYS_345" }, /* 398 */
++ { 5, 0, printargs, "SYS_346" }, /* 399 */
++ { 5, 0, printargs, "SYS_347" }, /* 400 */
+diff -up strace-4.5.16/linux/sparc/syscall.h.BAD strace-4.5.16/linux/sparc/syscall.h
+--- strace-4.5.16/linux/sparc/syscall.h.BAD 2008-05-15 16:02:07.000000000 -0500
++++ strace-4.5.16/linux/sparc/syscall.h 2008-05-15 16:06:03.000000000 -0500
+@@ -213,4 +214,42 @@ int sys_fstatfs64(), sys_clock_settime()
+ int sys_clock_getres(), sys_clock_nanosleep();
+ int sys_timer_create(), sys_timer_settime(), sys_timer_gettime();
+
++int sys_semtimedop();
++# define SYS_socket_subcall 353
++#define SYS_sub_socket (SYS_socket_subcall + 1)
++#define SYS_sub_bind (SYS_socket_subcall + 2)
++#define SYS_sub_connect (SYS_socket_subcall + 3)
++#define SYS_sub_listen (SYS_socket_subcall + 4)
++#define SYS_sub_accept (SYS_socket_subcall + 5)
++#define SYS_sub_getsockname (SYS_socket_subcall + 6)
++#define SYS_sub_getpeername (SYS_socket_subcall + 7)
++#define SYS_sub_socketpair (SYS_socket_subcall + 8)
++#define SYS_sub_send (SYS_socket_subcall + 9)
++#define SYS_sub_recv (SYS_socket_subcall + 10)
++#define SYS_sub_sendto (SYS_socket_subcall + 11)
++#define SYS_sub_recvfrom (SYS_socket_subcall + 12)
++#define SYS_sub_shutdown (SYS_socket_subcall + 13)
++#define SYS_sub_setsockopt (SYS_socket_subcall + 14)
++#define SYS_sub_getsockopt (SYS_socket_subcall + 15)
++#define SYS_sub_sendmsg (SYS_socket_subcall + 16)
++#define SYS_sub_recvmsg (SYS_socket_subcall + 17)
++
++#define SYS_socket_nsubcalls 18
++
++#define SYS_ipc_subcall ((SYS_socket_subcall)+(SYS_socket_nsubcalls))
++#define SYS_sub_semop (SYS_ipc_subcall + 1)
++#define SYS_sub_semget (SYS_ipc_subcall + 2)
++#define SYS_sub_semctl (SYS_ipc_subcall + 3)
++#define SYS_sub_semtimedop (SYS_ipc_subcall + 4)
++#define SYS_sub_msgsnd (SYS_ipc_subcall + 11)
++#define SYS_sub_msgrcv (SYS_ipc_subcall + 12)
++#define SYS_sub_msgget (SYS_ipc_subcall + 13)
++#define SYS_sub_msgctl (SYS_ipc_subcall + 14)
++#define SYS_sub_shmat (SYS_ipc_subcall + 21)
++#define SYS_sub_shmdt (SYS_ipc_subcall + 22)
++#define SYS_sub_shmget (SYS_ipc_subcall + 23)
++#define SYS_sub_shmctl (SYS_ipc_subcall + 24)
++
++#define SYS_ipc_nsubcalls 25
++
+ #include "syscall1.h"
+diff -up strace-4.5.16/syscall.c.BAD strace-4.5.16/syscall.c
+--- strace-4.5.16/syscall.c.BAD 2008-05-15 16:01:49.000000000 -0500
++++ strace-4.5.16/syscall.c 2008-05-15 16:01:53.000000000 -0500
+@@ -579,51 +579,6 @@ static const struct subcall subcalls_tab
+ #endif /* FREEBSD */
+
+ #if !(defined(LINUX) && ( defined(ALPHA) || defined(MIPS) ))
+-
+-static const int socket_map [] = {
+- /* SYS_SOCKET */ 97,
+- /* SYS_BIND */ 104,
+- /* SYS_CONNECT */ 98,
+- /* SYS_LISTEN */ 106,
+- /* SYS_ACCEPT */ 99,
+- /* SYS_GETSOCKNAME */ 150,
+- /* SYS_GETPEERNAME */ 141,
+- /* SYS_SOCKETPAIR */ 135,
+- /* SYS_SEND */ 101,
+- /* SYS_RECV */ 102,
+- /* SYS_SENDTO */ 133,
+- /* SYS_RECVFROM */ 125,
+- /* SYS_SHUTDOWN */ 134,
+- /* SYS_SETSOCKOPT */ 105,
+- /* SYS_GETSOCKOPT */ 118,
+- /* SYS_SENDMSG */ 114,
+- /* SYS_RECVMSG */ 113
+-};
+-
+-#if defined (SPARC) || defined (SPARC64)
+-static void
+-sparc_socket_decode (tcp)
+-struct tcb *tcp;
+-{
+- volatile long addr;
+- volatile int i, n;
+-
+- if (tcp->u_arg [0] < 1 || tcp->u_arg [0] > sizeof(socket_map)/sizeof(int)+1){
+- return;
+- }
+- tcp->scno = socket_map [tcp->u_arg [0]-1];
+- n = tcp->u_nargs = sysent [tcp->scno].nargs;
+- addr = tcp->u_arg [1];
+- for (i = 0; i < n; i++){
+- int arg;
+- if (umoven (tcp, addr, sizeof (arg), (void *) &arg) < 0)
+- arg = 0;
+- tcp->u_arg [i] = arg;
+- addr += sizeof (arg);
+- }
+-}
+-#endif
+-
+ static void
+ decode_subcall(tcp, subcall, nsubcalls, style)
+ struct tcb *tcp;
+@@ -2382,7 +2337,7 @@ trace_syscall(struct tcb *tcp)
+
+ switch (known_scno(tcp)) {
+ #ifdef LINUX
+-#if !defined (ALPHA) && !defined(SPARC) && !defined(SPARC64) && !defined(MIPS) && !defined(HPPA)
++#if !defined (ALPHA) && !defined(MIPS) && !defined(HPPA)
+ case SYS_socketcall:
+ decode_subcall(tcp, SYS_socket_subcall,
+ SYS_socket_nsubcalls, deref_style);
+@@ -2391,12 +2346,7 @@ trace_syscall(struct tcb *tcp)
+ decode_subcall(tcp, SYS_ipc_subcall,
+ SYS_ipc_nsubcalls, shift_style);
+ break;
+-#endif /* !ALPHA && !MIPS && !SPARC && !SPARC64 && !HPPA */
+-#if defined (SPARC) || defined (SPARC64)
+- case SYS_socketcall:
+- sparc_socket_decode (tcp);
+- break;
+-#endif
++#endif /* !(ALPHA || MIPS || HPPA) */
+ #endif /* LINUX */
+ #ifdef SVR4
+ #ifdef SYS_pgrpsys_subcall
diff --git a/dev-util/strace/strace-4.5.16-r1.ebuild b/dev-util/strace/strace-4.5.16-r1.ebuild
index a6972274adf6..3fdde510406b 100644
--- a/dev-util/strace/strace-4.5.16-r1.ebuild
+++ b/dev-util/strace/strace-4.5.16-r1.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-util/strace/strace-4.5.16-r1.ebuild,v 1.11 2008/04/09 17:08:25 armin76 Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-util/strace/strace-4.5.16-r1.ebuild,v 1.12 2008/06/29 14:28:35 vapier Exp $
inherit flag-o-matic autotools
@@ -29,6 +29,7 @@ src_unpack() {
epatch "${FILESDIR}"/${P}-sparc-updates.patch #162789
epatch "${FILESDIR}"/${P}-sparc-times.patch #204457
epatch "${FILESDIR}"/${P}-getdents-infinite-loop.patch
+ epatch "${FILESDIR}"/${P}-sparc-{fix,socketipc}.patch #fedora, 229229
eautoreconf
}