packages: glibc/glibc.spec, glibc/glibc-2.13-static-memmove-ssse3.patch (NE...

arekm arekm at pld-linux.org
Fri Feb 11 09:15:51 CET 2011


Author: arekm                        Date: Fri Feb 11 08:15:51 2011 GMT
Module: packages                      Tag: HEAD
---- Log message:
- rel 2; fix memmove-ssse3 static linking (from gentoo)

---- Files affected:
packages/glibc:
   glibc.spec (1.891 -> 1.892) , glibc-2.13-static-memmove-ssse3.patch (NONE -> 1.1)  (NEW)

---- Diffs:

================================================================
Index: packages/glibc/glibc.spec
diff -u packages/glibc/glibc.spec:1.891 packages/glibc/glibc.spec:1.892
--- packages/glibc/glibc.spec:1.891	Sun Feb  6 20:05:48 2011
+++ packages/glibc/glibc.spec	Fri Feb 11 09:15:45 2011
@@ -35,7 +35,7 @@
 Summary(uk.UTF-8):	GNU libc версії
 Name:		glibc
 Version:	2.13
-Release:	1
+Release:	2
 Epoch:		6
 License:	LGPL v2.1+
 Group:		Libraries
@@ -79,6 +79,7 @@
 Patch30:	%{name}-static-glro-init.patch
 Patch31:	%{name}-origin.patch
 Patch32:	%{name}-Os-fail-workaround.patch
+Patch33:	%{name}-2.13-static-memmove-ssse3.patch
 URL:		http://www.gnu.org/software/libc/
 %{?with_selinux:BuildRequires:	audit-libs-devel}
 BuildRequires:	autoconf
@@ -927,6 +928,7 @@
 %patch30 -p1
 %patch31 -p1
 %patch32 -p1
+%patch33 -p1
 
 # cleanup backups after patching
 find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
@@ -1691,6 +1693,9 @@
 All persons listed below can be reached at <cvs_login>@pld-linux.org
 
 $Log$
+Revision 1.892  2011/02/11 08:15:45  arekm
+- rel 2; fix memmove-ssse3 static linking (from gentoo)
+
 Revision 1.891  2011/02/06 19:05:48  sparky
 - added -Os-fail-workaround patch, won't change anything with -O2
 

================================================================
Index: packages/glibc/glibc-2.13-static-memmove-ssse3.patch
diff -u /dev/null packages/glibc/glibc-2.13-static-memmove-ssse3.patch:1.1
--- /dev/null	Fri Feb 11 09:15:51 2011
+++ packages/glibc/glibc-2.13-static-memmove-ssse3.patch	Fri Feb 11 09:15:45 2011
@@ -0,0 +1,62 @@
+From 5d480f5343de00e54b8602c6787640f9831f46b7 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier at gentoo.org>
+Date: Sun, 6 Feb 2011 12:39:08 -0500
+Subject: [PATCH] memcpy-ssse3: enable chk symbols in static builds
+
+Building static apps on x86_64 systems which use memmove such as:
+	#include <string.h>
+	char buf[8192];
+	main(int argc, char **argv) { memmove(buf, buf + argc, argc % 4); }
+
+Result in linking errors along the lines of:
+	.../libc.a(memmove_chk.o): In function `__memmove_chk':
+	(.text+0x1b4): undefined reference to `__memmove_chk_ssse3_back'
+	.../libc.a(memmove_chk.o): In function `__memmove_chk':
+	(.text+0x1b9): undefined reference to `__memmove_chk_ssse3'
+	collect2: ld returned 1 exit status
+
+This is due to the new ssse3 funcs only enabling their chk symbols when
+being compiled into shared code.
+
+URL: https://bugs.gentoo.org/353816
+Signed-off-by: Mike Frysinger <vapier at gentoo.org>
+
+2011-02-06  Mike Frysinger  <vapier at gentoo.org>
+
+	* sysdeps/x86_64/multiarch/memcpy-ssse3.S: Delete SHARED ifdef check
+	around MEMCPY_CHK symbol.
+	* sysdeps/x86_64/multiarch/memcpy-ssse3-back.S: Likewise.
+---
+ sysdeps/x86_64/multiarch/memcpy-ssse3-back.S |    2 +-
+ sysdeps/x86_64/multiarch/memcpy-ssse3.S      |    2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/sysdeps/x86_64/multiarch/memcpy-ssse3-back.S b/sysdeps/x86_64/multiarch/memcpy-ssse3-back.S
+index 48c974e..a6a01a8 100644
+--- a/sysdeps/x86_64/multiarch/memcpy-ssse3-back.S
++++ b/sysdeps/x86_64/multiarch/memcpy-ssse3-back.S
+@@ -49,7 +49,7 @@
+   ud2
+ 
+ 	.section .text.ssse3,"ax", at progbits
+-#if defined SHARED && !defined NOT_IN_libc
++#if !defined NOT_IN_libc
+ ENTRY (MEMCPY_CHK)
+ 	cmpq	%rdx, %rcx
+ 	jb	HIDDEN_JUMPTARGET (__chk_fail)
+diff --git a/sysdeps/x86_64/multiarch/memcpy-ssse3.S b/sysdeps/x86_64/multiarch/memcpy-ssse3.S
+index 9a878d3..ce84e3f 100644
+--- a/sysdeps/x86_64/multiarch/memcpy-ssse3.S
++++ b/sysdeps/x86_64/multiarch/memcpy-ssse3.S
+@@ -49,7 +49,7 @@
+   ud2
+ 
+ 	.section .text.ssse3,"ax", at progbits
+-#if defined SHARED && !defined NOT_IN_libc
++#if !defined NOT_IN_libc
+ ENTRY (MEMCPY_CHK)
+ 	cmpq	%rdx, %rcx
+ 	jb	HIDDEN_JUMPTARGET (__chk_fail)
+-- 
+1.7.4.rc2
+
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/glibc/glibc.spec?r1=1.891&r2=1.892&f=u



More information about the pld-cvs-commit mailing list