Patch for strace 4.5.17, problems with strace 4.5.18
Michael Abbott
michael at araneidae.co.uk
Thu Oct 23 14:34:53 UTC 2008
For ARM EABI target, the two most recent strace releases fail to compile.
The attached patch is a condensation of
http://marc.info/?l=strace&m=120126455227098&w=2
which was partially applied to 4.5.17, and fully incorporated into 4.5.18
... but that still doesn't work!
The compiler I'm using is arm-unknown-linux-gnueabi, built using
crosstool-ng, and targeting a recent linux 2.6. For strace 4.5.17 the
compile fails for obvious reasons when the patch below is inspected!
When attempting to compile strace 4.5.18:
$ ./configure --host=arm-unknown-linux-gnueabi
$ make
[... snip ...]
In file included from syscall.c:129:
linux/arm/syscallent.h:435:3: error: #error fix me
[... snip ...]
make: *** [build] Error 2
For crosstool-ng it should be possible to build strace 4.5.17 using this
patch, certainly seems to work fine for me. I've not yet dug into what's
wrong with 4.5.18 -- it looks as if this patch is now fully incorporated
into the source tree, but unfortunately something is still broken.
Yann, if you like I can prepare a patch against crosstool-ng for this, but
I suspect you can do it much more quickly than I can!
Patch follows.
Author: Michael Abbott <michael.abbott at diamond.ac.uk>
Date: Wed Oct 22 08:53:42 2008 +0100
Syscall patch for ARM
Patch mailed to strace mailing list by Anderson Lizardo, work by
Bruna Moreira, dated 2008-01-25. Patch cleaned up against 4.5.17 release.
diff --git a/linux/arm/errnoent1.h b/linux/arm/errnoent1.h
new file mode 100644
index 0000000..a894827
--- /dev/null
+++ b/linux/arm/errnoent1.h
@@ -0,0 +1,2 @@
+/* Our second set comes from the i386 files. */
+#include "../errnoent.h"
diff --git a/linux/arm/ioctlent1.h b/linux/arm/ioctlent1.h
new file mode 100644
index 0000000..a44b0ae
--- /dev/null
+++ b/linux/arm/ioctlent1.h
@@ -0,0 +1,2 @@
+/* Our second set comes from the i386 files. */
+#include "../ioctlent.h"
diff --git a/linux/arm/signalent1.h b/linux/arm/signalent1.h
new file mode 100644
index 0000000..5c18d98
--- /dev/null
+++ b/linux/arm/signalent1.h
@@ -0,0 +1,2 @@
+/* Our second set comes from the i386 files. */
+#include "../signalent.h"
diff --git a/linux/arm/syscallent1.h b/linux/arm/syscallent1.h
new file mode 100644
index 0000000..0978e9f
--- /dev/null
+++ b/linux/arm/syscallent1.h
@@ -0,0 +1,7 @@
+/* ARM specific syscalls */
+ { 5, 0, printargs, "SYS_0" }, /* 0 */
+ { 5, 0, printargs, "breakpoint" }, /* 1 */
+ { 5, 0, printargs, "cacheflush" }, /* 2 */
+ { 5, 0, printargs, "usr26" }, /* 3 */
+ { 5, 0, printargs, "usr32" }, /* 4 */
+ { 5, 0, printargs, "set_tls" }, /* 5 */
More information about the Strace-devel
mailing list