patches/glibc/2.5/190-alpha-sigsuspend.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
parent 744 4bf8448536d5
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)
yann@611
     1
--- glibc-2.5/sysdeps/unix/sysv/linux/alpha/sigsuspend.S.orig	2006-10-22 22:17:01.000000000 +0200
yann@611
     2
+++ glibc-2.5/sysdeps/unix/sysv/linux/alpha/sigsuspend.S	2006-10-22 22:18:05.000000000 +0200
yann@611
     3
@@ -31,3 +31,21 @@
yann@611
     4
 libc_hidden_def (__sigsuspend)
yann@611
     5
 weak_alias (__sigsuspend, sigsuspend)
yann@611
     6
 strong_alias (__sigsuspend, __libc_sigsuspend)
yann@611
     7
+
yann@611
     8
+#ifndef NO_CANCELLATION
yann@611
     9
+	.globl __sigsuspend_nocancel;
yann@611
    10
+	.align 4;
yann@611
    11
+	.type __sigsuspend_nocancel, @function;
yann@611
    12
+	.usepv __sigsuspend_nocancel, std;
yann@611
    13
+	cfi_startproc;
yann@611
    14
+__LABEL(__sigsuspend_nocancel)
yann@611
    15
+	ldgp    gp, 0(pv);
yann@611
    16
+	PSEUDO_PROF;
yann@611
    17
+	PSEUDO_PREPARE_ARGS
yann@611
    18
+	lda     v0, SYS_ify(sigsuspend);
yann@611
    19
+	call_pal PAL_callsys;
yann@611
    20
+	bne     a3, SYSCALL_ERROR_LABEL;
yann@611
    21
+	ret;
yann@611
    22
+	cfi_endproc;
yann@611
    23
+	.size __sigsuspend_nocancel, .-__sigsuspend_nocancel
yann@611
    24
+#endif