patches/strace/4.5.18/170-no_cachectl.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Thu Jun 11 21:47:19 2009 +0000 (2009-06-11)
branch1.4
changeset 1451 25d050084e98
permissions -rw-r--r--
populate: fix installing dynamic linker 'ld.so'

The dynamic linker, ld.so, needs the execute bit to be set.
Detect tht the library being installed is in fact ld.so and
install it with 0755 instead of 0644.

Fix detecting src == dst.

Use a simpler command to copy src -> dst.

Also change echo to printf, get rid of 'echo -n', which is
highly non-portable.


-------- diffstat follows --------
/trunk/scripts/populate.in | 76 43 33 0 +++++++++++++++++++++++++++++-----------------------
1 file changed, 43 insertions(+), 33 deletions(-)
(transplanted from d7ddcb75e0f703e2ba6d17169167356389224870)
     1 This patch is needed on newer uclibc becuase the uclibc header generation
     2 mechanism generates the sysnum.h properly NR_cacheflush is defined for ARM
     3 but there is no cachectl.h file which is exported to userspace. Strace 
     4 assumes that if SYS_cacheflush is defined than it icludes asm/cachectl.h
     5 which breaks the build for ARM now.
     6 
     7 This patch adds a check for ARM architecture.
     8 
     9 -Khem
    10 
    11 Here is error
    12 
    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; \
    14 |   then mv -f ".deps/term.Tpo" ".deps/term.Po"; else rm -f ".deps/term.Tpo"; exit 1; fi
    15 | system.c:69:26: error: asm/cachectl.h: No such file or directory
    16 | make[1]: *** [system.o] Error 1
    17 | make[1]: *** Waiting for unfinished jobs....
    18 | signal.c: In function 'sys_sigreturn':
    19 | signal.c:1221: warning: passing argument 4 of 'ptrace' makes integer from pointer without a cast
    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'
    21 | make: *** [all] Error 2
    22 | FATAL: oe_runmake failed
    23 
    24 Index: strace-4.5.14/system.c
    25 ===================================================================
    26 --- strace-4.5.14.orig/system.c 2008-05-15 20:23:16.000000000 -0700
    27 +++ strace-4.5.14/system.c  2008-05-15 20:24:03.000000000 -0700
    28 @@ -65,7 +65,7 @@
    29  #include <linux/capability.h>
    30  #endif
    31  
    32 -#ifdef SYS_cacheflush
    33 +#if defined SYS_cacheflush && !defined ARM
    34  #include <asm/cachectl.h>
    35  #endif