patches/strace/4.5.18/170-no_cachectl.patch
author "Yann E. MORIN" <yann.morin.1998@free.fr>
Sun May 05 00:01:05 2013 +0200 (2013-05-05)
changeset 3218 3709e61ad85b
permissions -rw-r--r--
complibs/cloog: add support for the ISL backend

CLooG 0.18+ will use ISL instead of PPL, so we have to configure
adequately depending of which backend is in use.

The Kconfig entries will decide for us which is selected, so we
can rely on either PPL xor ISL to be selected, not both.

Reported-by: "Plotnikov Dmitry" <leitz@ispras.ru>
[Dmitry did a preliminray patch to add ISL support,
which this patch is inspired from]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
yann@1045
     1
This patch is needed on newer uclibc becuase the uclibc header generation
yann@1045
     2
mechanism generates the sysnum.h properly NR_cacheflush is defined for ARM
yann@1045
     3
but there is no cachectl.h file which is exported to userspace. Strace 
yann@1045
     4
assumes that if SYS_cacheflush is defined than it icludes asm/cachectl.h
yann@1045
     5
which breaks the build for ARM now.
yann@1045
     6
yann@1045
     7
This patch adds a check for ARM architecture.
yann@1045
     8
yann@1045
     9
-Khem
yann@1045
    10
yann@1045
    11
Here is error
yann@1045
    12
yann@1045
    13
| if ccache arm-angstrom-linux-uclibcgnueabi-gcc -march=armv5te -mtune=arm926ej-s -DHAVE_CONFIG_H -I. -I. -I. -Ilinux/arm -I./linux/arm -Ilinux -I./linux  -isystem/home/kraj/work/oe/build/uclibc/tmp-omap5912osk/staging/arm-angstrom-linux-uclibcgnueabi/usr/include -Wall -isystem/home/kraj/work/oe/build/uclibc/tmp-omap5912osk/staging/arm-angstrom-linux-uclibcgnueabi/usr/include -fexpensive-optimizations -fomit-frame-pointer -frename-registers -Os -MT term.o -MD -MP -MF ".deps/term.Tpo" -c -o term.o term.c; \
yann@1045
    14
|   then mv -f ".deps/term.Tpo" ".deps/term.Po"; else rm -f ".deps/term.Tpo"; exit 1; fi
yann@1045
    15
| system.c:69:26: error: asm/cachectl.h: No such file or directory
yann@1045
    16
| make[1]: *** [system.o] Error 1
yann@1045
    17
| make[1]: *** Waiting for unfinished jobs....
yann@1045
    18
| signal.c: In function 'sys_sigreturn':
yann@1045
    19
| signal.c:1221: warning: passing argument 4 of 'ptrace' makes integer from pointer without a cast
yann@1045
    20
| make[1]: Leaving directory `/home/kraj/work/oe/build/uclibc/tmp-omap5912osk/work/armv5te-angstrom-linux-uclibcgnueabi/strace-4.5.14-r5/strace-4.5.14'
yann@1045
    21
| make: *** [all] Error 2
yann@1045
    22
| FATAL: oe_runmake failed
yann@1045
    23
yann@1045
    24
Index: strace-4.5.14/system.c
yann@1045
    25
===================================================================
yann@1045
    26
--- strace-4.5.14.orig/system.c 2008-05-15 20:23:16.000000000 -0700
yann@1045
    27
+++ strace-4.5.14/system.c  2008-05-15 20:24:03.000000000 -0700
yann@1045
    28
@@ -65,7 +65,7 @@
yann@1045
    29
 #include <linux/capability.h>
yann@1045
    30
 #endif
yann@1045
    31
 
yann@1045
    32
-#ifdef SYS_cacheflush
yann@1045
    33
+#if defined SYS_cacheflush && !defined ARM
yann@1045
    34
 #include <asm/cachectl.h>
yann@1045
    35
 #endif